ここ数年、ネットワーク上の脅威に注目されてきた方なら、おそらくある変化に気づかれたことでしょう。 悪意のある攻撃者は依然としてボットネットや自動化されたランサムウェア攻撃を行っていますが、最近では のような「ビッグゲーム・ハンティング」 ――すなわち、無数の組織で使用されているソフトウェアを供給するサプライチェーンへの攻撃――に、より多くの力を注いでいます。
これらの攻撃の名称は今や悪名高いものとなっています―― SolarWinds、 Kaseya、 NotPetya、そして 2023’s MoveIT データ漏洩事件など、ほんの一例に過ぎませんが――サプライチェーンを標的とするメリットは明らかです。それは、より大きな利益が得られるという点です。 ハッカーがGitHubリポジトリを通じてオープンソースやサードパーティのライブラリを侵害したり、パッケージ化されたソフトウェアの脆弱性を発見したり、あるいはソーシャルエンジニアリングを利用して開発環境に侵入したりする場合でも、たった1つのエクスプロイトによって、世界中の何百、何千ものプライベートネットワークやパブリックネットワークに侵入することが可能になります。
The SolarWinds attack impacted some 18,000 enterprises; MoveIT, more than 2,500 organizations (and counting), affecting some 67 million people.
Juniper Research predicts that by 2026, software supply chain attacks will cost the global economy nearly $81 billion, with the majority of those costs hitting healthcare, finance, government, and automotive industries.
セキュリティ責任者の目標は、脆弱性を根絶し、攻撃対象領域を縮小することです。 コンピュータネットワークへの侵入は、攻撃者によってバックドアが仕込まれた信頼できるソフトウェアのインストールから、 やシャドーIT といった脅威への対応を怠ることまで、ますます巧妙(かつ巧妙)な手口で行われています。 後者の場合、従業員が承認されていないインストーラーやフリーウェアをダウンロードするという不注意な行動ひとつで、数ヶ月あるいは数年にもわたるセキュリティ対策の取り組みが台無しになってしまう可能性があります。
では、 の最高情報セキュリティ責任者(CISO) は、どうすべきでしょうか? ハッカーたちがこうした影響の大きい標的に狙いを定めているため、CISOは先手を打つ必要があります。 彼らがよく耳にする標準的なアドバイスは、「信頼はするが、確認もする」というものです。 しかし、それはまず信頼があることを前提としており、その前提はますます問題になりつつあります。 私がCISOの方々に伝えているのは、次のことです。「 」ゼロトラスト「 」――確認が取れるまでは。
絶え間ない脅威にさらされている複雑なサプライチェーン
かつては、ソフトウェアのインストールは比較的簡単でした。信頼できるベンダーを見つけ、その製品をダウンロードするだけでした。 今日のサプライチェーンには、ライセンスを購入した企業だけでなく、ソフトウェアを構成するサードパーティ製コンポーネント、社内でスタッフが構築・拡張したユーティリティ、および クラウド()上で使用するソフトウェアも含まれます。
「CISOは先を見据えて行動し、[新しい]シンプルなモットー『検証されるまではゼロトラスト』に従わなければなりません。」
ソフトウェアのサプライチェーンにおける新たな脆弱性(Apache Struts、OpenSSL、cURL、その他の共有ユーティリティやライブラリで見られたようなものなど)は、憂慮すべきほど頻繁に発見されています。 悪意のある攻撃者が、こうした改ざんされたコードをパッケージ化し、既知のソフトウェアに埋め込む際、彼らは単に脆弱性を悪用しているだけでなく、そのソフトウェアが「安全である」というサプライヤーと顧客の間の信頼関係をも悪用しているのです。 もし悪意のある者が、ソフトウェア会社がコードの真正性を保証するために使用している技術に侵入した場合、その悪意のあるコードは、コードが改ざんされたことに誰も気づかないまま、世の中に拡散することになります。
さらに悪いことに、ハッカーは署名証明書や開発者認証情報を盗み出し、この特権的なIDを利用して、悪意のある行為がセキュリティ検知をすり抜けるように仕向ける可能性もあります。
幸いなことに、適切なツール、入念な準備、自動化、そしてネットワークアーキテクチャにおける「検証されるまでは一切信頼しない」というアプローチを活用すれば、セキュリティ担当者は、こうした脅威を迅速に特定し、無力化する方法を身につけることができます。 以下の7つの手順に従うことをお勧めします:
1. まずはネットワークの棚卸しから始めましょう
よく言われるように、「見えないものは守れない」のです。 組織内のすべてのデバイスやソフトウェアを完全に把握できるよう、必要なツール、プロセス、および十分な訓練を受けた人材を整備しておく必要があります。 の自動化されたエンドポイント管理 や保護システムは、すべてのエンドポイントで稼働している限り、攻撃対象領域の保護に役立ちます。
の自動化機能は、ソフトウェアのサプライチェーンの保護にも役立ちます。 数字の面だけを見ても、個々の組織が直面している問題、エンドポイント、課題の数は、社内に在籍するサイバーセキュリティの専門家の数をはるかに上回っています。 In its Cost of a Data Breach 2023, IBM notes that “organizations that used [AI and automation] experienced, on average, a 108-day shorter time to identify and contain the breach,” and saved an average of $1.76 million in lower data breach costs.
この戦いにおいて、AIもまた味方となるでしょう 。 まだ発展途上の技術ではありますが、 には有望な可能性が秘められています。 私がしばしば「 拡張 知能」と呼んでいるAIが、セキュリティチームがより迅速かつ全体的な精度を高めて優先順位付けを行うことをどのように支援するかという点においてです。
[関連記事:AIを活用したサイバーセキュリティの完全ガイド ― そのメリット、リスク、そして成果]
高度なテクノロジーを活用することで、攻撃への対応に伴う作業負荷を軽減できるだけでなく、それに伴うスタッフの燃え尽き症候群や、「アラート疲労」に起因する人的ミスも減らすことができます。
2。 SBOMを活用しましょう
現代のソフトウェアがこれほど容易に悪用されてしまう理由の一つは、もはや一から書き上げられていないという点にあります。 開発者は、サードパーティのオンラインコードライブラリからコードのスニペットを取得しますが、どのスニペットも潜在的な脆弱性となる可能性があります。 つまり、システムにどのソフトウェアがインストールされているかを知るだけでは不十分であり、インストールしたいソフトウェアのビルドに使用されたライブラリやモジュールを、一つ残らず列挙する必要があります。
「ネットワーク上のすべてのソフトウェアのすべての構成要素について正確なインベントリを維持することは、そのインベントリが静的なものであっても、それだけでも十分に困難なことでしょう。」 そうではありません。”
「 」と呼ばれるこの種のリスト、すなわちソフトウェア部品表(SBOM)は、サードパーティ製のファイル、ライブラリ、およびコンポーネントに含まれる脆弱性を把握するのに役立ちます。 これは有用であり、人間が手作業で作り出す能力をはるかに超えています。
理想を言えば、ベンダーやソフトウェア開発者は、自社のソフトウェアに関する「唯一の信頼できる情報源」としての役割を自覚し、自社のソフトウェアアプリケーションにSBOMを添付するようになるでしょう。 また、 には、こうしたリストの作成を自動化するツールも用意されています。 また、連邦政府も動き出しました。バイデン大統領が発令した「国家のサイバーセキュリティの向上に関する大統領令」(第 2021 号 、 )では、連邦政府にソフトウェアを提供するベンダーに対し、製品に含まれるすべてのコンポーネントについてSBOMを添付することが義務付けられています。
[関連記事:サプライチェーンを強化するための米国政府の戦略]
ネットワーク上のすべてのソフトウェアの構成要素について正確なインベントリを維持することは、そのインベントリが静的なものであっても、それだけでも十分に困難なことでしょう。 そうではありません。ソフトウェア開発者が公開されているソースコードをダウンロードし、その名前を変更したり、わずかに修正したりした場合、そのダウンロードしたコードは、他者のソフトウェアとは異なる形で、自身のソフトウェアに反映される可能性があります。 あるいは、火曜日の時点ではGitHubのコードリポジトリに問題がなかったとしても、水曜日に攻撃者が悪意のある「コミット」を行ったりコードを改ざんしたりした場合、誰かがそのリポジトリを再インポートした瞬間に、ネットワークは再び脆弱な状態になってしまいます。
3。 ソフトウェアのテスト環境を構築する
ソフトウェアを開発される場合は、実装したコードをすべてプライベートリポジトリに保存し、もう1つの防御策を講じる必要があります。 このコードは監査とセキュリティ対策を行う必要があり、セキュリティレビューを経ずに、元のアップストリームソースから直接取り込むことは決して行ってはなりません。 安全なリポジトリが整備されていれば、ソフトウェアをダウンロードして、組織外の誰もその内容を変更できないという安心感のもと、非公開の環境で一行ずつ確認することができます。
たとえば、ソフトウェアライブラリ「 」や「OpenSSL」を使用したい場合は、ソースコードを入手して、ご自身のプライベートな開発環境に取り込むことができます。そうすれば、新しいバージョンがリリースされた際に、パッチの適用やアップグレードを行うことが可能です。 このアプローチの利点は、コードを移植できるだけでなく、そこに追加される新しいコードのレビューも管理できる点にあります。 このリポジトリを利用することで、ソフトウェアをデプロイする前に、テストを行い、ご自身の環境に支障をきたさないことを確認することができます。
4。 脆弱性管理計画を策定する
テスト環境であっても、一部の攻撃は成功する可能性が高いです。 したがって、 の脆弱性管理計画 を作成し、以下の点を自問する必要があります:
- 何かがすり抜けてしまった場合、私はすぐに対処できる準備ができていますか? 対応は誰が担当するのでしょうか?
- 重大な脆弱性が発見された際、 のパッチ管理( )をどのように行うかについて、指針となる方針や手順は整備されていますか?
- 当社の「 」サードパーティ・リスク管理計画()とはどのようなものですか。サードパーティのライブラリに重大な脆弱性が発見された場合、そのライブラリを使用しているアプリケーションをどのように特定し、パッチを適用するために重要なサービスをどのように停止させるのでしょうか。
[関連記事:サプライチェーンのセキュリティ確保は困難ですが、理想的な姿とはどのようなものでしょうか?]
- 事業に不可欠な業務に大きな影響を与えることなく、この攻撃を無力化することは可能でしょうか?
- 緊急是正計画の一環として、社内外のステークホルダーに向けた効果的なコミュニケーション方針( )を策定し、 を実施していますか?
5。 ポリシーに実効性を持たせましょう
これほど多くの攻撃が相次いだ結果、CISOたちは、不審なサイトから何かをダウンロードしたり、例えば子供に業務用端末に『Minecraft』をインストールさせたりしないよう、従業員に の研修を行うことの重要性を認識しています。 また、従業員は、カメラ、プリンター、VoIP電話(インターネット接続と「Voice over Internet Protocol」技術を利用して通話を行うもの)といったIoT(モノのインターネット)機器に対して、ますます慎重になっています。
「ソフトウェアの適切な利用に関する書面による方針と、それを技術的に実施する手段の両方が必要です。 これは簡単な作業ではありませんが、自動化を活用すれば、もっと簡単になります……。”
しかし、どのような防御においても極めて重要な要素となるのが、そもそも望ましくない侵入が発生するのを未然に防ぐ技術的な制御です。 従業員に対して、信頼できないUSBメモリやソフトウェアを自分のノートパソコンにインストールしないよう指示することと、技術的にそれができないようにすることとは、まったく別の話です。
多くの企業が苦戦しているのが、この段階です。 たとえ規制遵守という理由だけであっても、ソフトウェアの適正利用に関する書面による方針と、それを技術的に実施する手段の両方を整備する必要があります。 これは簡単な作業ではありませんが、やはり自動化を活用すれば、より簡単に行うことができます。 「文書化されたポリシー」を定期的に監査し、それらを補完する技術的な実施策が整備されているかどうかを検証することは、組織のセキュリティ態勢を成熟させるための極めて有効な戦略です。
[関連記事:なぜ従業員はサイバーセキュリティポリシーに違反するのか]
6。 能力について徹底的な評価を行う
避けられないサプライチェーンの混乱に備える計画を立てるにあたり、CISOの皆様は、この図に示された質問に答えておくことが望ましいでしょう:

のマイクロソフトセキュリティ専門家、 のマット・スワン氏によって作成されたこの図は、インシデント対応における「ニーズの階層」を表しています。 これは、米国の心理学者アブラハム・ ・マズローの「欲求階層説」()をモデルにしており、人間の欲求を最も基本的なものから順に概説したものです。 スワン氏の説では、組織が自社のビジネス資産を守るために構築すべき能力について述べられています。 これもまた、最も基本的なこと、つまり資産の棚卸しから始まり、各レベルは、その上のレベルの能力を得るための前提条件となります。
セキュリティ担当のリーダーたちは、自組織がこのピラミッドにおいて成熟度の面でどの位置にあるかについて、社内で難しい議論を交わす必要があるかもしれません。 一部の企業では、最下層のレベルで足踏み状態となり、防御対象となっているすべての資産を特定し、 の可視性を確保できるかどうか確信が持てない場合があります。 もし、 すべての資産を特定し、その所在を把握できない場合、、その段階以降に行うすべての対策は、攻撃対象領域全体の一部にしか及んでおらず、チームの効率性に深刻な打撃を与える可能性があります。
の脅威ハンター( )は、堅牢なテレメトリと可視性が確保された環境で脅威の追跡を行う場合、その効果を大幅に向上させることができます。
7。 人間関係の生態系を育む
(本誌を発行する)Taniumのエンドポイントセキュリティ研究部門長を務めている間、私は、顧客が自社開発のツールから市販のソリューションに至るまで、さまざまなアプローチを用いてソフトウェアサプライチェーンのセキュリティ確保に取り組んでいる様子を目の当たりにしてきました。 問題は、慎重に行わなければ、不良コードを特定・隔離・無力化しようとする試みが、システムの動作を遅くしたり、さらに悪い場合にはシステム全体をダウンさせたりしかねないということです。
より効果的な戦略は、組織内、ベンダーネットワーク、そしてサプライチェーン全体にわたるすべてのステークホルダー間の関係を築き上げていくことです。 CISOは、従業員がテクノロジーをどのように活用しているか、ベンダーがソフトウェアのセキュリティをどのように確保しているか、そして政府やその他の業界パートナーがそうした取り組みをどのように支援できるかを理解することで、より効果的に業務を遂行できます。
ソフトウェアのサプライチェーンは、多くの要素から構成されています。 ですから、それを守るための最善の策なのです。
マット・スワン氏による「インシデント対応のニーズの階層」図は、 より提供されたもので、 の許可を得ています。

