SoftPAC Project虚拟控制器存在漏洞,致OT网络暴露在攻击风险之中
字数 1554 2025-08-15 21:30:47
SoftPAC Project 虚拟控制器安全漏洞分析报告
1. 漏洞概述
工业网络安全公司 Claroty 在 Opto 22 公司的 SoftPAC Project 虚拟可编程逻辑控制器(PLC)中发现了多个严重安全漏洞,这些漏洞导致操作技术(OT)网络面临重大安全风险。
2. SoftPAC Project 简介
SoftPAC Project 是一款基于软件的自动化控制器,主要特点包括:
- 可托管在 Windows 设备上
- 适用于需要更多文件存储、运算能力或频繁访问文件的应用程序
- 广泛应用于全球交通、IT、关键制造行业和商业机构
- 在电力行业也有广泛应用
主要组件
- Monitor:用于启动/停止 PAC 服务以及更新 SoftPAC 固件
- Agent:作为 Monitor 和 PAC 之间的媒介
- 虚拟控制器:核心控制功能
3. 发现的漏洞详情
3.1 CVE-2020-12042
- CVSS v3评分:6.5
- 类型:路径遍历漏洞
- 描述:程序未过滤用于更新 SoftPAC 固件的 zip 文件中指定的路径
- 影响:攻击者可获得任意文件写入权限
3.2 CVE-2020-12046
- CVSS v3评分:5.7
- 类型:签名验证缺失
- 描述:固件更新时未验证 SoftPAC 固件文件的签名
- 影响:攻击者可用恶意文件替换合法固件文件
3.3 CVE-2020-10612
- CVSS v3评分:9.1
- 类型:访问控制错误
- 描述:SoftPAC Agent 通过 22000 端口与 Monitor 通信,但未对该开放端口进行任何限制
- 影响:攻击者可控制 SoftPAC Agent 服务,包括更新固件、启停服务或写入注册表值
3.4 CVE-2020-10616
- CVSS v3评分:6.5
- 类型:DLL 劫持
- 描述:SoftPAC 未指定多个导入的 .dll 文件的路径
- 影响:攻击者可替换文件并执行代码
3.5 CVE-2020-10620
- CVSS v3评分:9.8
- 类型:授权问题
- 描述:与 SoftPAC 通信时不需要任何凭证
- 影响:攻击者可直接与 SoftPAC 通信,包括远程停止服务
4. 攻击场景分析
4.1 基本攻击方式
远程攻击者获取 SoftPAC Agent 访问权限后可以:
- 向 PAC 发送启动/停止命令
- 更新固件
- 这些虚拟控制器可作为 OT 网络的入口点
4.2 组合攻击示例
攻击者可结合利用 DLL 劫持和固件更新漏洞实施攻击:
- 建立与 SoftPAC Agent 的连接
- 检查 SoftPAC PLC 是否运行
- 发送停止命令停止 SoftPAC PLC
- 发送固件更新命令,包含恶意 zip 文件的网络路径
- SoftPAC Agent 提取 zip 文件,将恶意 DLL 放在与可执行文件相同目录
- 发送重启命令,导致恶意 DLL 以 SYSTEM 权限加载执行
5. 受影响版本及修复
- 受影响版本:SoftPAC Project 9.6 及之前版本
- 修复版本:Opto 22 已发布 10.3 版本修复这些漏洞
6. 安全建议
- 立即升级:所有使用 SoftPAC Project 的用户应立即升级到 10.3 或更高版本
- 网络隔离:限制对 SoftPAC Agent 22000 端口的访问
- 权限控制:实施适当的身份验证和授权机制
- 监控措施:加强对 OT 网络的异常行为监控
- 固件验证:实施严格的固件签名验证机制
7. 总结
这些漏洞的组合利用可能导致攻击者完全控制工业控制系统,造成严重后果。由于 SoftPAC 广泛应用于关键基础设施领域,这些漏洞的潜在影响范围极大。组织应高度重视并及时采取防护措施。