MENU

Quake使用案例——利用高级组合语法拓线发掘某工控系统

December 8, 2020 • 安全技术阅读设置

0x01 线索

近日,我们留意到一个新闻:以色列供水设施ICS遭伊朗黑客入侵

原文地址如下:
https://www.otorio.com/blog/what-we-ve-learned-from-the-december-1st-attack-on-an-israeli-water-reservoir/

在原文中,OTORIO团队提到了一个供水设施工业控制系统的互联网的人机接口(HMI),指出了该HMI系统未授权暴露在整个互联网上,直接通过Web界面即可访问。

其实在很多国外的安全文章中,都会使用Shodan给出某个具体IP或产品名用于佐证。安全研究人员经常会对这些文章中体到线索进行追溯、分析,下面将给出一个实际的例子。

0x02 分析

在OTORIO团队原文中截图如下:

19270-fvirgun88gb.png

IP被作者隐藏了,那么我们如何通过上图信息进行挖掘找到真正的系统呢? 我们从上图中提取出3点要素:

  1. ASN为 16116
  2. 同时开放80端口、502端口;
  3. 协议分别是http协议和modbus协议。

Quake检索系统中主要有两大部分,分别是 服务数据主机数据

  • 服务数据是保留端口返回response和协议返回内容的地方,会以累计的形式保存全量历史数据,用于刻画一个IP的全部历史活动痕迹;
  • 主机数据是删除端口返回、协议详情的地方,会以去重的形式保存全量数据,用于刻画一个IP的完整端口及其对应信息;

基于主机数据高级搜索语法(Quake高级会员、终身会员特有):

  • ports,语法仅能在Quake主机数据中使用,表示某个IP同时开放了哪些端口;
  • services,语法仅能在Quake主机数据中使用,表示某个IP同时使用了哪些协议;

基于上述信息,在 "主机数据"中 使用搜索语法如下:

ports:"80,502" AND services:"http,modbus" AND asn: "16116"

09670-mnvgn1lag3p.png

得到7个独立IP地址

188.64.203.x

91.135.106.x
91.135.105.x
91.135.106.x

85.159.161.x
85.159.163.x
85.159.162.x

搜索这些IP在 Quake服务数据 中的502端口,可以看到modbus协议解析内容和Shodan的一致:

(ip:"188.64.203.x" OR ip:"91.135.106.x" OR ip:"91.135.105.x" OR ip:"91.135.106.x" OR ip:"85.159.161.x" OR ip:"85.159.163.x" OR ip:"85.159.162.x") AND port: "502"

33577-z5si225ajo.png

分别访问80端口发现,有3个无法访问,2个系统加了HTTP认证(通过服务数据交叉验证,就是文章中体到的系统)。

同时我们发现了另一个新的供水设施工业控制系统存在未授权访问:

28083-6wyu7wxufxo.png

0x03 拓线

另外,OTORIO安全团队通过分析判定该系统为Ovarro公司的T-Box系统。基于上述相关线索,我们进行扩展发现,该系统对应的指纹如下:

response:"<body style=\"margin:0;padding:0\">" AND response:"<iframe src=\"index.xhtml\"" AND response:"content=\"text/html; charset=utf-8\"/>"

对分布情况进行统计如下:

48955-rhtp27394vr.png

可以看出该系统主要是欧洲各国使用较多,国内不存在该系统。

访问后可以看出该工控系统涉及电力、能源、水利等等领域:

46532-v0b804sidzk.png

51494-emjl281qcde.png

05691-3ifautshdf9.png

最后:Happy Hunting by 360-Quake.

Archives QR Code
QR Code for this page
Tipping QR Code