北朝鮮ハッカーが EtherRAT マルウェア攻撃で React2Shell 脆弱性を悪用

Image

最近の React2Shell 攻撃で投入された新たなマルウェア「EtherRAT」は、Linux 上で 5 種類の永続化メカニズムを実行し、攻撃者との通信に Ethereum スマートコントラクトを利用します。

クラウドセキュリティ企業 Sysdig の研究者は、このマルウェアが北朝鮮による「Contagious Interview(感染性インタビュー)」キャンペーンで使われているツールと整合していると考えています。

彼らは、重大な React2Shell 脆弱性CVE-2025-55182 として追跡)が公開されてからわずか 2 日後に、侵害された Next.js アプリケーションから EtherRAT を回収しました。

Sysdig は、ブロックチェーンベースの C2(コマンド&コントロール)通信、多層的な Linux 永続化、オンザフライのペイロード書き換え、完全な Node.js ランタイムを用いた回避など、EtherRAT が持つ高度な機能の組み合わせを強調しています。

「Contagious Interview」作戦を実行している Lazarus グループの活動と大きな共通点はあるものの、EtherRAT にはいくつかの重要な点で違いがあります。

React2Shell は、React Server Components(RSC)の「Flight」プロトコルに存在する、最大深刻度のデシリアライズ脆弱性であり、細工された HTTP リクエストを介して、認証なしでリモートコード実行を可能にします。

この欠陥は React/Next.js を実行している多数のクラウド環境に影響を与えており、先週末の公開から数時間後には、すでに野外での悪用が始まりました。最初にこれを攻撃に利用した脅威アクターの一部は、中国と関連する Earth Lamia と Jackpot Panda です。

その後、自動化された悪用が続き、複数の業種にまたがる少なくとも 30 組織が侵害され、認証情報の窃取、暗号通貨マイニング、汎用バックドアの展開が行われました。

EtherRAT の攻撃チェーン

Sysdig によると、EtherRAT は多段階の攻撃チェーンを用いており、まず React2Shell を悪用して、標的上で base64 エンコードされたシェルコマンドを実行することから始まります。Sysdig は述べています

このコマンドは、curlwget、あるいはフォールバックとして python3 を使って悪意あるシェルスクリプト(s.sh)のダウンロードを試み、成功するまで 300 秒ごとにループします。スクリプトが取得されると検査され、実行可能ファイルに変換されて起動されます。

Image
スクリプトのロジック
出典: Sysdig

このスクリプトは、ユーザーの $HOME/.local/share/ ロケーションに隠しディレクトリを作成し、そこに正規の Node.js v20.10.0 ランタイムを nodejs.org から直接ダウンロードして展開します。

その後、暗号化されたペイロードの塊と難読化された JavaScript ドロッパーを書き込み、ダウンロードした Node バイナリを使ってドロッパーを実行し、自身は削除されます。

難読化された JavaScript ドロッパー(.kxnzl4mtez.js)は暗号化されたブロブを読み込み、ハードコードされた AES-256-CBC キーを使って復号し、その結果を別の隠し JavaScript ファイルとして書き出します。

復号されたペイロードが EtherRAT インプラントです。これは前段階でインストールされた Node.js バイナリを用いて展開されます。

高度なインプラントの証

EtherRAT は C2 操作に Ethereum スマートコントラクトを利用しており、運用上の柔軟性とテイクダウンへの耐性を備えています。

このマルウェアは 9 つのパブリック Ethereum RPC プロバイダに並列でクエリを投げ、過半数の応答結果を採用することで、単一ノードのポイズニングやシンクホール化を防ぎます。

マルウェアは 500 ミリ秒ごとにランダム化された CDN 風の URL を C2 に送信し、オペレーターから返される JavaScript を AsyncFunction コンストラクタを使って実行します。この仕組みにより、完全にインタラクティブな Node.js シェルとして機能します。

Image
ランダム化された URL の構築
出典: Sysdig

北朝鮮のハッカーは、マルウェアの配信と拡散にスマートコントラクトを以前から利用してきました。この手法は EtherHiding と呼ばれ、GoogleGuardioLabs のレポートで以前から説明されています。

さらに Sysdig の研究者は、「EtherRAT で使用されている暗号化ローダーパターンは、Contagious Interview キャンペーンで使われた、DPRK(北朝鮮)関連の BeaverTail マルウェアと非常によく一致している」と指摘しています。

Linux 上での EtherRAT の永続化

Sysdig は、EtherRAT マルウェアが Linux システム上で非常に攻撃的な永続化を行っており、冗長性のために 5 つのレイヤーをインストールするとコメントしています。

  • Cron ジョブ
  • bashrc へのインジェクション
  • XDG オートスタート
  • systemd ユーザーサービス
  • profile へのインジェクション

複数の永続化手法を用いることで、マルウェアのオペレーターは、システムの再起動やメンテナンス後も侵害ホストへのアクセスを維持できるようにしています。

EtherRAT のもう一つの特徴的な機能は、ソースコードを API エンドポイントに送信することで自己更新できる点です。マルウェアは同じ機能を持ちながら異なる難読化を施された置き換えコードを受け取り、それで自身を上書きし、更新されたペイロードで新しいプロセスを生成します。

Sysdig は、このメカニズムが静的検出の回避に役立つほか、解析を妨げたり、ミッション固有の機能を導入したりするのにも役立つ可能性があると推測しています。

React2Shell の悪用が多数のアクターによって進行中であることから、システム管理者には、できるだけ早く安全なバージョンの React/Next.js へアップグレードすることが推奨されています。

Sysdig はレポートの中で、EtherRAT のステージングインフラや Ethereum コントラクトに関連する、短い侵害指標(IoC)のリストを提供しています。

研究者らは、ユーザーに対し、掲載されている永続化メカニズムの有無を確認し、Ethereum RPC トラフィックを監視し、アプリケーションログを精査し、認証情報をローテーションすることを推奨しています。

翻訳元: https://www.bleepingcomputer.com/news/security/north-korean-hackers-exploit-react2shell-flaw-in-etherrat-malware-attacks/

ソース: bleepingcomputer.com