SolarWinds Orionのセキュリティ侵害:ソフトウェアサプライチェーンのパラダイムシフト
Anton Hoffman
2021年3月2日
0 分で読めます最近のSolarWindsの侵害は、ソフトウェアサプライチェーンにおける新たなパラダイムを浮き彫りにしています。追加のツールを使わず、コードそのものだけを単純に比較した場合、プロプライエタリコードはオープンソースより安全というわけではありません。反対に、修正・パッチ・アップデートのサイクルが速く、ソースコードに広くアクセスできることから、オープンソースコードのほうがより安全だと主張する人も多いでしょう(Clarke、Dorwin、Nash、発行年不詳)。ソフトウェア開発に携わる多くの人にとって、これは目新しいことではありません。しかし、プロプライエタリコードのほうが安全だと考え、依然としてオープンソースに強く反対する企業も数多くあります。この議論で意見が分かれていても、96%のアプリケーションがオープンソースコードを使用し、ソフトウェアサプライチェーンのコードの80%がオープンソースであるという事実は変わりません。
皮肉なことに、最近のSolarWinds Orionの侵害は、ソフトウェアサプライチェーンのパラダイムがまさにどのように変化しているかを明らかにする手がかりになるかもしれません。実行犯は依然として特定されていませんが、攻撃の手口については明らかになっています。まず、ハッカーは2020年初頭、SolarWinds Orionのアップデートに悪意のあるコードを紛れ込ませました(Paul、2020年)。感染したコードを含むSolarWinds Orionのアップデートを、多くのユーザーがデバイス上で実行したことで、ハッカーは大量のデータにバックドアからアクセスできるようになりました。SolarWinds Orionは深くシステムに組み込まれており、他のマルウェア検出ソリューションとの競合を避けるために、ネットワーク上で特権的なアクセスを許可されることも少なくありません。このことが、攻撃の深刻さに拍車をかけました。結果として、オープンソースコードを一切使わない、かつて信頼されていたサイバーセキュリティソリューションが、正体不明の攻撃者によって機能不全に陥り、連邦政府の最も機密性の高い大量のデータへの不正アクセスが広範囲に発生しました。
得られた教訓
この事例から、2つの教訓が得られます。前述の理由から、オープンソースコードのほうが安全だと考えていますが、それでも脆弱性の被害を受ける可能性があります。2つ目は、どれほど優れたプロプライエタリコードであっても、攻撃者に悪用される可能性があるということです。完全に侵入不可能なコードはありません。また、セキュリティの責任を組織のセキュリティ担当者だけに負わせるべきではありません。むしろ、ソフトウェアサプライチェーンの強化は、開発者から始める必要があります。そのために組織は、オープンソースコード(SCA)、プロプライエタリコード(SAST)、コンテナ、Infrastructure as Code(IaC)をスキャンするために必要なツールを導入しなければなりません。これにより、脆弱性の検出、優先順位付け、修正、監視が可能になります。さらに重要なのは、このプロセスをSDLCの早い段階で実施することです。これは、優れたSCA、SAST、コンテナ、IaCスキャンソリューションに独立した製品要件として求められる、決定的な特性です。開発者のために専用設計されていること。なぜでしょうか。コードがまだ開発者の手元にある段階で修正すれば、コストと時間を抑えられ、ミッションのスピードや成功への悪影響も軽減できるからです。
Snyk Open Source (SCA)、Snyk Code (SAST)、Snyk Container、Snyk Infrastructure as Code、を備えたSnykの開発者ファーストなクラウドネイティブアプリケーションセキュリティプラットフォームは、Snyk Intel Vulnerability Databaseを基盤としています。保護の範囲はデータベースに登録された脆弱性の範囲に限られますが、Snyk Intelは主要な脆弱性データベースと比べて370%多くの脆弱性をカバーします。さらに、SnykのセキュリティリサーチャーがSnyk Intelを毎時精査・更新しており、最も包括的で、最新かつ正確で、実用的な脆弱性情報源を提供しています。そのため、多くの一流サイバーセキュリティブランドが、自社ソリューションの基盤としてSnyk Intelデータベースを信頼しています。
CTFを始めよう
オンデマンドのバーチャル入門ワークショップで、CTFチャレンジの解き方を学びましょう。
参考資料:
https://courses.cs.washington.edu/courses/csep590/05au/whitepaper_turnin/oss(10).pdf
