Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Stuxnet — 针对恶意软件分析与防御研究的教育性Stuxnet蠕虫重建项目。包含权限提升、Rootkit功能以及针对西门子Step 7和S7 PLC的PLC载荷注入模块。 | Kitploit
工具/GitHubGitHub/sadpainy/stuxnet
权限提升漏洞利用横向移动逆向工程恶意软件分析学习与教育Payload 开发
GitHubsadpainy/stuxnet

Stuxnet

针对恶意软件分析与防御研究的教育性Stuxnet蠕虫重建项目。包含权限提升、Rootkit功能以及针对西门子Step 7和S7 PLC的PLC载荷注入模块。

查看仓库
11天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Stuxnet

Build Status License: GPL v3 Platform

本仓库包含对臭名昭著的 Stuxnet 蠕虫的纯教育和研究用途重构。它是全球安全研究社区对 2010 年发现的原始二进制样本进行无数小时逆向工程工作的成果。

免责声明:本代码仅供学术研究、恶意软件分析培训和防御性研究使用。它不旨在用于任何恶意目的,也不是可部署的恶意软件。作者和贡献者不纵容任何非法或不道德的活动。

目录

概述

核心组件

技术架构

构建说明

用法

法律与许可证

致谢

概述

Stuxnet 被广泛认为是首个旨在对工业控制系统(ICS)造成物理破坏的已知网络武器。它专门针对西门子 Step 7 软件和 S7-300/400 PLC,最终操纵变频器驱动器以损坏离心机转子。

本仓库是从反编译二进制文件中推导出的重构源代码。它保留了原始逻辑和攻击向量,同时将代码库结构化以便于阅读和分析。

关键特征

目标:西门子 SIMATIC WinCC、Step 7 和 S7 PLC。

传播方式:USB 驱动器(LNK 漏洞)、网络共享(Print Spooler)、点对点(P2P)。

载荷:修改 PLC 块逻辑(OB1/OB35)以改变电机频率。

隐蔽性:高级 Rootkit 功能(MRxCls.sys、MRxNet.sys),用于隐藏文件、进程和注册表项。

核心组件

本仓库按原始恶意软件分析过程中识别出的主要模块进行组织。

模块:加载器/投放器 文件名:winsta.exe、~WTR4141.tmp 描述:负责初始感染、权限提升和其他组件部署的入口点。

模块:权限提升 文件名:~WTR4132.tmp 描述:利用 Win32k.sys 漏洞获取系统级权限。

模块:S7 钩子库 文件名:s7otbxdx.dll 描述:恶意替换原始 s7otbxsx.dll。拦截 Step 7 与 PLC 之间的通信。

模块:Step7 钩子库 文件名:s7aaapix.dll 描述:拦截 Step 7 工程环境中的 AUT(自动化工具)API 调用。

模块:Rootkit(文件系统) 文件名:mrxcls.sys 描述:内核模式驱动程序,通过 SSDT 挂钩隐藏 Stuxnet 文件、进程和注册表项。

模块:Rootkit(网络) 文件名:mrxnet.sys 描述:过滤文件系统请求以隐藏恶意文件,并支持 P2P 传播。

模块:载荷(攻击) 文件名:s7plcmain 描述:负责损坏离心机的“频率篡改”攻击的核心逻辑。

技术架构

以下描述 Stuxnet 框架的高级执行流程。

阶段 1:初始感染向量(USB/网络) 阶段 2:投放器和权限提升 阶段 3:检查环境 阶段 4a:发现目标(西门子软件)-> 安装 S7 钩子 阶段 4b:非目标 -> 自毁/空闲 阶段 5:监控 PLC 写入 阶段 6:检测 OB1/OB35 写入 -> 注入载荷 阶段 7:修改频率输出 阶段 8:对离心机造成物理损坏 阶段 9:安装 Rootkit(MRxCls) 阶段 10:隐藏文件和注册表项 阶段 11:加载网络模块(MRxNet) 阶段 12:P2P 传播

执行流程

  1. 环境侦察:蠕虫检查是否存在特定的西门子软件(WinCC、Step 7)和特定的目标 PLC(S7-315、S7-417)。

  2. DLL 注入:它拦截 s7blk_write 函数调用。

  3. 代码注入:当用户将项目下载到 PLC 时,恶意代码被附加到 OB1/OB35 块中。

  4. 物理影响:PLC 执行被操纵的代码,导致连接的变频驱动器(VFD)以异常频率(高/低)旋转,从而造成机械损坏。

构建说明

重要提示:此代码库专为在受控虚拟环境中进行静态分析和调试而设计。它不旨在部署在任何关键基础设施上进行实时运行。

要求

构建环境:Microsoft Visual Studio 2019/2022(Windows)或 mingw-w64。

目标操作系统:Windows XP / Windows 7(用于驱动程序兼容性)。

驱动程序套件:Windows Driver Kit(WDK)7600(如果编译内核驱动程序)。

构建用户模式模块

克隆仓库

git clone https://github.com/Sadpainy/Stuxnet.git cd stuxnet-analysis

构建主投放器

cd winsta nmake /f Makefile.win

构建 S7 钩子库

cd ../s7otbxdx cl /LD s7otbxdx.c user32.lib ws2_32.lib

用法

本代码旨在用于:

恶意软件分析:理解高级持续性威胁(APT)中使用的特定代码逻辑。

防御性研究:为 ICS 安全工具开发检测签名(例如 YARA 规则、Snort 签名)。

学术研究:考察网络安全与关键基础设施保护之间的交叉领域。

分析设置

  1. 隔离环境:使用启用仅主机(Host-Only)网络的虚拟机(VMWare/VirtualBox)。禁用互联网连接。

  2. 加载模块:使用 IDA Pro、Ghidra 或 x64dbg 等工具分析 .dll 和 .sys 文件。

  3. 监控活动:使用 Process Monitor(ProcMon)、Process Hacker 和 Wireshark 观察行为。

法律与许可证

许可证

本项目根据 GNU 通用公共许可证 v3.0 授权。详情请参阅 LICENSE 文件。

免责声明

本仓库中的代码是仅出于教育目的进行逆向工程的产物。Stuxnet 蠕虫的原始作者是匿名的,但此处包含的重构是独立安全研究人员的工作成果。

作者不声称拥有原始恶意软件的所有权。

本代码按“原样”提供,不附带任何形式的保证。

作者不对因使用本代码造成的任何误用或损害负责。

使用本仓库即表示您确认自行负责确保遵守所有适用的法律法规。

致谢

如果没有全球网络安全厂商提供的广泛分析和威胁情报,这项研究和重构是不可能完成的。

Symantec(W32.Stuxnet 档案)

Kaspersky Lab(Stuxnet 传奇)

ESET(显微镜下的 Stuxnet)

Amr Thabet 和 Christian Roggia(research-virus/stuxnet)

这是一项学术性重构。请用它来构建更强大的防御,而不是造成伤害。

下载工具