6月14日、Michael Larabelが「Arch Linux AUR Hit By Another Wave Of Now More Sophisticated Malware Attack」と題した記事を公開した。
Arch LinuxのAUR(Arch User Repository)が立て続けにマルウェア攻撃を受けている。開発者たちが1,500以上の感染パッケージを削除したわずか1日後、より洗練された難読化マルウェアの第二波がAURを襲った。攻撃は数時間おきに波状的に続いており、一部の開発者はAIモデルを使ってマルウェアを検出する事態にまで発展している。Node.jsパッケージからFirefox拡張機能、NeoVimプラグインまで幅広いカテゴリが標的となっており、組織的な攻撃である可能性が高い。
前日の大規模攻撃:1,500パッケージが削除
Arch Linuxチームは6月13日、AURから1,500以上のマルウェア感染パッケージを削除した。この第一波の攻撃では、悪意のあるコードが比較的発見しやすい形で含まれていたため、開発者たちは迅速に対応できた。しかし攻撃者は手法を改良し、わずか24時間後に再び攻撃を仕掛けてきた。
AURはArch Linuxユーザーが自由にパッケージを投稿・共有できるコミュニティ駆動型のリポジトリだ。公式リポジトリにはない最新ソフトウェアや特殊なツールを入手できる点がArch Linuxの強みの一つだが、投稿されるパッケージの安全性検証はユーザー自身の責任となる。この信頼ベースのシステムが、今回組織的に狙われている。
第二波:難読化コードで検出を回避
6月13日夜、開発者a821がAUR-generalメーリングリストで第二波の発見を報告した。今回の攻撃の特徴はコードの難読化にある。攻撃者は悪意のあるコードの意図を隠蔽するため、従来よりも高度な手法を用いている。
影響を受けたパッケージは以下の通り:
- 複数のNode.jsパッケージ
- Plasma 6アプレットパッケージ
- 複数のFirefoxパッケージ
- Auraブラウザ
- LibreWolf拡張機能
- NeoVimプラグイン
- その他の各種パッケージ
a821は影響を受けたパッケージが対処されたと報告したが、攻撃はさらに続いた。
AI検出の導入:人間の目では限界に
数時間後、開発者Nicolas Boichatがさらに洗練されたマルウェアを発見した。注目すべきは、BoichatがローカルのGemma 2B AIモデル(Googleが開発した軽量LLM)を使用してこれらのマルウェアを検出した点である。
Boichatによれば、この新たなマルウェアは「より手の込んだもの(a bit more elaborate)」で、Bunコマンド周辺の動作を難読化していたという。人間による目視レビューだけでは発見が困難なレベルに達していることを示している。
画像は難読化されたインストールコマンドの一例だ。通常の人間が読んでも悪意のあるコードだと判断するのは難しい。
AUR一時閉鎖の可能性も
元記事では、この段階でAURを完全にシャットダウンしていないことに驚きが示されている。少なくとも、変更に対する新たなセーフガードを実装するまで、あるいはユーザー提供リポジトリのセキュリティと安全性をより適切に検証できるようになるまで、一時的に閉鎖することも検討すべきではないかという意見だ。
24時間以内に複数の波が押し寄せ、しかも攻撃手法が急速に洗練されている状況は、単発の攻撃ではなく組織的なキャンペーンである可能性を示している。攻撃者は前回の対策を学習し、次々と新しい手法を試している。
AURの利便性とセキュリティのバランスをどう取るか、Arch Linuxコミュニティは難しい判断を迫られている。コミュニティ駆動型リポジトリという性質上、完全な検証体制を敷くことは現実的ではないが、現状のままでは被害が拡大する恐れもある。
詳細はArch Linux AUR Hit By Another Wave Of Now More Sophisticated Malware Attackを参照していただきたい。