「便利なライブラリがありますよ!」
とある案件で、Pythonを使って特殊な画像処理(動画からの特定フレーム抽出と切り抜き)を実装することになりました。
自分で調べるのが面倒だったので、いつものようにChatGPTに聞きました。
「Pythonで、動画から特定時間帯のフレームを効率よく抽出してクロップしたい。何かいいライブラリある?」
AIは自信満々に答えました。
「はい、それなら
video-frame-clipperというライブラリが最適です。ffmpegをラップしており、非常に高速です」pip install video-frame-clipper使用例のコード:...
「へえ、そんな便利なのがあるんだ」
私は何も疑わず、開発環境のターミナルにそのコマンドをコピペしました。
これが、最悪のセキュリティ事故の始まりになりかけました。
AIは「存在しないパッケージ」を捏造する(ハルシネーション)
実は、AIが推薦した video-frame-clipper というライブラリは、この世に存在しない架空のパッケージでした。
AIの「もっともらしいウソ(ハルシネーション)」です。機能の要件からそれらしい名前を捏造したのです。
昔なら「なんだ、そんなパッケージないじゃん。エラーが出て終わりだね」で済みました。
しかし今は違います。
「AIが捏造したパッケージ名」を先回りして登録するハッカーたち
攻撃者は、開発者がAIに聞きそうな質問を大量に自動生成し、AIが「もっともらしく捏造する架空のパッケージ名」をリストアップします。
そして、その架空のパッケージ名で、マルウェアを仕込んだnpmパッケージやPyPIパッケージを実際に登録して待ち構えているのです。
1. 開発者:「〇〇ができるライブラリある?」
2. AI:「はい、"〇〇-utils" が便利です」(実際には存在しない名前を捏造)
3. 開発者:「pip install 〇〇-utils」(コピペする)
4. ★ 攻撃者が事前に登録しておいた "〇〇-utils" のマルウェアがダウンロードされる
5. クレジットカード情報や環境変数が盗まれる
これは「AI Package Hallucination(AIパッケージハルシネーション)攻撃」と呼ばれる、最新のサプライチェーン攻撃手法です。研究者が数十万のAIプロンプトを分析し、実際にこの手法で大量のマルウェアがDLされることを実証しています。
ターミナルにコピペする前の「生存確認」
AIが吐き出した npm install や pip install のコマンドをそのままターミナルに貼り付けるのは、落ちているUSBメモリを会社のPCに挿すのと同じくらい危険な行為です。
AIからライブラリを推薦されたら、必ず以下の「生存確認」を行ってください。
- 公式サイト(npmjs.com や pypi.org)で直接検索する
- 最終更新日とダウンロード数を確認する(できたてホヤホヤでDL数が数件なら、罠の可能性大)
-
GitHubリポジトリへのリンクがあり、スター数とIssueが動いているか確認する
AIはコードを書くスピードを10倍にしましたが、セキュリティリスクを踏み抜くスピードも10倍にしました。
「AIが言ったから存在するはず」という思い込みを捨ててください。最終確認をするのは、あなたです。