物联网设备攻击频传,戴夫寇尔披露中华电信调制解调器设置不当的漏洞

在我们身边已经被视为理所当然的联网设施,若是潜藏漏洞,黑客便能用来为所欲为,用来作为进一步攻击的跳板。在今年首度举办的DEVCORE Con​​ference大会上的最后一场议程,是由戴夫寇尔安全研究员Orange Tsai(蔡政达)披露了中华电信网络数据设备中,因配置不当而能被滥用的漏洞,经通报后,该电信企业已经通过固件更新的方式,完成修补。该公司的情报资料中心于7月底,侦测到大量用户的计算机都打开了3097连接端口,而引起他们的注意。

怪异的是,上述的连接端口,只能接受从外部连入,而无法从内部网络访问,因此他们认为,这个现象来自电信企业于调制解调器上的配置所致。根据戴夫寇尔的统计,总共至少有25万台网络调制解调器存在同样的漏洞,Orange Tsai表示,这还是他们在上班时段检测的结果,由于许多人下班回到家才会上网,因此实际上受到影响的设备数量,应该远远超过这个数字。经过Orange Tsai的研究,找出了能够下达任意指令的漏洞,搭配默认Root采用弱密码等环节,攻击者便能借此控制网络调制解调器,进而渗透到内部网络,从中发动攻击。

戴夫寇尔发现,打开3097端口的TCP网络连接,只能由外部访问,而无法从内部网络使用。

在找出能够被滥用漏洞的过程中,Orange Tsai说,由于他并不晓得中华电信打开这个连接端口的真正用途,因此从黑箱测试开始做起。首先,他连接到自己家里的网络调制解调器,发现管理接口提供了名为SCRIPT的指令,能读取设备里的任意文件,进而找到ROOT账号的密码。附带一提的是,这组密码极为容易被猜到,Orange Tsai表示,字符串组合的复杂程度极低,类似一般人经常会使用的懒人密码123456。

得知能够取得本地端网络调制解调器控制权的方法后,接下来就是要找出能从远程访问的渠道,Orange Tsai指出,他试图找出设备3097端口接口上的弱点。通过NETSTAT指令,他找出开通3097端口服务的应用程序OMCIMAIN。想要反汇编却发现,这个执行文件大小接近5MB,而且采用的是MIPS精简指令集架构,Orange Tsai说,由于最为常用的工具IDA Pro并不支持MIPS,他只能看汇编语言了解实例细节,并且从功能实例的层面,寻找可能会被利用的漏洞。

最后,Orange Tsai从整个执行档的工作流程里,找到名为FALLBACK的功能,这是OMCIMAIN对于不支持的指令进行处理的专用模块。而他发现,经由这个模块的命令注入(Command Injection)漏洞,攻击者能够下达任何指令──只要输入不受系统支持的指令,再搭配?和&字符,接上真正想要下达的命令,就能进行远程控制。

攻击者想要远程访问调制解调器3097连接端口的方法,利用的是命令注入攻击手法,如图所示的示范指令中,前面的nonexistent是不受管理接口支持的指令,并接上问号和2个&符号,后方则是攻击者想要窥探设备密码信息的恶意指令。(摄影/周峻佑)

Oragne Tsai也展示了概念性验证攻击──先从批踢踢实业坊的用户名单中,取得受害者的IP地址,并确认其3097端口能否访问,一旦发现可以连接,就下达指令,进而得到网络调制解调器的ROOT密码,以及有多少设备通过这台网络调制解调器,访问互联网。他也指出,经由这样的漏洞,一般人鲜少会留意的网络调制解调器设备,变成黑客进入家中内部网络环境的渠道,因此这样的威胁,相当值得采用相关设备的企业,加以留意。

而他们经由TWCERT/CC通报中华电信之后,该公司8月底就修补大部分的网络调制解调器,并在最近全部处理完成。Orange Tsai认为,这样的因应速度可说是相当迅速,值得赞许。