工业物联网终端产品的安全设计与应用*

2019-11-12 09:08江泽鑫
网络安全与数据管理 2019年11期
关键词:终端产品配置管理防线

江泽鑫

(广州邦讯信息系统有限公司,广东 广州 510000)

0 引言

近年来随着物联网技术的迅猛发展和物联网产品的广泛应用,物联网信息安全问题越来越突出。2016年,美国由于部署在互联网上的海量物联网终端产品存在漏洞,被黑客用以实施DDoS攻击,最终导致全国大面积断网。物联网产品由于具有独特的系统架构和应用场景特点,其信息安全风险与防御对措皆与传统IT系统有较大的差异。在2019年国家发布的信息安全等级保护2.0标准[1-3]中,针对物联网场景提出了专项安全扩展要求。物联网安全主要增加了四方面的扩展要求:

(1)感知节点设备物理防护;

(2)感知节点的安全边界防护;

(3)感知节点和网关节点设备本体的安全;

(4)感知节点的安全运维管理。

可见,物联网的安全主要是在通用要求的基础上,增加感知节点和网关节点的安全性,特别是设备本体的安全。这是因为物联网终端产品往往部署在户外或无人值守区域,譬如基站动力环境监控系统、配电网监控系统、雪亮工程系统等,所以极容易遭受雷击、停电、高温高湿、盐雾、物理破坏、物理接近、设备盗窃等破坏,并可能导致进一步的破解破译攻击。

物联网信息安全是一个系统化工程,物联网产品设备本体安全是物联网安全的基石,本文重点研究物联网终端产品本体的安全设计和安全测试。

1 物联网终端产品安全风险

以某工业物联网网关产品研制过程为例,如图1所示,使用风险分析方法对该物联网网关产品在应用场景下进行威胁识别和风险分析。

该工业物联网网关产品部署在无人值守的站点,通过RS485对传感器数据进行采集、协议解析、告警生成、数据上送云平台,同时提供设备本体的配置管理功能,于是,该产品的每个接口通道存在的威胁如下。

图1 物联网系统典型架构示意图

(1)设备被盗窃和被破坏。物联网网关产品部署在无人值守的区域,缺乏物理安全控制,有可能被盗窃或破坏。

(2)篡改和仿冒设备。设备部署在户外、分散安装、易被接触,导致物理攻击、篡改和仿冒[4]。

(3)系统漏洞攻击。该产品使用的操作系统软件过时,漏洞无法及时修复。

(4)绕过认证机制。设备无认证或认证采用默认密码、弱密码。

(5)窃取敏感信息。敏感信息存储在设备中,上行业务通信数据明文传输,易被窃取。

(6)远程控制。设备设计了测试调试接口,容易遗留远程控制风险。

(7)拒绝服务攻击。病毒或黑客发起DDoS攻击。

该物联网终端产品包括四个接口(IF0~IF3),每个接口可能面临的威胁来源如图2所示。

图2 物联网网关产品接口威胁示意图

2 物联网终端产品安全设计

2.1 物联网终端产品安全总体设计

根据多年的物联网安全产品设计实践经验,总结设计了物联网终端产品安全防护由外往里的四道防线如图3所示。

图3 物联网终端产品安全四道防线设计示意图

第一道防线,物联网设备与外部交互过程的安全防护,主要包括与物联网平台上行业务通道(IF1)的安全防护和设备配置管理通道(IF2)的安全防护。这一道防线可以采用传输加密、身份认证、报文检测、实体鉴别、双因素认证、登录失败策略控制、慢哈希等措施进行防护。第一道防线主要用于防范设备与外部设备通信过程中的黑客窃听、扫描、重放、伪造等通信层面攻击。

第二道防线,物联网设备逻辑边界防护,这一防线在上行业务通道(IF1)和设备配置管理通道(IF2)上可以使用端口白名单、协议白名单、访问IP地址白名单等白名单机制进行设备防护。第二道防线主要用于防范黑客对设备的扫描和非法访问。

第三道防线,物联网设备系统内部安全性检测,这一防线采用安全操作系统、设备内部程序/固件完整性检测、随机数检测、设备配置文件和证书文件的完整性检测等手段进行防护,同时特别注意升级固件包的完整性和真实性验证。这些防护手段分别在设备上电时,资源使用前和使用中进行周期检测。第三道防线主要用于防范黑客若入侵系统后对系统的重要程序或配置参数进行篡改。

第四道防线,物联网终端设备内部的密钥防护,特别是对私钥的保护。这一防线主要包括物联网终端产品的非法拆卸检测和密钥应急销毁联动机制,和物联网终端设备内部所有密钥从生成、导出、存储、备份、更新、使用、销毁等全生命周期安全管理和保护。第四道防线主要用于在黑客入侵设备并获得系统超级管理员权限后,使其无法获得密钥信息,或者黑客通过物理拆卸和侧信道攻击无法获得密钥信息。

2.2 第一道安全防线的设计案例

如图4所示,在业务通道(IF1)上使用基于X509证书认证的IPSec VPN方式实现。在设备配置管理通道(IF2),使用USBKEY实体鉴别和SM2密钥交换方式实现。

图4 第一道防线示意图

依据《IPSec VPN技术规范》[5],物联网终端与物联网平台边界网关之间先使用基于SM2算法的公钥密码算法进行身份认证,然后进行通信密钥协商,最后基于协商的临时密钥进行加密通信。其临时会话密钥协商过程如图5所示。

图5 IPSec密钥协商示意图

密钥协商主要包括两个阶段,其中第一阶段是IKE SA协商,该阶段采用主模式,包括6个交互操作,主要是进行证书交换、身份认证、以及工作密钥协商,该工作密钥用于保护第二阶段的会话密钥协商过程。第二阶段是IPSec SA协商,采用快速模式,包括3个交互操作,主要是协商出会话密钥,用于数据的加密传输。

对于设备配置管理通道(IF2),在物联网安全实践中常有使用预设账号密码/设备token方式或使用非对称密码算法/数字证书方式进行身份真实性的鉴别认证。身份认证之后,为保证传输机密性,通过安全的方式生成会话密钥,目前常见的方式主要有DH方法、数字信封方法、和SM2密钥交换[6]方法。SM2密钥交换协议是一种同时实现身份认证和会话密钥生成的协议,可以应用于基于SM2非对称密码算法的物联网设备之间的身份认证和会话密钥生成,其流程如图6所示。

图6 SM2密钥交换流程图

此外,通过设备配置管理通道(IF2)的物联网配置管理软件功能应按照“三权分立”方式进行功能设计。其中至少分为安全管理员、审计管理员和系统管理员,每个角色具有不同的配置管理权限。

2.3 第二道安全防线的设计案例

第二道防线涉及物联网产品的逻辑边界大门,同样涉及IF1~IF3三个接口,这一防线主要采用“白名单”策略进行防护,如图7所示。

图7 第二道防线示意图

对于上行业务通道(IF1),该产品使用iptables配置,仅允许密钥协商包和ESP加密包通过。

对于设备配置管理通道(IF2),仅允许固定IP(如192.168.1.100)地址访问物联网产品指定端口,并且配置管理会话建立前要求双因素认证以及最大登录失败次数限制和处理。

对于数据采集通道(IF3),应传感器的通信规约进行约束(如MODBUS协议格式对应字段的地址值进行限制)。特别需要关注采集数据的协议解析、数据处理和存储过程,降低通过该接口的注入和溢出风险。

此外,还需特别注意在产品正式量产时应关闭所有的临时调测试通道。

2.4 第三道安全防线的设计案例

第三道防线是指物联网产品内部的功能模块完整性检查和异常安全检测,包括:关键功能检查、程序完整性检查、随机数检测、内部协议异常处理、登录异常处理和物理拆机检测等。这些内部安全检查检测从设备运行角度主要是:

(1)上电自检

在物联网终端产品上电时进行安全自检,包括密码算法功能是否正常的自检、随机数自检、密钥完整性检查、关键程序完整性自检、驱动程序、配置文件(含数字证书)进行完整性自检。

其中随机数的自检,主要使用单比特频数检测、块内频数检测、扑克检测、重叠子序列检测、游程总数检测、游程分布检测、块内最大“1”游程检测、二元推导检测、自相关检测、矩阵秩检测、累加和检测、近似熵检测、线性复杂度检测、Maurer通用统计检测、离散傅里叶检测等随机数检测方法和物联网终端产品本身CPU算力情况进行选择若干项进行综合检查。

(2)异常检测

物联网产品所有的功能模块的输入输出异常检测,上位机管理软件登录物联网产品的登录失败处理,业务通道身份认证、加密异常等情况的日志记录。

(3)拆机检测

设计通过电磁开关或接触开关实现拆机检测,并与物联网产品内部密钥应急销毁程序联动。拆机检测重点需要考虑物联网产品未上电情况下的拆机检测和应急销毁程序执行。

(4)固件升级检测

物联网产品固件升级应采用HASH算法对固件进行消息摘要计算及发布者数字签名,物联网产品接收到固件升级包升级前应对固件的HASH值进行校验,然后使用发布者公钥对数字签名进行验签。此外,还应特别注意相关程序文件的读写执行权限配置。

2.5 第四道安全防线的设计案例

第四道防线是指物联网产品内部密钥安全管理,产品可能涉及很多方面的密钥,包括根公钥、产品自身的设备公私钥对、保护密钥的密钥、会话密钥、工作密钥、临时密钥等。

所有密钥的安全管理都应从每一个密钥的生成、导出、存储、使用、更新、销毁全生命周期过程进行考虑。以最少化暴露原则进行密码功能的开发,最佳的是将这些功能封装在密码芯片内部实现,并且将限制私钥的任何导出查看功能。

这些常见的密码功能包括:随机数生成功能、证书请求功能、签名功能、验签功能、公钥加密功能、私钥解密功能、加密私钥导入、散列计算功能等。

对于密钥的存储,一般不要将保护密钥的密码/口令写入程序固件或配置文件。所有用于对称加密的密钥应动态生成并存放在于易失性存储器中,并且应定期协商更新。设备的私钥保护要着重考虑禁止任何可能暴露私钥的功能开发。对于一些物联网产品需要外部导入公私钥对的情况,可以采用GM/T 0009-2014《SM2密码》里的“私钥保护结构”进行封装,其“私钥保护结构”的ASN.1定义为:

SM2EnvelopedKey::=SEQUENCE

{

symAlgID AlgorithmIdentifier, ∥对称密码算法标识

symEncryptedKey SM2Cipher, ∥对称密钥密文

Sm2PublicKey SM2PublicKey, ∥加密密钥公钥

Sm2EncryptedPrivateKey BITSTRING

∥加密密钥私钥密文

}

3 物联网终端产品安全测试

在产品安全性测试环节,根据本文作者的实践,物联网终端产品的安全性可以从以下几方面进行考虑:

(1)端口扫描:对于涉及IP协议的产品,应采用系统端口包括1~65 535所有端口的UDP和TCP方式扫描。

(2)系统漏洞扫描:在端口扫描的基础上,进行系统漏洞扫描,扫描前应将漏洞库升级至最新版本。

(3)模糊测试:对所有自定义的通信协议进行fuzzing模糊测试。特别对于物联网RS232/RS485等接口进行特别的测试,包括异常字符包测试,超大数据包、小包高频等方面的测试。

(4)Web扫描:对于需要使用Web配置管理的产品,应进行Web漏洞扫描。

(5)源代码漏洞扫描:将产品的所有源代码进行代码审计,避免高风险漏洞。

(6)病毒扫描:将产品涉及的所有源代码、开源组件和第三方软件进行病毒扫描,并且应采用多款防病毒软件进行扫描。

(7)安全基线核查:需要针对产品的具体情况,设计安全基线,对所有功能进行安全基线核查。特别是所有功能输入输出的安全测试(包括注入、溢出、绕过、越权等)。

(8)其他测试:产品安规测试、电磁抗扰度测试(包括EMS和EMI)、射频性能、高温低测试、机械振动测试、168稳定性测试等。

4 结论

本文从物联网终端与外部业务通道、产品逻辑边界、产品内部安全检测和密钥保护四个层次设计了物联网终端产品的“四道防线”安全设计,并总结了物联网终端产品安全测试,对于安全性要求较高的物联网场景具有参考意义。

猜你喜欢
终端产品配置管理防线
汽车委托外加工零件自动化配置管理
河北老年人智慧养老采纳影响因素研究
河南:严守食品安全“第一道防线”
本周热点板块表现个股
哼,我比你想象的还要重要!
电能计量表计及终端可靠性研究与探索
论科技成果转化
论ISO20000体系量化指标梳理
建设CMDB任重道远
可信云平台服务运行管理模式初探