苏龙峰, 王滨滨
(上海飞奥燃气设备有限公司 燃气智能系统及产品研发中心,上海200120)
2020年1月15日,国家信息中心发布《2019年中国网络安全报告》,针对2019年恶意软件、恶意网址、移动安全、CVE漏洞、互联网安全、Linux病毒及未来互联网安全趋势进行了详细分析。该报告显示,2019年病毒样本总量很大,勒索软件和挖矿病毒呈现爆发态势。
2019年1月,国家工业信息安全发展研究中心首次发布的《2018年度工业信息安全形势分析》认为,随着改革开放的不断深入,工业领域社会生产力得以迅猛发展,两化融合日益深化,工业生产环境从封闭走向开放,工业控制系统由单机走向互联,广泛用于核设施、航天航空、先进制造、石油石化、油气管网、电力系统、交通运输等国家核心领域。然而,全球范围内针对工业领域的网络攻击有增无减,信息窃取、勒索攻击、病毒感染、网络间谍、黑客入侵等攻击手段花样多变,攫取经济利益、盗取知识产权、攻击关键信息基础设施等大规模的安全事件屡有发生,对政治、经济、军事、国家和社会安全等造成直接威胁和现实影响,工业信息安全成为各国政府高度关注的重大安全领域。
城市燃气是社会公共事业中的重要组成部分,在物联网的浪潮趋势推动下,远传智能燃气表已陆续进入了千家万户,物联网智能燃气表系统是对外公开的物联网SAAS云产品,其信息安全面临着诸多挑战,除了满足燃气公司的日常运营和业务,保障居民用户的日常使用外,如何保证设备安全、用户信息安全、燃气表设备安全、网络安全、软件平台安全、数据安全,是本文研究的主要目的。
信息的3要素:信源、信道、信宿。在物联网智能燃气表系统中,信源是燃气表根据居民用户燃气使用情况采集来的原始信息,包含用气量、异常情况、电池电压、网络信号强度、报警等。信道是燃气表通过运营商提供的无线网络信道,采集到的数据信息传输到云端管理平台中经历的所有通信设备;到达信息目的地存储后供后续使用,即信宿。
物联网智能燃气表系统信息安全框架在设计之初,从信息的3要素出发,覆盖了信息4个维度,4个维度的安全策略确保信息在时间空间上的安全。
除此之外,如何预防IT运维人员的误操作也是考虑内容之一。由于管理上漏洞,系统权限管理的不规范,IT业界经常出现因运维人员的误操作导致的系统事故,例如数据文件或数据库记录被误删除,服务器文件被删除,导致系统被破坏,无法正常运行,事后也无法完全恢复。物联网智能燃气表系统的安全框架从“天灾”和“人祸”双管齐下进行防护,确保信息安全。
物联网智能燃气表系统信息安全框架的目的是服务于开放应用系统和用户,全方位保证数据和设备安全。其主要包括设备安全策略、平台应用安全策略、IT运维管理、密钥系统安全策略4个方面。设备安全策略主要包括燃气表设备和服务器设备,即数据的采集端和数据的收集端;平台应用安全策略侧重于软件系统的技术配置手段;IT运维管理侧重于如何进行科学有效的运维管理,防止因人为原因导致意外的发生;密钥系统确保数据在传输过程中的安全性、唯一性和不可篡改性。
密钥系统(Key Manage System)简称KMS,在密钥系统中,密钥的生产、分配、下发、更新、销毁、存储以及安全高效的管理全部由密钥系统进行统一调度。原始信息从燃气表终端设备的数据采集,经过运营商的网络通信传输到云平台应用系统中,密钥是燃气表终端设备和云平台之间交互的安全钥匙,信息的下达和上传经过严密的验证后才可以通行。密钥系统通过Restful API接口方式与其他系统对接,在最坏的情况下,即使数据在传输过程中被捕获或者监听到,意外泄露,但是加密后的报文依然无法破解。
物联网智能燃气表是整个系统的终端实体部分,精益的制造工艺、镀锌钢化外壳结构确保燃气表的物理完整性和密闭性,从而保证内部机械结构、计数器等电子电路不会轻易外露和破坏,稳定的结构确保了智能燃气表在正常运转下可以正常采集数据,从而保障了数据采集的安全性、可靠性和准确性。
为了有效防止对结构的人为恶意破坏,智能燃气表在设计之初,内置了安全报警触发器。当燃气表壳体受到外界物理恶意性破坏的时候,触发报警机制会打开;当燃气表受到外界的强磁干扰后,也会触发报警机制。报警信息会上传到后台管理系统,后台管理人员登录系统后,可以第一时间发现和采取有效的对策。
物联网智能燃气表运行在厨房等相对复杂的环境下,涉及到可燃性气体,在防爆等级方面属于本质安全型,实现了燃气表的防爆等级认证。气温是影响燃气表的重要参数,包括计量数据采集和电子元件的稳定性,物联网智能燃气表可以在高低温-10~40 ℃环境下正常运行、数据采集和通信。粉尘和空气湿度也将影响燃气表的稳定性和精准性,物联网智能燃气表同时也支持IP65级的防尘防水。
综上所述,镀锌钢化的外壳结构、防爆等级认证、高低温运行、IP65级防尘防水和触发报警机制等手段都将确保燃气表在采集数据时拥有一个稳定的环境,防止数据被恶意篡改,预防外界的干扰,提高计量的精度,确保采集数据的准确性,确保数据原始信息(信源)的安全真实与可靠。
服务器是网络通信的重要环节,服务器环境的稳定也保证了服务器物理安全性,阿里、百度、腾讯、华为、电信等云服务器厂商提供ECS云服务器,具有多重电路冗余防护,防止服务器意外断电。联通、电信、移动多线冗余防止网络单线路故障,超大的带宽提高信息传递的速率。防震防灾提供稳定的服务器环境,外界环境物理防护,保证机房应用服务器的网络和设备安全,确保云平台的系统稳定和可靠。
防火墙的基本功能:监控过滤进出网络数据,预防网络攻击和报警,隔离网络环境。传统的防火墙已无法应对互联网的威胁,伴随着防火墙的演变更新和升级,防火墙也分离出来不同的形态:下一代防火墙、云防火墙和Web防火墙(WAF)。云防火墙,是借助知名公司安全团队云端的技术经验,量身定制的融合访问控制、业务隔离、流量识别等功能的网络安全产品。集成了全网的威胁情报,实时监测云上主机的失陷情况,可对恶意主动外联活动智能拦截。同时集成了基于攻击者视角的漏扫能力,针对新发现的0-day 及高危漏洞,可通过 IPS 模块的虚拟补丁技术,及时修复虚拟机的漏洞,无需重启系统,不影响业务正常使用。云防火墙对云上的流量安全做到可信、可控、可审计,是云上流量安全中心、策略管控中心。Web防火墙可以监控Web应用下所有往来的请求和响应的流量数据,阻止不正常的IP和过滤非法请求信息,预防SQL(数据库脚本)注入和XSS(跨站脚本)攻击,创建规则和策略等。
物联网智能燃气表系统采用下一代防火墙和Web防火墙结合的方式,这些防火墙在面临新的威胁时,更加智能化、人性化,应对的手段更加多样化,防护体系更加完善,加上云端的大数据支持,使得系统安全性大大提升。
HTTPS= HTTP协议(超文本传输协议) + SSL/TLS协议,随着数据安全的要求越来越高,HTTPS的覆盖范围会越来越大。在数据传输过程中,HTTP报文一旦被捕获,可以查看到所有传输的数据信息,我们需要确保传输过程中信息的绝对安全,即使在传输过程中被捕获也要确保信息无法被破解,HTTPS加密机制是最好的应对策略。当然HTTPS也有不足之处,HTTPS的加密和解密机制中,加密意味着解密,双向的加解密会降低服务器的性能和吞吐量,影响打开速度和增加服务器的负荷。目前的Web架构基本上都是前后端分离的形式,静态资源和媒体类文件都会使用CDN(内容分发网络),CDN可以有效减小服务器的压力,提升服务器的性能,同时加速Web应用的访问速度。Web应用后端数据接口时使用HTTPS,JSON数据的内容相对文件类数据要小很多,这样既可以有效提高网站的性能,同时也可以保证核心数据的安全。
HTTP的基本原理就是请求响应,用户在浏览器和服务器之间是无状态的连接。当用户在浏览网页时,输入网址,DNS服务器找到域名对应的IP地址,本地网络和远程IP进行握手通信,建立TCP/IP的连接,连接通道建立进行数据传输和通信,服务器根据客户端的请求进行响应,客户端得到数据后在浏览器进行渲染和呈现。浏览器的每个请求信息中均包含请求的地址、Host、URL参数、POST参数、支持的格式编码压缩、是否需要保持连接、Refer、User-Agent、Cookie、代理等信息,这些请求信息会送达到服务器后端,后端接收到请求信息后会进行复杂的逻辑判断,从而识别此次请求是否合法。
物联网智能燃气表系统在安全架构设计时涵盖了所有输入点的安全风险,软件层面,在开发的过程中,利用正则表达,前端后端都会同时限制字符的输入、数据的长度、类型、格式等,后台代码与数据库交互的过程中全部参数化查询,正则表达敏感信息过滤等,防止SQL脚本注入的安全漏洞,在预防机器人爬虫方面使用图片验证码机制。
爬虫无法完全限制,为防止机器人爬虫,除了在网站添加和遵循Robot协议外,还会对云平台系统反爬虫进行限制和防护,例如:没有User-Agent信息的请求都视为非法请求,使用网站的图片请求中没有refer信息的视为非法请求,若单个IP单位时间内,请求次数过大,也属于非法请求或者视为攻击行为,这些限制策略和防控策略可以增加爬虫获取信息的复杂度、时间和成本。
数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。例如:手机号显示为188****2707。
智能燃气表系统中,燃气公司的业务涵盖了居民用户的个人信息,如果居民用户到燃气公司开户,需要用自己的个人信息,有手机号、家庭地址、身份证信息,甚至房产证信息等,这些数据属于居民用户极其敏感的信息,如何保证这些信息安全极其重要,一旦数据泄露将产生不可估量的影响。现在的互联网行业中,随着技术的发展,技术工种分类越来越精细,DBA数据库管理员和IT运维人员对系统拥有最高管理权限,权限和风险并存,如何预防系统内部信息泄露也是信息安全需要重点考虑的问题。
智能燃气表系统安全架构在设计之初,充分考虑到数据持久化存储后加密的加密机制,在敏感信息上进行加密操作。在现在主流的关系型数据库中,表信息通过字段冗余、多字段存储、加密真实数据字段、脱敏模糊处理显示字段、数据的加密和解密通过密钥系统进行数据加工。例如手机号字段,用户在Web端应用打开浏览器,提交手机号和验证码,注册自己的身份信息时,手机号从前端表单提交到后端,后端调用密钥系统的API进行数据加密操作,加密后的数据将全部存储,在保证信息全面和保证业务功能的情况下,确保数据存储的安全性。如果需要短信通知用户,使用明文手机号(即全部显示的手机号),那么需要再次调用密钥系统API接口,解密加密后的手机号,得到明文手机号,然后再发送短信通知燃气用户。又比如,在智能燃气表系统中,对于用户账号和密码数据,用户登录的密码信息采用MD5哈希算法进行加密,并对哈希值再次进行加盐的处理,以防止攻击者穷举MD5哈希值进行暴力破解,在最坏的工况下,即使数据库备份文件被人为获取,MD5加盐的方式依然可以保护真实的密码不会泄露。
在整个物联网智能燃气系统信息安全架构体系中,密钥系统独立于平台内的其他应用系统,其他应用系统接入到密钥系统只能通过内网架构Web API接口访问。各应用系统之间调用环境隔离,在日常业务开展和数据实际使用过程中,密钥系统设计人员会对信息的重要性和保密等级进行统一分类,涉及到用户个人敏感信息数据时必须接入密钥系统,燃气表设备密钥的分配和更新必须接入到密钥系统中。加密就意味着解密,加解密意味着系统资源占用,占用内存和CPU等资源,而日常燃气表上报后解密的数据在持久化存储的时候无需再次加密。
燃气表设备和平台之间加解密方式取决于多种因素,在加密机制中,非对称加密和对称加密要根据实际情况进行选择,软件加密和安全芯片加密也是需要根据硬件的性能进行选择,往往实际的设备运行性能和计算能力决定了我们采取哪一种加密方式。在国际加密算法和国密算法中,我们会优先使用国密算法SM2、SM3、SM4。
密钥系统的核心功能是密钥的管理,包括密钥的生成、密钥生命周期管理、系统其他管理等。物联网燃气表通过软硬件加密的方式,将采集的数据进行统一加密,上行传输到密钥系统。密钥系统进行解密,解密后的数据推送到应用系统;应用系统下发明文报文到密钥系统,密钥系统加密下行报文,传输到物联网燃气表。密钥系统位于数据加解密的核心环节,其他应用系统接入密钥系统也可以实现数据加解密的操作。
① 密钥初始化(密钥注入)
智能燃气表在批量工业化生产的时候需要一个初始化密钥调用密钥系统的接口,生成对称密钥,或者非对称密钥的密钥对,密钥会保存在燃气表固件的内部存储中或者安全芯片中。伴随着燃气表的诞生和制造的初始化,初始化密钥数据也伴随而生。
② 密钥存活期
在密钥指定的生命周期中,密钥处于活跃的使用状态。燃气表每天采集来的计量数据,会使用密钥进行数据加解密操作,加密完成后进行上报,服务端进行数据的解密操作,以此完成数据的上行操作。对于下行数据,首先服务端进行命令的加密操作,然后设备端进行数据的解密操作,完成下行操作。对称加密使用相同的密钥信息,非对称加密使用公私钥方式进行操作。
③ 密钥分配
密钥系统的密钥分发机制以颗粒度最小的独立个体为单位,密钥的分配原则是按照设备区分,即一台独立的燃气表持有一套独立的密钥,数以万计的燃气表将产生数以万计套密钥信息,分配的密钥信息会持久化存储在服务端和燃气表设备端。
④ 密钥更新
任何加密的数据理论上都有被破解的可能,燃气表的上报数据也不例外。加密破解的时间长度决定了数据的安全性,在理论范围内需要对密钥进行更新操作,确保即使上一套数据在N年的时间内被破解,那么下一次破解依然需要逾N年时间,通过周期性的作废机制,确保数据安全性。
⑤ 密钥销毁
在密钥生命周期即将结束时,密钥生命将被销毁,销毁后的数据存储备份,用于备查。虽然密钥被销毁,但在密钥整个生命周期中,产生的所有数据都将保存到系统中。
⑥ 密钥存储
根据燃气表的接入量,密钥信息会持久化存储在数据库中,数据库在查询时需要分表分库,挂入的数据表越多,查询的效率就越高。为确保数以万计的燃气表正常获取、存取、更新和删除密钥信息,密钥系统根据设备号、时间、哈希值进行分表分库,建议使用数据库的读写分离、集群和主从复制的部署方式,通过定时任务或调度主动缓存和被动缓存的结合方式。对于密钥系统中的热数据,还需要以Key-Value 形式存储在分布式集群缓存服务器(例如Redis)中,从而减轻数据库查询的压力,提高获取密钥信息的有效性和及时性。
密钥系统会根据加密算法的生成规则,随机生产出不重复的密钥,确保密钥的唯一性。密钥系统还包含其他管理功能,比如权限、日志、登录验证等。
智能燃气表和平台之间,数据在设备采集端进行加密,加密完成后进行数据通信;对燃气表进行命令下发操作时,下发到表端的数据,服务端会进行数据的加密操作。系统的核心敏感数据加密,例如身份证、手机号等的加密;对外开放的第三方API接口调用和认证;第三方系统生成密钥功能。
互联网新闻中经常出现IT业界网站故障、数据丢失的报道,往往用户规模越大的互联网公司,其影响也越大。虽然外部攻击影响逐渐降低,内部安全策略也逐步提高,但公司内部的IT运维管理漏洞仍然频繁出现。在数据信息安全事件中,往往跟IT运维管理和权限分配混乱有着很大的关系,层出不穷的删库跑路也时常发生,服务器也会因为物理文件丢失导致无法正常对外服务。IT运维人员在权限足够的情况下可以进行毁灭性的操作,系统跌机后无法正常打开,影响公司正常的业务开展,数据恢复时间加长,数据丢失,用户体验下降,满意度降低,给公司造成不可估量的损失。
在人才选拔层面上,我们需要判别技术人员的道德水平和职业素质,同时需要加强职业素养的培养,提高自我意识,防范于未然。在技术规范化管理层面上,对系统的操作权限进行限制和分级,敏感操作必须进行双重命令复合,某些危险命令有必要删除或者进行改造优化,入口权限采用多人复合、去中心化的策略,取消研发人员对数据库的直接访问权限,以防止因内部运维人员因素导致意外的发生。
随着时间的推移和系统的升级更新,不管是windows系统还是Linux系统,总会有各种各样的缺陷和漏洞。全球的黑白客和开发者,会把系统的漏洞和渗透方法代码片段公布到论坛和网站,安全技术人员可以及时关注这些发布咨询,并在现实系统中去验证和演练,及时为系统打上补丁,修复系统漏洞,提升操作系统的安全性。