CurrentStack
#security#ai#supply-chain#devops#compliance

AI時代の“見えないコード”脅威に備える:開発サプライチェーン防御プレイブック

QiitaやHacker Newsで目立つ議論の1つが、生成AIとソフトウェア供給網の組み合わせで生まれる“見えないコード”問題です。ここでいう見えないコードとは、レビューの目をすり抜ける形で混入する改ざん経路の総称です。

典型パターン

実務で多いのは次の4種です。

  • Unicode/Bidi文字を使った識別子偽装
  • lockfileやbuild scriptへの微細な不正差分
  • プロンプト注入で生成手順に悪性指示を混ぜる
  • 類似名パッケージによるdependency confusion

AIアシスタントは速度を上げるため、悪性断片の再生産速度も上げます。

防御は“点”ではなく“面”で作る

リポジトリ防御

  • 署名コミットと来歴記録を必須化
  • 不審Unicodeのポリシーブロック
  • build/tooling系ファイルのCODEOWNERS強制

CI/CD防御

  • SBOM自動生成と差分検証
  • リリースブランチの再現ビルド検証
  • ビルドエージェントの外向き通信制限

依存関係防御

  • 社内ミラー経由の導入を既定化
  • 名前空間ポリシーで類似名を遮断
  • 新規transitive dependencyの隔離審査

AI運用防御

  • エージェントに許可されたツール動作の明文化
  • 生成コードのマージ前スキャン
  • インストール系コマンドの自動承認禁止

インシデント初動

疑わしい改変を検出したら、24時間以内に次を実行します。

  1. 対象ブランチのマージ権を凍結
  2. 証跡再構築(セッション/プロンプトハッシュ/依存グラフ)
  3. 認証情報とトークンをローテーション
  4. 再発防止ポリシーを公開して反映

完璧な根本原因分析より、封じ込め速度を優先します。

90日成熟プラン

  • 1か月目:現状スキャナとポリシー網羅率の可視化
  • 2か月目:SBOM・来歴検証をCIゲート化
  • 3か月目:見えないコード想定の机上訓練

まとめ

AI時代は、開発速度と信頼性を二者択一にしない設計が必要です。来歴証跡・供給網統制・エージェント制御を同時に実装することで、速度を維持したままリスクを下げられます。

おすすめ記事