THE QUESTION
隔離された制御網へどう入ったのか――USBとゼロデイの侵入経路について、この回が担う固有の論点は何か。
STORY SO FAR
前回「Stuxnetとは何だったのか――コンピューターから現実の設備へ」で確認した論点を受け、この回では隔離された制御網へどう入ったのか――USBとゼロデイの侵入経路について、この回が担う固有の論点は何か。を扱う。
Stuxnetについて最も繰り返される疑問の一つが、「インターネットから隔離された核施設へ、どうやってマルウェアが入ったのか」である。
答えは、air gapを一発で破る特殊な無線技術があった、という話ではない。Stuxnetが利用したのは、隔離された制御システムにも存在する人と保守機器による情報の出入りだった。USBメモリ、Windows PC、ファイル共有、保守用のEngineering Workstation、STEP 7プロジェクト――これらは本来、設備を設定し、更新し、診断し、バックアップするために必要なものだ。その正規の運用経路が、攻撃側から見れば橋になる。
しかもStuxnetは一つの侵入経路だけに依存していなかった。MicrosoftやSymantec、ICS-CERTの解析から見えるのは、最初の持込み、Windows上での実行、同一ネットワーク内の拡散、STEP 7環境への接近を複数の手段で成立させる設計である。
本記事では「USBで感染した」という一文を分解し、Stuxnetが隔離網へ近づくまでの入口側だけを追う。PLCの型式判定やPLC内部へのコード注入は次の記事以降で扱う。

結論――air gapの外から直接PLCへ飛び込んだわけではない
Stuxnetの侵入経路を理解するうえで、最初に捨てるべきイメージがある。
それは、攻撃者がインターネット越しにNatanzのPLCへ直接接続し、遠隔からプログラムを書き換えた、というイメージである。
公開解析が示す構造は違う。
まずWindows環境へ入る。そこで感染を維持し、別のWindowsシステムへ拡散する。Siemens STEP 7が使われるEngineering Workstationへ近づく。STEP 7とPLCの間にある正規の保守通信へ介入できる位置を得る。そして、そこから先で初めてPLCが攻撃対象になる。
つまりStuxnetが突破したのは、ネットワーク境界だけではない。ITとOTを接続する保守運用の信頼関係だった。
隔離されたネットワークであっても、設定ファイルやログ、パッチ、アプリケーション、バックアップ、プロジェクトデータを完全に外界から遮断したまま運用することは難しい。設備が長期間使われるほど、保守のためのデータ移動が必要になる。Stuxnetはそこへ入り込めるよう、Windows側に複数の移動手段を用意していた。
USBはなぜ重要だったのか
USBメモリが重要だったのは、単に便利だからではない。
インターネットに接続されていないシステムへデータを持ち込むとき、リムーバブルメディアは現実的な手段になる。とくに2010年前後の産業設備では、ソフトウェア更新、設定移送、ログ回収、ベンダー作業などでUSBメモリが使われる場面は珍しくなかった。
Stuxnetは、その「人が運ぶネットワーク」を利用できた。
Microsoftが2010年8月に修正したMS10-046、CVE-2010-2568は、Windows Shellによるショートカットアイコンの処理に起因する脆弱性だった。[1]細工されたショートカットのアイコンをWindowsが表示しようとしたとき、任意コードが実行される可能性があった。
ここで重要なのは、典型的な「怪しいEXEをユーザーがダブルクリックした」感染ではないことだ。Microsoftの説明では、USBリムーバブルデバイスを経由する場合、AutoPlayが無効でも、ユーザーがWindows Explorerなどで影響を受けるフォルダーを参照すれば攻撃が成立し得た。
したがって「自動再生を切っていたからUSBは安全」という運用では足りない。
USBメモリを挿し、フォルダーを見る。設備保守ではごく普通の操作である。その日常的な行為とOSの脆弱性が組み合わされたところに、Stuxnetの入口があった。
ゼロデイは何を意味していたのか
Stuxnetでは複数のWindows脆弱性が利用され、発見当時に未修正だったものが含まれていた。ICS-CERTの2010年レビューは、ゼロデイ、盗用された正規のデジタル証明書、回避技術を組み合わせていたことを、Stuxnetの異例さとして挙げている。[2]
ただし「ゼロデイを4個持っていた」という数字だけを強調すると、本質を外しやすい。
ゼロデイは、侵入・権限・拡散の確率を上げるための道具である。Stuxnetの最終価値は、Windowsを攻略したことではなく、その先の制御システムへ到達することにあった。
そのため攻撃設計として見ると、Windows側には冗長性がある。
一つの経路が塞がれても別の方法で移動できる。最初の感染にUSBを使っても、その後はネットワーク共有や別のWindows機能を利用して内部へ広がれる。STEP 7プロジェクトファイルも感染伝播に利用できたと解析されている。
攻撃者が「Natanzへ直接入れる一本の秘密回線」を持っていたと考えるより、標的へ至る可能性のある複数の経路を準備し、どれかがEngineering Workstationへ届く確率を上げたと捉える方が構造に合う。
「最初のUSBを誰が挿したか」は確認できるのか
ここには、技術解析と作戦帰属の境界がある。
2012年の主要報道では、StuxnetをNatanzへ持ち込むために人間や感染媒体が利用されたという説明が報じられた。[2]米国・イスラエル共同作戦「Olympic Games」と結びつけたWashington PostやNew York Times系の報道では、施設へ物理的に接近する方法が作戦上の重要部分だったとされる。
しかし、公開された技術解析だけから「この人物が、この日に、このUSBを挿した」と特定することはできない。
マルウェアの感染機構から、リムーバブルメディアが現実的な侵入経路だったことは確認できる。感染履歴から、複数のイラン関連組織を経て標的へ近づいた可能性も分析されている。一方、最初の媒体の運搬者、具体的な持込み経路、協力者の有無といった作戦運用は、匿名情報源を含む報道に依存する部分が大きい。
本CASEでは、この二つを混同しない。
USBを利用できる技術的機能はFACTとして扱う。誰が意図的に持ち込んだかは、帰属・作戦報道のEvidenceとしてCASE061-07で扱う。
感染は一台で止まる設計ではなかった
隔離網の入口へ一度入っても、目的のEngineering Workstationへ必ず届くわけではない。
たとえば、USBを挿したPCが単なる事務端末だった場合、そのPCからPLCへ直接アクセスすることはできない。そこから制御系の保守端末へ移動する必要がある。
Stuxnetはこのため、Windowsネットワーク内で広がる複数の機能を持っていた。
CISA/ICS-CERTのStuxnet情報やSymantecのDossierでは、リムーバブルドライブだけでなく、ネットワーク共有、Windowsの印刷スプーラー関連脆弱性など、複数の拡散経路が整理されている。また感染したホスト間で更新情報をやり取りする仕組みもあり、完全にインターネットへ接続されていない内部ネットワークでも、感染個体同士が情報を渡せる設計が確認された。
ここから分かるのは、Stuxnetが「USBで一台に入れば成功」というマルウェアではなかったことである。
標的設備のネットワーク構成を外から完全に知っていなくても、内部で横方向へ広がり、最終的にSTEP 7のある端末へ遭遇する確率を上げることができる。
制御ネットワークでいうなら、攻撃側が最初からPLCのIPアドレスを知る必要はない。まずEngineering Workstationを見つければよい。PLCの設定・プログラム変更に正規に使われる端末は、攻撃者にとっても最も価値の高い接点になる。
STEP 7プロジェクト自体が移動媒体になり得た
制御エンジニアにとって特に重要なのが、Engineering Workstation上のプロジェクトデータである。
PLCプログラムやハードウェア構成、ネットワーク設定は、設備の改造や保守のためにコピーされる。バックアップとして別PCへ持ち出されたり、ベンダーと設備ユーザーの間で受け渡されたりする。
Symantecは、StuxnetがSTEP 7プロジェクトファイルを感染経路として利用する機能も解析している。
これはOT環境に特有のリスクを示している。
一般のオフィスでは、ExcelやPDFを「データ」と考え、実行ファイルとは区別する。しかし制御システムでは、プロジェクトファイルはPLCへ書き込むロジックや設定の正本になり得る。保守用プロジェクトを信頼し、そのプロジェクトを開くEngineering Workstationも信頼する、という前提で運用される。
そのため、単に「インターネット接続を禁止する」だけでなく、どの媒体・どのプロジェクト・どの保守PCを信頼するかがセキュリティ境界になる。
Stuxnetはこの境界を突いた。
正規のデジタル署名がなぜ効いたのか
Stuxnetは盗用されたデジタル証明書を使ってドライバへ署名していたことでも知られる。
デジタル署名は、本来「このコードが誰から提供されたか」「配布後に改変されていないか」を判断するための重要な信頼機構である。OSやセキュリティ製品は、署名済みコードを未署名コードより信用しやすい。
そこで正規企業から盗まれた証明書が悪用されると、攻撃コードが「出所の分からない不審なドライバ」ではなく、一定の信頼を持つソフトウェアに見える。
これはStuxnetの設計思想を象徴する。
脆弱性だけを使って強引に侵入するのではなく、Windowsの信頼機構、制御ソフトの正規通信、PLCの通常保守という既存の仕組みへ擬態する。攻撃の各段階で「正常に見えるもの」を利用するため、単一の境界防御では見つけにくい。
Engineering Workstationが橋になる
最終的に重要なのはEngineering Workstationである。
PLCは一般に、プログラムやパラメータを自分でインターネットから取得しない。エンジニアが専用ソフトウェアを使い、PLCへダウンロードする。Siemens環境ではSTEP 7を実行するPCがその役割を担う。
つまりEngineering Workstationは、ITのWindows環境と、OTのPLCロジックの間に位置する。
MITRE ATT&CK for ICSの現在の資産分類でも、Engineering Workstationは制御システムの保守・設定・診断を行い、PLCなどと直接インターフェースする端末として定義されている。またセグメント化された、あるいはair-gappedとされるネットワークでも、ファイル転送や装置接続の経路になり得る。
Stuxnetはこの性質を利用した。
Windows PCとしてEngineering Workstationへ感染できれば、次の段階では「WindowsからPLCへ侵入する」というより、正規のEngineering Workstationが本来持つPLCアクセス権限を乗っ取ることができる。
ここが、air gap議論の本質である。
外部からPLCへ新しい通信経路を開く必要はない。もともとPLCを書き換えるために存在する正規端末を支配すればよい。
air gapは無意味なのか
Stuxnetの教訓を「air gapは役に立たない」と極端に一般化するのも誤りである。
ネットワーク分離は依然として重要な防御である。企業ITネットワークとOTネットワークを無制限に接続するより、通信経路を減らし、境界を監視し、必要な経路だけを許可した方が攻撃面は小さくなる。
問題は、air gapという言葉だけで「情報は絶対に移動しない」と思い込むことだ。
設備には運用がある。
- USBメモリを使う。
- ベンダーPCを接続する。
- PLCプロジェクトを受け渡す。
- Windows更新やウイルス定義を持ち込む。
- ログを持ち出す。
- 壊れたEngineering Workstationを交換する。
- バックアップイメージから復旧する。
これらはすべて、境界を横切る情報経路である。
したがってair gapを設計するなら、「ケーブルを抜く」だけではなく、媒体・人・保守端末・更新物・プロジェクトファイルの移送手順まで含めて境界制御を設計する必要がある。
Stuxnetは、その弱点を世界規模で可視化した。
なぜ感染が広がりすぎたのか
StuxnetはNatanzのような特定の設備を最終標的として設計されたと考えられている一方、実際には世界中のWindowsシステムで検出された。
これは一見矛盾している。
しかし、「広く感染する層」と「狭く物理攻撃する層」を分けると理解しやすい。
Windows側のワーム機能は、目的のSTEP 7環境へ到達するためにある程度広く移動する必要がある。一方、PLC側では厳しい条件判定を行い、標的構成が一致しなければ物理攻撃ロジックを実行しない。
つまり、配布機構は比較的広く、ペイロードは狭い。
この分離は、攻撃者側に利点がある。標的ネットワークの完全な経路を事前に知らなくても、感染が連鎖すれば目的端末へ近づける。一方で、PLC側の条件を絞ることで、意図しない設備を破壊する確率を下げられる。
ただし現実には、ワームが標的外へ流出したことでStuxnetは発見され、世界中の研究者に解析されることになった。作戦上の隠密性と、到達確率を上げるための自己拡散性は、完全には両立しない。
検証ポイント|「USBを挿した瞬間に遠心分離機が壊れる」わけではない
Stuxnetを説明する図では、USB→PLC→遠心分離機と直線で描かれることが多い。
概念図としては正しいが、時間軸を省略している。
USBでWindows端末へ入ることと、物理攻撃が発生することの間には複数の条件がある。
まずWindows上でコードが実行される。次に内部で拡散し、STEP 7環境へ到達する。さらにPLCへアクセスできる必要がある。PLCのCPUや通信構成、接続機器が攻撃側の期待条件に合う必要がある。そのうえでPLCへ攻撃コードが送り込まれ、プロセス側の条件が成立したときに特定の操作が開始される。
つまりStuxnetは「USBを挿したら即座に機械を破壊する爆弾」ではない。
長い探索・選別・待機を含む攻撃チェーンである。
検証ポイント|「Natanzは完全にインターネット非接続だったから侵入不可能」でもない
外部から直接アクセスできない設備であっても、運用上の接点がゼロとは限らない。
公開資料だけでは、Natanz内部の全ネットワーク構成や、全保守手順を完全には再現できない。そのため「完全なair gapだった」「この経路だけが唯一の入口だった」と断定するのは避けるべきである。
確認できるのは、Stuxnetがリムーバブルメディアを含む複数のオフライン・内部拡散手段を備えており、STEP 7のあるWindows環境へ到達した後にPLC攻撃へ移れるよう設計されていたことだ。
ネットワーク構成の未知部分を、ドラマチックな侵入物語で埋めてはいけない。
制御設備で同じ失敗を繰り返さないために
Stuxnetの入口側から得られる教訓は、現在の工場でも実用的である。
第一に、リムーバブルメディアを「ネットワークではない」と考えない。USBは物理的に持ち運べる通信経路である。許可媒体、スキャン、書込み制御、持込み履歴、用途分離を設計対象にする必要がある。
第二に、Engineering Workstationを一般PCと同じ管理にしない。PLCプログラムを書き換えられる端末は、制御権限そのものを持つ。アカウント、アプリケーション許可、外部媒体、バックアップ、ネットワーク通信を、通常の事務PCより厳しく扱う理由がある。
第三に、PLCプロジェクトやバックアップファイル自体を信頼資産として管理する。正しい版のプロジェクトであること、ハッシュや署名、承認履歴、保存場所を管理できれば、未知の端末から持ち込まれたプロジェクトを無条件に開く必要はない。
第四に、ネットワーク分離を「接続なし」という一語で終わらせず、例外経路を列挙する。保守PC、VPN、ベンダー接続、USB、SDカード、ファイルサーバー、バックアップ装置、プリンタ、時刻同期など、境界を横切るものを洗い出す。
これはStuxnet専用対策ではない。OTの実運用をセキュリティ設計へ変換する作業である。
まとめ
Stuxnetが隔離された制御網へ入れた理由を、「誰かがUSBを挿したから」の一文だけで説明すると、再発防止につながらない。
USBは入口になり得た。WindowsのLNK脆弱性は、ユーザーが明示的に実行ファイルを起動しなくてもコード実行へつながり得た。さらにStuxnetはネットワーク内での複数の拡散手段と、STEP 7プロジェクトを利用する経路を持っていた。そして目的は、一般PCを壊すことではなく、PLCへ正規にアクセスできるEngineering Workstationへ近づくことだった。
air gapを越えたのは魔法ではない。
設備を維持するために必ず存在する「持込み」「保守」「更新」「設定変更」という業務の流れだった。
次の記事では、Engineering Workstationまで到達したStuxnetが、なぜ感染先すべてを攻撃せず、Siemensの特定PLC・通信構成だけを選び出したのかを見る。攻撃の次の核心は、侵入ではなく標的識別である。
入口を一つに絞らなかったこと自体が設計思想だった
Stuxnetの侵入機構を設備保全の視点で見ると、もう一つ重要な点がある。攻撃者は「この一台のPCへ必ず入る」という前提を置かず、目的の制御環境へ近づくまでに複数の経路を許容していた。これは生産設備のネットワークが、オフィスITのように一様ではないことを考えれば合理的である。
工場や研究施設では、同じ設備でも建設時期やベンダー、保守契約、ネットワーク分割の方法が違う。Engineering Workstationが中央のサーバーへ接続される場合もあれば、装置ごとに独立している場合もある。USBを日常的に使う場所もあれば、保守会社のノートPCを一時接続する場所もある。攻撃側から見れば、侵入前にそのすべてを完全に把握するのは難しい。
そこで入口側を複線化し、Windows上である程度自己拡散させ、最終的な標的判定はPLCへ近づいてから行う。この構成なら、途中のネットワーク形状が予想と少し違っても作戦全体が直ちに失敗しない。
一方、この設計は攻撃側にも代償を生んだ。拡散機能が広いほど、標的外のPCへ流出し、セキュリティ企業へ検体が届く可能性が高くなる。2010年にStuxnetが公に発見された後、Windows側の仕組みからPLC側のペイロードまで世界中の研究者に解析されたのは、その副作用でもある。
このトレードオフは、Stuxnetを「一点突破の精密兵器」とだけ見ると見えない。最終ペイロードは非常に選択的だったが、そこへ到達する配送層は、目的地を探すために一定の広がりを必要としていた。
守るべきなのはネットワーク境界だけではなく、変更経路である
制御設備では、ファイアウォールやVLANの設計は重要である。しかしStuxnet型の脅威を考えると、それだけで十分とは言えない。PLCへ正規に変更を入れられる経路そのものを管理しなければならない。
たとえば「PLCへ書き込みできるPCはどれか」「そのPCへ誰がログインできるか」「どのUSBを挿せるか」「プロジェクトファイルはどこから来たか」「プログラム変更時にオンライン差分を誰が確認するか」といった項目である。これはサイバーセキュリティ部門だけの仕事ではなく、電気設計、制御設計、保全、生産技術、設備メーカーの運用契約までまたぐ。
Stuxnetの入口側が示したのは、OTでは“通信を許可したか”だけでなく、“変更を許可したか”を追跡する必要があるということだった。Engineering Workstationが信頼されているなら、その端末を経由した変更も信頼されやすい。だからこそ、その信頼点を守ることが重要になる。
FACT CHECK|出典・参考資料
- [1] Microsoft, Security Bulletin MS10-046: Vulnerability in Windows Shell Could Allow Remote Code Execution (CVE-2010-2568)
- [2] U.S. Department of Homeland Security / ICS-CERT, ICS-CERT – 2010 Year in Review
- [3] Nicolas Falliere, Liam O Murchu, Eric Chien, Symantec, W32.Stuxnet Dossier , Version 1.4, 2011
- [4] Symantec/Broadcom, Updated W32.Stuxnet Dossier is Available
- [5] MITRE ATT&CK for ICS, Workstation, Asset A0001
Stuxnet|核施設を狙ったサイバー攻撃は何だったのか 第2回 全8回 全8回を見る
- 01 Stuxnetとは何だったのか――コンピューターから現実の設備へ
- 02 Stuxnet|隔離された制御網へどう入ったのか――USBとゼロデイの侵入経路
- 03 Stuxnet|なぜSiemensの制御システムだけを探したのか――STEP 7とPLCの識別
- 04 Stuxnet|PLCを書き換えてもなぜ気づかれなかったのか――制御ロジック改変と偽装
- 05 Stuxnet|遠心分離機はどう攻撃されたのか――周波数変換器と回転数操作
- 06 Stuxnet|なぜ標的はナタンズだと分かったのか――コードと設備構成の照合
- 07 Stuxnetを誰が作ったのか――帰属で「分かっていること」と「分からないこと」
- 08 Stuxnetが変えたもの――産業制御セキュリティに残った教訓