
このリポジトリを気に入ってくださりありがとうございます。その価値は、何千ページにも及ぶ退屈で散在したレポートを読まなければならないという負担から人々を解放することにあります。そうしたレポートは膨大な時間とエネルギーを消費します。このリポジトリは非常に読みやすく、原本を盲目的に追いかけるのではなく、一般読者に向けた内容となっています。
このリポジトリには、悪名高い Stuxnet ワームを厳密に教育・研究目的で再構築したものが含まれています。これは、2010年に発見された元のバイナリサンプルに対して、世界のセキュリティ研究コミュニティが膨大な時間をかけて行ったリバースエンジニアリング作業の成果です。
コード品質は合格、カバレッジは成功、クリーンコードは検証済み。ただしビルドは不安定な段階です。
警告: このコードは学術研究、マルウェア解析トレーニング、および防御的研究のみを目的として提供されています。著者および貢献者は、違法または非倫理的な活動を容認しません。
これは悪意のある目的で使用することを意図したものではなく、配備可能なマルウェアでもありません。
- ステータス
概要
コアコンポーネント
技術アーキテクチャ
ビルド手順
使用方法
法的情報とライセンス
謝辞
# ステータス
- ビルド: 不安定
- クリーンコード: 検証済み
- コード品質: テスト合格
- カバレッジ: 優秀
日時: 2026-10-17 06:00
細部においてより原本に近いバージョンと、クリーンなバージョンを追加しました。どちらも既知の手がかりのみから完全に構築されています。ファイル名は Reboot.zip、パスワードは Stuxnet です。
再構築版が良くないと思われるなら…
Stuxnet は、産業制御システム (ICS) に物理的破壊を引き起こすために設計された、知られている限り最初のサイバー兵器として広く認識されています。特に Siemens Step 7 ソフトウェアと S7-300/400 PLC を標的とし、最終的には周波数変換器ドライブを操作して遠心分離機のローターを損傷させました。
このリポジトリは、逆コンパイルされたバイナリから導出された再構築ソースコードです。元のロジックと攻撃ベクトルを保持しつつ、読みやすさと解析のためにコードベースを構造化しています。
対象: Siemens SIMATIC WinCC、Step 7、および S7 PLC。
伝播: USB ドライブ (LNK エクスプロイト)、ネットワーク共有 (プリントスプーラー)、ピアツーピア (P2P)。
ペイロード: PLC ブロックロジック (OB1/OB35) の改変によるモーター周波数の変更。
ステルス性: ファイル、プロセス、レジストリを隠蔽する高度なルートキット機能 (MRxCls.sys, MRxNet.sys)。
このリポジトリは、元のマルウェアの解析中に特定された主要モジュールごとに構成されています。
winsta.exe, ~WTR4141.tmp~WTR4132.tmpWin32k.sys の脆弱性を悪用してシステムレベルの権限を取得する。s7otbxdx.dlls7otbxsx.dll を置き換える悪意のあるファイル。Step 7 と PLC 間の通信を傍受します。- モジュール: Step7 フックライブラリ
- ファイル名:
s7aaapix.dll- 説明: Step 7 エンジニアリング環境内の AUT (Automation Tool) API 呼び出しを傍受します。
mrxcls.sysmrxnet.sys- モジュール: ペイロード (攻撃)
- ファイル名:
s7plcmain- 説明: 遠心分離機に損傷を与える「周波数改ざん」攻撃を担うコアロジック。
以下は Stuxnet フレームワークの高レベルな実行フローを説明します。
ステージ 1: 初期感染ベクター (USB/ネットワーク)
ステージ 2: ドロッパーと権限昇格
ステージ 3: 環境チェック
ステージ 4a: ターゲット検出 (Siemens ソフトウェア) -> S7 フックをインストール
ステージ 4b: 非ターゲット -> 自己破壊/待機
ステージ 5: PLC 書き込みの監視
ステージ 6: OB1/OB35 書き込みの検出 -> ペイロードを注入
ステージ 7: 周波数出力の変更
ステージ 8: 遠心分離機への物理的損傷
ステージ 9: ルートキット (MRxCls) のインストール
ステージ 10: ファイルとレジストリの隠蔽
ステージ 11: ネットワークモジュール (MRxNet) のロード
ステージ 12: P2P 伝播
実行フロー
環境偵察: ワームは特定の Siemens ソフトウェア (WinCC、Step 7) および特定のターゲット PLC (S7-315、S7-417) の存在を確認します。
DLL インジェクション: s7blk_write 関数呼び出しを傍受します。
コードインジェクション: ユーザーがプロジェクトを PLC にダウンロードすると、悪意のあるコードが OB1/OB35 ブロックに追加されます。
物理的影響: PLC が改ざんされたコードを実行し、接続された可変周波数ドライブ (VFD) が異常な周波数 (高/低) で回転する原因となり、機械的損傷を引き起こします。
重要: このコードベースは、制御された仮想環境での静的解析とデバッグのために設計されています。重要なインフラストラクチャへの実環境での展開を目的としたものではありません。
ビルド環境: Microsoft Visual Studio 2019/2022 (Windows) または mingw-w64。
ターゲット OS: Windows XP / Windows 7 (ドライバの互換性のため)。
Driver Kit: Windows Driver Kit (WDK) 7600 (カーネルドライバをコンパイルする場合)。
ユーザーモードモジュールのビルド
リポジトリをクローン
git clone https://github.com/Sadpainy/Stuxnet.git
cd Stuxnet
メインドロッパーをビルドする
cd Main
nmake /f Makefile.win
S7フックライブラリをビルドする
cd ../s7otbxdx
cl /LD s7otbxdx.dll.c user32.lib ws2_32.lib
このコードは以下を目的としています:
マルウェア解析:高度標的型攻撃(APT)で使用される特定のコードロジックを理解する。
防御研究:ICSセキュリティツール向けの検知シグネチャ(例:YARAルール、Snortシグネチャ)を開発する。
学術研究:サイバーセキュリティと重要インフラ保護の交差点を調査する。
解析環境のセットアップ
環境の隔離:Host-Only ネットワーキングを有効にした仮想マシン(VMWare/VirtualBox)を使用します。インターネット接続を無効にします。
モジュールの読み込み:IDA Pro、Ghidra、x64dbg などのツールを使用して .dll および .sys ファイルを解析します。
アクティビティの監視:Process Monitor(ProcMon)、Process Hacker、Wireshark を使用して動作を観察します。
このプロジェクトは GNU Affero General Public License v3.0、LICENSE.Stuxnet (必読、非常に重要)、LICENSE.XOR (必読、非常に重要)、LICENSE.Detail、Apache License 2.0 および LICENSE.Desktop の下でライセンスされています。詳細は LICENSE ファイルを参照してください。
No Disclaimer. That's on you to be self-aware.
この調査と再構築は、世界的なサイバーセキュリティベンダー各社が提供した広範な分析と脅威インテリジェンスなしには実現できませんでした。
Symantec (W32.Stuxnet dossier)
Kaspersky Lab (The Stuxnet saga)
ESET (Stuxnet under the microscope)
Amr Thabet and Christian Roggia (research-virus/stuxnet)
This is an academic reconstruction. Use it to build stronger defenses, not to cause harm.
このリポジトリを気に入っていただきありがとうございます!