追記:11月23日に、「Stuxnet」再び:質疑応答という記事を追加した。

  「Stuxnet」は相変わらずホットなトピックだ。以下に、我々が受けた質問のいくつかに対する回答を掲載する。

Q:Stuxnetとは何か?
A:USBスティックを介して広がるWindowsワームだ。組織内に入ると、パスワードが弱い場合、ネットワーク共有に自身をコピーすることでも拡散し得る。

Q:他のUSBデバイスを介して広がることはあるのか?
A:もちろん、同ワームはドライブとしてマウント可能なあらゆるものが対象となる。USBハードドライブや携帯電話、ピクチャーフレーム等々。

Q:同ワームは何をするのか?
A:システムに感染し、自身をルートキットで隠し、感染したコンピュータがSiemens Simatic (Step7)ファクトリシステムに接続しているかをチェックする。

Q:Simaticで何をするのか?
A:Windows PCからPLCに送信されるコマンドを修正する。同ワームは特定の工場環境を探し、もし見つからなければ何もしない。

Simatic

Q:どの工場を探しているのか?
A:分からない。

Q:同ワームは、探している工場を発見したのか?
A:分からない。

Q:もし発見した場合、同ワームは何をするのか?
A:システムに複雑な改変を行う。これらの改変の結果については、実際の環境を見ること無しに検出することはできないため、分からない。

Q:では、理論的には何をすることができるのか?
A:同ワームはモーター、コンベヤーベルト、ポンプを調整することができる。工場を停止させることができる。調整さえ適切ならば、爆発を起こすことも可能だ。

Q:Stuxnetは何故、これほど複雑であると考えられているのか?
A:同ワームは複数の脆弱性を利用し、自身のドライバをシステムにドロップするためだ。

Q:同ワームは、自身のドライバをどのようにインストールし得るのか? ドライバはWindowsで動作するには、署名されている必要があるのではないか?
A:Stuxnetドライバは、Realtek Semiconductor Corpから盗まれた証明書により署名されていた。

Q:盗まれた証明書は取り消されているのか?
A:Verisignが、7月16日に取り消した。JMicron Technology Corporationから盗まれた証明書で署名された亜種が、7月17日に発見された。

Q:RealtekとJmicronにはどんな関係があるのか?
A:関係はない。しかし、両社は台湾の同じオフィスパーク内に本社がある。奇妙なことだ。

Q:Stuxnetはどのような脆弱性を利用するのか?
A:Stuxnetは全般的に、5種の脆弱性を利用する。そのうちの4種はゼロデイだ:

LNK (MS10-046)
印刷スプーラー (MS10-061)
Serverサービス (MS08-067)
キーボードレイアウトファイルを介した権限昇格
Task Schedulerを介した権限昇格

Q:Microsoftがこれらにパッチを当てているのでは?
A:権限昇格の脆弱性2種はまだ、修正されていない。

Q:Stuxnetの詳細な分析に時間がかかったのは何故なのか?
A:同ワームが異常に複雑で、巨大だからだ。Stuxnetは1.5MB以上のサイズがある。

Q:Stuxnetが広がり始めたのはいつ?
A:コンポーネントの一つのコンパイルデートは2009年1月だ。

Q:発見されたのはいつ?
A:1年後の2010年6月だ。

Q:どうしてそんなことに?
A:良い質問だ。

Q:Stuxnetは一国の政府によって書かれたものか?
A:そう、そのようには見える。

Q:政府にそれほど複雑なことが可能なのか?
A:ひねった質問だ。ナイス。次の質問。

Q:それはイスラエルなのか?
A:分からない。

Q:エジプト? サウジアラビア? アメリカ合衆国?
A:分からない。

Q:ターゲットはイランなのか?
A:分からない。

Q:Stuxnet内に聖書のリファレンスがあるというのは本当か?
A:Myrtus(ギンバイカ植物)へのリファレンスがある。しかしこれはコードで「隠されて」いない。これは、コンパイルされた際、プログラム内に残されたアーチファクトだ。基本的に、これは作者が自分のシステムのどこにソースコードを保存したかを示すものだ。Stuxnetの具体的な経路は「\myrtus\src\objfre_w2k_x86\i386\guava.pdb」だ。作者たちはおそらく、彼らが自分達のプロジェクトを「Myrtus」と読んでいることを、我々に知らせたくなかったはずだが、このアーチファクトのおかげで、我々は知ることとなった。このようなアーチファクトは、他のマルウェアでも見られる。Googleに対する「Operation Aurora」攻撃は、バイナリの1つに「\Aurora_Src\AuroraVNC\Avc\Release\AVC.pdb」というパスが発見された後で、「Aurora」と名付けられた。

Q:では、「Myrtle」はどの程度正確に聖書のリファレンスなのか?
A:うーん、本当に分からない。

Q:何か他の意味ということは無いのか?
A:そう、「Myrtus」ではなく「My RTUs」かも知れない。RTUは工場システムで使用されているリモートターミナルユニット(Remote Terminal Units)の略だ。

Q:Stuxnetはどのようにして、マシンを既に感染させたかを知るのか?
A:同ワームは、感染のマーカーとしてレジストリキーに「19790509」という数値をセットする。

Q:「19790509」の意味は何なのか?
A:日付だ。1979年5月9日を意味する。

Q:1979年5月9日に何が起こったのか?
A:おそらく、作者の誕生日ではないだろうか? しかし、これはHabib Elghanianというユダヤ系イラン人ビジネスマンが、イランで処刑された日付でもある。彼はイスラエルのためのスパイ行為を行ったとして告訴された。

Q:なるほど。
A:ええ。

Q:StuxnetとConfickerには関係があるのか?
A:そういうこともあり得る。Confickerの亜種は、2008年11月と2009年4月の間に見つかっている。Stuxnetの最初の亜種は、その直後に見つかった。どちらもMS08-067脆弱性を悪用している。どちらもUSBスティックを使用して拡散する。どちらも弱いネットワークパスワードを利用して拡散する。そしてもちろん、どちらも非常に複雑だ。

Q:他のマルウェアとの関係は?
A:Zlob亜種のいくつかが、LNK脆弱性を最初に使用した。

Q:WindowsでAutorunを使用不可にすれば、USBワームを遮断できるんですよね?
A:そうではない。USBワームが使用する拡散のメカニズムは他にもある。Stuxnetが利用しているLNK脆弱性は、AutorunとAutoplayが使用停止にされたとしても感染経路となる。

Q:Stuxnetは永久に拡散するのか?
A:現行バージョンは2012年6月24日が「kill date」だ。同バージョンはこの日付に拡散を停止する。

Q:同ワームはどのくらいのコンピュータを感染させたのか?
A:何十万台もだ。

Q:だがSiemensは、15の工場しか感染していないと発表している。
A:彼らが言っているのは工場についてだ。感染したマシンの大部分は、副次的な感染、すなわち、SCADAシステムに接続していない、通常の家庭やオフィスのコンピュータだ。

Q:攻撃者はこのようなトロイの木馬を、どのようにしてセキュアな工場に侵入させることができたのか?
A:たとえば、職員の自宅に侵入することで、その人物のUSBスティックを探しだし、それを感染させる。次に、その職員がスティックを職場に持って行くのを待ち、仕事用のコンピュータを感染させる。USBスティックを介して、感染はセキュアな工場内で更に広がっていき、最終的にターゲットを攻撃する。副次的な作用として、他の場所でも拡散が続くことになる。このようにして、Stuxnetは世界中に広がったのだ。

Q:理論的には、他に何ができるのか?
A:Siemensは昨年、Simaticが現在、アラームシステム、アクセスコントロールおよびドアをコントロールすることもできると発表した。理論的には、トップシークレットの場所にアクセスするのに用いられる可能性がある。トム・クルーズとミッション・インポッシブルを考えて欲しい。

Image Copyright (c) Paramount Pictures
Image Copyright (c) Paramount Pictures

Q:StuxnetはDeepwater Horizon石油掘削基地を水没させ、メキシコ湾の原油流出を招いたのか?
A:いや、我々はそうは考えていない。Deepwater Horizonは実際、Siemens PLCシステムを使用してはいたが。

Q:エフセキュアはStuxnetを検出しているか?
A:検出している。

注:このQ&Aに記載した内容の多くは、我々がMicrosoft、Kaspersky、Symantecおよび他のベンダのリサーチャーたちとディスカッションする中で得たものだ。


Symantecの研究者Liam O'Murchuが、エアポンプのオペレーションを変更するStuxnet的なSCADA修正POCをデモンストレーションする、「Virus Bulletin 2010」のビデオ。