マルウェアがAIを使う、と聞くと自動でフィッシング文面を作るような話を想像しがちだが、今回のVOLTAは少し違う。盗み出した情報をもとに、次に誰をどう深掘りするかをLLMに判断させている。しかも、その判断材料はパスワードやCookieだけではない。住所や勤務先、購入履歴、SlackやDiscordの痕跡までまとめて、被害者の「価値」を順位づけする。攻撃の自動化というより、犯罪の現場に査定担当を置いたような構図だと思う。AIの使い道が派手な生成ではなく、こうした裏方の作業に寄ってきたことが、いま取り上げる理由でもある。
Cisco Talosが追ったVOLTAは、自らを「VOLTA-AUTODOXER」と名乗る自己削除型のWindows向けinfostealerだ。まず通常のstealerと同じように、Chromium系ブラウザの保存パスワードやCookie、支払いカード、暗号資産ウォレットのseed phrase、Discord・Telegram・Steam・Robloxのセッション、Microsoft OAuth token、SSHやクラウドの認証情報、Wi-Fiプロファイル、スクリーンショットなどを集める。さらにwalletについては、内蔵のcrackerを走らせ、結果を「WALLET VAULTS CRACKED」という行で自分の報告書に残す。保存済みのWi-FiパスワードはWlanGetProfileListを使って平文で抜き出すという。
その先がこのマルウェアの変わり種だ。VOLTAは、集めた情報から「Identity_Report.txt」を作り、被害者の住所、勤務先、勤務先ドメイン、推定生年、カード下4桁、Slack workspace、文書の著者メタデータ、iPhoneバックアップの痕跡、ライブのRobloxアカウント評価額といった項目を整理する。しかも、盗んだセッションを使ってGmailの受信箱まで見に行く。Amazon、DoorDash、Uber Eats、Grubhub、Walmart、PayPalのレシートを探して住所を裏取りし、Uber EatsやDoorDashの注文履歴も引く。Discordは盗んだtokenでアカウント情報を補強し、Robloxの資産価値はRolimons.comで照会する。
この整理済みデータはJSONにされ、OpenRouterのchat completions APIへPOSTされる。システムプロンプトは、モデルに「a forensic intelligence analyst drafting a target assessment」として振る舞うよう求めるもので、出力には「WHAT THEY'RE WORTH」という節で資産をlow/medium/highに分けて評価する部分と、「THEIR OPSEC」という節でセキュリティ姿勢やパスワード管理の粗さを評定する部分が含まれる。Talosによれば、VOLTAはモデルが拒否したときに備えて、最大3つのモデルを順番に試す。既定はanthropic/claude-opus-4.6で、失敗したらmoonshotai/kimi-k2、さらにgoogle/gemini-2.5-flashへと回る。temperatureは0.2に固定され、かなり決定的な出力を狙っている。通信先も攻撃者所有のサーバーではなくOpenRouterで、AI分析の結果は「AI_Analysis.txt」として保存され、元の収集ログと一緒に「volta_dox.zip」として持ち出される。いわば、盗み出したあとで“誰を優先して食うか”をモデルに決めさせる流れだ。
この話でいちばん不気味なのは、AIが生成文を作っているのではなく、犯罪の意思決定に入っている点だと思う。多くの人は、LLMが悪用されるといえば、もっともらしい詐欺メールや偽のサポート文面を思い浮かべる。だがVOLTAは、被害者の情報を分類し、価値を付け、次に狙うべき財布やアカウントを決めるためにAIを使う。これは単なる自動化ではなく、これまで人間の経験や勘に頼っていた“選別”を機械に寄せる試みだ。攻撃者にとって面倒なのは、盗んだ大量データを見て「何が使えるか」を判断する部分だから、そこにモデルを差し込むのは筋がいい。犯罪の効率化というより、雑多なログを営業リストに変える発想に近い。
しかも、ここで使われているのが「何かを書かせる」モデルではなく、「証拠を読んで査定する」モデルだというのがいやらしい。買い物のレシート、勤務先、住所、Slack、Roblox、Discord、カード下4桁。ばらばらに見える断片をひとつの人物像に束ねると、被害者はただの感染端末ではなく、換金しやすい属性を持つ“候補者”になる。AIが得意なのは、断片から関係を見つけることだ。そこを悪用されると、単独のログでは価値が薄い情報まで、組み合わせ次第で武器になる。Talosが強調しているのは、まさにその変換だと思う。
もうひとつ印象的なのは、モデル拒否への備えが最初から組み込まれている点だ。Talosの説明では、VOLTAは特定のモデルが「できない」と返すことを想定し、最大3つのモデルを切り替える。これは攻撃者が、AIの安全策やポリシーにぶつかる現実をすでに見越しているということだ。つまり、LLMを単発の外部機能としてではなく、失敗しうる部品として扱っている。しかも、拒否が続いたら何もできないのではなく、別のモデルに回して進める。犯罪ツールとしてはかなり実務的だ。
この点は、防御側にとっても嫌な兆候だと思う。AIの安全対策は、単一モデルの拒否で止まる前提では足りなくなるかもしれない。攻撃側が複数モデルを試し、さらにLLMがなくても動く設計にしているなら、モデル側のポリシーを強めるだけでは片が付かない。将来的には、拒否回避のためのモデル切り替えや、正規APIを悪用した分析のほうが、露骨なマルウェア通信より見つけにくくなる可能性もある。そこが厄介だ。AIが攻撃を強くしたというより、攻撃者の失敗コストを下げた、と見るほうが実態に近いのではないか。
VOLTAが狙っているのは、感染そのものではなく、感染後に残る生活の痕跡だ。Gmailのレシート、Uber Eatsの履歴、Discordのプロフィール、Robloxの在庫価値。こうしたものは、単体では大した秘密に見えなくても、ひとつの人物に束ねるとかなり重い。だからこの手口は、単なる認証情報の窃取では終わらない。復旧後の追跡、なりすまし、追加侵害、資産の換金まで見据えているように見える。被害者側からすると、「パスワードを変えたら終わり」では済まないタイプだ。
Talosが対策として挙げているのも、その現実に沿っている。ChromeのApp-Bound Encryptionを回避するためにheadless起動を悪用しているなら、Chromeをheadlessで起動できるプロセスを制限するアプリケーション制御が効く。侵害後は、自己削除されていても「APPDATA%\volta_debug.txt」を残しておくと、何を集められたか、LLM呼び出しが成功したかの記録が追える。暗号資産のseed phraseが平文で置かれていたなら、そのウォレットは完全に危ない。ここで大事なのは、AIが付いたから危険なのではなく、AIが後段の査定まで肩代わりすることで、被害の質が一段上がるということだと思う。
参考: Appraisal by AI: Model-driven victim prioritization in the VOLTA infostealer