0x01 Introduction
具体来说,我们设计了四种攻击基于即时通信系统(IMS)的短信的漏洞: 静默短信滥用、短信欺骗、短信客户端 DOS 和对IMS的短信垃圾邮件攻击。前三次攻击的受害者是移动用户,而最后一次攻击的受害者是运营商。我们进一步发现,这些漏洞可以被用来发起针对短信服务的三大攻击: 社交网络账户劫持、未经授权的捐赠和未经授权的订阅。
0x02 Background
下图显示了基于 Internet、基于 CS 和基于 IMS 的短信服务的体系结构。他们每个人在终端设备上都有一个短信客户端。
基于 Internet 的短信。短信客户端与互联网短信提供商的服务器保持一个会话。服务器在移动网络中将短信息在互联网客户端和短信中心之间转发。服务器和短信中心之间使用的接口依赖于短消息对等协议。
基于 CS 的短信。主要用于2G/3G 网络。移动电话上的短信客户端依靠 CS 网关向短信中心转发短信。所述消息由通过所述移动网络的控制平面的特定控制信令传输。
基于即时通讯的短信。与基于 CS 的短信不同,它的消息是由特定的数据包通过数据平面传输的,由 PS 网关负责。具体来说,它依赖于会话发起协议(SIP)来控制短信传输。在手机的短信客户端和 IMS 服务器之间维护一个基于 SIP 的会话。IMS 服务器负责连接 SIP 会话和短信中心。
0x03 New Security Issues From IMS-Based SMS
基于软件的客户端设计。基于 IMS 的 SMS 采用基于软件的客户端设计,因此 SMS 客户端被部署为移动应用程序。与传统的基于硬件的短信客户端不同,运营商可以灵活定制短信,以满足不同用户的需求。但是,它更容易受到攻击,例如,攻击者可以劫持短信客户端攻击IMS,或恶意软件可以冒充短讯客户端发送伪造的短讯。
灵活协议设计。基于 IMS 的短信所依赖的 SIP 协议比传统的短信更加灵活,短信标头中的控制信息可以在设备端指定。由于IMS的短讯标头没有严格的安全检查,这种灵活性可能容许恶意用户或恶意软件轻易伪造有害的短讯。例如,一个恶意用户可以通过欺骗发端人的短信号码来发起对短信的欺骗攻击。
数据平面通信信道。IMS 系统将客户端与核心网之间的短信通信信道从传统短信的控制平面转移到数据平面。CS 网关上的受控面板信令安全机制(例如身份认证、消息加密、完整性保护等)不适用于基于 PS 的 IMS 系统。因此,的初级阶段 IMS 系统的安全机制提供的短信可能会受到安全威胁的攻击,比如 VoLTE 。例如,伪造的短讯可以在不被察觉的情况下生效。
规定的保安机制。3GPP 和3GPP2是两个不同的电信规范。3GPP2标准在即时通信安全上提供了更多的自由,这会使 IMS 系统面临安全威胁。例如,一个运营商可能只使用数字认证机制,而没有端到端安全性 IPSec,因此它可能遭受窃听或中间攻击。
3.1 威胁模型和方法
攻击者有一个root的智能手机,因此,他可以破解短信的 IPSec 保护,使用短信垃圾邮件对 IMS 系统发起攻击,而且可以收集没有 root 权限无法获得的信息,包括短信的 SIP 会话信息。在短信欺骗攻击中,恶意软件不需要部署在受害者手机上,而是可以放在另一个手机上,作为攻击受害者的跳板。请注意,恶意软件在手机中不需要 root 访问或 SMS 许可(即允许使用 SMS API 发送/接收 SMS 消息) ,只需要网络许可。
0x04 New Threats From IMS-Based SMS
4.1 SIP 会话漏洞
基于 IMS 的短信依赖于手机短信客户端和 IMS 服务器之间的 SIP 会话。在手机上,为基于 IMS 的服务创建了一个新的接口(例如,VoLTE、 SMS )。SIP 会话是由 SMS 客户机通过这个特定于 IMS 的接口建立的。
4.1.1 SIP 会话信息泄漏
一旦泄露了 SIP 会话信息(例如消息格式、会话参数等) ,攻击者就可以伪造 SIP 消息来携带伪造的短信。我们发现OP-I 和 OP-II [^OP-I 与 OP-II分别代表美国的两个运营商] 的会话信息都可以泄露给攻击者。对于 OP-I,会话仅由DIGEST安全机制保护,该机制仅在 SIP 注册过程中提供访问身份验证,SIP 消息是纯文本,没有进行加密。对于 OP-II,会话受到 IPSec-3GPP 的保护,数据是保密的,但是加密的 SIP 消息仍然可以通过How voice call technology poses security threats in 4g lte networks中介绍的方法进行解码。可以通过监视特定于 IMS 的接口来以root方式捕获包含 SIP 消息的数据包。
验证。我们使用 Shark 监视特定于 IMS 的接口来捕获短信的 SIP 消息。对于 OP-II,我们把安卓操作系统使用的 IPSec 密钥,加载到 wireshark 应用程序中,解密 SIP 包。可以使用命令ip xfrm state
获取 IPSec 密钥。
下图显示了OP-I中 SIP 注册过程的示例包。注册到 IMS 服务器后,短信客户端收到一条状态信息,SIP 401 unauthorized。在这条消息中,认证方法被指定为DIGEST。短信客户端通过发送另一条新的 SIP 寄存器消息来完成注册,其中包含了对认证的回答。之后,没有对接收到的消息进行加密,状态为 SIP 200 ok,显示后续的 SIP 消息将是纯文本。
下图分别显示了一个短信消息的 SIP 消息头和正文。
4.1.2 伪造 SIP 消息注入
我们发现对于 OP-I 和 OP-II,伪造的 SIP 消息可以被注入到 SMS 客户端和 IMS 服务器之间的 SIP 会话中。IMS 服务器接受所有带有正确会话标识符的数据包,不管它们来自哪里。对于 OP-I,SIP 会话是基于 udp 的。一旦带有 SIP 会话目标 ip 和端口的伪造 udp 数据包通过 IMS 特定接口发送,IMS 服务器就可以接收它并将其视为属于 SIP 会话。对于 OP-II,虽然 SIP 会话受到 IPSec over tcp 的保护,但仍然可以使用 xfrm 将伪造的 tcp 包注入 SIP 会话,并且需要root权限。
验证。对 OP-I ,编制 SIP 消息后,使用一个 udp 套接字通过 IMS 特定的接口将其发送到正在进行的 SIP 会话的目标地址。
对 OP-II ,首先使用命令ip xfrm state
获取 IPSec 安全性的信息。它包括用于完整性保护和真实性的 HMAC-SHA1/SHA2键,以及 ESP (封装安全有效负载)的 SPI (安全参数索引)值。其次,使用 IPSec 信息和 tcp 的 SIP 会话标识符(即5元组地址)配置 xfrm。第三,使用 raw socket 创建具有5元组地址的 ip/tcp 包来携带伪造的 SIP 消息,然后通过 IMS 特定的接口发送出去。在发送之前,由于 xfrm 配置,数据包被自动封装到 IPSec 数据包中。然后,接收具有相同状态202的响应消息。
4.2 手机和 IMS 服务器漏洞
4.2.1 手机短信接入防御不足
对于 OP-I,没有短信许可的应用程序允许使用网络套接字发送短信。此应用程序不需要根访问,而只需要网络权限。但这个漏洞对 OP-II 是不可行的,因为从非 SMS 应用程序发送 SMS 消息需要破解 IPSec 安全性 ,但破解需要 root 访问。
4.2.2 在 IMS 服务器上发送可欺骗的短信
基于IMS的包含发送方标识符的控制信息允许在手机上指定,标识符可能被恶意用户篡改。
验证。这个漏洞适用于 OP-I 但不适用于 OP-II。为了通过 OP-I 的 IMS 服务器的完整性检查,在伪造的 SIP 消息中必须正确填写的8个头字段。其他字段的值不会影响完整性检查的结果。它们分别要求收件人的电话号码、 IMSserver 的地址、 发件人的 SIPaddress、 发件人的电话号码、收件人的电话号码、发件人的电话号码、发件人的 ip 地址以及邮件正文大小。对于邮件正文,只需填写两个字段: 收件人的电话号码和短信内容。
0x05 Threat Propagation Towards SMS-Powered Services
5.1 Facebook: 账户劫持
Facebook 用户可以通过 facebook 文本服务使用短信管理他/她的账户。要使用此 facebook 文本服务,用户需要事先将其电话号码绑定到该帐户。在电话号码注册过程中,脸书依靠一次性确认码来认证号码。然而,facebook 的文本服务可以被用来劫持帐户攻击。
脆弱性。第一个漏洞是,用户可以继续使用注册电话号码,通过短信操作他/她的帐户,而无需任何运行时认证。电话号码的初始认证是用于 facebook 短信服务的唯一安全机制。
第二个是一旦用户注册了他/她的电话号码,他/她的 facebook 短信服务就会自动启用。
攻击和负面影响。通过利用短信欺骗威胁,攻击者可以在受害者不知情的情况下,通过短信劫持受害者的 facebook 账户。由于没有运行时身份验证,受害者不会卷入攻击或收到任何确认消息。
我们通过使用开发的 hackfacebook 攻击受害者的电话,验证了攻击的可行性。我们在一个非受害者的手机上雇佣 hackfacebook 来更新状态,添加新朋友,以及点赞,如下图所示。如(d)所示,受害者帐户的活动日志的快照,证实这三个攻击行动是成功的。
5.2 美国红十字会:未经授权捐赠
美国红十字会允许手机用户通过短信从他/她的每月账单中捐款。
脆弱性。弱授权和自动登记。服务的授权机制仅仅依赖于静态响应文本,如果攻击者能够操纵受害者的短信,这项服务很容易被滥用。第二个漏洞是大多数美国电信运营商,都会自动将他们的移动用户注册到移动捐赠服务中,却没有明确通知。
攻击。我们开发了一个应用程序 donatearc 基于 hackfacebook。和 hackfacebook 不同,它需要连续发送两条短信到90999。
5.3 家得宝: 未经授权的订阅
美国家装零售商家得宝通过短信向顾客发送广告,顾客需要在家得宝网站上订阅电话号码及电邮地址的短讯广告。订购后,客户将收到一个短信与确认请求。然后要求客户发送短信回复。类似于攻击未经授权的捐赠,认购可以被滥用为未经授权。
攻击。攻击者可向受害人作出未经授权的订阅,有两个步骤,为受害者请求捐款或认购,并发送短信进行确认。
发表评论
您还未登录,请先登录。
登录