研究人员公开了一种新技术,iOS 上的恶意软件可以通过伪造其关机过程来在受感染设备上实现持久性,从而无法物理确定 iPhone 是否已关闭。

这一发现——被称为“ NoReboot ”——由移动安全公司 ZecOps 提供,该公司发现可以阻止并模拟 iOS 重启操作,欺骗用户相信手机已经关机,而实际上,它仍在跑步。

这家总部位于旧金山的公司称其为“无法修补的终极持久性漏洞 [...],因为它根本没有利用任何持久性漏洞——只是在玩弄人类的大脑。”

NoReboot 的工作原理是干扰 iOS 中使用的例程来关闭和重新启动设备,从一开始就有效地防止它们发生,并允许木马实现持久性而不是持久性,因为设备实际上从未真正关闭过。

这是通过将特制的代码注入三个 iOS 守护进程(即 InCallService、SpringBoard和Backboardd)来实现的,通过禁用与​​已开机设备相关的所有视听提示,包括屏幕、声音、振动、相机指示灯和触摸反馈。

换句话说,这个想法是通过劫持当用户同时按住侧边按钮和音量按钮之一时激活的事件,并拖动“幻灯片关闭电源”滑块。

研究人员解释说:“尽管我们禁用了所有物理反馈,但手机仍然保持完整功能并能够保持活跃的互联网连接。” “恶意行为者可以明目张胆地远程操纵手机,而不必担心被抓住,因为用户被欺骗以为手机已关闭,要么被受害者关闭,要么被恶意行为者以‘低电量’为借口.”

恶意软件随后会强制 SpingBoard(指 iOS 的图形用户界面)退出(而不是整个操作系统),然后命令 BackBoardd(处理所有触摸和物理按钮点击事件的守护进程)显示 Apple 标志如果用户选择重新打开正在运行的手机,而恶意代码继续存在,则会产生影响。

更重要的是,这种技术理论上可以扩展到操纵与 iPhone 相关的强制重启,当通过 Backboardd 记录此类事件时,故意使 Apple 标志提前几秒钟出现,欺骗受害者在没有真正做到的情况下释放侧边按钮触发强制重启。

尽管迄今为止没有使用类似于 NoReboot 的方法检测到或公开记录任何恶意软件,但调查结果强调,一旦对手获得了对目标设备的访问权限,即使 iOS 重启过程也不能免于被劫持,这完全是触手可及的民族国家团体和网络雇佣兵等。

研究人员总结道:“非持久性威胁在没有持久性攻击的情况下实现了‘持久性’。” 可以通过此处的GitHub 访问演示 NoReboot 的概念验证 (PoC) 漏洞。