揭秘山寨智能手机的深度安全风险

本文深入分析了山寨iPhone和三星手机的安全隐患,包括使用过时Android系统、未修补漏洞、预装恶意软件等问题,揭示了这些设备如何通过修改的ROM和内核漏洞威胁用户数据安全。

从山寨智能手机的深渊出发 - Trail of Bits博客

Chris Evans
2019年8月7日
apple, malware

在网络二手零售商、市场交换和第三方翻新店盛行的时代,购买手机时节省数百美元比以往任何时候都更容易。这些渠道为那些放弃零售购物体验以换取大幅折扣的人提供了有吸引力的替代方案。

然而,对于那些寻求更多节省的讨价还价者来说,还有一个额外的选择:流行手机型号的仿制品。这些山寨机已经成为一个蓬勃发展的行业,将廉价的硬件和免费的软件转化为大规模利润,而制造商几乎没有任何成本。这些克隆产品通常以低于零售价1/10的价格出售,并且乍一看往往是非常令人信服的复制品。

去年,我们帮助Motherboard Vice对一款山寨iPhone X进行了调查性拆解。我们对发现的许多安全问题和漏洞感到困扰,因此我们与DeviceAssure——一家致力于移动平台防伪解决方案的公司——合作,更深入地研究这些危险的复制品。

这篇文章详细介绍了我们的发现,并深入探讨了使用这些手机时你实际得到的是什么。无论是故意的恶意行为还是危险的无能,都有很多值得关注的地方!

第一印象

我们研究了两款山寨机:一款iPhone 6和一款三星S10。

山寨iPhone的前后外观
山寨三星S10的前后外观

设备的外观美学非常令人信服。对外围布局、尺寸和整体饰面的适当关注几乎与它们的零售对应物相同。各种开关和按钮对应于你在真实设备中预期的控制手机锁定、调节音量以及开关机的功能。山寨iPhone甚至在其充电端口使用了闪电电缆!

两款型号都配备了触觉反馈和指纹传感器,这些确实有效……大多数情况下。还包括面部生物识别技术,尽管它们的失败率相当高,并且经常完全无法工作。

从底层内部结构的初步观察来看,两款设备都依赖于联发科(Mediatek)的控制器,这是一家中国硬件公司,为嵌入式设备提供ARM芯片组,既极其便宜又相当有能力。正如许多山寨机一样,它们也依赖于自定义的、大部分由社区构建的Android运行时ROM——这是一个明显的迹象,表明功能将是非标准的,并且充满了数百种变体特定的怪癖。

好处——它们看起来和工作起来有点像真货……有时候

你得到一部看起来和工作起来大致像它所仿制的手机,但有一些例外。除此之外还有什么好处吗?

没有。

真的,即使这些设备假设拥有原始的ROM(提示:它们没有),它们仍然带有一系列关键问题,即使它们没有预装恶意软件(提示:它们有)。

我们可以给系统UI中渲染的一些细节打C+的努力分。大多数模态弹出窗口和面板设置都忠实地被拦截,并使用本地资源框架的扩展重新创建。

特别是,三星山寨机使用本地启动器、UI/图标包和主题引擎为其Android变体;它几乎与原始版本无法区分。它甚至包括三星和Google Play应用商店的合法门户。

然而,iPhone在几分钟的探索后很快就崩溃了。ROM系统层最初呈现一个可信的iOS UI,但事件行为中的边缘情况(WiFi连接错误、应用程序异常、某些输入文本类型等)揭示了库存Android屏幕。此外,“iOS”应用程序都以明显低分辨率显示,并包含创造性破碎的英语(与ROM系统层形成鲜明对比,表明作者不同)。

坏处——它们充满了未修补的漏洞和不安全的臃肿软件

两款手机都报告运行最新版本的Android Pie 9.0;一个在大多数方面相对加固的操作系统。然而,这不是真的。

在iPhone的情况下,进一步挖掘显示它运行的是一个更老版本的Android:Kitkat 4.4.0。Kitkat的最后一次更新是在2014年。正如你可以想象的,自那以后出现了数百个CVE,更不用说后来重新设计的固有设计缺陷:沙盒机制、文件系统分区和危险的权限API等。

我们探测了一些众所周知的弱点,并确认它们未修补。该设备容易受到 notorious Stagefright 漏洞的影响,这些漏洞利用SMS/MMS消息中的媒体处理来获得设备的远程控制。此外,旧Android系统守护进程中的几个漏洞,包括Mediaserver和Surfaceflinger,表现出未修补的功能。由于这些AOSP ROM是在板级黑客和系统修改论坛的深处临时编译和维护的,用户不太可能自己修补这些漏洞。肯定没有空中升级能力。

S10运行一个稍新的Android:Lollipop 5.1。最后一次更新是在2015年,Lollipop用现代ART VM取代了Dalvik VM,并添加了Material UI主题元素,从而使我们的山寨机能够使用三星UI组件。

然而,有一个更严重的问题困扰着两款手机:过时的内核。除了Android运行时更新外,Android手机中的Linux内核通常需要供应商参与将安全修复下游到手机上。即使在合法的Android设备中,这个过程也经常落后于安全发布,并需要供应商额外的工程努力。联发科ROM维护者的志愿者社区不会跟上日常安全更新,因此山寨机中过时的内核是不可避免的。两款手机都有易受攻击的内核,这些内核被已知漏洞成功利用,如DirtyCow(一种写时复制内存竞争条件)和Towelroot(移植到Android的Futex定时错误)。毫无疑问,还有大量其他内核漏洞可供潜在攻击者滥用。

联发科设备驱动程序和守护进程也是丰富漏洞的来源,通常导致内核级执行。同样,用户能够适当找到并修补这些系统的能力或可能性非常低。

这些手机的另一个陷阱是存在调试和测试实用程序,这些程序在联发科基线ROM包中暴露了危险的系统级权限。这在两款设备上都被观察到,以及我们研究过的其他多个山寨变体。Galaxy S10山寨机具有一个远程调试服务器,允许远程控制媒体文件、记录SMS消息和删除电话号码。

Galaxy S10山寨机上的联发科Android守护进程(MTKAndroidSuite包)启动一个本地FTP服务器,由于服务的高权限,可用于操作文件。

仍然在S10上,传入的SMS被保存到应用程序的SQLite数据库,该数据库不受访问控制保护,可以被其他应用程序读取。

显示一些联发科守护进程功能的概述(通过类文件名指示)表明,守护进程还可以检索媒体文件、转储手机联系人、删除手机消息等。

这些山寨机无疑是

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计