icscheck-tool/icscheck
GitHub: icscheck-tool/icscheck
一款基于PowerShell的工控系统安全审计工具,可自动检查SCADA/HMI工作站是否符合IEC 62443和NIS2安全标准并生成合规报告。
Stars: 2 | Forks: 1
# 🛡️ ICScheck
[](https://opensource.org/licenses/MIT)
[](https://docs.microsoft.com/en-us/powershell/)
[](https://www.iec.ch/)
[](https://digital-strategy.ec.europa.eu/en/policies/nis2-directive)
## ⚠️ 重要免责声明
1. **审计范围:** 此工具仅审计**单个工作站**,而非整个 ICS/SCADA 系统。为了完全符合 IEC 62443,您需要进行系统级评估,包括区域、管道 和网络架构。
2. **无责任:** 作者对运行此工具或实施其建议所产生的任何后果**不承担任何责任**。使用风险自负。
3. **先行测试:** 我们强烈建议先在**测试环境**中运行 ICScheck,然后再用于生产系统。
4. **OT 环境:** 某些发现可能会被标记为 FAIL(失败),但在 OT(运营技术)环境中这可能是可接受的,前提是安全措施不得干扰基本功能(根据 IEC 62443-3-3,条款 4.2)。
## 🎯 什么是 ICScheck?
一个轻量级的 PowerShell 工具,可根据 **IEC 62443** 和 **NIS2** 安全要求自动审计您的 SCADA/HMI/DCS 工作站。
**无需网络安全专业知识。** 运行脚本,即可获取合规报告。
### ✅ 支持的系统
| 系统类型 | 示例 |
|-------------|----------|
| **SCADA** | Siemens WinCC V7/V8, TIA Professional, WinCC Unified, AVEVA InTouch, Rockwell FactoryTalk View SE |
| **HMI** | Siemens Comfort Panels, Rockwell PanelView |
| **DCS** | Siemens PCS7 |
| **BMS** | 楼宇自动化系统 |
| **PLC/PAC** | 任何基于 Windows 的工程站 |
### 📋 合规框架
| 框架 | 地区 | 状态 |
|-----------|--------|--------|
| **IEC 62443-3-3** | 🌍 全球 | ✅ 支持 |
| **NIS2 Directive** | 🇪🇺 欧盟 | ✅ 支持 |
| **NIST CSF** | 🇺🇸 美国 | 🔜 即将推出 |
## 🚀 快速入门
在您的 ICS 工作站上以**管理员身份**运行:
```
git clone https://github.com/icscheck-tool/icscheck.git
cd icscheck/src
powershell -ExecutionPolicy Bypass -File "ICScheck.ps1"
```
**替代方案(如果 git 不可用):**
1. 从 [GitHub](https://github.com/icscheck-tool/icscheck/archive/refs/heads/main.zip) 下载 ZIP
2. 解压到任意文件夹
3. 右键点击 `ICScheck.ps1` → “使用 PowerShell 运行”(以管理员身份)
该工具将:
1. 扫描您的系统配置
2. 根据 **36+ 项安全控制**进行检查
3. 生成 HTML 合规报告
4. 提供修复建议
## 📊 它检查什么?
| 类别 | 检查项 | IEC 62443 | NIS2 |
|----------|--------|-----------|------|
| **访问控制** | 用户、密码、锁定、UAC、密码期限/历史 | FR1 | Art.21(i) |
| **使用控制** | USB、自动运行、屏幕锁定 | FR2 | Art.21(g) |
| **系统完整性** | 杀毒软件、Defender 实时防护、更新、安全启动 | FR3 | Art.21(e) |
| **数据机密性** | BitLocker、共享、遥测 | FR4 | Art.21(h) |
| **网络安全** | 防火墙、RDP、SMBv1、TLS 1.2+、DCOM 加固 | FR5 | Art.21(e) |
| **审计与日志** | 事件日志、审计策略 | FR6 | Art.21(b) |
| **可用性** | 系统还原、卷影复制 | FR7 | Art.21(c) |
| **WinCC 专项** | 用户层级、驱动程序、报警记录、SQL 安全 | - | Art.21(b) |
## 📈 示例报告

运行 ICScheck 后,您将收到:
- **合规评分** - 与 IEC 62443 / NIS2 的对齐度为 X%
- **通过/失败状态** - 针对每项安全控制
- **风险评估** - 按优先级排序的发现
- **修复步骤** - 如何解决每个问题
- **导出选项** - 供审计人员查看的 HTML 报告
➡️ [查看示例报告](sample_report.html)
## 🗺️ 路线图
**已完成:**
- ✅ 核心 PowerShell 审计引擎
- ✅ IEC 62443-3-3 映射 (FR1-FR7)
- ✅ NIS2 第 21 条映射(约 80% 覆盖率)
- ✅ HTML 报告生成(深色/浅色主题)
- ✅ WinCC V7/V8 深度集成
- ✅ 通信架构树
- ✅ 用户层级可视化
- ✅ **v0.6:** 安全等级选择 (SL-1 至 SL-4)
- ✅ **v0.6:** 执行前的安全确认提示
- ✅ **v0.6:** 全面的免责声明(范围、责任、OT 环境)
**即将推出:**
- 🔜 完整的 FR1-FR7 × SL1-SL4 矩阵映射
- 🔜 针对每项检查的 OT 特定环境说明
- 🔜 PDF 导出
- 🔜 NIST CSF 映射
- 🔜 计划扫描
- 🔜 中央仪表板 (Pro)
- 🔜 多语言支持
## 📄 许可证
**MIT 许可证** - 随意使用、修改、分享。无限制。
## 👨💻 作者
**Łukasz Krzesiński**
- 17 年工业自动化经验
- 交付了 140+ 套 SCADA/HMI/DCS 系统
- 认证 Siemens SIMATIC 专家
📧 hello@icscheck.com
🌐 [icscheck.com](https://icscheck.com)
💼 [LinkedIn](https://www.linkedin.com/in/lukaszkrzesinski/)
标签:AI合规, DCS安全, HMI安全, ICS, IEC 62443, IPv6, Libemu, Libemu, NIS2, NTLM Relay, OT安全, PKINIT, PLC工程站, PowerShell, SCADA安全, 安全基线检查, 对称加密, 工业4.0, 工业网络安全, 工控安全, 开源安全工具, 服务器监控, 楼宇自控, 系统加固, 网络安全合规, 自动化审计, 西门子WinCC, 运营技术, 逆向工程平台, 配置核查