攻击者正在利用 iMessage 发起一种名为 Triangulation 的攻击活动
具体分析
(相关资料图)
卡巴斯基实验室研究人员在监控专用于移动设备的 Wi-Fi 网络的网络流量时,注意到几个基于 ios 的手机的可疑活动。由于无法从内部检查现代 iOS 设备,研究人员创建了这些被攻击设备的离线备份,使用移动验证工具包的 mvt-ios 对其进行了检查,并发现了攻击的一些技术细节。移动验证工具包 ( MVT ) 是一组实用程序,用于简化和自动化收集取证痕迹的过程,有助于识别 Android 和 iOS 设备的潜在危害。目前,研究人员将这个攻击活动称为 "Triangulation 活动 "。
研究人员创建的移动设备备份包含文件系统的部分副本,包括一些用户数据和服务数据库。文件、文件夹和数据库记录的时间戳允许研究人员重建设备上发生的事件。mvt-ios 实用程序将事件的排序时间轴生成一个名为 "timeline.csv" 的文件,类似于传统数字取证工具使用的超级时间轴。
使用这个时间轴,研究人员能够识别出被攻击的特定固件,并重建了一般的攻击顺序:
1. 目标 iOS 设备通过 iMessage 服务接收一条消息,其中包含一个包含漏洞的附件。
2. 在没有任何用户交互的情况下,该消息会触发导致代码执行的漏洞。
3. 利用漏洞攻击中的代码从 C&C 服务器下载几个后续阶段,其中包括用于权限提升的其他利用漏洞攻击;
4. 成功利用后,从 C&C 服务器下载最终有效负载,这是一个功能齐全的 APT 平台。
5. 附件中的初始消息和漏洞攻击痕迹会被自动删除。
恶意工具集不支持持久性,很可能是由于操作系统的限制。多个设备的时间轴表明,它们可能在重新启动后被重新攻击。研究人员发现的最古老的攻击痕迹发生在 2019 年。截至发文时,攻击仍在进行中,最新被攻击的版本为 iOS 15.7。
对最终有效负载的分析尚未完成,该代码以 root 权限运行,实现了一组用于收集系统和用户信息的命令,并且可以运行从 C&C 服务器下载的作为插件模块的任意代码。
需要注意的是,尽管恶意软件包括专门用于清除攻击痕迹的代码部分,但可以可靠地识别设备是否被攻击。此外,如果通过从旧设备迁移用户数据来设置新设备,那么该设备的 iTunes 备份将包含发生在这两个设备上的攻击痕迹,并带有正确的时间戳。
所有潜在的目标设备都必须使用 iTunes 或开源实用程序 idevicebackup2(来自 libimobiledevice 包)进行备份。后者作为最流行的 Linux 发行版的预构建包提供,或者可以从 MacOS/Linux 的源代码构建。
要使用 idevicebackup2 创建备份,就要运行以下命令:
idevicebackup2 backup --full $backup_directory
你可能需要多次输入设备的安全码,根据存储的用户数据量,该过程可能需要几个小时。
安装 MVT
备份准备就绪后,就必须由移动验证工具包进行处理。如果系统中安装了 Python 3,就要运行以下命令:
pip install mvt
更全面的安装手册可以在 MVT 主页上找到。
解密备份
如果设备所有者以前已为备份设置了加密,则备份副本将被加密。在这种情况下,备份副本必须在运行检查之前解密:
mvt-ios decrypt-backup -d $decrypted_backup_directory $backup_directory
使用 MVT 分析备份
mvt-ios check-backup -o $mvt_output_directory $decrypted_backup_directory 命令将通过 MVT 运行所有检查,输出目录将包含几个 JSON 和 CSV 文件。使用本文中描述的方法时,你将需要名为 timeline.csv 的文件。
查看 timeline.csv 中的指标
研究人员发现的唯一最可靠的指标是提到名为 "BackupAgent" 的进程的数据使用行。这是一个废弃的二进制文件,在正常使用设备期间该文件不应出现在时间轴中。然而,需要注意的是,还有一个名为 "BackupAgent2" 的二进制文件,这并不是一个攻击指标。
在许多情况下,BackupAgent 前面有一个进程 "IMTransferAgent",它下载的附件恰好是一个漏洞,这导致修改 "Library/SMS/Attachments" 中多个目录的时间戳。然后删除附件,只留下修改过的目录,其中没有实际的文件:
还有一些不太可靠的指标,如果其中几个指标在几分钟内发生,则可能被视为 IOC:1. 修改一个或多个文件:com.apple.ImageIO.plist, com.apple.locationd.StatusBarIconManager.plist, com.apple.imservice.ids.FaceTime.plist;
2. 服务的数据使用信息 com.apple.WebKit.WebContent, powerd/com.apple.datausage.diagnostics, lockdownd/com.apple.datausage.security。
示例:
另一个示例:修改短信附件目录(但没有附件文件名),然后使用 com.apple.WebKit.WebContent 的数据,最后修改 com.apple.locationd.StatusBarIconManager.plist。所有事件都发生在 1-3 分钟内,这表明通过 iMessage 附件成功实现了攻击。另外一个攻击指标是用户无法安装 iOS 更新。研究人员发现了发现恶意代码修改了一个名为 com.apple.softwareupdateservicesd.plist 的系统设置文件,他们观察到更新尝试以错误消息 " 软件更新失败,下载 iOS 时出错 " 结束。漏洞利用期间的网络活动
在网络活动中,成功的利用尝试可以通过几个 HTTPS 连接事件的顺序来识别。这些可以在包含 DNS/TLS 主机信息的网络流数据或 PCAP 转储中被发现:
1. 与 iMessage 服务进行合法的网络交互,通常使用域名 *.ess.apple.com;
2. 使用域名 icloud-content.com、content.icloud.com 下载 iMessage 附件;
3. 到 C&C 域的多个连接,通常是 2 个不同的域(下面是已知域的列表)。C&C 会话的典型网络流数据将显示具有大量传出流量的网络会话。
网络漏洞利用顺序,Wireshark 转储iMessage 附件是通过 HTTPS 加密和下载的,唯一可以使用的隐含指标是下载的数据量,约为 242 Kb。
加密 iMessage 附件,Wireshark 转储C&C 域
使用取证固件,可以识别漏洞利用和之后恶意阶段使用的域名集。它们可用于检查 DNS 日志中的历史信息,并识别当前运行恶意软件的设备:
addatamarket [ . ] netbackuprabbit [ . ] combusinessvideonews [ . ] comcloudsponcer [ . ] comdatamarketplace [ . ] netmobilegamerstats [ . ] comsnoweeanalytics [ . ] comtagclick-cdn [ . ] comtopographyupdates [ . ] comunlimitedteacup [ . ] comvirtuallaughing [ . ] comweb-trackers [ . ] comgrowthtransport [ . ] comanstv [ . ] netans7tv [ . ] net
尽管卡巴斯基已经发现了这一漏洞,但关于该漏洞的最新修复和更新信息暂未得知。为了确保设备安全,建议用户及时升级到最新的 iOS 系统版本,并遵循相关的安全建议和最佳实践。同时,避免点击来自不明来源的链接或点击可疑信息。