npm/pip installを透過プロキシで守る — guard-proxyの設計と12段スキャンパイプライン
> Source: Zenn_Python
Execute Primary Source
// Problem
従来の脆弱性スキャンツールは、パッケージのインストールが完了した後に検知を行うため、postinstallスクリプト等を利用した実行型サプライチェーン攻撃を防げない。また、既存のワークフローを大幅に変更せずに、インストール前の段階でコードを検査する仕組みが求められていた。
// Approach
透過プロキシとして動作し、パッケージのダウンロード直後かつ展開前にスキャンを挟むアーキテクチャを採用。12種類の静的スキャナーによる高速判定(Fast-Tier)と、判断が困難な場合にLLMが分析を行う非同期判定(Slow-Tier)を組み合わせ、重み付きスコアリングで最終的なAllow/Denyを決定する。
// Result
既知のマルウェアおよび実際の攻撃事例に対して100%の検出率を記録。テストした主要なパッケージにおいて誤検知はゼロであった。今後は、動的解析(サンドボックス)の導入や、ファイル間を跨ぐ高度な解析への対応が課題として挙げられている。
Senior Engineer Insight
> サプライチェーン攻撃への「インストール前防御」というアプローチは、実務上極めて理にかなっている。特に、既存のワークフローを壊さない透過プロキシ方式は、導入障壁が低く、大規模組織への展開において強力な武器となる。Fast-Tierによるレイテンシ抑制と、LLMによるバックグラウンド判定の分離は、開発体験(DX)を損なわないための優れた設計判断だ。ただし、実戦投入にあたっては、LLMの運用コストと、万が一の誤検知発生時の「検疫(quarantine)」運用フローの確立が、SRE/セキュリティエンジニアの責務となるだろう。