はじめにサイバーセキュリティを再定義した情報漏えい事件
2020年末、ソーラーウインズのサプライチェーン攻撃はサイバーセキュリティ業界を震撼させた。
SolarWindsのOrionプラットフォームのデジタル署名されたアップデートに悪意のあるコードを注入することで、敵対者は何千もの公共部門および民間部門に秘密裏にアクセスすることができました。一見、信頼できるソフトウェアのアップデートに見えますが、バックドアが仕込まれており、歴史上最も壊滅的なサイバースパイ活動の1つを可能にしました。
この事件は、手痛い真実を明らかにしました。巧妙でステルス性の高いゼロデイ脅威に対しては、シグネチャベースの防御やレピュテーションベースの防御では不十分だということです。しかし、もしサプライチェーンの組織がOPSWAT MetaDefender™Sandbox導入していたらどうだったでしょうか?
最新のMetaDefender Sandbox 2.4.0により、 OPSWAT 、SolarWindsマルウェアが隠そうとした微妙な異常を検出できる、脅威インテリジェンスを統合した適応性の高いエミュレーションベースのサンドボックスを提供します。
このブログでは、この攻撃がどのように展開されたのか、そしてさらに重要なこととして、MetaDefender Sandbox どのようにこの攻撃を阻止できたのかを説明します。
ソーラーウインズの攻撃の手口
SolarWindsのサプライチェーン攻撃は、Orion IT管理プラットフォームで使用されている正規のDLL(SolarWinds.Orion.Core.BusinessLayer.dll)を侵害することで可能になりました。脅威行為者は、このコンポーネントに悪意のあるコードを直接埋め込むことで、このコンポーネントをこっそりと改ざんしました。
見慣れたコードベースに目立たない数行を加えただけの、無害で小さな変更と思われたものが、結局は重大な脅威をもたらすことになった。このDLLは、公共部門と民間部門の両方で使用される、広く配備されたプラットフォームの一部であったため、攻撃の範囲は前例のないものとなった。
侵害されたDLLの中には、約4,000行のコードから作られた完全に機能するバックドアが隠されていた。このコードにより、攻撃者は感染したシステムに秘密裏にアクセスすることができ、警報を発することなく被害者のネットワークを持続的に制御することが可能になった。
この攻撃の最も重要な側面の1つは、ソフトウェアのビルドプロセス自体に配置されていたことです。改ざんされたDLLは有効なデジタル署名を持ち、攻撃者がSolarWinds社のソフトウェア開発または配布インフラに侵入したことを示していました。これにより、悪意のあるコードは信頼できるように見え、標準的なセキュリティ制御をトリガーすることなく特権的なアクションを実行できるようになりました。
ステルス性を維持するため、攻撃者はDLLの本来の機能を破壊することを避けた。注入されたペイロードは軽量な修正で構成されており、ホストアプリケーションの動作が変更されないように、別のスレッドで新しいメソッドを起動しました。このメソッド呼び出しは、既存の関数RefreshInternalに組み込まれていましたが、検出を避けるために並行して実行されました。
このバックドアロジックは、OrionImprovementBusinessLayerという名前のクラスに存在した。このクラスには、13の内部クラスと16の関数を含む、悪意のあるロジックのすべてが格納されていた。すべての文字列は難読化されており、静的解析が著しく困難になっていた。
従来のセキュリティはなぜ見逃したのか
- デジタル署名だけでは十分ではない: DLLは署名されていたため、AVとエンドポイントツールはそれを正当なものとして扱った。
- 静的解析は失敗した:難読化と暗号化された文字列が疑わしいロジックをカモフラージュしていた。
- ランタイム・チェックが検知を回避バックドアのステルス性は、非常に特殊な条件が満たされるまで異常が発生しないことを意味していた。
- サプライチェーンの盲点:セキュリティ・チームは、ソフトウェアのアップデートをサンドボックス内で爆発させることなく信頼することが多い。
これは単なるマルウェアではなく、見えないように仕組まれたサプライチェーンの侵害だった。
MetaDefender Sandbox どのようにしてそれを検出したのでしょうか?
回避が容易なVMベースのサンドボックスとは異なり、MetaDefender Sandbox 命令レベルのエミュレーションと適応型脅威分析を使用します。これにより、攻撃者が偽装しようとしても、隠れた動作を発見することができます。
サンドボックスは、この種の攻撃を発見する上で重要な役割を果たす。たとえ悪意のあるDLLがデジタル署名され、正当な動作を模倣するように注意深く作られていたとしても、サンドボックスはバイナリレベルでの異常を分析することで、挿入されたバックドアを検出することができます。
YARAルールとレピュテーション・チェックは、SolarWinds攻撃の当初の状況をシミュレートするため、このサンドボックス・スキャンでは意図的に無効にしています。

クリーン DLL レポート:
Filescan.IO - 次世代マルウェア解析プラットフォーム

トロイの木馬化 DLL レポート:
Filescan.IO - 次世代マルウェア解析プラットフォーム
左側が正規のSolarWinds.Orion.Core.BusinessLayer.dllファイル。右側は、悪名高いSolarWinds事件の原因となったトロイの木馬化されたバージョンです。
サンドボックス分析で明らかになった主な結果を説明しよう:
- 文字列の暗号化:このコードには、様々なマルウェアに見られる典型的な難読化テクニックが使われている。
WMIクエリは、一般的にシステム・フィンガープリンティングと関連している。この場合、検出を避けるために関連する文字列は暗号化されている。
特権の昇格、ユーザー・アイデンティティのなりすまし、アクセス・コントロールの改ざんに関連する複数の指標。
大きな静的バイト配列(1096バイト)があり、一般的に隠しペイロードを埋め込んだり、ステージングしたりするのに使われる。この場合、プロセス名のハッシュを表す整数値が格納されており、偵察やフィルタリングに使用される可能性が高い。サンドボックスがこの異常に対してフラグを立てたため、アナリストはさらに調査を進めることができる。
要約すると、4,000行のコードを持つクラスは大きく聞こえるかもしれないが、何千ものファイルを持つ大規模なソフトウェア・プロジェクトでは、本当に見逃しやすい。サンドボックスが貴重な役割を果たすのはこの点だ。サンドボックスは奇妙な振る舞いを強調し、アナリストにどこを見るべきか、何が本当に重要なのかを教えてくれる。
Threat Intelligence 備えたAdaptive Sandbox どのように攻撃を阻止したか
1.深部構造解析(DSA)
Sandbox 実行前にバイナリを逆アセンブルし、埋め込まれたロジックを抽出します。SolarWindsの場合、これはフラグを立てる:
- プロセス・ハッシュのステージに使用される1096バイトの大きな静的配列。
- マルウェアにありがちな、 圧縮+base64エンコードされた文字列。
- 珍しい OrionImprovementBusinessLayer クラスとその難読化された関数。
2.次世代侵入防止エンジン
MetaDefender Sandbox 2.4.0は、特にSolarWindsで使用されている戦術に対応しています:
- メモリのみのペイロードを公開→ ディスクに書き込まないコードを検出。
- .NET用コントロールフロー難読化解除→ Orionのような難読化されたDLLの解凍に最適。
- 自動Base64デコード→ 攻撃者が使用した暗号化文字列のマスクを解除。
3.Threat Intelligence 強化
検出はサンドボックスだけにとどまりません。MetaDefender Sandbox 以下と統合しています。 MetaDefender Threat Intelligence提供します:
- エンリッチメントのための50B以上のIOC(IP、URL、ドメイン、ハッシュ)。
- 既知のマルウェアの亜種を検出する類似性検索-たとえ改変されていても。
- 脅威スコアリングにより、このDLLを重大性の高いものとして優先する。
MetaDefender Sandbox 2.4.0の利点
最新リリースでは、ソーラーウィンズのような脅威に直接対応する機能が追加されている:
- メモリのみのペイロードの公開→ SolarWindsのステルス的なメモリ内実行が明らかになっただろう。
- パックされたマルウェアのアンパッキング→ 静的アレイの中に隠されたステージングされたペイロードを特定します。
- 疑似再構築バイナリ→ 解析者が難読化された DLL の全体像を見ることができる。
- YARAとコンフィグ抽出の強化→ 暗号化にもかかわらずマルウェアのコンフィグを抽出。
- .NET Loader Unpacking→ Orion DLLの難読化された.NETロジックに直接関係する。
この記事を書き始めている間に、npmエコシステムのサプライチェーンに対する新たなキャンペーンが公開された(npmとは、Node.jsに含まれるJavaScriptパッケージ・マネージャーで、JavaScriptをブラウザ以外で実行できるようにするもの)。この最近のキャンペーンには「Shai-Hulud」と呼ばれる自己複製ワームが関与しており、何百ものソフトウェア・パッケージを危険にさらすことに成功している。この事件は、OPSWAT 発行の「From Dune to npm: Shai-Hulud Worm RedefinesSupply Chain Risk」で詳細に分析されている。
しかし、この新しいキャンペーンは、MetaDefender Sandbox検知機能が最新であり、サプライチェーンの侵害に対して効果的であることを示すものでもあるため、本記事の文脈に特に関連しています。難読化されたコードを使用したライブラリのダウンロードを検出し、この活動を "悪意のある可能性が高い "とラベリングした悪意のあるファイルbundle.jsのレポートを参照してください。
前述の投稿で概説されたベストプラクティスに従い、オープンソースの依存関係はすべて、その安全性が証明されるまでは信頼できないと考えるべきです。もし影響を受けた npm パッケージのアップデートがMetaDefender Sandbox で事前に分析されていれば、悪意のある不審な動作は拡散する前に特定されていたでしょう。
これらの機能を合わせると、MetaDefender Sandbox いかにSolarWindsとNPMの攻撃者が頼ったようなステルスと難読化のために作られているかを示しています。
ケース例Sandbox レポートがどのように見えたか
1.静的所見
a.疑わしい難読化されたクラス名(OrionImprovementBusinessLayer)。
b.ハッシュ値にリンクされた大きな静的配列。
c.暗号化された Base64 文字列。
2.動的所見
a.WMIシステムクエリ。
b.特権昇格の試み
c.オリオンのメイン・ワークフロー外の隠しスレッドの作成。
3.Threat Intelligence 相関
a.類似性検索では、既知のAPTサンプルと95%以上一致する。
b.IOC相関はC2インフラの重複を特定する。
c.脅威スコアリングは、DLL を「悪意のある高信頼度」と評価する。
ディフェンダーへの教訓ソーラーウィンズとその後
SolarWinds社の侵害は警鐘となったが、サプライチェーンへの攻撃は増加の一途をたどっている。2025OPSWAT Threat Landscape Reportによると、重要インフラは依然として最重要ターゲットであり、ファイルベースの難読化ローダーがますます一般的になっている。
MetaDefender Sandbox 防御者に以下を提供します:
ゼロデイ耐性
予備知識に頼らない行動検知。
Supply Chain 保護
アップデート、パッチ、ベンダーが提供するファイルはすべて爆発させることができる。
コンプライアンス保証
NIST、NIS2、HIPAA、NERC CIPのゼロデイ検出要件に適合。
実用的なインテリジェンス
SIEMおよびSOARパイプラインに直接供給される忠実度の高いIOC。
ゼロデイ準備ディフェンスの構築
SolarWindsのサプライチェーン攻撃は止められなかったのではありません。もしMetaDefender Sandbox 導入されていれば、難読化されたDLLは本番環境に到達するずっと前に爆発し、解読され、フラグが立てられたことでしょう。
攻撃者が回避戦術に磨きをかけている今日、エミュレーションベースのサンドボックスはもはやオプションではありません。本格的なゼロデイ防御戦略の基礎となるものです。
MetaDefender Sandbox 2.4.0とOPSWAT Threat Intelligence、企業は侵害に対応することから、侵害が起こる前にそれを予防的に無効化することに移行することができます。