10月6日、海外のテクノロジーメディア「Ars Technicha」が報じたところによると、数千台のLinuxシステムが数年にわたってステルス型のマルウェア「Perfctl」に感染した状態にあるという。
Perfctlは、2021年以降に確認され、20,000以上の一般的な設定ミスを悪用してインターネットに接続されたシステムに感染している。Aqua Securityによると、Perfctlは、Apache RocketMQの深刻な脆弱性(CVE-2023-33246)を利用し、多くのLinuxマシンに悪影響を与えている。この脆弱性の修正はすでに行われているが、適用されていないシステムが依然として危険にさらされている。
Perfctlの特徴
Perfctlは、Linuxの監視ツール「perf」とコマンドラインツールに使われる「ctl」という名称を組み合わせた名前を持つマルウェアである。これは仮想通貨のマイニングを密かに行う悪意あるプログラムだ。さらに、同じ名前のプロセスやファイル名を用いてLinux環境に巧妙に溶け込み、ユーザーに気づかれないように設計されている。
Perfctlの巧妙な点は、ルートキットとして動作し、システムや管理ツールからその存在を隠すところにある。また、TORネットワークを通じた外部との通信、インストール後のバイナリの削除、背景でのサービスとしての実行、pcap_loopプロセスの操作による不正なトラフィックの記録回避など、複数のステルスメカニズムが組み込まれている。
- 検出を回避するための技術
- ルートキットとしてシステムに隠蔽される。
- 新しいユーザーがログインすると検知し、活動を一時停止。
- 外部通信はTORネットワークを使用。
- メッセージエラーログを抑制し、実行時に警告を出さない。
マルウェアの持続性と拡張機能
Perfctlは、再起動や削除の試みを受けても持続的にシステムに留まる能力を持つ。例えば、ユーザーがログインする際に環境を設定する~/.profileスクリプトを改変することで、正当なワークロードの前にマルウェアがロードされるように設定される。さらに、メモリからディスクへの複数箇所へのコピーや、pcap_loopの操作を通じて、検出されても悪意ある活動が続けられるようになっている。
このマルウェアは、システムリソースを使って仮想通貨を採掘するだけでなく、プロキシとしても機能し、攻撃者が通信を中継し、真の発信元を隠すことができる。また、Perfctlはバックドアとして他のマルウェアをインストールするためにも利用されている。
防御策と対策
Perfctlによる感染を防ぐためには、まずCVE-2023-33246の修正パッチを適用し、Aqua Securityが指摘した設定ミスを修正する必要がある。感染の兆候としては、CPU使用率の急上昇や、アイドル状態時のシステムの突然の遅延が挙げられる。これらの問題が発生している場合、Perfctlによる感染の可能性があるため、注意が必要だ。
詳細は[Stealthy Malware Has Infected Thousands of Linux Systems for Years」を参照していただきたい。