セキュリティ
幸いにも、この企業にはGitHubでソースコードを先に確認するというポリシーがありました
PWNED セキュリティ面で自爆してしまった人々を笑いのネタにする連載コラム「PWNED」へようこそ。同じ轍を踏まないための教訓としてお読みください。今週取り上げるのは、プログラミングにAIを使ったことで、危うくセキュリティを台無しにしかけた企業の、まさに今起きたばかりの出来事です。
自社のネットワークにぽっかりと穴を開けてしまった人の話をお持ちの方は、[email protected]までぜひお寄せください。匿名希望にも対応します。
今回の機械学習にまつわる失態の話を提供してくれたのは、コンサルティング・ソフトウェア開発企業Softjournのマネージングディレクター、Sergiy Fitsak氏です。同氏はAIに関して「信頼せず、必ず検証すべき」だと改めて教えてくれます。
業務の中で、あるエンジニアがAIエージェントに、よくある作業に必要なパッケージを推薦するよう依頼しました。すると、AIエージェントはもっともらしい名前のパッケージを提示してきました。それは見慣れたライブラリのような形式になっていました。
多くの組織では、これで話は終わっていたことでしょう。開発者はAIエージェントの助言をそのまま受け入れ、推薦されたパッケージをダウンロードしてインストールしていたはずです。
しかし、Softjournには実際に遵守されているポリシーがありました。それは、AIが推薦したソフトウェアが正当なものかどうかを必ず再確認するというものです。この開発者は推薦されたパッケージのソースコードをGitHubでざっと確認し、ダウンロード数がごくわずかで、しかも作成されたのがほんの数日前であることに気づきました。つまり、明らかに怪しかったのです。
Fitsak氏によれば、攻撃者たちはAIモデルが幻覚として生み出すパッケージ名を悪用する手口を見つけ出しているといいます。
「問題は、AIモデルが時折、もっともらしく聞こえるものの実在しないパッケージ名を作り出してしまうことです。セキュリティ研究者たちはこうしたパターンを『スロップスクワッティング(slopsquatting)』と呼び始めています」と同氏は語ります。「攻撃者たちはこれに目をつけ、AIが作り出したまさにその架空のパッケージ名で本物のパッケージを登録するようになりました。締め切りに追われた開発者が、確認より先にインストールしてしまうことに賭けているのです」
もしSoftjournがこれほど慎重でなかったら、マルウェアパッケージをインストールしてしまっていたかもしれません。具体的にどのようなペイロードだったのかは分かりませんが、このマルウェアパッケージによって犯罪者に自社システムへのバックドアを与え、データ窃取やその他の被害をもたらす可能性もありました。
「私たちがこれを見つけられたのは、AIが推薦したものをインストールする前に、たとえそれが日常的な作業に見えても、ダウンロード数を確認しGitHubでソースコードをレビューする習慣をすでに身につけていたからです」とFitsak氏は述べています。「多少の手間はかかります。しかし、この一手間を一度でも省いてしまえば、機能を期限通りにリリースする代わりに、サプライチェーン侵害の説明に追われる羽目になりかねません」
ここから得られる教訓は非常にシンプルです。AIエージェントが推薦するパッケージ名を鵜呑みにしないこと。サプライチェーンは必ず人間の目で確認すること。そして、プロジェクトに取り込まれる外部コードを立ち止まって承認できるよう、常に人間をループに関与させておくことです。®