
https://img.shields.io/badge/python-3.6+-blue.svg
https://img.shields.io/badge/license-MIT-green
https://img.shields.io/badge/threading-multi--threaded-brightgreen
著者: NULL200OK
Nginx UI Webインターフェースを発見し、そのバージョンを検出し、CVE‑2026‑27944(バージョン ≤ 2.3.2)に対して脆弱なインスタンスを特定するための、高性能なマルチスレッドスキャナーです。
このツールは、パッシブフィンガープリンティング(タイトル、ヘッダー、ボディパターン)と一般的なAPIエンドポイントへのプローブを使用して、大規模ネットワーク全体でNginx UIインストールを正確に識別します。
🔍 機能
柔軟なターゲット入力 – 単一ホスト、CIDR範囲(例: 192.168.1.0/24)、またはファイルからのリストをスキャンできます。
マルチポートスキャン – 一般的なNginx UIポート(80、443、8080、8443、9000、9001、9080、9443)またはカスタムリストをチェックします。
フィンガープリンティング – 以下を使用してNginx UIを識別します:
ページタイトル(Nginx UI)
HTTPヘッダー(Server、X-Powered-By)
ボディ正規表現パターン(バージョン文字列、UI識別子)
バージョン抽出 – /api/version JSON、埋め込まれたHTML/JS、またはレスポンスヘッダーから取得します。
直接的な脆弱性チェック – X-Backup-Securityヘッダーを持つ/api/backupエンドポイントの存在を検出します(CVE‑2026‑27944の明確な兆候)。
信頼度スコアリング – 複数の検出シグナルを組み合わせることで誤検知を減らします。
脆弱性のみモード – 確認済みの脆弱なインスタンスのみを表示します。
JSON/CSV出力 – 結果を保存してさらなる分析に使用できます。
高速マルチスレッド – 数百のホストを数秒でスキャンします。
🚨 これが重要な理由
CVE‑2026‑27944 は、Nginx UI ≤ 2.3.2 における重大な脆弱性であり、認証されていない攻撃者がサーバーの完全なバックアップをダウンロードして復号化できるようになり、以下が露出します:
ユーザー資格情報とセッショントークン
SSL秘密鍵
アプリケーションシークレット
完全なNginx設定
このスキャナーは、攻撃者が先に発見する前に、環境内の脆弱なインスタンスを迅速に特定するのに役立ちます。
⚙️ インストール
bash
git clone https://github.com/NULL200OK/nginx-ui-scanner.git
cd nginx-ui-scanner
pip install requests
追加の依存関係は不要です(スキャナーはpycryptodomeを必要としません)。
🔧 使用方法
text
usage: nginxui_discover.py [-h] (--target TARGET | --cidr CIDR | --file FILE) [--port PORT] [--ports PORTS] [--ssl] [--threads THREADS] [--timeout TIMEOUT] [--output OUTPUT] [--vulnerable-only] [--no-banner]
例
bash
python3 nginxui_discover.py --target 192.168.1.100
python3 nginxui_discover.py --cidr 192.168.1.0/24 --threads 50 --output results.json
python3 nginxui_discover.py --file targets.txt --vulnerable-only
python3 nginxui_discover.py --target example.com --port 8443 --ssl
出力
text
Nginx UI Discovery Scanner - CVE-2026-27944 Version Detection
Threads: 20 | Timeout: 5s | Date: 2026-03-10 14:23:45
[*] Starting scan of 256 targets × 8 ports = 2048 checks
[42/2048] 🔴 VULNERABLE | http://192.168.1.105:9000 | v2.3.2 | confidence: 85%
[87/2048] 🟢 PATCHED | https://192.168.1.110:8443 | v2.4.0 | confidence: 72%
...
SCAN SUMMARY
Nginx UI instances found: 12
📚 仕組み
スキャンジョブの構築 – ターゲットとポートを(ホスト、ポート)ペアのリストに展開します。
マルチスレッドプロービング – 各組み合わせに対して、一般的なパスにHTTPリクエストを送信します:
/ – ルートページ
/api/version – バージョンAPI
/api/backup – 脆弱なエンドポイント
/login、/dashboard、/static/js/main.js – 追加のフィンガープリント
フィンガープリント分析 – Nginx UIの指標についてレスポンスを調べ、信頼度スコアを割り当てます。
バージョン抽出 – JSON解析、ヘッダー検査、ページボディの正規表現を使用します。
脆弱性チェック – バージョンが ≤ 2.3.2 の場合、または/api/backupエンドポイントがX-Backup-Securityヘッダーを返す場合に、脆弱としてマークします。
リアルタイムレポート – 結果が得られたらすぐに表示し、要求された場合はファイルに保存します。
⚠️ 免責事項
このツールは、許可されたセキュリティ評価および教育目的のみを対象としています。
所有していない、または明示的なテスト許可を得ていないネットワークの不正スキャンは違法です。著者(NULL200OK)は誤用に対する責任を負いません。
📄 ライセンス
MIT License – 詳細はLICENSEを参照してください。
📬 参考情報
CVE‑2026‑27944(プレースホルダー)
Nginx UI 公式サイト