小米正在如何跟踪你? - - 逆向”快应用”,以及如何防御

小米智能手机不仅流行中国、在南亚国家也非常受欢迎,主要是印度、斯里兰卡、印度尼西亚、泰国等。这些手机以低廉的价格和新功能而闻名。

根据《Business Standard》,“小米印度收入在2018财年增长了175%,小米发布的净利润为29.3亿卢比”,在2018年第四季度;同样来自 Counterpoint,“小米在印度的智能手机销量在2018年第四季度比中国更高”。

现在您知道有多少消费者已经购买和使用了该手机。

现在让我们来讨论一下应用程序 Quick Apps,如果您使用的就是小米,那么现在就可以开始查看您的手机,进入“设置”>“系统应用程序”>“快应用”,您会发现:

通常,系统上安装的所有应用程序都应该可以卸载。但由于这些是内置应用程序,因此只能被禁用。此菜单中没有卸载选项(但它是可以卸载的,卸载方法将是另一个话题)。

先看一下该应用具有的权限:

⚠️App 拥有超过55种权限,其中一些权限甚至可以在不通知你的情况下安装应用程序、抓取用户的IMEI、SIM卡号、IMSI号、MNC或MCC、窃取存储在电话中的用户凭证、使用凭证、记录音频、视频和通话,并将其转储到临时存储中,上传到某些端点,例如:https://v.id.mi.com

本文将深入研究该应用程序,第一步是对应用程序进行反编译并查看源代码。我们看到了一些代码,这些代码极易受到某些攻击,可用于攻击手机中的其他应用程序。

问题1:App 拥有超过55个权限可访问、使用和备份用户数据

它使用了过多的管理权限,例如在没有用户通知的情况下安装应用程序,在未经用户同意的情况下下载OTA,阅读、录制、流式传输实时通话以及视频聊天。

它可以执行中间人攻击,还具有读取用户凭据和在后台进行身份验证的权限。

问题 2:App 使用“ SHA1RSA”算法为应用程序生成签名证书。这是一个严重的漏洞,因为 SHA1RSA 算法容易受到冲突攻击

如果您了解加密技术就会知道,算法会为每个文件生成一个哈希值,同样,每个 Android 应用也需要使用加密算法进行签名,以证明所有者的身份。当两个不同的文件或消息产生相同的加密哈希时,就会发生冲突。

发生这种情况时,攻击者可以制作与原始应用相同的哈希值,以假扮真实应用的所有者。这就是冲突攻击。

问题3:App 可以在未经用户同意的情况下安装未注册的应用程序。

不仅可以在未经用户同意的情况下安装未注册的应用程序,还存储日志,并清除所有与应用程序安装和卸载有关的通知。

问题4:App 将未经处理的SQL输入发送到使用SQLite数据库并执行原始SQL查询的后端DB。

问题5:App 会为您的数据创建访客资料文件,并将其转储到小米端点

该应用程序在https://v.id.mi.com中创建一个用户作为访客,并保存设备的MAC地址、蓝牙ID和Android ID。

他们如何处理这些数据?

小米将Druid用作分析仪表板,据我所知它是用于广告的,因此,您可以得出的结论是,根据您的位置、运营商、您使用的应用程序、浏览的网站、您经常致电的联系人、您经常访问的地点 …… 快应用将数据上传到分析仪表板,然后您就会在任何地方看到广告 —— 锁定屏幕上、新闻小部件、浏览器广告、建议弹出窗口等等。

如何禁用/卸载此应用程序?

到目前为止,卸载这些系统应用程序的唯一方法是,将您的 android 手机root,并使用Play商店中可用的卸载工具,例如 System App Remover, Redmi System manager, System app uninstaller

或者……

如果您知道自己在做什么,您可以先root以禁用这个膨胀软件,然后再 unroot。您可以在 MIUI 博客中找到操作方法。⚪️

Reverse Engineering “Quick Apps” from Xiaomi

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据