前两天苹果发布了最新的iOS 10.3更新,这次更新修复了不少安全问题,其中包括对移动端Safari对JavaScript弹出窗口的处理方式的改变。前不久,Lookout发现攻击者正在利用这种处理方式对苹果用户实施勒索,其目标主要是那些在网上找色情内容,和想要非法下载盗版音乐和其他敏感信息的人。你中招了吗?

“漏洞”说明

在本次攻击中,诈骗分子滥用了移动端Safari的弹窗处理方式,通过反复弹窗,让用户无法使用Safari浏览器,除非该用户以iTunes礼品卡的形式向诈骗分子支付赎金。诈骗分子通过这种方式成功“锁定”一个Safari浏览器之后,还会给用户提示各种威胁、恐吓的勒索信息。

不过这种“勒索”程序其实很容易“解锁”,只需要在iOS设置中将Safari浏览器的缓存删除即可。诈骗者其实根本没有向一般的勒索程序那样加密数据,他们的目的就是恐吓受害者支付赎金。

Lookout上个月首次发现这种攻击,他们将发现的相关细节上报给了苹果,包括涉及诈骗活动的多个网站和攻击原理,并强调了经常更新手机服务的重要性。

首次发现

就在今年2月,一位使用iOS 10.2的用户向Lookout反应,他在使用Safari浏览器访问某家网站之后,Safari就彻底失控了,并发给Lookout两张截图。截图有两部分内容,最直观的就是一条来自pay-police.com网站的提示信息“Cannot Open Page”,据受害者反应,他每次点“OK”之后还是提示“Cannot Open Page”,显然网址日志陷入了无限循环,结果就是用户无法正常使用浏览器。还有一部分就是背景部分的勒索信息。

Safari浏览器被锁解决方法-RadeBit瑞安全

“你的设备已经被锁…”以及“…快支付价值100磅的iTunes礼品卡”,威胁用户支付赎金

移动端Safari弹窗的弊端

如前文所述,攻击者就是利用Safari针对弹窗的处理方式来欺骗受害者,声称“你的Safari已经被我锁了”,并向受害者索要赎金。这种攻击方式并没有突破Safari浏览器的应用沙盒,也没有利用什么exploit代码——这和那些复杂攻击方式完全不是一个层级。

攻击者注册类似police-pay这样的域名,其实是为那些整天找“特定类型内容”的用户准备的,这里的特定类型可能是色情内容,当然也有可能是盗版音乐网站。为了更高效地拿到赎金,他们恐吓受害者以明确的物品来充当赎金,就比如等值iTunes礼品卡。

经分析,诈骗分子的攻击代码似乎针对较老的iOS 8版本开发的,苹果直到iOS 10.3才修复了这个浏览器缺陷。其实“锁”住浏览器的就是一串触发弹窗的无限循环代码。由于iOS 10.3浏览器采用每个标签独立运行的方式,因此在iOS 10.3中单个标签弹窗不会锁住整个浏览器,用户可关闭该标签或移动到另一标签解决被无限弹窗的问题。

快速修复

在获取iOS 10.3更新之前,受害者还可以通过以下方法解“锁”,设置>Safari>清除历史和网页数据;再次启动Safari的时候,勒索消息就消失了。

Safari浏览器被锁解决方法-RadeBit瑞安全

调查勒索行为

从下面这条指令可以看出,此次攻击利用JavaScript代码是对早期攻击的再利用。

“saved from url=(0070)http://apple-ios-front.gq/29300000/index.php?DATARE=Vylet%3A30_15%3A29”

一家俄罗斯网站上曾介绍过这种攻击,JavaScript中包含一些专门将UserAgent string匹配到老版本iOS的代码。

“’Mozilla/5.0 (iPhone; CPU iPhone OS 8_0_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A366 Safari/600.1.4’”

攻击代码会创建一个弹窗,并无限循环,除非受害者支付赎金。赎金支付可以通过将iTunes礼品卡号发给勒索网页显示的电话号码完成。后续版本的iOS系统中,弹出错误窗口对话框实际上是因为移动版Safari无法找到本次URL查询,不过由于无限循环代码,攻击代码还是会持续弹出错误日志信息。值得一提的是,JavaScript代码被混淆,在分析员的还原之下,发现了它的真实目的。比如,在pay-police[.]com域名的JavaScript代码中,攻击者以十六进制混淆了他的攻击代码。

这种攻击在新版本的iOS中可能会导致浏览器DOS(拒绝服务)。

Safari浏览器被锁解决方法-RadeBit瑞安全

在执行混淆代码之前该网页代码还会运行下面这个脚本

<script type=”text/javascript”>navigator.__defineGetter__(‘userAgent’, function () { return ‘Mozilla/5.0 (iPhone; CPU iPhone OS 8_0_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A366 Safari/600.1.4’; });</script>

该组织在本次勒索行动中购买了大量域名来吸引用户点进他们设好陷阱的网站,以收取更多赎金。

Lookout研究员还在下列URL中发现相同的恶意JavaScript代码

hxxp://x-ios-validation[.]com/us[.]html

hxxp://x-ios-validation[.]com/ie[.]html

hxxp://x-ios-validation[.]com/gb[.]html

hxxp://x-ios-validation[.]com/au[.]html

hxxp://x-ios-validation[.]com/nz[.]html

每个网站的勒索信息都不同,且针对的对象包括全球不同地区,每个网站各关联一个联系邮箱。可以看出这是一起针对全球范围的钓鱼活动。

各payload对应的钓鱼域名和邮箱地址

U.S.: us.html networksafetydept@usa[.]com

Ireland: ie.html justicedept@irelandmail[.]com

UK: gb.html cybercrimegov@europe[.]com

Australia: au.html federaljustice@australiamail[.]com

New Zealand: nz.html cybercrimegov@post[.]com

*参考来源:lookout