Hacking Team移动智能设备入侵途径—WAP PUSH

0x00 概览

Hacking Team的RCS针对的系统平台覆盖面广、泄漏的源码模块众多。安恒安全研究团队发现其中的vector-rmi-master.zip为一个WAP PUSH命令行工具。 WAP PUSH即WAP网络信息推送,黑客可在短消息中嵌入恶意链接,或直接用畸形数据对WAP PUSH服务发动攻击,结合政府级别的社工方法影响巨大。

以下为该工具支持的所有指定参数:

其中:-s选项中si即服务指示(Service Indication),将新信息的指示和相关的通用资源标识符(URI)推送给用户,由用户选择是立即处理信息还是以后处理。

sl服务加载(Service Load)将一项服务的URI推送给用户,然后客户端自动地使用PULL技术根据该URI启动服务。两者区别在于用户是否介入推送信息的处理过程。-r优先级选项为其配属选项。

其连接发送模式为:黑客通过计算机串口连接GSMMODEM,GSM MODEM像一部手机一样使用SIM卡注册到运营商,通过text或PDU模式(可被所有手机支持)发送恶意短信。

0x01 COM与GPRS通信命令

该命令行工具工作于PC桌面端,通过计算机串口连接GSM MODEM,所以首先面临一些PC与GPRS模块的通信命令,该程序中用到的命令解析如下:

各命令依赖关系错综复杂,更多信息可参考:http://www.activexperts.com/sms-component/at/

0x02 SMS PDU编码

发送短消息常用Text和PDU模式,Text模式收发短信代码简单实现容易,但其缺点是不支持unicode编码短信;而PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,8-bit编码通常用于发送数据消息,UCS2编码用于发送Unicode字符。该命令行工具也采用PDU模式,SMS PDU编码是SMS / MMS / WAP PUSH等服务的基础,由十三项信息组成。以下为一条“Hello!”短消息为例,作一个简要说明:

其PDU串为0891 68 31 08 20 05 05 F0 11 00 0D 91 68 31 96 03 29 30 F0 00 00 00 06 C8 32 9BFD 0E 01

更多详细参数请参考:http://www.dreamfabric.com/sms/

对于长短信需要做多条SMS的拆分,但该命令行工具是简单做了长度检查,禁止使用长短信:

0x03 WBXML编码

如启用-x参数,该命令行工具就会PDU的用户数据部分做WBXML转换,其引用开源的WBXML Library库,参见http://sourceforge.net/projects/wbxmllib/

XML消息赋予短消息更多的表现形式及SI/SL等特殊服务特性,就安全特性来说也比单纯的字符编码引入更多的威胁。因为SMS这种消息长度极度受限的传输方式,所以采用了WBXML(WAP Binary XML)封装,即以一个byte代替常用的XML TAG和Attibute字串来节约传输数据量。以下为一些常用的转换:

更多信息请参考WBXML标准:http://www.w3.org/TR/wbxml/

0x04 攻击场景

整理其发送机制及流程后,通过泄漏邮件的数据挖掘,证实了一些可预测的攻击场景已经被应用于HT近年一些监控入侵中:

1.它可将恶意链接以短信形式发送到支持WAP PUSH功能的手机上,结合政府背景级别的社工方法及Browser漏洞,可作为移动端钓鱼入侵中非常重要的路径之一。

2.发送包含漏洞利用代码的WAP PUSH消息,直接远程攻击智能设备终端。

2013-2014年邮件往来针对美国、墨西哥、秘鲁等PUSH服务使用率高的黑莓手机入侵监控中,提及到WAP PUSH社工的重要及相关配合使用的文件格式溢出利用工具:

2013年8月“Android exploit” 主题邮件,提到使用SL选项的PUSH功能将使整个恶意APP下载过程对用户透明化:

2015年2月Durango Pending Status主题邮件,表明WAP PUSH在移动设备感染上依然在继续使用:

稿源:安恒信息