モダンアプリケーションはほとんど他人のコードです。典型的なNodeまたはPythonプロジェクトは数百の推移的な依存関係を引き込んでいます。各依存関係は他人によってメンテナンスされており、それをインストールするマシンで任意のコードを実行することができます。セキュリティ業界は数年間、この問題をデータベース検索問題として扱ってきました。依存関係ツリーをスキャンしり、各パッケージ・バージョンを既知の脆弱性のリストと照合し、マッチを報告します。このアプローチ(CVEマッチングに基づいたソフトウェア構成分析)は有用なままですが、攻撃者が無慈悲に利用することを学んだ盲点を持ちます。CVEは既知の欠陥を正当なソフトウェアで説明します。「このpostinstallスクリプトは環境変数を流出させる」という「このパッケージは公開された瞬間から悪意があった」と言うCVEはありません。2026年に最も重要な攻撃は古い脆弱なライブラリではなく、新しく公開された悪意あるパッケージであり、キャッチするには、コードが名前の意味ではなく、コードが何をするかを見て検査する必要があります。
これが行動型サプライチェーンセキュリティへのシフトです。「このバージョンは脆弱性データベースに表示されているか」ではなく、「このパッケージはどのような機能を行使しているか、インストールスクリプトを実行するか、ネットワーク接続を開くか、SSHキーを読み取るか、シェルを生成するか、難読化されたペイロードを隠すか」という動作ベースのアプローチは要件です。その質問は60秒前に公開されたパッケージに答えることができます。これはタイポスクワッティングと侵害されたリリースが行う正確なウィンドウです。このガイドは行動型モデルがどのように機能するか、それが既に実行しているCVEベース and SBOM ツーリングを補足するのではなく置き換えるか、および 2026年の防御を深く組み立てる方法について説明しています。
CVEマッチングが必要だが十分ではない理由
ソフトウェア構成分析(SCA)はその場所を得ました。リモートコード実行の欠陥がある出版されたライブラリに依存していることを知ることは本当に価値があり、脆弱性データベースに対する依存関係ツリーをマッチするツールは毎日実際の問題をキャッチします。しモデルは、2つのますます一般的な攻撃パターンに対して破綻します。
1つ目は悪意あるパッケージ:設計上敵対的なコードで、誤ってインストールされる、または信頼されたメンテナーを詐称する名前で公開される。タイポスクワッティング(requestsの代わりにreqeusts)、依存関係の混乱(プライベートパッケージを影で差すパブリックパッケージ)、および直接的なトロイ化されたリリースすべてはここに該当します。これらのどれもCVEを持っていません。CVEは既知の欠陥に対して合法的なソフトウェア後に提出されるからです。悪意あるパッケージが十分に有名になってカタログ化される頃には、既に数千台のマシンで実行されています。
2つ目は侵害されたアップデート:以前は信頼できたパッケージで、メンテナーアカウントがハイジャックされるか、ビルドパイプラインが転覆し、新しいバージョンがマルウェアで提供されるもの。パッケージ名は意図的に選択して信頼するものです。バージョン固定は更新しない場合は保存しません。CVEスキャンはそれをフラグしません。やはり、公開された脆弱性がないからです。受け入れるべき良い理由があるリリースに新しく敵対的な動作があるだけです。
両パターンは定義上の特性を共有します:脅威はアイデンティティではなく動作で見えています。防御はそのため、動作を検査する必要があり、これは正確に行動型ツールが構築されるために設計されたものです。
行動検出がどのように機能するか
コアアイデアはパッケージのコードがあなたの環境で実行する前にできることを分析することです。Socketのような行動スキャナーはパッケージのソースとメタデータを解析し、悪意と関連する機能と信号を探します。最も重要な複数のカテゴリがあります。
インストールスクリプトは最も大きな信号です。npm postinstall フック(および他の同等物)はインストール時に任意のコードを実行します。アプリケーションがパッケージをインポートする前に実行されます。これはサプライチェーンマルウェアの好ましい配信機構を作成します。突然インストールスクリプトを取得するパッケージ、またはインストールスクリプトがネットワークに到達するパッケージは精査に値します。ネットワークアクセスは次の層です。文字列パディングユーティリティはソケットを開く必要がなく、不慣れなホストにインストール・ランタイム時に接続する依存関係は、その起動状態目的に対して予期しない機能の程度に対して疑わしいです。ファイルシステムアクセス機密パス(SSHキー、クラウド認証情報ファイル、環境ファイル)への強い流出インジケータです。シェルとプロセス実行、その論理を隠す難読化・ミニファイペイロード、および人気パッケージへのタイポスクワット名類似画像を完成させます。
単一の信号は結論的ではありません。多くの正当なパッケージはインストールスクリプトを実行するか、接続を開きます。価値は組み合わせと文脈にあります。「日付をフォーマット」する目的を主張するパッケージですが、~/.aws/credentialsを読んで自宅に電話する難読化されたインストールスクリプトで出荷し、明確ではありません。行動型ツールはそのパターンを表面化し、スコア化し、重要なことに、その瞬間に公開されたパッケージに対してCVEが割り当てられるのを待つことなく実行できます。
Socketが適合する場所
Socketは、この行動型モデルの周りに構築された最も著名なツールです。具体的な例として指導的です。複数のエコシステム(npm、PyPI、Go、Maven等)をカバーし、リスクが実際に入る場所で開発者に合う:依存関係が追加または更新される瞬間です。そのGitHubアプリは危険な依存関係の変更を導入するプルリクエストに直接コメントし、レビュアーは「この新しい推移的な依存関係はインストールスクリプトをネットワークアクセスで追加した」が別のダッシュボードで後で発見するのではなく、diff の横に表示されます。そのCLIはパッケージマネージャーの周りの安全ラッパーを提供します。socket npm installはランディングする前にパッケージを検証し、socket ciモードはスキャンが設定された閾値を超えたときパイプラインを失敗させます。
差分認識の、ワークフロー埋め込み設計が重要な部分です。サプライチェーンリスクは定期的な依存関係変更を通じて入り、防御はその後の監査ではなくプルリクエストに住む必要があります。Socketの問題ごとの設定(インストールスクリプト、ネットワークアクセス、またはミニファイがブロック、警告、または無視される可能性があるかどうかを宣言する)は、チームが信号を許容に調整することを可能にします。これは、行動型ツールが開発者をノイズでおぼれさせることから保ちます。そのノイズ管理は重要です:セキュリティツールの失敗モードはアラート疲労、および同等の緊急性ですべてのインストールスクリプトをフラグする行動型スキャナーは1週間以内にオフになります。
補完スタック:SBOM、出所、およびリーチャビリティ
行動検出は1つの層であり、全体的な戦略ではありません。2026年のサプライチェーン・セキュリティスタックは、複数の補完的なカテゴリの集合として最適に理解され、最強の姿勢は1つに賭ける代わりに組み合わせます。
SBOM生成とスキャンは依然として基礎的です。ソフトウェア部品表(BOM)はあなたの構築内のすべてのコンポーネントのインベントリであり、列挙していない防御はできません。SyftのようなツールはSBOMを生成し、Grypeは脆弱性データに対してスキャンします;Trivyはコンテナ、ファイルシステム、リポジトリをスキャンします。これはCVEマッチング層であり、それでも重要です。正当な依存関係の既知の脆弱性は実際で一般的な問題です。行動型層はこの層が構造的にできない内容をカバーします。
構築出所と署名は別の質問に対応します。アーティファクトは主張するものであることを証明し、主張するソースから構築され、主張するパイプラインによってですか?Sigstoreおよびその署名ツールCosignとSLSAフレームワークと共に、アーティファクトに署名し、構築出所を検証できます。改ざんまたは置換されたアーティファクトが検証失敗。これは、任意のパッケージの内容ではなく、サプライチェーン自体の完全性を防御します。
リーチャビリティ分析は全体のスタックを許容可能にするノイズフィルタです。CVEスキャンの不快な真実は、フラグされた脆弱性のほとんどはあなたのコード内で悪用できないということです。脆弱な関数は決して呼び出されないため。リーチャビリティツール(Semgrepのサプライチェーン製品および他が提供する機能)は、脆弱性パスを実際に到達するかあなたのコードをトレースし、百の「脆弱性」の洪水を開発者の注意に価する実際に悪用可能な問題の小さな分数にフィルタします。これは、非管理可能な「脆弱性」リストを、開発者の注意に価する一握りの問題に変えるものです。
深い防御の組立
これらのカテゴリは単一の防御の層であり、依存関係のライフサイクルに明確にマップします。開発者が依存関係の追加または更新を提案すると、行動型層(Socket)はパッケージが悪意があるかどうかを評価し、プルリクエストにコメント。プロジェクトがビルドされると、SBOM層(Syft)はあらゆるコンポーネントをインベントリし、スキャン層(Grype、Trivy)は既知の脆弱性に対してチェックされ、リーチャビリティ層(Semgrep)は実際に悪用可能なものにフィルタ。アーティファクトが作成されると、出所層(Sigstore、Cosign、SLSA)はそれらに署名するため、下流の消費者は完全性を検証できます。各層は他が構造的にカバーできない隙間をカバーします:行動型は新しいマルウェアをキャッチし、SCA は既知の脆弱性をキャッチし、リーチャビリティはノイズを抑制し、出所は完全性を保証します。
このを構築しているチームの実用的なアドバイスはレバレッジによってシーケンス。何もない場合はSBOM生成とスキャンから始めます。列挙されていないツリーを防御することはできません。次の、プルリクエストワークフローに行動型検出を追加します。悪意あるパッケージは最高の重大度,最も検出困難な脅威です。CVE検出が圧倒的になるとリーチャビリティをレイアに追加します。その全い仕事は他の層を生きやすくすることです。あなたのリリースプロセスが成熟し、下流の消費者が検証する必要があると署名と出所を採用します。重要なことに、各層の出力を開発者ワークフロー(プルリクエスト、CI実行)のままにします。誰も確認しない別のダッシュボード内ではなく、サプライチェーンリスクは定期的な変更を通じて入り、そこでキャッチする必要があります。
リアルワールド攻撃、ステップバイステップ
抽象化をグラウンドするために、典型的な2026年のサプライチェーン攻撃がどのようにアンフォールドし、各防御層がどこで介入するかを考えてください。攻撃者は人気パッケージ(広く使用されるHTTPヘルパーと言う)を特定し、1文字離れた名前を持つタイポスクワットを登録します。そのパッケージに、インストール時にローカル環境をクラウド認証情報とCIトークンから読み取り、攻撃者制御のホストに投稿するpostinstallスクリプトを配置します。公開し、脂っこい指のインストールと依存関係の混乱の誤解が残りをします。
CVEスキャナーは何も見ません:昨日存在しなかったパッケージに公開された脆弱性はありません。バージョン固定は保護を提供しません。開発者が名前のタイプを固定し、悪意あるバージョンを固定します。しかし、行動型層は多くを見ます。パッケージがプルリクエストに表示される瞬間、スキャナーは新しく追加された依存関係がインストールスクリプトで出荷されることをフラグし、スクリプトは機密ファイルシステムパスを読み取り、不慣れなホストへのネットワーク接続を開きます。HTTPヘルパーであると主張するパッケージの場合、組み合わせは一貫性がありません。プルリクエストコメントはまさにそれを表面化し、レビュアーは変更を拒否し、攻撃は単一の認証情報がマシンを離れる前に失敗します。
今、侵害されたアップデート変種を考えてください:攻撃者の代わりにあなたがすでに信頼・依存する既に信頼できたパッケージのメンテナーアカウントをハイジャックし、新しいマイナーバージョンで同じペイロードを出荷。ここではタイポスクワット・ヒューリスティックはしません。火は意図的に選択した名前です。しかし、行動型差分は次の通りです。このリリースはインストールスクリプトを追加し、ネットワークアクセスは以前のバージョンが決してなかったし、バージョンを比較する行動型ツールが急激な能力変化をフラグします。これは他の何もキャッチしないケースであり、これは行動型検出がスタックに稼いだ場所です。
制限と人間的要素
ツールスタックはなく、行動検出は独自のあるべき失敗モードを持ちます。決定された攻撃者はバージョンをまたいで悪意のペイロードを分割する、または特定の条件下でのみトリガーすることで行動型ヒューリスティックを回避するペイロードを作成します。誤検知は設定を通じて削減可能ですが、決してゼロに到達しません、および組織がその閾値を調整しない場合、チームは最終的に警告をゴム印を押す始めます。スタック全体は開発者が実際にプルリクエストコメントを読んでマージしない場所で読まなければならないという依存しますが期限圧力下。テクノロジーは攻撃表面を狭めます;判断の必要性は排除しません。
正直なフレームが2026年のサプライチェーンセキュリティ個別では不完全な防御のポートフォリオがその組み合わせが単一の1つより遠く強い。行動検出がCVEマッチングができない最も危険なギャップ(新しい悪意あるパッケージ)を閉じ、それは本当の進歩です。しかし、SBOM、スキャン、リーチャビリティ、出所の横に存在し、各々が他の盲点を補償するため、全て実装の瞬間に配線されているため機能します。リスクは実際にコードベースに入ります。
底線
依存関係ツリーはほとんどのアプリケーションの最大で最も制御されていない部分です、そして2026年の定義サプライチェーン脅威は、CVEデータベースが聞いたこのない悪意あるパッケージです。行動セキュリティツールはCVEマッチングができない質問に答える:「これが既知の脆弱なバージョンですか」ではなく「このコードが行う必要がない何かをしますか」。プルリクエストでSocketまたは同等に実行し、小説のマルウェアをキャッチ、Syft、Grype、Trivyを既知の脆弱性層に保つ、ノイズを生存可能に保つためにリーチャビリティ分析を追加、SigstoreとCosignでアーティファクトに署名し、完全性がエンドツーエンドで検証可能。層は設計による補完的です。そして、一緒に組立て、開発者ワークフローに配線され、オープンソース依存関係ツリーを盲点から防御周辺に変えます。
参考資料とリソース
ツール
背景と分析
関連する1337skillsチートシート