新闻资讯 News information

如何挖掘工控设备的WEB漏洞——弱口令漏洞篇

发布时间:2019-10-08

?01工控设备中的弱口令漏洞概述

本文中的工控设备是泛指所有的工控相关的设备,比如PLC、SCADA、防火墙、交换机、管理系统等等,由于便于用户操作或者工程师维护,此类设备大部分都会存在一个WEB管理系统,而往往这个管理系统就会存在一些弱口令相关的漏洞。

由于工控固件设备的特殊性,此类弱口令漏洞往往都会导致相关工控管理系统的控制权直接沦陷,造成比较大的危害。

02工控设备中的弱口令漏洞案例

很多工控设备,都存在账号密码弱口令的问题,比如某西门子设备的WEB管理系统。默认密码admin 、admin 直接输入就可以进入到系统,如图进入系统后,就可以更改很多设置等操作。?

image002.jpg

某SCADA系统,直接admin 、admin进入,可以直接操作大量设备。

?image004.jpg

某工控管理系统,直接superadmin 、111111进入系统,可以对相关工控设备进行启动/停止操作。

image006.jpg

由于工控设备物理隔离,操作人员的安全意识低,往往默认密码有很大的概率是不会被修改的,或者会将默认密码又改成另一个还是弱口令的密码,这种情况就是一个很大的风险点,攻击者只需要收集常见的账号密码然后进行一一尝试,就有很大概率可以攻入系统。

03工控设备中的弱口令漏洞的风险

通过以上的工控弱口令漏洞案例,可以看到,此漏洞可以导致的风险主要有:

>>>获取相关工控中间件设备的管理权限,比如交换机、防火墙等设备的WEB管理系统权限。

>>>? 获取某些工控WEB系统的管理权限,比如某些SCADA系统、以及某些自开发的工控WEB管理系统。

>>>? 在获取到某些WEB系统权限后,一步步深入攻击从而获取到上位机、工控生产系统的权限等。

04工控设备中的弱口令漏洞的挖掘

本文主要讨论,如何利用可以爆破的接口去获取弱口令,以最常见的登陆入口为例。

>>> 登录入口完全没有任何限制,可以直接无限次请求爆破。

这种情况是比较常见的一类情况,也是最容易进行攻击的一种情况,只需要抓取请求数据包,然后导入账号密码字典就可以去爆破了。

>>> 登录入口有做部分限制,比如登录的时候,密码错误5次就要求输入页面验证码进行校验。

这种情况相比4.1就会好很多,然而在有大量用户的时候,和统一规则的密码存在的时候,也是很有风险的!因为攻击者可以用固定的密码,然后导入大量的用户名字典去进行尝试爆破,这样成功的概率也是相当的高的。

>>> 登录入口有设计页面验证码,但是验证逻辑有缺陷。

◇ 验证码是前端验证,可以直接发包绕过

这种问题在前些年还是比较常见的,现在已经不多见了。具体就是验证码是前端验证的,或者没有验证,就是个摆设,请求的时候参数根本没有验证码这部分。

◇ 验证码可以重复使用

这种问题也比较多见,一般正常登录请求的逻辑是这样,每登陆一次,前端页面就会将当前的用户名、密码、验证码等数据以表单的形式提交一次。表单提交的同时,当前页面的验证码会进行刷新而生成新的验证码。这时候如果没有在服务器端进行同步刷新验证码校验数据,那么当前的验证码就可以重复使用。

◇ 验证码和登录请求是分2个数据包验证的

这种问题看似低级,然而在开发人员经验不足的时候,却是极其容易出现的。分2个数据包验证的这种,可以直接请求第二个包,无视第一个验证码正确性验证的包即可。

◇ 验证码设计太简单,可以自动识别绕过

如下图所示,当验证码设计的太简单的时候,是可以直接用一些常见的图形识别库,去自动识别出验证码的。?

微信图片_20190930141515.png

?◇ 其他一些设计缺陷导致的验证码绕过

验证码直接写在了Cookies数据里,验证码直接出现在了返回数据中,验证码空字符绕过,以及其他各种由于验证码设计缺陷,而导致可以被绕过的情况。

>>> 攻击成功概率的影响因素

爆破弱口令的成功概率,主要和资源收集,以及用户名、密码字典的选取有很大的关联。

比如用户名字典规则,利用下图工具的规则,一个名字就可以生成8个用户名字典。然后攻击者只需要导入常用的top 1w的姓名,这样就可以生成一个8w用户名的字典。?

image010.jpg

?在有了靠谱的用户名字典后,还需要一份给力密码字典。根据案例来看,往往大部分的工控WEB系统是没有对密码的策略做限制的,可能更多的是要求密码长度不低于6位,所以诸如123456、111111、 123qwe这种top100,以及user、user+123、domain+123等这种密码规则,使用频率是相当大的,往往只需要爆破这些密码,就有很大的概率可以破解出弱口令了!

有的系统会有一定的密码策略,比如要求密码必须是大于6位的字母+数字,或者是大于8位的字母+数字+特殊字符。由于用户往往都喜欢方便,且欠缺安全意识,就又会出现诸如a123456、123456a、1234qwer、1q2w3e4r之类的密码,以及a123456!、a123456@、!qaz@wsx、user+@123、user+@123456 、domain+@123之类的强规则下的弱密码了。

随着攻击者的用户名、密码字典越来越丰富全面,攻击成功的概率也就会越来越大。

05工控设备中的弱口令漏洞的防御

首先,对于爆破弱口令的这种问题,应该对请求频率做下判断,比如以1分钟为时间周期,如果登陆失败的请求超过30次,就判断为可能是在进行爆破的攻击行为!重要的系统,最好再加入二次验证,比如可以定义一些问题和答案进行二次校验,这里要切记问题和答案不能太简单,防止被猜测到。

对于员工的安全意识也需要定期培训,比如对系统默认密码做到及时的修改。以及公司制度的定制,比如出现有人设置弱密码进行警告或者罚款的处理。

最后,要经常对密码进行更改,尤其是重要的系统,更需要经常的去更改密码,这么做目的是防止被社工。

有人会说我的系统是绑定了指定IP或者MAC地址的机器的,非指定设备是不能进行登陆的,所以密码即使是弱口令也无所谓。这种白名单的策略的确会有一定的防御效果,然而我们不能直接忽略掉机器被攻击者控制的这种情况,所以即使是这种情况,弱口令漏洞导致的风险仍然还是存在的。

06总? 结

虽然工控设备一般情况都是网络和物理隔离,但是也不能忽视工控设备中的WEB安全问题,如果被恶意利用,危害也是比较大的。

备注:部分案例及截图来自于互联网,如有侵权,请联系告知。

博狗bodogAG 官方二维码

扫一扫关注我们博狗bodogAG 官方网站 来了解我们更多资讯

地址:北京市海淀区上地三街9号嘉华大厦F座901室
邮箱:support@zhoumogouwu.com
微信公众号:winicssec_bj
4000-680-620 24小时服务热线