★ 蔡一鸣,夏冀,韩潇哲中国电子技术标准化研究院
摘要:近年来,针对工业互联网的网络攻击日渐增多,如何保障网络安全已成为工业互联网发展面临的重要问题。本文基于工业互联网面临的网络安全现状,针对工业互联网渗透测试技术展开探究,分析了工业互联网安全风险及现状,系统整理了工业互联网渗透测试理论、关键技术及常用工具,为工业互联网企业开展渗透测试以及提升企业安全防护能力提供了参考。
关键词:工业互联网;网络安全;渗透测试
1 工业互联网安全风险综述
工业互联网融合了计算机技术、通信技术及工业技术,是现代制造业实现数字化、网络化、智能化经营管理模式的重要信息化支撑载体。由于工业互联网与传统互联网在物理上并不隔离,传统互联网面临的安全漏洞等风险已逐渐蔓延至工业互联网环境,并对工业主机、网络设备以及工业互联网应用产生了威胁。近年来,随着工业互联网的快速发展,网络安全问题频发。如2021年4月,伊朗纳坦兹核设施的工业配电系统遭到网络攻击,导致该核设施断电;2022年1月,德国石油储存公司Oiltanking Gmb HGroup遭到网络攻击,导致Oiltanking以及矿物油贸易公司Mabanaft的IT系统瘫痪;2022年3月,美国罗克韦尔自动化公司的PLC和工程工作站软件中曝出了2个0day漏洞,利用这些漏洞攻击者可以向工控系统注入恶意代码并秘密修改自动化流程,导致生产安全遭到严重威胁。
2 工业互联网网络安全现状分析
2.1 工业互联网设备安全风险
工业互联网设备包括视觉传感器、位移传感器、压力传感器、红外传感器等一系列传感器,以及智能信标、工业物联网网关等设备,在能源、制造、轨道交通、智慧医疗等重要行业具有广泛应用。由于其所处位置和所承担功能的特殊性,工业互联网设备所面临的危险和受到攻击后所造成的损失相比传统网络设备更为严重,不仅会造成重大经济损失甚至会影响到国家安全和人民生活。
在工业互联网应用领域中,面临安全威胁最大的是制造业。据统计,Common Vulnerabilities & Exposures(CVE)、National Vulnerability Database(NVD)、中国国家信息安全漏洞共享平台(CNVD)及国家信息安全漏洞库(CNNVD)四大安全漏洞共享平台收录了新增工控系统安全漏洞636个,主要分布在制造业、水务、能源、商业设施、医疗、轨道交通、航空等关键基础行业。其中,涉及制造业的漏洞有564个,占比达88.7%[1]。
2.2 工业主机安全风险
随着工业行业企业区与工业区互联互通的日臻完善,依赖工业控制系统网络实现实时监控工业现场操作、控制已成为必然趋势。企业为提高生产、经营和管理效率,都在积极开发建立企业信息管理系统,旨在通过该系统实时获取生产现场的数据信息,快速准确掌握现场生产的运行状态,促使企业管理科学化、决策精确化,使企业产、管有机统一。在此趋势下,越来越多的工业主机应用到了工业环境中。工业主机普遍使用Windows或Linux系统,其中Windows操作系统广泛应用于企业服务器与内网主机中。企业网络日益开放使大量工业主机暴露在互联网上,随着黑客水平的不断提高,以及攻击工具的泛滥,通用操作系统的漏洞将会对工业企业造成巨大风险,也会对工业企业的正常生产经营造成无法估量的威胁。据360公司的大数据统计分析,勒索软件现已成为工业控制系统面临的主要威胁。各种恶意攻击组织将数据盗窃与勒索作为常用攻击手段,与盗窃、泄露知识产权及关键数据相比,勒索软件造成的影响和危害可能更大。
2.3 数控设备安全风险
目前,国内主流数控设备核心系统主要依靠进口,特别是高端数控机床控制系统和数控整体联网解决方案,由于其包含巨大的软件代码量级,其中存在的系统设计漏洞及后门等不易被发现,形成安全隐患,从而导致数控系统的安全性难以保证[2]。在数控设备运维升级方面,国外品牌的数控设备在现场维修或远程运维大多依靠国外专业技术人员,极大地增加了重要生产数据或NC文件的泄露风险。一方面,由于数控设备的升级维护严重依赖生产和供应厂商,很多设备允许通过网络远程控制,系统缺少用户身份认证和访问控制等安全机制[2],国外技术人员身份未知,设备的升级维护过程行为不可控,存在巨大的安全风险;另一方面,当前多数数控机床控制系统大多使用明文传输和管理加工代码,一旦攻击者恶意获取加工代码,并通过非法手段还原加工物品,就会导致数据泄露。
3 工业互联网安全渗透测试技术研究
3.1 渗透测试的相关理论
(1)渗透测试概念
渗透测试是指由专业人员以多种技术手段对被测试网络系统进行授权模拟攻击并形成测试报告的过程,旨在通过利用模拟攻击者的攻击行为,检测信息系统中安全的防御机制是否根据既定规划正常工作,从而评价信息系统的安全保护能力水平。与黑客行为不同,渗透检测主要具备如下一些特征:渗透检测是一个商业行为,必须由被检测方自主提供,并给与授权或许可才能够实施;渗透测试的主要目的是完善目标用户的安全机制,而不是对系统进行攻击;同时渗透测试还需要对目标做出整体评价,并做出尽可能全面的分析。
根据测试之前对被测网络系统中相关信息的掌握程度,渗透测试可分为三类,即白盒测试、黑盒测试以及灰盒测试。
·白盒测试:测试人员了解测试目标网络的详细信息,测试者依据标准操作流程,结合个人经验,从而发现测试目标的安全隐患。
·黑盒测试:测试人员只了解测试目标网络的大致情况,系统内部细节无从知晓。在这种情况下,测试人员如同在一个黑盒内,需要通过不断摸索来发现漏洞。黑盒测试最为接近现实情况,也是最有效的渗透测试方式。
·灰盒测试:灰盒测试应用于测试人员对测试目标网络有初步了解的情况下,介于黑盒测试与白盒测试之间。测试人员凭借已知信息,深入挖掘,发现漏洞。
(2)渗透测试目标分类
根据测试目标的不同,渗透测试通常可分为4类:主机操作系统渗透、数据库系统渗透、应用系统渗透和网络设备渗透[3]。其中,主机操作系统渗透主要是对Windows、Solaris、AIX、Linux、SCO、SGI等操作系统进行渗透测试;数据库系统渗透主要是对MS-SQL、Oracle、MySQL、Informix、Sybase、DB2、Access等数据库应用系统进行渗透测试;应用系统渗透主要是对渗透目标提供的各种应用,如ASP、CGI、JSP、PHP等组成的WWW应用进行渗透测试;网络设备渗透主要是对防火墙、入侵检测系统、网络设备等进行渗透测试[4]。
(3)渗透测试的流程
开展渗透测试通常包括6个环节:一是明确目标,确定需要测试的资产范围,以及确定渗透规则及客户需求;二是信息收集,收集包括系统拓扑、操作系统信息、软件版本、人员信息和安全设备情况等信息;三是漏洞挖掘,寻找被测系统存在的漏洞,包括操作系统漏洞、服务器漏洞、应用漏洞以及其他相关漏洞;四是漏洞验证,利用挖掘到的漏洞进行权限提取、修改数据等攻击;五是复原系统,清除渗透过程中的操作痕迹,如新增的账号、修改的数据等;六是分析总结,对渗透过程中发现的安全问题进行梳理和汇总,提出相关改进建议,编制渗透测试报告[5]。
3.2 网络安全渗透测试常用方法
由于测试目标所处位置不同,测试需要采用的技术也会有一定差异,其中内网渗透主要是模仿内部人员不当行为,绕过防火墙,从内网发起渗透,常用渗透方式包括远程缓冲区溢出、口令猜测、B/S或C/S应用程序测试[4];外网渗透主要是模仿外部攻击行为,完全处于外网(例如拨号、ADSL或外部光纤)对网络设备发起远程攻击,包括口令管理安全性测试、防火墙规则试探或规避、Web及其他开放应用服务的安全性测试[6]。
(1)信息收集:通过主机网络扫描、操作类型判别、应用判别、账号扫描、配置判别等方法收集测试目标网络信息,继而有针对性地制定入侵计划,可以提高入侵成功率,是渗透测试的前提。模拟攻击常用工具包括Nmap、Nessus、X-Scan等,操作系统中内置的许多工具(例如telnet)也可以成为非常有效的模拟攻击入侵武器[5]。
(2)端口扫描:通过对目标地址的TCP/UDP端口扫描,确定其所开放的服务的数量和类型,旨在确定目标系统的基本信息,结合测试人员的经验确定潜藏的安全隐患,为深层渗透提供参考。
(3)权限提升:在信息收集分析及端口扫描之后,测试人员根据以下两种情况行动:若测试目标存在远程重大弱点,测试人员直接控制目标系统,挖掘测试目标中的弱点,形成测试报告[4];若测试目标无远程重大弱点,却能获取普通访问权限,此时测试人员需通过远程访问进一步收集信息,获取本地权限,收集本地信息,之后寻求本地权限升级,进一步收集信息,将提权结果进行记录。
(4)网段间渗透:从某内、外部网段对另一网段或Vlan进行渗透。这类测试通常可能用到的技术包括对网络设备和无线设备的远程攻击、对防火墙的远程攻击或规则探测、规避尝试。信息的收集和分析伴随着每一个渗透测试步骤,每一个步骤又有三个组成部分:操作、响应和结果分析[6]。
(5)溢出测试:当测试人员无法直接利用账户口令登录系统时,可采用系统溢出的方法直接获得系统控制权限。此方法有时会导致系统死机或重新启动,但不会导致系统数据丢失。如出现死机等故障,只要将系统重新启动并开启原有服务即可。一般情况下,如果未授权,将不会进行此项测试。
(6)SQL注入:SQL注入常见于应用了SQL数据库后端的网站服务器,入侵者通过提交某些特殊SQL语句,最终可能获取、篡改或控制网站服务器端数据库中的内容。此类漏洞是入侵者最常用的入侵方式之一[4]。
3.3 常用渗透测试工具
(1)Shadow Security Scanner:该工具是俄罗斯安全界非常专业的安全漏洞扫描软件,具有安全扫描、口令检查、操作系统检查等强大功能,并且支持在线升级[4]。
(2)ISS漏洞扫描器:ISS(国际互联网安全系统公司)是信息安全领域中专门致力于反黑客攻击的专业公司。目前它的主要产品包括Real Secure(实时入侵监测器)、Internet Scanner(互联网扫描器)、System Scanner(系统扫描器)、Database Scanner(数据库扫描器)4个系列,其中Real Secure和Internet Scanner是其拳头产品,Database Scanner是其独有的专用数据库防黑安全产品[4]。
(3)nmap端口扫描工具:nmap是目前为止最广为使用的国外端口扫描工具之一,它可以很方便地部署到Windows和Unix系统中,也可以通过configure、make、make install等命令部署到macosx系统中,对主机和网络设备进行端口扫描,以寻找目标主机的漏洞[6]。
(4)Acunetix Web Vulnerability Scanner:该工具是一款网络漏洞扫描工具,使用爬虫技术对系统安全进行测试,如跨站点脚本、目录遍历、SQL注入等。
4 结语
随着信息系统计算算力的不断提升和网络攻击技术的不断发展,工业互联网企业面临的安全风险也在不断增加,渗透测试作为评估网络安全防护能力的重要手段能够帮助企业在一定程度上提升自身防护水平,但因其在渗透时间、渗透方法上受到一定限
制,可能无法准确地发现系统面临的所有风险。因此,工业互联网企业需要通过开展商用密码应用改造等方式进一步加强网络安全建设,通过多维度、多角度、多层次共同提升工业互联网的安全水平,尽可能地降低企业面临的安全风险。
作者简介:
蔡一鸣(1990-),北京人,工程师,硕士,现就职于中国电子技术标准化研究院,主要研究方向为网络安全、工业信息安全。
夏 冀(1992-),河南驻马店人,工程师,硕士,现就职于中国电子技术标准化研究院,主要研究方向为工控安全。
韩潇哲(1997-),山西晋中人,硕士,现就职于中国电子技术标准化研究院,主要研究方向为网络空间安全、人工智能。
参考文献:
[1]奇安信行业安全研究中心,工业控制系统安全国家地方联合工程实验室.勒索软件仍是最大威胁[R/OL].
[2]尚文利,佟国毓,尹隆,等.数控系统信息安全现状与技术发展趋势[J].自动化博览,2019,36(6):4.
[3]廉明,庄严,程绍银,蒋凡.渗透测试在信息系统等级测评中的应用[C].第二届全国信息安全等级保护测评体系建设会议论文集,2012:121-122.
[4]渗透测试技术规范[R/OL].
[5]渗透测试基本流程[R/OL].
[6]WEB渗透测试流程[R/OL].
《自动化博览》2023年1月刊暨《工业控制系统信息安全专刊(第九辑)》