何が起きているのか

スロップスクワッティング(Slopsquatting)は、大規模言語モデル(LLM)の幻覚を悪用してマルウェアを開発ワークフローに注入する新しいサプライチェーン攻撃です。名称は「AIスロップ(AIが吐き出す粗悪な生成物)」と、人気ドメインやパッケージの類似名を登録して利用者を騙す「タイポスクワッティング」を掛け合わせた造語です。

仕組みはシンプルです。AIにコードを書かせると、モデルが実在しないOSSパッケージ名をもっともらしく提案することがあります。開発者がそれを鵜呑みにしてinstallしようとする前に、攻撃者が同名パッケージを登録しマルウェアを詰めておけば、コードベースに直接悪意あるコードが取り込まれてしまいます。

なぜ従来の防御が効かないのか

タイポスクワッティングに対しては、パッケージレジストリが数十年かけて防御を積み上げてきました。cross-envに対するcrossenvのような綴り違いは検出できます。しかし幻覚が生む名前は単なるスペルミスではありません。cross-env-extendedのような自然な派生名や、文脈から生まれた造語はレジストリの警戒網に引っかからず、大規模に防ぐ仕組みがまだ存在しないのです。結果として、悪意あるパッケージが本番環境で数カ月〜数年発見されず、多数の環境へ静かにマルウェアを注入し続ける恐れがあります。

幻覚は「ランダムではない」ことが問題

LLMは正確さよりも統計的に最もありそうな回答を出力します。厄介なのは、この幻覚がランダムではなく再現性を持つ点です。同じ架空のパッケージ名を繰り返し提案する傾向があるため、攻撃者は「AIがよく口にする存在しない名前」を観測して先回り登録できます。さらにトークンレベルの操作や検索汚染(retrieval poisoning)による敵対的攻撃で、攻撃者が望むパッケージを意図的に幻覚させる手法も指摘されています。

ある大規模検証では、30システムにまたがる30回のテストで57.6万件のコードサンプルと223万個のパッケージが生成され、うち19.7%が幻覚でした。GPT-4.0 Turboの幻覚率は3.59%に抑えられた一方、DeepSeek 1Bは13.63%に達しています。

💼 事業会社視点:これは自社にどう効くか

最も注意すべきは、コスト削減目的でオープンソースLLMを社内開発に導入している企業です。事実として、プロプライエタリモデルは幻覚パッケージの生成が約4分の1にとどまり、裏を返せばオープンソースAIツールを使う組織はおよそ4倍露出しています。受託開発会社やSaaSベンダーは、AI補助で書かれたコードが顧客の本番環境に混入する構造上、被害を「他社に横展開してしまう」立場にあります。すでにコミットされるコードの40%超がAI補助を含み、AI利用者の72%が毎日使う時代です。役員が今打つべき手は三つ。第一に、AIが提案したパッケージ名を公式レジストリに実在するか自動照合するチェックをCIに組み込むこと。第二に、見慣れないパッケージのインストールを監視し、SBOM(部品表)で依存を可視化すること。第三に、ノールックの「バイブコーディング」を禁じ、AI出力のレビューを必須プロセスにすること。特に受託・EC・金融系は、契約や監査で「AI生成コードの検証体制」を問われる時代が近いと見て先行整備が有利です。

関連リンク