
CVE-2026-41473(CyberPanel AI Scanner 2.4.4以前における、認証されていない読み取り/書き込みAPIアクセスの脆弱性)用のNuclei検出テンプレート。2つのHTTPプローブを使用して認証の欠如を確認します。
CyberPanel 2.4.4 より前のバージョンに影響する CVE-2026-41473 用の Nuclei 検出テンプレートです。
CyberPanel の AI Scanner 機能は、認証なしでアクセスできる 2 つの API エンドポイントを公開しています。
| エンドポイント | メソッド | 影響 |
|---|---|---|
/api/ai-scanner/list-api-keys | GET | 管理者ユーザー名、API キーのプレフィックス、ホストされているドメイン名、スキャン ID を開示する |
/api/ai-scanner/callback | POST | 認証なしでスキャン履歴への任意の書き込みを受け入れる |
両方のエンドポイントは /api/* URL プレフィックスの下にあり、CyberPanel の secMiddleware はこのプレフィックスをセッション認証チェックから無条件に除外します。どちらのエンドポイントに到達するにも、トークン、セッションクッキー、またはいかなる種類の認証情報も必要ありません。
読み取りエンドポイントはターゲットの列挙を可能にします。書き込みエンドポイントはスキャン履歴の改ざんを可能にし、AI Scanner ダッシュボードの格納型 XSS (CVE-2026-41472) と連鎖させると、cron ジョブの操作による未認証のリモートコード実行を達成できます。
CVSS 3.1: AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H — 9.8 Critical
CWE: CWE-306 (重要な機能に対する認証の欠如)
修正バージョン: CyberPanel 2.4.4 (コミット 8eb29181cb137baa4adb4bba5dce60f601d55a5f)
このテンプレートは 2 つのリクエストを送信します。
リクエスト 1 — GET /api/ai-scanner/list-api-keys
ターゲットが AI Scanner 機能が有効な CyberPanel インスタンスであり、読み取りエンドポイントが保護されていないことを確認します。HTTP 200 で JSON 構造 (api_keys、recent_scans、is_payment_configured) にマッチします。管理者ユーザー名、API キーのプレフィックス、ドメイン名、スキャン ID を名前付き出力として抽出します。
リクエスト 2 — 空のボディ {} で POST /api/ai-scanner/callback
実際の書き込みを行うことなく書き込みエンドポイントを調査します。ボディが空の場合 scan_id が存在しないため、サーバーは既存の ScanHistory レコードにマッチしたり変更したりできません。脆弱な サーバー (< 2.4.4) では、認証チェックがスキップされ、Django はエラーボディに scan_id を含む HTTP 400 を返します — サーバーは認証を一切強制せずに入力検証に到達しました。修正済みの サーバー (≥ 2.4.4) では、X-API-Key ヘッダーチェックが最初に実行され、scan_id が読み取られる前に HTTP 401 を返します。
マッチには以下がすべて必要です:
scan_id + application/json コンテンツタイプこの組み合わせにより、認証が一切強制されないまま両方のリクエストで CyberPanel AI Scanner のロジックに到達したことが確認できる一方、WAF ブロック、リバースプロキシエラー、無関係な 400 レスポンスは除外されます。
nuclei -t cyberpanel-aisscanner-unauth-rw-cve-2026-41473.yaml -u https://target:8090
# ターゲットのリストに対して実行する場合
nuclei -t cyberpanel-aisscanner-unauth-rw-cve-2026-41473.yaml -l targets.txt
| バージョン | ステータス |
|---|---|
| AI Scanner を使用する CyberPanel < 2.4.4 | 脆弱性あり |
| CyberPanel ≥ 2.4.4 | 修正済み |
| AI Scanner モジュールなしの CyberPanel | 影響なし |
AI Scanner 機能がない CyberPanel インスタンス (通常は 2.3 より前のバージョン) はマッチしません — list-api-keys エンドポイントは 404 を返し、テンプレートは発火しません。