Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Slopsquatting

スロップスクワッティングは、AIが生成した架空のパッケージ名を悪用し、開発者に悪意のある依存関係をインストールさせるソフトウェアサプライチェーン攻撃です。

スロップスクワッティングは、攻撃者がAIコーディングアシスタントの考案した名前で悪意のあるパッケージを公開し、開発者や自動化ツールにインストールさせるソフトウェアサプライチェーン攻撃です。この罠により、もっともらしい依存関係の推奨が、実行可能なサードパーティコードに変わります。この攻撃は、事実として提示された捏造情報であるLLMのハルシネーションと、ソフトウェアのビルドに使われるパッケージマネージャーを結び付けます。

セキュリティ研究者のSeth Larsonが2025年4月にこの用語を作り、Andrew NesbittがLarsonの功績に言及しながら、スロップスクワッティングの元の定義を通じて広めました。この名称は、他者が探し求めるソフトウェア名を先取りして登録することを指す「スクワッティング」と、AIスロップを組み合わせたものです。

スロップスクワッティングの仕組み#

大規模言語モデルは、架空のパッケージ名やインストールコマンドを含むコードを生成します。攻撃者はその名前を特定し、PyPIやnpmなどのレジストリに、その名前のパッケージを公開します。推奨内容が再び表示されたとき、インストールによって攻撃者のパッケージが取得されます。パッケージに関するハルシネーションは、プロンプトやモデルをまたいで繰り返されることがあり、攻撃者が登録できる名前に需要が集中します。

結果はレジストリの状態によって決まります。未登録の名前ではインストールに失敗しますが、攻撃者が管理する名前は正常に解決され、環境に悪意のあるコードが持ち込まれます。開発者がアシスタントを信頼することで、ソフトウェアサプライチェーンへの侵入口が生まれます。

このリスクは、人間が支援する開発とエージェント型コーディングの両方に及びます。ツール使用機能を備えたAIエージェントは、生成された依存関係をインストール操作に変えることができます。悪意のあるパッケージコードは、インストール時またはその後の使用時に実行され、環境の権限に応じてファイル、認証情報、ビルド成果物が漏えいするおそれがあります。

架空のパッケージが開発者に届いた経緯#

AIモデルが存在しない依存関係として推奨した後、Bar Lanyadoはhuggingface-cliという名前の空のPythonパッケージを公開しました。2024年3月28日までの3か月間に、ハルシネーションによって生まれたこのパッケージは、実際に3万回以上ダウンロードされました。Alibabaの研究リポジトリのREADMEにも、インストール手順が記載されました。この空のパッケージが採用されたことで、架空の依存関係名が実際の開発ワークフローに入り込む可能性が示されました。

パッケージの命名には、コマンドライン実行ファイル、インポート可能なモジュール、インストール可能なディストリビューションの名称がそれぞれ異なる場合があるという、別の混乱要因もあります。アシスタントが環境構築手順を生成する際、これはコンピュータービジョン開発で重要になります。Ultralytics YOLOは、トレーニング、推論、エクスポートのワークフローを提供するultralytics Pythonパッケージを通じてYOLO26をサポートしており、生成されたインストール手順をそのパッケージの識別情報と照合することで、スロップスクワッティングが入り込む依存関係選択の段階に対処できます。

これらの用語は、依存関係のセキュリティに影響する、それぞれ異なる仕組みを表します。

  • パッケージのハルシネーション:モデルが依存関係を捏造します。スロップスクワッティングは、敵対的なパッケージ登録によって、この命名ミスを悪用します。
  • タイポスクワッティング:攻撃者は、既存のパッケージに似た名前を登録し、入力ミスを誘います。スロップスクワッティングは、AIが生成した名前を標的にします。
  • 依存関係の混乱:プライベートな依存関係を意図しているにもかかわらず、パッケージマネージャーがパブリックパッケージを取得します。
  • プロンプトインジェクション:攻撃者が管理するコンテンツによって、AIシステムの動作が意図しない方向に誘導されます。スロップスクワッティングは、レジストリを介して、生成されたパッケージの推奨を悪用します。

ビルドパイプラインでスロップスクワッティングを防ぐ#

依存関係の承認では、インストール前に対象プロジェクト、公開者、ソースリポジトリ、リリース履歴を確認します。セキュリティを重視した依存関係のレビューは、人間が記述したコードと同様に、AIが生成した依存関係にも適用されます。レジストリで利用可能かどうかを確認すれば名前の存在が分かり、所有者を確認すれば、どのソフトウェアが実行されるかが分かります。承認済みパッケージのドキュメントにアシスタントをグラウンディングすることで、このレビューに必要なパッケージの識別情報を提供できます。

継続的インテグレーションでは、レビュープロセスによって、依存関係の変更がビルドに入る前に管理されます。バージョンを固定すると承認済みリリースを特定でき、アーティファクトのハッシュを使うと対象ファイルを正確に特定できます。エージェントのサンドボックス化、ネットワークアクセスの制限、最小権限の認証情報によって、依存関係コードが利用できるリソースを制限し、機密データやデプロイ用認証情報へのアクセスを減らします。

Pythonのハッシュ検証インストールモードでは、--require-hashesを使って、ダウンロードしたパッケージファイルとrequirementsファイルに記録されたハッシュを照合します。他のライブラリが必要とするライブラリである推移的依存関係を含め、すべての依存関係に正確なバージョンと許可されたアーティファクトのハッシュを指定する必要があります。ダウンロードしたパッケージのハッシュが許可されたハッシュのいずれとも一致しない場合、pipはそのファイルを拒否し、インストールを停止します。

Explore solutions

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう