PoeLLMマルウェア、詩を手がかりに大規模ボットネットを構築

オープンソースのAIサービスを狙い、詩を技術的な手がかりとして拡大を続けるボットネットを構築するマルウェアが、4月以降に3,400台超のサーバーを侵害しました。Lumen TechnologiesのBlack Lotus Labsが水曜日に公表したレポートで明らかにしました。 

この詩は、攻撃者が書いてGitHubリポジトリに投稿したもので、一見すると無害です。しかし実際には、研究者らが「PoeLLM」と呼ぶ、ステルス性の高いマルウェアを動かしています。詩から抽出した4つの特定の単語は、少なくとも十数回書き換えられてきました。マルウェアに埋め込まれた固定の辞書を通じて、これらの単語がコマンド&コントロール(C2)サーバーのアドレスに変換されます。この仕組みがPoeLLMの耐障害性を高めています。

Black Lotus Labsの情報セキュリティエンジニア、Ryan English氏はCyberScoopの取材に次のように語りました。「詩を使う手法で最も興味深いのは、C2通信に使うIPアドレスが、被害者のネットフロー以外では見えないことです。ほかのマルウェアの検体では、固定のフォールバックC2アドレスや、インターネット上のどこかに書かれたIPアドレスを指すURLが含まれていることがあります」

同氏は続けます。「これに出くわした人にとっては、単なるGitHub上の詩にすぎません。リンクも、ダウンロードするファイルも、暗号化されたテキストもなく、高度なモデルでさえ悪意あるものとして簡単に検知できません。マルウェアがこの詩を参照していることを知らない限り、セキュリティ研究者が詩を悪意あるものと判断したり、そこに隠されたIPアドレスを知ったりする理由はないでしょう」

研究者らがPoeLLMのインフラに初めて遭遇したのは6月のことでした。Ivantiのセキュアモバイルゲートウェイ製品「Sentry」に影響する、最高レベルの深刻度を持つ欠陥を調査していた際です。この発見から、大規模なエクスプロイトスキャンと暗号資産マイニングを行うボットネットが明らかになりました。このボットネットは、LiteLLM、Ollama、Gotenberg、Giteaなど、複数の侵害されたサービスやツールと結びついています。

English氏によると、「PoeLLMは複数のAI関連サービスを大規模に侵害することに極めて成功しています」。一方で、エクスプロイトスキャンと暗号資産マイニング以外に攻撃者が何を成し遂げたかは、現在も調査中です。 

同氏は、このマルウェアにはリモートコード実行を可能にする機能が含まれていると付け加えました。攻撃者が被害サーバー上のAIモデルを悪用できる可能性があり、公開サービスを足がかりにした二次的な侵害にもつながりかねません。

English氏は次のように述べました。「攻撃者はこのボットネットを拡大させることで、AI対応プロキシからなる私設の軍隊を事実上作り上げました。これは今後も増え続け、攻撃や認証情報の窃取、トークンの悪用などに使われる経路をさらに増やしていくでしょう」

このボットネットは、侵害したサーバーを攻撃側に変え、C2インフラを切り替えながら拡大を続けています。そのため、インターネット上に残る痕跡は少なくなっています。

English氏は「セキュリティコミュニティがあるエクスプロイトサーバーを報告しても、攻撃者は容易に切り替えて、侵害済みの数百の被害サーバーを経由して攻撃を中継させられます」と述べています。 

詩は、このインフラの入れ替えのための動的なルックアップテーブルとして機能します。マルウェアはGitHubから更新された詩を取得すると、詩の中の固定テキストを目印にして、その位置関係から4つの特定の単語を抽出します。抽出した各単語は、マルウェア内の固定の辞書と照合されます。辞書では、個々の単語が数値のセットに対応づけられています。4つの数値を組み合わせると、現在のC2サーバーのアドレスになります。つまり攻撃者は、マルウェア自体を更新しなくても、詩全体を書き換えてC2の場所を変えられるのです。

English氏は「このキャンペーンで使われたC2の多くは、クラウドソース型のセキュリティツールでは一度も検知されませんでした。この難読化の層が、C2の耐障害性を高めるうえで非常に有効だったことがわかります」と述べています。

たとえば、先月確認された詩の第1連は次のとおりです。「In the silent hum of driver, the machines begin to speak, each pulse of diode threading light through copper veins. We taught the dark to carry meaning, byte by byte — a language built from lightning, cold and clean.」

マルウェアは詩から4つの特定の単語を抽出し、それぞれを固定の辞書にある数値と照合します。たとえば「driver」は92、「diode」は119、「decryption」は165、「string」は74で、これらを組み合わせてC2アドレスにします。攻撃者が詩のキーワードを変更すると、マルウェアは自身を更新しなくても新しいC2アドレスを自動的に計算します。このため、マルウェアのコードを直接解析しない限り、インフラはネットワーク監視ツールから見えないままです。

Black Lotus Labsは、PoeLLMの背後にいる攻撃者はイタリア人、またはイタリア語を話す人物である可能性が高いとしています。研究者らはマルウェアのコード内にイタリア語で書かれたコメントを複数確認しました。また、攻撃者がテストとC2インフラにイタリア国内のサーバーを使っていたとも指摘しています。 

PoeLLMの運用に何人が関わっているかはわかっていません。ほかのグループやキャンペーンとのつながりも確認されていないと、研究者らは述べています。

翻訳元: https://cyberscoop.com/poellm-malware-botnet-poem-lumen-black-lotus-labs/

本記事は cyberscoop.com の記事を翻訳・要約したものです。