- 匿名のGitHubアカウントが、発見される前にイランの遠心分離機の5分の1を破壊したとされるStuxnetマルウェアの「復元版」と称するものを公開しました
- オリジナルのソースコードはこれまで一度も流出しておらず、このアカウントが使用する「Stuxnet」という呼称も、発見から数週間後にSymantecが命名したものに由来します
- このコードは検証も動作確認もされておらず、一部のユーザーは、広く文書化されているオリジナルのバイナリの挙動をAIが再現しただけのものである可能性が高いと指摘しています
あるGitHubアカウントが、イランのウラン濃縮用遠心分離機を破壊したワーム「Stuxnet」を忠実に復元したものだと称するコードを公開しました。
Stuxnetはまた、現実世界で物理的な破壊を引き起こしたと広く認められている、最初のソフトウェアでもあります。これは、悪意あるソフトウェアがデータの窃取や改ざんにとどまらず、人やハードウェアに対してはるかに大きな被害を及ぼしうることを浮き彫りにする出来事でした。
このリポジトリは、Show HNへの投稿をきっかけに表面化し、その後、主流メディアがこれを取り上げ、まだ正体の分かっていない研究者によるリバースエンジニアリングされたコードとして注目を集めました。
最初でも最後でもないStuxnetリポジトリ
Stuxnetを構築した人物が書いたオリジナルのソースコードは、これまで一度も流出したことがなく、今回も流出したわけではありません。このリポジトリのREADMEには、逆コンパイルされたバイナリから組み立てた「復元版」であると明記されており、それらのバイナリ自体は、ベラルーシのセキュリティ企業VirusBlokAdaが2010年6月にイランの顧客のマシンからサンプルを採取して以来、一般に出回っていました。
Symantecの「W32.Stuxnet Dossier」や、Ralph Langner氏による『To Kill a Centrifuge』など、これまでに発表された分析はすべて、これらのサンプルと、テスト環境内での挙動をもとに構築されたものです。
また、Stuxnetの復元を意図した、人間が読めるC言語コードがオンラインに公開されたのも、今回が初めてではありません。マルウェア研究者のAmr Thabet氏は、2010年から2011年の著作権表示が付いたMRxNetルートキットの逆コンパイル版を公開しています。続いてChristian Roggia氏が、2012年から2014年の著作権表示が付いた「open-myrtus」と呼ばれるドロッパーの逆コンパイル版を発表し、これはその後、長い系譜のリポジトリへと派生していきました。
皮肉なことに、もしこのコードが悪名高いマルウェアを忠実に再現したものであれば、レジストリキーをはじめとする複数の箇所に「Stuxnet」という文言が登場するはずがありません。というのも、この呼称は開発者自身が使っていたものではなく、Symantecが当初の識別名「W32.Temphid」から切り替えて名付けたものだからです。
Sadpainyというユーザーによって最初に注目を集めたこのスレッドでは、開発者たちの間でも意見が分かれています。多くの開発者はこれを「AIスロップ(AIが生成した粗悪品)」あるいは、既存の複数のリポジトリを寄せ集めた「偽物」だと断じています。一方で、GitHubリポジトリのaboutページには、この研究者が教育目的で再現したものであり、Windows XPおよびWindows 7でのみ動作するよう設計されていると記載されています。
試してみようという人がいれば、仮想マシンを使うのが最善の方法でしょう。特にStuxnetにはハードウェアに物理的な損傷を与える能力があることを踏まえればなおさらです。同時に今回の一件は、具体的な指示や安全策なしに放置された場合、暴走したAIエージェントが何をなし得てしまうのかを改めて思い起こさせるものと言えるでしょう。