P2PInfectは自己複製ワーム型マルウェアです。
嫌な特徴をいくつか持つ仕上がりになっています。
- 入口は脆弱性
CVE-2022-0543という脆弱性があります。
これはRedisというネットワーク接続された永続化可能なインメモリデータベースの実装に含まれるLua機能部分にある脆弱性です。
この脆弱性がある状態において、リモートから接続しLuaのサンドボックスをエスケープしてホスト側でコードを実行することができる可能性があります。
入口が脆弱性であるため、被害者側での人の誤った操作などの介入は侵害に必要ありません。
ひっそりと侵害が開始されます。 - 第一段階はP2P構築
脆弱性を悪用してまずはP2Pネットワークが侵害環境に構築されます。
P2PはPeer-to-Peerです。
これが活動の基盤となります。 - 攻撃準備
P2Pの動作が可能になると、P2Pネットワークを利用し、実際の活動に必要な各種バイナリを被害環境に持ち込みます。
よくある例だと、環境の種別を判定し、その環境に適合した攻撃用バイナリを持ち込むというものがあると思います。
しかしこのワームは複数の環境に感染できるP2Pを使用した攻撃ですので、対象とするすべての環境用の攻撃に使用するバイナリが取得されます。
現時点ではターゲットはWindowsとLinuxです。 - 増殖
感染すると周辺に感染を広げる動きが始まります。
初期感染と同じRedisの脆弱性による感染を狙ったスキャンと、sshのスキャンとが実行されます。
発見した周辺の機器に対し、感染が試みられます。
増殖先は増殖元と同じOSでなくてもよさそうです。
ターゲットにできるOSであれば、感染してしまいます。 - 目的活動
モジュール型ともいえる構造のため、目的の活動は複数実行することができます。
目的の活動の一つとして、モニタリングが実行されます。
P2PInfectの活動が継続できていることを確認する機能です。
他のモジュールの名称に、minerとwinminerというものも含まれていました。
名前からするといかにもクリプトマイニングしそうなものに見えますが、現時点ではクリプトマイニング活動は実行されていないようです。
ただ、このワームはP2P機構を持っていますので、どこかの時点でマイニングできるモジュールに置き換わっていくかもしれません。 - P2P機構の使用言語
言語にはRustが使用されています。
Rustはコンパイル型なので実行時動作が高速ですし、言語体系自体に他者の解析を困難とする難読化の機構を有します。
またRustで書いたものは他の環境向けにコンパイルすることが容易ですので、いくつもの意味で嫌な選択といえます。
ここまでの特徴だけでも十分に強力に思えます。
さらに嫌なことに、このP2Pは利用するポート番号が可変になっています。
活動環境の制約を回避できる可能性が高い仕上がりといえそうです。
この攻撃は人のなんらかの介入を必要としないものとなっています。
条件を満たせばどこでも感染してしまう可能性があります。
入口の条件を満たさなくするのは、脆弱性の対応です。
今回悪用が確認されている脆弱性は2022年のものです。
タイムリーに更新を適用できている環境は対象にはなりません。
安定した運用を継続し、余計な心配をしなくてよいようにしていこうと思います。
2023/7/24と2023/7/25は、ほぼこもセキュリティニュースはお休みです。
次の更新は2023/7/26以降です。
参考記事(外部リンク):Rust で書かれた自己複製型ピアツーピア ワーム P2PInfect
unit42.paloaltonetworks.jp/peer-to-peer-worm-p2pinfect/
この記事をシェア |
---|