
CVE-2026-52824(GHSA-jr9p-4h4j-6c58)のPoCエクスプロイト — KimaiタイムトラッキングのデフォルトAPP_SECRET認証バイパス、バージョン≤ 2.57.0に影響
注記: リポジトリの URL には古い CVE ID(CVE-2026-49865)が含まれています。このリポジトリで追跡されている正しい最新の CVE は CVE-2026-52824(GHSA-jr9p-4h4j-6c58)です。
Kimai タイムトラッキング(バージョン ≤ 2.57.0)におけるハードコードされたデフォルト APP_SECRET 脆弱性の概念実証エクスプロイトツールキット。未パッチの Docker デプロイメントにおいて、偽造された KIMAI_REMEMBER Cookie を介した認証バイパスを可能にします。
CVE-2026-52824 が公開されたとき — CVSS 9.1 のクリティカルで、何千人ものセルフホスターが使用する Docker イメージにハードコードされたデフォルトシークレットが存在していた — 技術コミュニティはその存在を認識しており、修正は 2.58.0 で出荷されました。しかし、誰も動作する概念実証を公開しませんでした。
そこで私はアドバイザリだけからそれを再構築しました。
その連鎖: Kimai は Docker と .env.dist に APP_SECRET=change_this_to_something_unique を同梱しています。v2.57.0 では、remember-me Cookie の signature_properties が空であるため、FieldsHash は定数(SHA256(''))に縮退します。既知のシークレットと空のハッシュを組み合わせることで、任意の ユーザー ID — 管理者(id:1)を含む — の KIMAI_REMEMBER Cookie を偽造できます。
このリポジトリは、アドバイザリ から任意の未パッチインスタンス上での 管理者セッション に至るまでの完全な動作ツールキットです。
| フィールド | 値 |
|---|---|
| CVE | CVE-2026-52824 |
| GHSA | GHSA-jr9p-4h4j-6c58 |
| CVSS | 9.1 (Critical) |
| CWE | CWE-1188 — 安全でないデフォルトリソース初期化 |
| 影響を受けるバージョン | Kimai ≤ 2.57.0(Docker イメージ / .env.dist) |
| 修正済み | 2.58.0 |
| クレジット | Trent M.(AzureADTrent) |
Kimai は Docker イメージと .env.dist にハードコードされたデフォルト APP_SECRET を同梱しています:
APP_SECRET=change_this_to_something_unique
v2.57.0 では、remember-me Cookie の signature_properties が空であるため、FieldsHash は定数(SHA256(''))になります。既知のシークレットと組み合わせることで、誰でも任意のユーザー — 管理者を含む — の有効な KIMAI_REMEMBER Cookie を偽造できます。
APP_SECRET → HMAC-SHA256 署名を計算するKIMAI_REMEMBER Cookie を偽造する| 項目 | v2.57.0(脆弱) | v2.58.0(パッチ済み) |
|---|---|---|
| Dockerfile | ENV APP_SECRET=change_this_to_something_unique | ハードコードされたデフォルトなし |
| entrypoint.sh | シークレット生成なし | 初回起動時に bin2hex(random_bytes(32)) を生成 |
| ストレージ | N/A | /opt/kimai/var/data/.appsecret に永続化 |
| ファイル | 目的 |
|---|---|
exploit.py | 単一ターゲットエクスプロイト — Cookie を偽造して認証する |
batch_pwn.py | ホストのリストに対するマルチスレッドバッチエクスプロイト |
quick_scan.py | 2 パススキャナー — クイックフィルター後にディーププローブ |
deep_probe.py | 複数のエンドポイントを介したバージョン検出 |
probe_batch.py | ファイルからホストをプローブしてバージョン + 脆弱性を確認 |
shodan-scanner.py | Kimai インスタンスを発見するための Shodan 統合 |
git clone https://github.com/cyeezy08/Kimai-CVE-2026-49865-POC.git
cd Kimai-CVE-2026-49865-POC
pip install -r requirements.txt
python3 exploit.py https://kimai.example.com
python3 exploit.py https://kimai.example.com admin --dump
# From a file of URLs
python3 batch_pwn.py kimai_hosts.txt results.txt 30
export SHODAN_API_KEY="your_key"
python3 shodan-scanner.py --search --output kimai_hosts.txt
python3 deep_probe.py kimai_hosts.txt versioned_results.txt
python3 quick_scan.py hosts_file.txt
requests — HTTP クライアントshodan — Shodan API クライアント(shodan-scanner.py のみ)このツールキットは 認可されたセキュリティテストおよび研究のみ を目的として提供されています。コンピュータシステムへの不正アクセスは違法です。テスト前に必ず適切な認可を取得してください。作者は誤用に対して一切の責任を負いません。
MIT idk iam tired ok thx