Skip to content

Fupo-series/ICSEF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ICSEF - Industrial Control System Exploitation Framework

⚠️ 重要说明

本框架最初于 2022年 开始开发,目前已进行全面重构和优化。

  • 📦 本仓库仅包含部分公开模块,大量原创 0day 漏洞利用、数控机床相关 CVE 及其他敏感模块未公开
  • ⚙️ 由于设备固件版本差异和网络环境复杂性,不保证所有模块100%可用
  • 🐛 如遇到 Bug 或有新功能需求,欢迎提交 Issue 反馈
  • 💡 本项目持续维护中,更多模块将在合适时机逐步开放

工控指纹识别项目移步至https://github.com/Fupo-series/ICS-Tools

🎯 框架简介

ICSEF 是一个专业的工业控制系统漏洞利用框架,采用类似 Metasploit 的模块化架构设计,专注于工控安全渗透测试和漏洞研究。

✨ 核心功能

  • 模块化架构 - 统一的 Exploit 基类,易于扩展和维护
  • 交互式控制台 - MSF 风格的命令行界面,支持 Tab 补全
  • 动态加载 - 自动发现和加载 exploit 模块
  • 参数验证 - 自动检查必需参数,减少错误
  • 多厂商支持 - 覆盖主流工控设备品牌

🚀 快速开始

安装依赖

pip install -r requirements.txt

启动框架

python3 icsef.py

基本使用

# 列出所有可用模块
ICSEF > list

# 搜索特定模块
ICSEF > search S7_300

# 选择要使用的模块
ICSEF > use exploits/siemens/S7_300_Crash

# 查看模块配置选项
ICSEF(exploits/siemens/S7_300_Crash) > show options

# 设置目标参数
ICSEF(exploits/siemens/S7_300_Crash) > set ip 192.168.1.10
ICSEF(exploits/siemens/S7_300_Crash) > set port 102

# 检查目标是否可达
ICSEF(exploits/siemens/S7_300_Crash) > check

# 执行漏洞利用
ICSEF(exploits/siemens/S7_300_Crash) > run

# 返回主菜单
ICSEF(exploits/siemens/S7_300_Crash) > back

📦 当前支持的设备

Siemens(西门子)- 10个模块

S7-200 系列

  • S7_200_Upload - 程序上传
  • S7_200_deleteblock - 程序块删除
  • S7_200_startORstop - 运行状态控制

S7-300 系列

  • S7_300_Crash - PLC 拒绝服务攻击
  • S7_300_DeleteBlock - 程序块批量删除
  • S7_300_Latching - 未授权加密勒索攻击
  • S7_300_OutputPointTampering - I/O 点位篡改
  • S7_300_StopOrStart - 运行状态控制
  • S7_300_TamperingWithProgram - 程序上传/下载篡改
  • S7_300_MitmAttack - 中间人攻击(ARP欺骗+数据包篡改)

Omron(欧姆龙)- 3个模块

CJ2M 系列

  • Fins_ClearProgram - PLC 程序清除
  • Fins_TamperingWithProgram - PLC 程序篡改
  • Fins_stoporstart - PLC 运行状态控制

Delta(台达)- 4个模块

AS228T 系列

  • Modbus_func66_Latching - PLC 加密勒索
  • Modbus_func66_OutputPointTampering - I/O 点位篡改
  • Modbus_func66_StopOrStart - PLC 运行状态控制
  • modbus_func66_Delete_program - PLC 程序删除

总计:17个 Exploit 模块

🔮 下一步计划

近期计划

  • Schneider(施耐德)系列支持

    • Modicon M340/M580 系列 PLC
    • Unity Pro 协议漏洞利用
  • Rockwell(罗克韦尔)系列支持

    • ControlLogix/CompactLogix 系列
    • EtherNet/IP 协议攻击
  • Mitsubishi(三菱)系列支持

    • FX/Q 系列 PLC
    • MC 协议漏洞利用

功能增强

  • 批量扫描模式 - 支持 IP 段批量检测
  • 结果导出 - JSON/HTML 格式报告生成
  • 日志系统 - 完整的操作审计日志
  • 插件系统 - 支持第三方模块扩展
  • Web界面 - 图形化操作界面

高级功能

暂无计划

📁 项目结构

ICSEF/
├── core/                       # 核心框架
│   ├── exploit.py             # Exploit 基类
│   ├── framework.py           # 框架管理器
│   └── console.py             # 交互式控制台
├── exploits/                  # Exploit 模块
│   ├── siemens/              # 西门子系列
│   ├── omron/                # 欧姆龙系列
│   └── delta/                # 台达系列
├── icsef.py                  # 主程序入口
├── requirements.txt          # 依赖库
└── README.md                 # 本文件

⚠️ 免责声明

本框架仅供安全研究和授权测试使用!

  • ❌ 严禁用于非法攻击和未授权测试
  • ❌ 严禁用于破坏生产环境系统
  • ❌ 使用者需自行承担所有法律责任

进行工控安全测试前必须:

  1. 获得明确的书面授权
  2. 在隔离的测试环境中进行
  3. 提前制定应急预案
  4. 遵守相关法律法规

📄 许可证

本项目仅用于安全研究和教育目的。

👤 鸣谢

特别感谢我的好朋友兼前同事对exp的开发给予了极大的帮助和建议。再次感谢!

感谢所有为工控安全研究做出贡献的研究者们。

本框架在开发过程中参考了大量公开资料和社区贡献,特此致谢。

About

主要用于常见工控协议和部分设备的漏洞利用

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages