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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
POC-CVE-2025-24813-Apache-Tomcat-Remote-Code-Execution — このリポジトリには、教育およびサイバーセキュリティ研究目的で開発された自動化エクスプロイトが含まれており、Apache Tomcat (CVE-2025-24813) における潜在的なリモートコード実行 (RCE) の脆弱性を実証することを目的としています。 | Kitploit
ツール/GitHubGitHub/makavellik/poc-cve-2025-24813-apache-tomcat-remote-code-execution
脆弱性分析エクスプロイトウェブアプリケーション悪用WAFバイパスペネトレーションテスト学習と教育ペイロード開発
GitHubmakavellik/poc-cve-2025-24813-apache-tomcat-remote-code-execution

POC-CVE-2025-24813-Apache-Tomcat-Remote-Code-Execution

このリポジトリには、教育およびサイバーセキュリティ研究目的で開発された自動化エクスプロイトが含まれており、Apache Tomcat (CVE-2025-24813) における潜在的なリモートコード実行 (RCE) の脆弱性を実証することを目的としています。

リポジトリを見る
271年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

Python License MIT Active Stealth Mode Simbiosis


⚠️🚀 CVE-2025-24813 — Apache Tomcat RCE Exploitation Suite

root@kitploit:~

⚡ バージョン: 1.0 🛡️ CVE ID: CVE-2025-24813 (Apache Tomcat RCE) 🧬 ペイロード: ysoserial / Java 🌐 モード: インタラクティブ + ステルス 🔬 用途: 倫理的、研究的、教育的


🌌 概要

このツールは、以下の点に焦点を当てた未来的なエクスプロイトスイートとして設計されています。

  • 🔍 CVE-2025-24813 に対する Apache Tomcat の評価
  • 🛠️ 概念実証(PoC)プロセスの自動化
  • 🧠 高度な回避機能を備えたカスタムペイロードの実行
  • 🧬 最新の防御(WAF、検出、模擬トラフィック)への適応

🧪 サイバーセキュリティ専門家、研究者、ペネトレーションテスター、レッドチーム向けに設計されています。


🧠 このスクリプトの動作

🛸 主な機能

✅ 直感的なインタラクティブインターフェース

✅ 動的ペイロード(ysoserial またはコンパイル済み Java)

✅ カメレオンヘッダーによる WAF 対策

✅ 自動回避 + ペイロードの断片化

✅ バックエンドでの実行フィンガープリント

✅ ターゲットごとの詳細なログ

✅ サイバーパンク風の動的バナー(🔮 グリッチアニメーション)

✅ コンソールでのライブフィードバック(Rich & Colorama 使用)


⚙️ 必要条件

必要な要件をインストールするには:

root@kitploit:~
pip install -r requirements.txt

依存関係:

root@kitploit:~
requests
colorama
rich
validators

さらに、以下の環境が必要です:

  • ☕ Java および javac が PATH に存在すること
  • 📦 ysoserial.jar(ysoserial ペイロードを使用する場合)

🧪 使用方法

スクリプトを実行します:

root@kitploit:~
python3 POC-Exploit_CVE_2025_24813.py

そして設定を完了します:

🧬 ペイロードタイプを選択 💣 コマンドを指定 🌐 ターゲットの URL を入力 🔧 回避設定と SSL 設定を調整

🎯 表示例:

root@kitploit:~
🔗 [?] ターゲットの URL を入力: https://victima.org
💣 [?] 実行するコマンド: whoami
🧬 [?] ペイロードタイプ: ysoserial
📂 [?] ysoserial.jar へのパス: ysoserial.jar
🔧 [?] ガジェット: CommonsCollections6
🔐 [?] SSL を確認しますか? (はい/いいえ): いいえ

🚀 実行中...
🧬 WAF を検出... 戦略を変更
⚙️ ペイロードのアップロード中...
💥 リモート実行の確認
✅ 結果: 'apache'

🌈 スクリプトのビジュアルアーキテクチャ

root@kitploit:~
┌──────────────────────────────┐
│  インタラクティブモード      │
├──────────────────────────────┤
│  URL 検証                   │
│  セッション検出              │
│  WAF 検出                   │
│  ペイロード生成              │
│  PUT による回避アップロード  │
│  実行の確認                  │
└──────────────────────────────┘
        ↘ ターゲットごとのログ

🧬 ペイロードタイプ

  • ysoserial: 有名なツール ysoserial に基づき、脆弱なガジェットをシリアライズしてコマンドを実行します。
  • Java Custom: サーバー上でリモートコマンドを実行するカスタム .java ファイルをコンパイルします。

よく使われるガジェット:

  • CommonsCollections6
  • Spring1
  • Jdk7u21

📁 プロジェクト構造

root@kitploit:~
POC-Exploit_CVE_2025_24813.py   # メインスクリプト
ysoserial.jar               # 'ysoserial' を使用する場合に必要
logs/                       # ターゲットごとの個別ログフォルダ
payload.ser                 # 一時的に生成されるペイロード
Exploit.java / .class       # Java 用の一時ファイル

👨‍⚖️ 責任ある倫理的な使用

このツールは法的かつ教育的目的のみで作成されました。

✅ 許可される使用:

  • 許可を得たセキュリティ監査
  • 個人のラボおよびテスト環境
  • 学術研究

🚫 禁止される使用:

  • 同意なしの他システムへの使用
  • 違法または無許可の活動
  • 悪意のある目的での配布

⚖️ 免責事項

作者および協力者は、誤った使用について一切の責任を負いません。あなた自身の行動に責任を持ってください。


🧠 クレジット

  • 👤 作者: [ByMakaveli]
  • 🔬 研究: 最新の Java 回避およびエクスプロイト技術に基づく
  • 🧰 使用したツール: ysoserial、Java、Rich、Colorama、requests

🛰️ 参照 CVE

📄 CVE-2025-24813: Apache Tomcat Remote Code Execution 🔗 CVE MITRE で詳細を確認


📜 ライセンス

root@kitploit:~
MIT License

Copyright (c) 2025

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files...

詳細については LICENSE ファイルを参照してください。


💎 ビジュアルインスピレーション

この README とスクリプトは、没入感のある、視覚的でエレガントな体験を提供するように設計されており、新しい時代の未来的なサイバーセキュリティと目的意識に調和しています。

✨ 単なるエクスプロイトではありません... それは回避とデジタル制御の技術的交響曲です。



🔧 必要な依存関係

1. Python

  • 推奨バージョン: Python 3.8+

  • インストールする Python ライブラリ:

    root@kitploit:~
    pip install requests colorama
    

2. Java

このスクリプトは2種類のペイロードを使用します:

  1. Ysoserial → デシリアライズペイロードを生成する外部 Java ツール。
  2. 自作 Java コンパイル → "ysoserial" の代わりに "java" オプションを選択した場合。

そのため、以下が必要です:

  • Java JDK(コードをコンパイルするため、JRE だけでは不十分)。 以下で確認:

    root@kitploit:~
    java -version
    javac -version
    

    両方のコマンドが正常に動作すれば準備完了です。


3. Ysoserial

  • .jar ファイルをこちらからダウンロード 👉 https://github.com/frohoff/ysoserial

  • スクリプトと同じディレクトリに保存するか、要求されたときにフルパスを指定します。 例:

    root@kitploit:~
    java -jar ysoserial.jar CommonsCollections6 "calc.exe" > test.ser
    

4. オペレーティングシステム

  • Windows では、デフォルトのペイロード (calc.exe) が電卓を開きます。
  • Linux/Mac では、コマンドを例えば gnome-calculator や xcalc に変更できます。

⚙️ インストールのまとめ

  1. Python 3.8+ をインストール

  2. ライブラリをインストール:

    root@kitploit:~
    pip install requests colorama etc
    
  3. Java JDK 8+ をインストール

    root@kitploit:~
    java -version
    javac -version
    
  4. ysoserial.jar をスクリプトフォルダにダウンロード


👉 これで、安全なラボモード(管理されたテスト環境のみ)でスクリプトを実行できるようになります。


🛡️ README — 安全なステップバイステップチュートリアル

バージョン: 1.0 目的: このガイドでは、あなたのスクリプトを完全に安全な環境でテストする方法を説明します。実際のシステムに影響を与えることなく、テストサーバー(モック)、セーフモード(DRY_RUN / SAFE_TEST)、およびラボでツールを実行するための明確な手順を提供します。


⚠️ 法的および倫理的な注意事項(開始前にお読みください)

  • 自分の管理下にある環境でのみ実行してください:ローカル仮想マシン、コンテナ、または隔離されたネットワーク。
  • 明示的な書面による許可なしに、サードパーティのシステムに対して実行しないでください。
  • このガイドは、実際のサーバーをエクスプロイトする手順を提供するものではありません。防御的および教育的なテストを目的としています。

🔍 このチュートリアルの内容

  1. 隔離された Python 環境の準備。
  2. ターゲットサービスの応答をシミュレートするテストサーバー(モック)の作成。
  3. テスト用の無害なペイロード(ダミー)の準備。
  4. 外部ツールを実行したり危険なアクションを実行しないセーフモード(SAFE_TEST)のスクリプトへの追加。
  5. ステップバイステップの実行と結果(ログ)の確認。
  6. 自動テストとベストプラクティス。

🧾 必要条件

  • Python 3.8+ がインストールされていること。
  • pip が利用可能であること。
  • 推奨:virtualenv または venv。

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

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate   # Linux / macOS
.\.venv\Scripts\activate  # Windows (PowerShell/Command Prompt)

pip install -U pip
pip install requests colorama flask

注意: flask はローカルのテストサーバー(モック)にのみ使用されます。


🧪 1) テストサーバー(モック)— 安全なコード

以下の内容で mock_server.py ファイルを作成します。このサーバーは、スクリプトが期待するエンドポイントをシミュレートし、状態コード(200、409、500)を制御して返すため、実際のサーバーに触れることなくスクリプトのロジックを検証できます。

root@kitploit:~
# mock_server.py — 安全なテストサーバー
from flask import Flask, request, make_response, jsonify

app = Flask(__name__)
uploads = {}

@app.route('/index.jsp', methods=['GET'])
def index():
    # JSESSIONID クッキーまたは "Session ID" を含むテキストを返すページをシミュレート
    resp = make_response('Index page — Session ID: testsession')
    resp.set_cookie('JSESSIONID', 'testsession')
    return resp

@app.route('/check.txt', methods=['PUT'])
def check_put():
    # 書き込み可能なリソースをシミュレート
    return ('OK', 200)

@app.route('/uploads/../sessions/<session_id>.session', methods=['PUT'])
def upload_session(session_id):
    # アップロードは受け付けられたが 409 を返す(スクリプトが期待する動作)
    uploads[session_id] = True
    return ('Conflict - uploaded', 409)

@app.route('/', methods=['GET'])
def root():
    # クッキーが一致し、セッションが "アップロード" された場合、デシリアライズ失敗をシミュレートするため 500 を返す
    session = request.cookies.get('JSESSIONID')
    if session and uploads.get(session):
        return ('Internal Server Error', 500)
    return ('Hello from mock server', 200)

if __name__ == '__main__':
    app.run(host='127.0.0.1', port=8000, debug=True)

実行方法:

root@kitploit:~
python mock_server.py
# モックは http://127.0.0.1:8000 で待機します

📁 2) 無害なダミーペイロードの準備

テストのために実際のペイロードを生成する必要はありません。スクリプトがアップロードできるシンプルなファイルを作成します:

root@kitploit:~
echo "DUMMY_PAYLOAD" > payload.ser

このファイルには実行可能なコードは含まれていません。アップロードのロジックを検証し、モックサーバーの応答を確認するためだけに使用します。


⚙️ 3) オリジナルスクリプトにセーフモード(SAFE_TEST)を追加

スクリプトが外部ユーティリティ(Java/ysoserial)を呼び出したり危険なアクションを実行したりしないように、メインスクリプトの先頭(ペイロード生成/サブプロセス呼び出しの前)に以下のブロックを追加します:

root@kitploit:~
import os
SAFE_TEST = os.environ.get('SAFE_TEST', '0') == '1'

次に、SAFE_TEST が True の場合に安全に動作するように、生成/アップロード関数を変更(またはラップ)します。

generate_ysoserial_payload と generate_java_payload の最小限の変更例:

root@kitploit:~
def generate_ysoserial_payload(command, ysoserial_path, gadget, payload_file, target_url):
    if SAFE_TEST:
        log_info("SAFE_TEST 有効 — ダミーペイロードを作成中(実行不可)", target_url)
        with open(payload_file, 'wb') as f:
            f.write(b"DUMMY_PAYLOAD")
        return payload_file
    # --- 元の動作(SAFE_TEST == False の場合のみ)---


def generate_java_payload(command, payload_file, target_url):
    if SAFE_TEST:
        log_info("SAFE_TEST 有効 — Java ダミーペイロードを作成中(実行不可)", target_url)
        with open(payload_file, 'wb') as f:
            f.write(b"DUMMY_JAVA_PAYLOAD")
        return payload_file
    # --- 元の動作(SAFE_TEST == False の場合のみ)---

そして、upload_and_verify_payload 関数では、SAFE_TEST が True の場合、通常のフローを使用します(モックが受け入れます)が、スクリプト外でコマンドを実行しないでください。

SAFE_TEST の有効化方法:

  • Linux/macOS:

    root@kitploit:~
    export SAFE_TEST=1
    
  • Windows (PowerShell):

    root@kitploit:~
    $env:SAFE_TEST = "1"
    

▶️ 4) ステップバイステップの実行(セーフモード)

  1. 仮想環境を起動し、依存関係がインストールされていることを確認します(必要条件のセクションを参照)。

  2. mock_server.py を起動します:

    root@kitploit:~
    python mock_server.py
    
  3. SAFE_TEST を使用しない場合、または SAFE_TEST が自動的にペイロードを作成しない場合、ダミーペイロードを作成します:

    root@kitploit:~
    echo "DUMMY_PAYLOAD" > payload.ser
    
  4. ターミナルでセーフモードを有効にします:

    root@kitploit:~
    export SAFE_TEST=1   # Linux/macOS
    # PowerShell の場合: $env:SAFE_TEST = "1"
    
  5. メインスクリプトを実行します:

    root@kitploit:~
    python3 tu_script.py
    
  6. プロンプトに答えます(ラボ値を使用します):

    • ターゲット URL を入力: http://127.0.0.1:8000
    • 実行するコマンドを入力: デフォルトのまま(SAFE_TEST では実行されません)
    • ペイロードタイプ: ysoserial(SAFE_TEST=1 の場合、スクリプトは外部ツールを呼び出さずにダミーペイロードを作成します)
    • ysoserial.jar へのパス:(ysoserial.jar のままにできます — セーフモードでは使用されません)
    • SSL を確認しますか? いいえ(モックは HTTP を使用)
  7. コンソール出力を確認します:Server is writable via PUT、Payload uploaded with status 409、Exploit succeeded! Server returned 500 after deserialization. というメッセージが表示されるはずです — これはモック上でのみの動作であり、スクリプトの論理フローが機能していることを意味します。

  8. logs/ のログを確認します — スクリプトはタイムスタンプ付きのエントリを保存します。例:logs/127_0_0_1_8000.log(サニタイズされたターゲット名に応じて)。


🔎 5) テストで確認すべき項目

  • check_writable_servlet 関数が /check.txt エンドポイントへの PUT 成功を検出すること。
  • payload.ser をアップロードした後、モックが 409 を返し、スクリプトが JSESSIONID クッキーを使って GET リクエストを行うこと。
  • モックが 500 を返し、スクリプトがそれを論理的な成功として解釈すること。
  • ログに期待されるエントリがすべて含まれていること、および一時ファイル(存在する場合)が削除されていること。

🧪 6) ユニットテスト(推奨)

  • pytest と requests-mock を使用して HTTP 応答をシミュレートします。

  • 以下のテストを作成します:

    • validate_url — 有効/無効な入力。
    • retry_request — 例外とリトライのシミュレーション。
    • detect_waf — 署名の有無による Server ヘッダーのシミュレーション。
    • upload_and_verify_payload — サーバーモックを使用してフローを検証。

requests-mock を使用した簡単な例(スケルトン):

root@kitploit:~
# test_script.py
import requests
import requests_mock
from tu_script import validate_url, retry_request

def test_validate_url():
    assert validate_url('http://127.0.0.1:8000')
    assert not validate_url('notaurl')

def test_retry_request_success():
    # requests_mock を使用して GET をシミュレートし、retry_request をテスト
    pass

著者:ByMakavali

❌ やってはいけないこと

  • 許可されていない外部ターゲットに対してスクリプトを実行しないでください。
  • 調整と責任ある開示なしに、機能的なペイロードや PoC を公開しないでください。
  • 厳格な制御なしに攻撃を自動化できるツールを配布しないでください。

ツールをダウンロード