移动安全研究专家Elliot Alderson公开表示,某些一加手机的系统预装应用EngineerMode中存在后门,而他人或可利用这款应用来对手机进行root。更加重要的是,恶意攻击者还可以将其转变成一个功能完整的后门。
Alderson在接受BleepingComputer的采访时表示,上个月他曾在网上看到了一条关于“一加手机通过隐藏数据流给厂商服务器发送遥测数据”的新闻,此后他便开始对一加手机进行分析和研究了。
他本人拥有一台OnePlus 5手机,在对一加手机系统进行研究的过程中,他最开始分析的是OpDeviceManager(负责收集遥测数据的App)的源代码。他表示:“果然不出所料,OpDeviceManager这个应用程序的确“不干净”。于是我又继续分析其他的OnePlus应用,经过了一段时间的寻找,我发现了这个名叫EngineerMode的应用程序。”
根据研究人员在Twitter上发布的文章,EngineerMode的功能非常多,它不仅可以执行一系列硬件入侵诊断测试,而且还可以检测设备的root状态以及诊断GPS功能。这款App是一个系统应用,它由美国高通公司设计开发,而一加手机对其又进行了定制修改。一般来说,厂商主要会在手机的出厂阶段使用该应用程序测试设备的状态。
实际上,EngineerMode就是一款诊断应用。因此,之所以现在会出现这种情况,有可能是因为OnePlus的工程师无意中将他们在手机生产制造过程中所使用的定制版Android操作系统安装在了批量生产的手机中,随后将手机交付给了经销商并出售给了消费者。
其实每一家厂商都会犯错,但Alderson认为一加手机这一次所犯的错误会带来十分严重的后果。研究人员表示,如果攻击者可以物理访问目标手机的话,他们就可以使用下列命令来root手机:
adb shell am start -n com.android.engineeringmode/.qualcomm.DiagEnabled --es "CODE""PASSWORD"
, where CODE = code and PASSWORD = angela
需要注意的是,还有很多研究人员已经确认了Alderson的研究成果,并成功复现了攻击。
与此同时,Alderson在自己的GitHub库中上传了反编译后的EngineerMode以及OpDeviceManager源代码,感兴趣的同学可以对这些源代码进行深入分析。
除了EngineerMode之外,研究人员还发现了另一款预装应用,而更可怕的是,攻击者可以利用这款App来获取目标用户的照片、视频、GPS、WiFi、蓝牙以及各种手机日志。这款预装应用名叫OnePlusLogKit,并且需要以SYSTEM权限运行。
根据研究人员发布的推文,这款预装应用的功能是对手机服务的运行进行记录,并将记录下的日志内容存储在手机的SD卡中。
Alderson表示,这同样是一个非常严重的安全问题,攻击者将能够通过窃取手机中的日志文件来了解目标用户的行为。OnePlusLogKit的日志记录功能可以通过在手机拨号面板中输入“*#800#”来开启,输入之后你将会看到这款应用程序的操作界面,用户可以在这个界面中开启或关闭日志功能。
如果攻击者能够物理访问目标设备的话,他们就能够开启日志记录功能并悄悄收集之后的手机日志。除此之外,攻击者不仅可以利用社工技术来欺骗用户开启日志记录功能并将日志发送给攻击者,他们甚至还可以使用恶意软件来远程开启目标手机的日志功能。
研究人员表示:“攻击者在利用OnePlusLogKit实施攻击时,不需要对手机进行root,因为日志文件存储在SD卡中,所以只要App拥有SD卡的读取权限,它就能够访问日志文件。”
值得一提的是,OnePlusLogKit不仅能够记录WiFi流量、蓝牙流量、NFC活动、GPS定位坐标以及手机耗电情况等信息,而且还能够查询手机实时的运行进程和服务列表。
目前,研究人员已经将OnePlusLogKit的反编译源码发布在了GitHub上【传送门】,感兴趣的同学可以对源代码进行深入分析,有可能还会发现新的安全问题。
一加手机的用户可以通过输入“*#808# SSID”来查看自己的设备中是否安装了EngineerMode App,如果设备中安装了这款App,用户可以进入手机的应用程序设置中将其卸载。需要注意的是,除了一加手机之外,摩托罗拉、小米和联想所生产的手机中也有可能安装了EngineerMode App。
目前,一加手机还没有对此次事件做出评论。不过一加科技的联合创始人兼首席执行官裴宇在Twitter上对研究人员所做出的努力表示了感谢,并声称公司正在对此事件进行调查。
除了悄悄收集用户的遥测数据之外,网络安全公司Aleph Research还发现某些一加手机无法抵御操作系统降级攻击,感兴趣的同学可以参考【这篇文章】。
这几天,有网友写出了在不解锁bootloader的情况下刷入SuperSU的方案(AngelaRoot:一加手机刷入SuperSU的App),感兴趣的同学可以研究一下。
源码下载:https://github.com/sirmordred/AngelaRoot
apk下载:http://www.mediafire.com/file/nm7x9zitvvzfuy5/AngelaRootV4.apk