资讯动态

Anthropic-Cybersecurity-Skills 实战指南:SCADA 系统攻击检测 API 参考与协议指纹速查

发布时间:2026/9/12 20:48:43 来源:尧图企业网站定制
Anthropic-Cybersecurity-Skills 实战指南SCADA 系统攻击检测 API 参考与协议指纹速查【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills本指南以 Anthropic-Cybersecurity-Skills 仓库中detecting-attacks-on-scada-systems技能的 api-reference.md 为骨架系统梳理 SCADA 攻击检测所需的依赖库、工业协议端口清单、Modbus 攻击指标、S7comm 连接指纹以及 MITRE ATTCK for ICS 技术映射并结合该技能配套的 agent.py 检测代理源码给出可直接落地的检测与审计方法。读完本文你将能够在 OT 环境部署基于 pymodbus 与 requests 的检测工具识别 Modbus/S7comm/DNP3 等协议上的攻击行为并用 MITRE ATTCK for ICS 技术编号向 SOC 与监管侧统一汇报。依赖库速览SCADA 攻击检测脚本的编写高度依赖两个 Python 库其用途与安装方式如下库安装命令用途pymodbuspip install pymodbusModbus TCP 客户端用于与 PLC 交互、读取寄存器、探测异常响应requestspip install requests用于调用 SIEM 与历史数据库historian的 REST API拉取告警与过程数据在 agent.py 中可以看到这两个库的实际引入方式pymodbus.client.ModbusTcpClient被用于构造 Modbus 客户端缺失时脚本会降级并提示pip install pymodbusrequests则用于query_scada_siem向 SIEM 发起带 Bearer Token 的事件查询。若配合 SKILL.md 中的基线构建脚本还需要scapypip install scapy用于解析 PCAP 抓包。常见 SCADA 协议与端口指纹工业协议具有高度确定性且大多运行在固定端口上这为基于端口的资产发现与流量监控提供了天然锚点。api-reference.md 给出了 7 个核心端口映射端口协议厂商 / 用途502Modbus TCP通用 PLC 通信102S7commISO-TSAP西门子 S7 PLC44818EtherNet/IP CIPAllen-Bradley / Rockwell20000DNP3电网、水务系统4840OPC-UA通用 ICS 集成47808BACnet楼宇自动化34962PROFINET RT西门子分布式 I/Oagent.py 中的SCADA_PORTS字典在此基础上扩展了更完整的指纹表并附带严重性分级端口协议严重性502Modbus TCPCRITICAL102Siemens S7commCRITICAL44818EtherNet/IP CIPCRITICAL20000DNP3CRITICAL4840OPC-UAHIGH47808BACnetHIGH2222EtherNet/IP implicitHIGH1089Foundation Fieldbus HSEMEDIUM34962PROFINET RTHIGHscan_scada_services函数利用socket.connect_ex对目标主机逐个端口做 3 秒超时的 TCP 连通性测试凡是可连接的端口都会被记为一条{host, port, protocol, accessible, severity, finding}结构的结果用于快速判断 OT 边界是否存在暴露的工控服务。注意该扫描属于主动探测仅在获得授权、或在隔离的测试/评估环境如红队演练中执行切勿在生产 SCADA 网络中随意触发。Modbus 攻击指标一眼识别异常行为api-reference.md 归纳了 4 类最典型的 Modbus 攻击信号及其严重级别它们既是编写 Suricata 规则的依据也是人工排查流量时的优先线索指标说明严重性广播单元 ID0/255同时访问所有从站设备CRITICAL从 IT 网络向线圈写入未授权的过程控制变更CRITICAL异常功能码8、17、43诊断/侦察类命令HIGH批量寄存器读取从 PLC 内存窃取数据数据外泄MEDIUM功能码是理解这些指标的关键。Modbus 功能码 1/2/3/4 为只读操作读线圈、读离散输入、读保持寄存器、读输入寄存器5/6/15/16 为写操作写单线圈、写单寄存器、写多线圈、写多寄存器8 为诊断Diagnostics17 为报告从站 IDReport Slave ID43 为封装接口传输Encapsulated Interface Transport。因此写线圈 非工程站来源 广播地址三个条件叠加基本可以认定为恶意指令注入。S7comm 连接请求COTP CR指纹针对西门子 S7 系列 PLCapi-reference.md 给出了 S7comm 建立连接时的 COTP Connection Request连接请求关键字段字段值说明TPKT version0x03ISO 传输头COTP PDU 类型0xe0连接请求源 TSAP0x0100客户端地址目标 TSAP0x0102PLC 机架/槽位在 agent.py 的detect_s7comm_access中这段指纹被编码为 22 字节的原始报文cotp_cr bytes([ 0x03, 0x00, 0x00, 0x16, # TPKT 版本 0x03 长度 0x11, 0xe0, 0x00, 0x00, # COTP PDU 类型 0xe0CR 0x00, 0x01, 0x00, 0xc0, 0x01, 0x0a, 0xc1, 0x02, 0x01, 0x00, 0xc2, 0x02, # 源 TSAP 0x0100 0x01, 0x02, # 目标 TSAP 0x0102 ])发送该报文后若收到非空响应即判定S7comm COTP connection accepted — PLC accessible严重性为 CRITICAL。这一探测手法同时印证了 api-reference.md 中 S7comm 指纹表的实战价值指纹字段不仅是文档知识也是可以直接构造的检测载荷。MITRE ATTCK for ICS 技术映射api-reference.md 将 SCADA 攻击检测能力对齐到 MITRE ATTCK for ICS 矩阵的 4 个技术点技术ID说明Point Tag IdentificationT0861枚举过程数据点Unauthorized Command MessageT0855向控制器发送恶意命令Modify Controller TaskingT0821更改 PLC 程序逻辑Denial of ServiceT0814破坏 SCADA 通信从仓库的框架映射体系看SKILL.md 的 frontmatter 还声明了该技能覆盖T0846远程系统信息发现、T0836有效信息修改、T0831控制操纵、T0814拒绝服务、T0832历史数据操纵等 ATTCK 条目并映射到 NIST CSFPR.IR-01、DE.CM-01、ID.AM-05、GV.OC-02、MITRE ATLASAML.T0070、AML.T0066、AML.T0082以及 NIST AI RMFMEASURE-2.7、MAP-5.1、MANAGE-2.4说明检测能力已纳入仓库的多框架覆盖体系。相关兄弟技能可进一步细化这些技术点的检测例如 ATTACK_COVERAGE.md 显示T0814由detecting-modbus-command-injection-attacks覆盖T0836由detecting-modbus-command-injection-attacks、detecting-modbus-protocol-anomalies、detecting-stuxnet-style-attacks覆盖T0855由detecting-dnp3-protocol-anomalies等覆盖。源码级检测实现从 API 参考到可运行代理api-reference.md 属于参考速查而 agent.py 将其中的协议知识落地为可执行审计工具支持以下命令行参数参数说明默认值--host扫描 SCADA 服务的目标主机无--modbus-host待审计的 Modbus 设备无--modbus-portModbus 端口502--s7-host待检测的西门子 S7 PLC无--siem-urlSIEM API 地址SCADA 事件查询无--siem-keySIEM API Key无--output报告输出 JSON 文件路径无典型用法# 扫描目标主机的 SCADA 端口暴露情况 python3 agent.py --host 10.30.1.50 # 审计 Modbus 设备含广播单元 ID 探测 python3 agent.py --modbus-host 10.30.1.60 --modbus-port 502 # 检测 S7comm PLC 可访问性 python3 agent.py --s7-host 10.30.1.70 # 查询 SIEM 中 24 小时内严重性 7 的 SCADA 事件 python3 agent.py --siem-url https://siem.local --siem-key token --output report.jsonModbus 异常探测逻辑detect_modbus_anomalies依次执行三类检查与 api-reference.md 的指标表一一对应读保持寄存器read_holding_registers(0, count10, slaveunit_id)若可读且unit_id 0则标记 HIGH否则 MEDIUM对应批量寄存器读取/数据外泄指标广播单元 ID 探测对[0, 255]两个单元 ID 各发起一次单寄存器读取任何响应都标记为CRITICAL对应广播单元 ID0/255指标——广播地址本不该对单个请求应答能响应即说明防护缺失批量线圈读取read_coils(0, count100, slaveunit_id)100 个线圈可读记为 MEDIUM对应 IT 侧枚举行为。SIEM 事件关联query_scada_siem以Authorization: Bearer api_key调用/api/v1/events?categoryscadahours24将严重性 ≥ 7 的事件提取为检测结果≥ 9 记 CRITICAL否则 HIGH实现 OT 告警与企业 SIEM 的联动——这正是 SKILL.md 中将 OT 网络监控与企业 SOC 集成场景的基础。检测能力扩展结合技能工作流落地api-reference.md 的指标与指纹最终要放进完整检测流水线。参考 SKILL.md 的四步工作流建立 SCADA 通信基线工业协议高度确定——同一主站按同一周期轮询同一从站、读取同一批寄存器。用 scapy 解析 PCAP统计allowed_function_codes、polling_interval_avg_sec、register_ranges产出 JSON 基线部署 OT 检测规则将 api-reference.md 的指标翻译为 Suricata 规则例如 Modbus 广播写modbus_unit_id:0、FC 8 诊断命令、S7comm CPU STOP|03 00|头 |29|功能码、DNP3 冷重启命令|05 64||0d|等过程数据异常检测从 historian 拉取温度、压力、流量等ProcessVariable按工程限值、变化率上限、20 次读数平线检测、z-score3.5四类规则识别 Stuxnet 式传感器值冻结/回放攻击已知 ICS 恶意软件 IOC 检测覆盖 TRITON/TRISISTriStation 1502 端口、trilog.exe、Industroyer/CrashOverrideIEC 104 端口 2404、104.dll、PIPEDREAM/INCONTROLLERCODESYS 1217、OPC UA 4840等家族的网络与主机指标。关键实践警示检测到异常后输出报告应包含检测时间、告警来源、MITRE ATTCK for ICS 技术编号、基线对比Normal/Observed/Deviation与分级响应建议涉及 SIS安全仪表系统的告警切勿当作误报忽略——TRITON 已经证明攻击者会专门针对安全系统必须同时通知工艺安全团队而非仅通知 IT SOC。参考与延伸阅读api-reference.md 中建议的外部参考pymodbus 官方文档、MITRE ATTCK for ICS 矩阵、CISA ICS 公告、NIST SP 800-82 Rev 3可用于理解协议细节与行业最佳实践。仓库内的延伸阅读路径包括技能主文档SKILL.md完整四步检测工作流与 Suricata 规则全文检测代理源码agent.py本文所有端口表、COTP 指纹的代码出处框架覆盖总览ATTACK_COVERAGE.md 与 mappings/mitre-attack/coverage-summary.md相关技能detecting-modbus-command-injection-attacks、detecting-modbus-protocol-anomalies、detecting-stuxnet-style-attacks、detecting-dnp3-protocol-anomalies、detecting-attacks-on-historian-servers该技能以 Apache-2.0 协议开源见 LICENSE属于 ot-ics-security 领域适用于首次部署 SCADA 入侵检测、调查疑似工控攻击、为 Stuxnet/TRITON/Industroyer 类攻击编写检测规则以及将 OT 监控接入企业 SOC 的场景。【免费下载链接】Anthropic-Cybersecurity-Skills817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATTCK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI 20 platforms · 29 security domains · Apache 2.0项目地址: https://gitcode.com/GitHub_Trending/an/Anthropic-Cybersecurity-Skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价