F5 BIG-IP Access Policy Management(APM)環境の侵害に関連する、高度なLinuxインプラントが確認されました。
この攻撃活動は、仮想サーバーにアクセスポリシーが設定されている場合にBIG-IP APMに影響する未認証のリモートコード実行の脆弱性、CVE-2025-53521の悪用と関連付けられています。
F5はこの脆弱性の悪用を確認しており、関連する侵害活動をc05d5254キャンペーンに紐付けています。
Hacking& Cracking
従来型のWebシェルは通常、Webからアクセス可能なディレクトリに配置される小さなPHP、JSP、ASPスクリプトです。
このモデルでは、防御側は変更されたファイル、想定外のスクリプト、不審なPOSTパラメータ、改変されたハッシュ値といった具体的な痕跡を追跡できます。
しかしPoisonedRefreshはこの前提を覆します。このインプラントはApacheのPHPモジュールであるlibphp内部のファイル・メモリ操作を横取りし、mmap()操作の際に選択したスクリプトのメモリ上のビューへ悪意あるPHPペイロードを注入します。
ディスク上のオリジナルファイルは無害なまま保たれる一方で、Apacheのワーカープロセスはメモリ上で改変されたバージョンを実行します。
Sophosは、このマルウェアがapm_css.php3、full_wt.php3、webtop_popup_css.php3を含むBIG-IP APMのwebtopファイルを標的にしていることを確認しました。
注入されたペイロードはphp://inputから生データを読み込み、マジックリクエストプレフィックスを確認したうえで残りのコンテンツを復号し、PHPのeval関数で実行します。
応答としてHTTP 201とContent-Type: text/css; charset=utf-8を返すことで、悪意あるコマンド通信を一見正常なCSS関連リクエストに紛れ込ませています。
このバイナリはstrip処理された静的リンクの実行ファイルで、動作に関わる文字列はRC4で暗号化されています。
通常のLinuxプロセス起動シーケンスに従う代わりに、このインプラントは独自のELFローダーを起動し、/proc/self/exe経由で自身を再度開き、埋め込まれたオリジナルの実行ファイルをメモリにマッピングしたうえで、__libc_start_mainのラッパーを経由して実行を誘導します。

これにより、PoisonedRefreshはホストアプリケーションが通常のmain()関数に到達する前に制御を奪うことができます。
GBhackersと共有されたレポートの中でSophosLabsは、このマルウェアがPHP Webシェルを直接メモリに注入することで、ディスク上の正規のPHPファイルは変更しないままApache/PHPプロセスをステルス性の高いバックドアに変えてしまうと述べています。
Antivirus& Malware
この早期の実行ポイントにより、マルウェアはApacheがリクエスト処理を開始する前にAPIの解決、文字列の復号、プロセスメモリの検査、フックの設置を行うことが可能になります。
PoisonedRefreshマルウェア
起動後、このインプラントはApache Portable Runtimeの関数、特にapr_dso_loadをフックし、Apacheがlibphpを読み込むのを待ち構えます。

その後、/proc/self/mapsを通じてPHPモジュールを特定し、一時的にメモリ保護属性を変更してリロケーションや呼び出し先を書き換え、実行フローの変更後に保護属性を元に戻します。
これにより生じるフックはopen、close、mmap、__fxstatといったAPIを横取りし、マルウェアが選択したPHPファイルの開き方、サイズ、マッピング方法を制御できるようにします。
PoisonedRefreshは、/run/bigtlog.pipeにあるUNIXドメインソケットを通じた第二のアクセス経路も備えています。
通常のネットワークスキャンで発見されうるTCPリスナーを公開する代わりに、このインプラントはフックされたapr_time_now関数内での動作を待ち、バックグラウンドワーカーを起動してローカルソケットをバインドします。
認証後、マルウェアは標準入力・出力・エラーストリームをこのソケットにリダイレクトしたうえで、/bin/bashを実行します。
これによりインタラクティブなローカルシェルが作成される一方で、バックドアはフォークされた子プロセスを通じて追加の接続を受け付け続けることができます。
この二重構造により、攻撃者はHTTP経由のコード実行とローカルでの対話的アクセスの両方を手に入れることになります。
SophosはこのインプラントをLinux/Agnt-ICとして検知しており、分析対象のサンプルのSHA-256ハッシュ値は26bd5b0722d1dbab5db749a063c49bc8638653ac2addfead7a9cb3d6d57bccc9です。
BIG-IP APMを運用している組織は、一般的なApache強化策のみに頼るのではなく、まずCVE-2025-53521に関するF5の修復・侵害評価ガイダンスに従うべきです。
この脆弱性は15.1.x、16.1.x、17.1.x、17.5.xの各系列にわたる脆弱なBIG-IP APMバージョンに影響し、パッチ適用済みリリースには15.1.10.8、16.1.6.1、17.1.3、17.5.1.3が含まれます。
防御側は複数の兆候を相関させて確認する必要があります。すなわち、Apacheワーカーが/proc/self/mapsを読み取っていないか、libphp周辺でメモリのパーミッションが書き込み・実行可能から実行可能のみへと変化していないか、/run/bigtlog.pipeが作成されていないか、といった点です。
加えて、Apache関連プロセスが/bin/bashを起動していないか、標的となった.php3ページへの想定外のPOST通信がCSSのコンテンツタイプでHTTP 201を返していないかも確認すべきです。
この事例は、ディスク中心のWebシェル探索がもはや十分ではないことを示しています。PoisonedRefreshによる侵害では、ファイルシステムの調査ではクリーンなPHPスクリプトしか見えない一方で、メモリ、プロセスの挙動、HTTPのテレメトリを見れば、稼働中のバックドアの存在が明らかになります。
★ 7段階のメトリクスゲート方式によるAI SOC導入フェーズを学ぶ – 無料AI SOC導入プレイブック2026をダウンロード。
翻訳元: https://gbhackers.com/poisonedrefresh-malware/