hslatman/awesome-industrial-control-system-security

GitHub: hslatman/awesome-industrial-control-system-security

这是一个精心整理的工业控制系统 (ICS/SCADA) 安全资源库,汇集了工控渗透测试、流量分析、蜜罐部署及学术研究等全方位的工具、数据集与学习文献。

Stars: 1948 | Forks: 471

# awesome-industrial-control-system-security 一份精心整理的与工业控制系统 (ICS) 安全相关的资源列表。 欢迎[参与贡献](CONTRIBUTING.md)。 ## 工具
AttkFinder AttkFinder 是一个对 PLC 程序执行静态程序分析并生成数据导向攻击向量的工具。简而言之,AttkFinder 接收基于 IEC-61131-3 标准编写的 XML 格式或结构化文本的 PLC 程序,构建数据流图 (DFG)、控制流图 (CFG),并将程序转换为结构化中间表示语言 (STIR) 版本。符号执行引擎分析 STIR 版本的代码,以搜索可被恶意执行器利用的攻击向量。
CSET 网络安全评估工具 (CSET®) 协助组织保护其关键的国家网络资产。 该工具为用户提供了一种系统且可重复的方法,用于评估其网络系统和网络的安全态势。 它包含与所有工业控制和 IT 系统相关的高级和详细问题。
Digital Bond's 3S CoDeSys Tools Digital Bond 创建了三个用于与运行 CoDeSys 的 PLC 进行交互的工具,包括命令外壳、文件传输和 NMap 脚本。
Digital Bond's ICS Enumeration Tools Redpoint 是 Digital Bond 的一个研究项目,旨在使用 nmap 扩展对 ICS 应用程序和设备进行枚举。在评估期间可以使用它来发现 ICS 设备并提取有助于二次测试的信息。Redpoint 工具使用合法的协议或应用程序命令来发现和枚举设备与应用程序。虽然它无意利用或使任何设备崩溃,但请谨慎使用。
GRASSMARLIN GRASSMARLIN 提供 ICS 和监控与数据采集 (SCADA) 网络的 IP 网络态势感知,以支持网络安全。在安全地进行设备发现、统计和报告这些关键信息物理系统的同时,被动地映射并以可视化方式展示 ICS/SCADA 网络拓扑。
ics_mem_collect GE D20MX 的内存收集器。该项目本身可以扩展以适用于其他设备。
ISF 工业利用框架 (ISF) 是一个类似于 Metasploit 的利用框架,使用 Python 编写。它基于开源的 Routersploit 工具。它包含针对多种类型控制器的漏洞利用,例如 QNX、Siemens 和 Schneider 设备,并包含多个扫描器。
ISEF 工业安全利用框架 (ISEF) 是一个基于 Shadow Brokers 泄露的 Equation Group Fuzzbunch 工具包的漏洞利用框架。由 ICSMASTER 安全团队开发。
ICSREF 一个模块化框架,可自动对使用 CODESYS v2 编译器编译的 CODESYS 二进制文件进行逆向工程。
ICSFuzz 用于发现 ICS 控制应用中漏洞的 PLC 端模糊测试工具。当前版本仅支持基于 Codesys 平台且已为 Wago PLC 修改和适配的应用程序。
ꓘamerka GUI 终极物联网/工业控制系统侦察工具。
mbtget mbtget - 一个简单的 perl 脚本,用于从命令行发起一些 modbus 事务。
MiniCPS MiniCPS:来自新加坡科技设计大学 (SUTD) 的信息物理系统安全研究工具包。
MODBUS Penetration Testing Framework smod 是一个模块化框架,提供了渗透测试 modbus 协议所需的各种诊断和攻击功能。它是使用 Python 和 Scapy 对 Modbus 协议的完整实现。该框架可用于执行漏洞评估。
ModbusPal ModbusPal 是一个 MODBUS 从站模拟器。其目的是提供一个易于使用的界面,具备重现复杂和逼真 MODBUS 环境的能力。
ModScan ModScan 是一款旨在映射基于 SCADA MODBUS TCP 网络的新工具。
NetToPLCSim PLC 仿真软件 Siemens PLCSim 的 TCP/IP 网络扩展。
OpenDNP3 OpenDNP3 是 IEEE-1815 (DNP3) 事实上的参考实现,在 Apache 许可证下提供。 它目前仅处于维护模式,不再添加新功能。 Automatak 已更名为 Step Function I/O,目前专注于用 Rust 编写协议
PLCinject PLCinject 可用于将代码注入 PLC。
plcscan 通过 s7comm 或 modbus 协议扫描 PLC 设备的工具。
Quickdraw IDS Digital Bond 的 Quickdraw IDS 项目包括用于 SCADA 设备的 Snort 规则以及用于网络流量的所谓预处理器。预处理器能够重建协议和状态供 Snort 使用,因此提供了显著的附加价值。
S7Comm-Analyzer 用于 Bro 解析 S7comm 协议数据流量的插件。
SCADAShutdownTool SCADAShutdownTool 是一款工业控制系统自动化和测试工具,允许安全研究人员和专家测试 SCADA 安全系统,枚举从站控制器,读取控制器的寄存器值并重写寄存器数据。
sixnet-tools 用于利用 Sixnet RTU 的工具。这个简单的命令行界面允许使用未公开的功能码获取 root 访问权限,并控制某些 Sixnet 系列工业控制设备上的底层 Linux 操作系统。
Snap7 Snap7 是一个开源、32/64 位、多平台的以太网通信套件,用于与 Siemens S7 PLC 原生对接。新型 CPU 1200/1500、旧型 S7200、小型 LOGO 0BA7/0BA8 以及 SINAMICS Drives 也得到部分支持。
s7scan 一款使用 Python 编写的工具,用于扫描网络、枚举 Siemens PLC 并收集其基本信息,如 PLC 固件和硬件版本、网络配置和安全参数。
S7 Password Bruteforcer 一款使用字典从 PCAP 中暴力破解 S7 实例密码的工具。原版由 SCADAStrangelove 创建。
splonebox splonebox 是一款专注于模块化的开源网络评估工具。它提供对网络及其设备的持续分析。一个主要的设计决策是支持开发自定义插件,包括用于工业通信协议的插件。
Wireshark Wireshark 是全球首屈一指的网络协议分析器。它让您可以在微观层面上查看网络上发生的情况。它是许多行业和教育机构中事实上的(通常也是法律上的)标准。它支持 ICS 中使用的许多协议。
PCS7-Hardening-Tool 一个独立的 PowerShell 脚本,基于 Siemens 安全指南枚举 Siemens PCS 7 DCS 服务器上的安全问题。由 OTORIO 创建。
## 发行版
Moki Linux Moki 是 Kali 的一个修改版,整合了互联网上散布的各种 ICS/SCADA 工具,旨在创建一个专为 ICS/SCADA 渗透测试专业人员量身定制的 Kali Linux。
ControlThings Platform (原 SamuraiSTFU) ControlThings Platform 是一个面向 ICS 网络安全团队的开源 Linux 发行版。它汇集了针对传统 IT 基础设施的最佳安全评估工具,并增加了专为嵌入式电子设备、专有无线网络准备的专业工具,以及大量来自社区的 ICS 专用评估工具和由 ControlThings I/O 团队创建的自定义工具。
## 蜜罐
Conpot Conpot 是一个低交互的服务器端工业控制系统蜜罐,旨在易于部署、修改和扩展。它具有易于定制和行为模拟等功能,并可以使用真实的 HMI 进行扩展。在 Honeynet 项目下构建和维护。
GasPot GasPot 是一个设计用来模拟 Veeder Root Guardian AST 的蜜罐。这些油罐液位计在石油和天然气行业的加油站油罐中非常常见,用于帮助进行燃料库存管理。GasPot 的设计尽可能随机化,使得没有任何两个实例看起来完全相同。
T-Pot T-Pot 是在 docker 容器中运行的多个蜜罐的组合。使用 Suricata 和 ELK 栈进行安全监控和可视化。除其他功能外,它还包含 Conpot 和 eMobility,它们分别是 ICS 和下一代交通基础设施的蜜罐。
## 数据
4SICS ICS Lab PCAPS 4SICS 的“极客休息室”包含一个配备 PLC、RTU、服务器、工业网络设备(交换机、防火墙等)的 ICS 实验室。这些设备可供 4SICS 参与者进行实际上手“测试”,并且已经捕获了来自这些设备的流量。
DEF CON 23 ICS Village PCAPS 来自第 23 届 DEF CON 的 PCAP 数据包。
ICS Map 一张基于 Shodan 收集的数据显示 ICS 设备的地图。数据可供进一步分析使用。
ICS PCAP Collection by Jason Smith 包含各种 ICS 实用程序和协议的 PCAP 数据集合。
ICS Radar 在地球仪上可视化的由 Shodan 从多种 ICS 协议中收集的数据。
S4x15 ICS Village 比赛期间使用的 S4x15 CTF PCAP 数据镜像。
S7 PCAP samples 用于 Wireshark S7 协议解析插件的示例文件。
SCADAPASS 著名的 SCADA StrangeLove 默认/硬编码密码列表。
TRISIS/TRITON/HATMAN malware repository 包含针对 Triconex 安全仪表系统 (SIS) 控制器的 TRISIS/TRITON/HATMAN 恶意软件原始文件和反编译文件的存储库。
HVAC Traces 一个存储库,包含来自某大学暖通空调 (HVAC) 系统的 PCAP 跟踪记录,可用于评估网络入侵检测系统。
## 框架
I-ISMS 工业信息安全管理系统 (I-ISMS) 可用于在工业环境中快速部署信息安全管理体系。它提供了从基础开始创建和实施该体系的模板。
## 订阅源与新闻
ICS-CERT Alerts ICS-CERT 警报订阅源旨在向关键基础设施的所有者和运营商提供有关可能影响关键基础设施计算网络的威胁或活动的及时通知。
ICS-CERT RSS Feed 由美国 ICS-CERT 提供的 RSS 订阅源,列出了新闻和最新发布的漏洞通告。
Industrial Security Alerts Siemens 通过此页面和 RSS 订阅源提供其工业系统的安全警报。
North American Electric Reliability Corporation (NERC) Alerts NERC 提供有关大电力系统 (BES) 安全通告和行业建议的警报。
ABB Cybersecurity Alerts and Notifications ABB 提供有关其网络安全事件和软件漏洞的警报。
Schneider Electric Cybersecurity Alerts and Notifications 从 Schneider Electric Software 获取有关网络安全和合规性的最新更新和警报。
## 会议与会议资料
CS3STHLM 斯德哥尔摩 SCADA 和工业控制系统网络安全国际峰会是一个年度峰会,汇集了关键流程和行业中最重要的利益相关者。CS3STHLM 自 2014 年开始举办,并迅速成为北欧首屈一指的 ICS 安全峰会。
CS4CA 关键资产网络安全是一个专注于关键基础设施网络安全的全球系列峰会。
SANS ICS Summit Archives 全球各地举办的 SANS ICS 峰会演示材料的中央存储库(与其他峰会穿插进行)。
SANS ICS Cybersecurity Conference (WeissCon) 因其创始人 Joe Weiss 而被亲切地称为 WeissCon,该会议现由 SecurityWeek 拥有并运营,通常于每年 10 月在美国的不同地点举行。
Kaspersky Industrial Cybersecurity conference (KICS con) 由 Kaspersky 主办的年度国际工业网络安全会议。
ICCPS: ACM/IEEE International Conference on Cyber-Physical Systems ACM/IEEE 国际信息物理系统会议 (ICCPS) 的目标是作为一个单轨论坛,报告信息物理系统在各个方面的进展,包括但不限于理论、工具、应用、系统和测试平台。
Industrial Control System Security (ICSS) Workshop 该研讨会的目标是探索在面临新威胁时改进安全关键控制系统的新技术。
Workshop on the Security of Industrial Control Systems & of Cyber-Physical Systems (CyberICPS) CyberICPS 旨在将研究人员、工程师和政府人员聚集在一起,探讨 ICS 和 CPS 在日益暴露于网络空间背景下的安全问题,为此提供一个论坛,讨论与其网络安全相关的所有议题。
Workshop on CPS & IoT Security and Privacy (CPSIoTSec) 联合信息物理系统与物联网安全与隐私研讨会旨在展示在解决 CPS 和 IoT 安全及隐私问题方面所做的工作。
ACM Cyber-Physical System Security Workshop (CPSS 2025) 该研讨会将为来自、政府和工业界的专业人士提供一个平台,讨论解决 CPS 面临的持续安全挑战的新方法。
IEEE Conference on Industrial Cyber-Physical Systems (ICPS) 该会议旨在提供一个平台,交流研究成果和创新结果,以及从与工业信息物理系统相关的新范式和技术的工业实践中汲取的经验。
IEEE International Workshop on Cyber-Physical Systems Security (CPS-Sec) CPS-Sec 2024 旨在为来自工业界和学术界对 CPS 安全感兴趣的研究人员和从业者提供一个交流平台。
## 文献
ATT&CK® for Industrial Control Systems by MITRE ATT&CK for ICS 是一个知识库,可用于描述对手在 ICS 网络中运作时可能采取的行动。
Library of Resources for Industrial Control System Cyber Security SCADAhacker.com 的终极 ICS/SCADA 网络安全资源列表。
Applied Cyber Security and the Smart Grid 《应用网络安全与智能电网:在现代电力基础设施中实施安全控制》,作者:Eric D. Knapp 和 Raj Samani。
A Collection of Resources for Getting Started in ICS/SCADA Cybersecurity Robert M. Lee 对一些优秀的 ICS 和 SCADA 安全资源的看法。
Hacker Machine Interface - The State of SCADA HMI Vulnerabilities 来自 Trend Micro 零日计划团队的 TrendLabs 研究报告,关于 SCADA 和 HMI 安全的现状。
Handbook of SCADA/Control Systems Security 这本综合手册涵盖了基本的安全概念、方法论,以及与世界各地公用事业和工业设施中使用的监控与数据采集 (SCADA) 及其他工业控制系统相关的信息。
SCADA Cybersecurity Framework 描述 SCADA 网络安全框架应包含内容的论文。
Industrial Network Security, Second Edition 《工业网络安全,第二版:保护智能电网、SCADA 及其他工业控制系统的关键基础设施网络》,作者:Eric D. Knapp 和 Joel Thomas Langill。
Power System SCADA and Smart Grids 本书将电力系统监控与数据采集 (SCADA) 的基础知识和可能的应用功能汇集在一卷中。虽然它不是面向安全的,而是主要面向电力系统,但仍是了解 SCADA 的绝佳入门读物。
NIST SP 800-82, Revision 2 NIST 编写的工业控制系统 (ICS) 安全指南。
The Industrial Control System Cyber Kill Chain 这篇 SANS 论文描述了 ICS 网络杀伤链。它将 Lockheed Martin 杀伤链调整为针对 ICS 系统典型的两阶段攻击。
An Abbreviated History of Automation, Industrial Control Systems, and Cybersecurity 这篇 SANS 论文探讨了 ICS 网络安全的背景。非常值得一读,以确保您了解过去二十年中发生的许多事件,以及它们是如何启发了当今 ICS 中的安全措施。
Control Engineering - Networking and Security - CyberSecurity 《控制工程》杂志的网络安全新闻和文献。
Operational Technology Cyber Security Incidents Ontology (OT-CSIO) OT-CSIO 由 FireEye 创建,是一个用于理解、交叉比较和评估与操作技术相关的网络安全事件的本体。它为评估风险提供了指导,并有助于做出明智的决策。
CIS Controls Implementation Guide for Industrial Control Systems - Version 7 本文档提供了关于如何将 CIS 控制版本 7.1 中的安全最佳实践应用于 ICS 环境的指南。
CIS Controls Internet of Things Companion Guide - Version 7.1 本文档的目标是在各个领域具有广泛的适用性。物联网影响了医疗保健、航空、公共安全和能源等多个领域的所有计算领域。这导致了针对特定行业的物联网安全指南,但本文档特意设计为不针对特定行业。
## 教育
GRFICSv2 图形化现实主义工业控制仿真框架 (GRFICS) 的第二个版本是一个逼真的工业控制仿真框架,使用 Unity 3D 游戏引擎模拟工业控制系统。GRFICS 为用户提供了一个完整的虚拟工业控制 (ICS) 网络环境,以练习常见的攻击(包括命令注入、中间人攻击和缓冲区溢出),并在 3D 可视化中直观地看到其攻击的影响。用户还可以通过使用强大的防火墙规则正确地分割网络或编写入侵检测规则来练习防御技能。第一个版本可以在这里找到。        
LICSTER LICSTER,即用于教育和研究的低成本 ICS 安全测试平台,旨在帮助学生、研究人员或任何对工业安全感兴趣的人搭建一个最小化、低成本的工业控制系统 (ICS) 测试平台。该项目包含一份用于构建极简 ICS 的廉价硬件清单、说明、配置和实例化系统的安装脚本,以及各种攻击者场景及其影响。论文可以在这里找到。        
Industrial Control System Cyber Security Institute ICS 网络安全研究所提供由 ICS 系统设计/运行和网络安全设计/合规领域的从业者开发的在线培训课程。        
## ICS、SCADA 与 PLC 简介
PLC Training Org 该网站整理了从 PLC 培训一直到 SCADA 系统的所有重要主题。虽然安全知识被交织在 10 个学习阶段中,但这对于初学者来说,是网站上极好的一篇安全文章。        
Control System Basics YouTube 视频,讲解了控制系统的基础知识,包括这些系统用来感知并产生物理变化以采取行动的逻辑类型。        
SCADA Systems - Utility 101 Session with Rusty Wiliiams 公用事业行业专家 Rusty Williams 从电力公用事业的角度解释了 SCADA。        
Control System Lectures Brian Douglas 的 YouTube 视频系列,他以非常容易理解的方式涵盖了关于控制系统的广泛主题。        
The PLC Professor PLC Professor 及其网站 plcprofessor.com 包含了大量优秀的资源,用于学习什么是可编程逻辑控制器 (PLC) 及其他类型的控制系统和它们的逻辑,以及它们是如何工作的。        
Serial Communications RS232 and RS485 Real Time Automation 的 John Rinaldi 介绍了串行通信 RS232 和 RS485。        
< href="https://www.youtube.com/watch?v=OvRD2UvrHjE" target="_blank">All You Need To Know About MODBUS-RTU Real Time Automation 的 John Rinaldi 介绍了 MODBUS-RTU。        
MODBUS Data Structures Real Time Automation 的 John Rinaldi 介绍了 MODBUS 数据结构。        
All You Need to Know About MODBUS-TCP Real Time Automation 的 John Rinaldi 介绍了 MODBUS-TCP。        
How Ethernet TCP/IP is Used by Industrial Protocols Real Time Automation 的 John Rinaldi 介绍了 Ethernet TCP/IP。        
RealPars RealPars YouTube 频道有许多关于工业自动化和 PLC 编程的视频。        
## 许可证 基于 [Apache License 2.0](LICENSE) 授权。
标签:AD攻击面, AI合规, Awesome 列表, CoDeSys, CTI, ICS安全, IEC-61131-3, OT安全, PLC安全, SCADA安全, 可视化界面, 安全工具集, 工业控制系统安全, 工控漏洞挖掘, 工控网络安全, 恶意执行器攻击, 控制流图, 数据流图, 数据流攻击, 符号执行, 网络 enumeration, 网络安全评估, 请求拦截, 逆向工具, 静态程序分析