- ライター:榊原 諒
- NetOne-SOC セキュリティアナリスト。
2020年にネットワンシステムズ入社後より、SOCアナリストとして従事。
目次
はじめに
NetOne-SOCでは、セキュリティ監視サービス提供しており、24時間365日で悪意ある第三者からの様々なサイバー攻撃の通信を検知しています。
本記事では、NetOne-SOCにて2025年10月から12月に検知したセキュリティイベント全体の検知傾向と、期間中に新たに公開された脆弱性のうち、影響が大きい以下2つの脆弱性についてご紹介します。
- React Server Componentsにおけるリモートコード実行の脆弱性(CVE-2025-55182)
- Apache Tomcatにおけるディレクトリトラバーサルの脆弱性(CVE-2025-55752)
攻撃通信の全体傾向
以下の図は、2025年10月から12月にNetOne-SOCで検知した攻撃通信を分類し、カテゴリー別の検知数の割合を示したグラフです。
図 1 攻撃通信の全体傾向(2025年10月~12月)
検知された通信の多くは、攻撃対象の情報収集や調査などの偵察を目的としたscanカテゴリーに分類される通信で、全体の約70%を占めていました。特に、SIP機器を探索するスキャナであるSIPViciousを用いた通信が多く確認されました。
次に検知が多かったカテゴリーはbrute-forceでした。VPN装置やWordPressのログイン画面に対するブルートフォースによるログイン試行を多数検知しています。
また、10月~12月では、期間内に影響の大きいコード実行に関する脆弱性が公開されたことから、code-injectionのカテゴリーの検知が3番目となりました。中でも12月に公開されたReact server componentsの脆弱性(CVE-2025-55182)は、認証不要でリモートコード実行につながる可能性がある非常に深刻な脆弱性であり、本脆弱性を狙った攻撃通信が多数検知されました。国内外で悪用が確認・報告されているため、今後も攻撃者による探索や攻撃が増加する可能性が高いです(※1)。
全体的な傾向として、サービスの設定状況や脆弱性の有無を見極めるための調査目的の通信が中心でした。これらのスキャン対象となるサービス等を利用している場合、脆弱性の悪用や不正アクセスなどの被害につながる可能性があります。被害を最小限に抑えるため、外部からのアクセス制御の強化に加え、サービスのバージョン更新やパッチ適用などの対策が必要です。
次に、2025年10月~12月の期間に検知したセキュリティイベントのうち、期間内に公開された影響の大きい脆弱性を2件取り上げて紹介します。
React Server Componentsにおけるリモートコード実行の脆弱性(CVE-2025-55182)
2025年12月3日にReactの開発チームがReact Server Componentsにおける認証不要のリモートコード実行の脆弱性(CVE-2025-55182)を公開しました(※2)。本脆弱性はCVSS v3.1で深刻度10.0 (Critical)と評価されており、CISAは12月5日に、脆弱性の悪用が確認されたためKEVに登録しました。本脆弱性は、複数のAPTアクターがマルウェアの展開に利用していることが観測されています。NetOne-SOCでも本脆弱性を狙った無差別的なスキャンや攻撃通信を多数検知しています。
React Server Componentsでは、クライアント/サーバ間のデータ送受信にReact Flight と呼ばれる独自のシリアライズ形式が用いられます。本脆弱性は、この Flight プロトコルにおけるサーバ側のデシリアライズ(復元)処理で、入力データに対する検証が不十分であることに起因します。復元処理の過程でオブジェクトのキー(プロパティ)が「オブジェクト自身のプロパティ」か、「継承元(prototype)由来のプロパティ」かを適切に判定して取り扱う必要がありますが、本脆弱性があるバージョンではこの判定が適切に行われません。そのため、攻撃者が細工したデータを送信することで、復元処理を誤った方向に誘導し、最終的に任意のコードを実行することが可能になります。
NetOne-SOCでは、脆弱性の悪用を狙った通信として、図2の通信を検知しました。
図 2 React Server Componentsの脆弱性に対する攻撃通信
Flightのデータはchunk(チャンク)と呼ばれる単位に分割して扱われ、chunk間は相互参照が可能です。参照は "$<番号>" や "$@<番号>" のような記法で表現されます。図2では、chunk 0に細工されたデータが含まれ、chunk 1には "$@0" が記載されています。"$@0"は「0番のchunkを参照し、解決(復元)せよ」という指示であり、サーバはchunk 0を参照しながら復元処理を進めます。一方、chunk 0の先頭付近には 「”$1:__proto__:then”」のような参照パスが含まれています。これは、別の参照($1)を起点に、_proto_(プロトタイプ)経由でthen(※)を参照させる意図を持ちます。
※JavaScriptではthenを持つ値はPromise(thenable)とみなされ、通常とは異なる処理に分岐させることが可能です
本来であればthenが「自分自身のプロパティ」か、「prototype由来」かを安全に判定し、prototype側のthenを参照させない必要がありますが、脆弱な実装では検証が不十分であるため、chunk 0のthenがprototype側のthenに置き換えられ、攻撃者は復元処理を本来通らないルートへ誘導させることが可能です。
また、chunk 0には “status”: "resolved_model" といった状態情報が含まれており、復元処理に対して、「このchunkは解決済みであり、復元に必要なモデルが揃っている」と誤認させ、後段処理のモデル初期化(=内部構造の解析・オブジェクト化)へ進ませる意図があります。これにより攻撃者が用意した不正な構造が復元処理に取り込まれ、不正な構造を辿ることで、Function コンストラクタへ到達し得ます。Function コンストラクタは文字列をコードとして評価・実行できるため、到達した場合には「データをコードとして評価する」経路が成立し、任意のコード実行に至ります。
図2の通信では攻撃コードとして、process.mainModule.require('child_process').execSync(...) のように Node.js のchild_processモジュールを読み込み、execSyncによりシェルコマンドを同期実行する形が確認されました。コマンドの内容は、/tmp 配下へスクリプトをダウンロードし、実行権限の付与とスクリプト実行を試みていました。さらに、ncコマンドやmkfifoコマンドを用いてリバースシェルを確立し、遠隔操作可能な状態を作成する試みも含まれていました。
本脆弱性は、React Server Componentsを利用するあらゆるフレームワークが影響を受ける可能性があります。国内でも悪用の事例が観測されているため、脆弱なバージョンやReact Server Componentsを使用するフレームワーク(例:Next.js)を利用している場合は、早急に修正バージョンの適用をすることを推奨します。
Apache Tomcatにおけるディレクトリトラバーサルの脆弱性(CVE-2025-55752)
2025年10月28日にApache Tomcat に存在する複数の脆弱性について公開されました(※3)。このうち、CVE-2025-55752はCVSS v3.1で深刻度7.5(重要)と評価されています。本脆弱性は、ディレクトリトラバーサルの脆弱性であり、クエリパラメータをURLに書き換えるルールを使用している場合、攻撃者がリクエストURIを操作することで、/WEB-INF/や/META-INF/の保護を含むセキュリティ制約を迂回できる可能性があるというものです。さらにHTTP PUTリクエストが有効になっている場合には、悪意のあるファイルがアップロードされ、リモートコード実行が行われる恐れがあります。
実際にNetOne-SOCで検知した通信を見ていきます(図3)。
図 3 Apache Tomcat の脆弱性(CVE-2025-55752)に対する攻撃通信
本脆弱性は、TomcatにおけるURL書き換え機能である RewriteValve に起因します。脆弱な実装では、URLをデコードする前に正規化を実施します。この処理順序の場合、%2e (.) や%2f (/) のようにエンコードされた「../」 を正規化処理が認識できず、正規化をすり抜けた後にURLデコードが行われることで、ディレクトリトラバーサルが成立します。図3では、攻撃者が通常外部公開されない「WEB-INF」配下の設定ファイル(web.xml)への参照を試みていました。本脆弱性は原理としては単純ですが、環境設定(HTTP PUTが有効な場合)によっては、ファイルアップロードと組み合わせることで、WebShellの配置からリモートコード実行に至る可能性もあります。そのため、脆弱なバージョンをご利用の場合には、修正バージョンへの早急なアップデートを推奨します。
まとめ
今回は、NetOne-SOC にて検知したセキュリティイベントの傾向と対象期間内に公開された影響の大きい脆弱性2つについて取り上げました。NetOne-SOCでは、このような通信をセキュリティアナリストが24時間365日体制で分析しています。今回の内容はあくまでNetOne-SOCで検知したセキュリティイベントのみを取り上げているため、インターネット全体の傾向とは乖離があるかもしれませんが、1つの情報として参考にしていただけると幸いです。
最後に弊社セキュリティサービスにご興味がある方はこちらのページもご参照ください。
セキュリティサービス | ネットワンシステムズ
【参考URL】
- ※1:React Server Componentsの脆弱性(CVE-2025-55182)について | JPCERT/CC
- ※2:Critical Security Vulnerability in React Server Components | React
- ※3:Apache Tomcatにおける複数の脆弱性(CVE-2025-55752、CVE-2025-55754、CVE-2025-61795) | JVN
※本記事の内容は執筆者個人の見解であり、所属する組織の見解を代表するものではありません。
