摘要: CSSP(Control System Security Program)是美国国土安全部的一个项目,它建立了依托工业控制系统模拟仿真平台、综合采用现场检查测评与实验室测评相结合的测评方法,以实施工业控制系统的脆弱性验证和分析工作。ICS-CERT(Indus...
CSSP(Control System Security Program)是美国国土安全部的一个项目,它建立了依托工业控制系统模拟仿真平台、综合采用现场检查测评与实验室测评相结合的测评方法,以实施工业控制系统的脆弱性验证和分析工作。ICS-CERT(Industrial Control Systems Cyber Emergency Response Team)是美国国土安全部下属专门负责工业控制系统的安全应急响应的部门。根据 CSSP 与 ICS-CERT 的数据,工业控制系统的漏洞按照组件类型的分布如下图:
图1 CSSP与ICS-CERT对工业控制系统的漏洞按组件类型统计
可见 TOP3 的组件(主机操作系统、监控软件、控制网络)的漏洞占比达 50%;控制器的漏洞也比较常见,占比达 9%。
工业控制系统,包括 SCADA、DCS 等,具有很多共性。所以,我们分为两部分来讨论工业控制系统的漏洞:第一部分是工业控制系统公共的漏洞,第二部分讨论 DCS、SCADA在漏洞方面的差异。
1.工业控制系统公共的漏洞
工业控制系统公共的漏洞,又可以分为三个方面:
1) 产品漏洞
工业控制产品本身的漏洞,是由于工业控制系统厂商或平台厂商在设计、开发过程中引入的。这部分主要漏洞如下:
类比 | 漏洞 |
不正确的输入校验 | 缓冲区溢出 缺乏边界检查 命令注入
跨站脚本 目录遍历 |
糟糕的代码质量 | 使用危险的函数,如 strcpy() 引用空指针 |
权限管理/访问控制 | 不正确的访问控制 以非必要的权限执行
|
不正确的身份认证 | 身份认证被绕过 缺少身份认证机制 Client 侧本地认证 中间人攻击 |
不充分的数据源校验 | 伪造的跨站请求 缺乏数据完整性检查 对下载的代码缺乏完整性检查 |
加密问题 | 对敏感数据无加密 采用弱加密算法 |
身份凭证管理 | 身份凭证未充分保护
采用硬编码的密码 |
软件安全配置及维护 | 糟糕的补丁管理 不正确的安全配置 |
其中,“不正确的输入校验”类漏洞是 TOP1 问题,在 2009-2010 年度 CSSP 测评的工业控制统漏洞中占比达 47%,这可能会轻易地通过输入不正确的参数,而造成系统故障,显然这种漏洞对工业控制系统的正常运行具有极大的危害。
2) 配置/维护漏洞
工业控制系统的配置/维护漏洞,是由于工业控制系统在安装、配置及维护过程中引入的。这部分主要漏洞如下:
类比 | 漏洞 |
权限管理/访问控制 | 糟糕的系统访问控制
在 ICS 主机上开放网络共享 不正确的安全配置
|
不正确的身份认证 | 糟糕的系统身份认证
|
身份凭证管理 | 弱的密码策略
未充分保护的身份凭证 |
软件安全配置及维护 | 缺乏或有限的测试床 糟糕的补丁管理
缺乏或有限的备份恢复能力 |
安全策略/安全流程 | 缺乏或有限的安全策略/安全流程文档 安全策略/安全流程文档缺乏维护 |
审计与事件监视 | 缺乏安全审计/安全评估 缺乏或有限的事件监视 |
工业控制网络的漏洞,是在工业控制网络设计、配置过程中引入的。这部分主要漏洞如下:
3) 网络漏洞
类比 | 漏洞 |
网络设计漏洞 | 未定义网络安全边界 缺乏网络分区
缺乏 DMZ 功能区 未部署防火墙或未正确配置 防火墙被绕过 |
弱的防火墙规则 | 防火墙规则中指定端口,不指定 IP 地址 防火墙规则未按照 ICS 流量裁剪 |
网络设备配置 | 网络设备未最正确配置 网络设备未实施端口安全措施 |
审计与事件监视 | 网络架构未被充分理解 缺乏或不严格的远程登录策略 缺乏或不严格的存储介质管理 缺乏或不充分的网络事件监视 |
- DCS、SCADA 安全漏洞的差异
DCS、SCADA 在安全漏洞方面的差异,是由于 DCS、SCADA 系统本身的差异导致的。所以,我们结合 DCS、SCADA 系统差异的讨论,来讨论 DCS、SCADA 在安全漏洞方面的差异。随着技术的发展,DCS、SCADA 趋于相互渗透,DCS、SCADA 之间的差异正在越来越模糊。下面的差异是就传统的 DCS、SCADA 来讨论的。
DCS | SCADA | 安全漏洞的差异 |
监控范围通常是一个较小区域,所以通讯通常是在局域网内 | 监控范围可能是一个很大区域(例如油气管线的监控,可能跨越几千公里),所以可能涉及广域网通讯技术,例如:微波、远程电话拨号、VPN、2G/3G/LTE 无线、卫星通讯 | SCADA 相比 DCS,多引入了广域网通讯技术,所以多了广域网通讯技术(例如:微波、远程电话拨号、VPN、2G/3G/LTE、无线、卫星通讯)的安全漏洞。 |
大量的控制及数据传输,模拟量控制 | 中小规模的控制,主要是开关量控制 | NA |
智能设备 | 分布式控制,控制信号先传递给本地控制器 | SCADA 相比 DCS,主站与控制对象距离远,其远程通讯可能引入安全漏洞,具体视采用的通讯技术而定。 |
通常是单一厂商的产品 | 可能集成不同厂商的软硬件 | SCADA 相比 DCS,涉及不同厂商的产品集成,方案复杂度更高,更容易在系统安装、配置及维护过程中引入安全漏洞 |
主要应用于流程型行业 | 主要应用于离散制造行业 | NA |
数据采集是事件驱动的 | 数据采集是周期轮询的 | NA |
通常只有一个数据库 | 通常有多个数据库 | NA |
从以上对比可见:SCADA 相比 DCS,主要是多了广域网通讯技术(例如:微波、远程电话拨号、VPN、2G/3G/LTE 无线、卫星通讯)的安全漏洞。
作者:北京威努特技术有限公司CTO 黄敏