android root的安全隐患

信息安全 linux 安卓 电话
2021-08-19 06:11:10

我知道这个问题已经被问过很多次了,但是我没有从安全专家那里看到一个明确的答案,或者是几年前的问题,事情可能已经改变了。

我的问题是双重的:

  1. 首先,如今,root android 手机的过程是如何工作的(如果有各种替代方案,请详细说明)?它是否依赖于安全漏洞,还是一种不属于 android 安全边界的攻击(例如对设备的物理访问)?在第一种情况下,为什么它没有修复,因为 android 系统有开放的赏金?请注意,我只是在谈论带有最新补丁的 android 系统本身(例如 Nexus 手机)。

  2. 第二个相关问题:root android 手机的安全风险是什么?如果我没记错的话,这些至少可以归为两个问题:生根过程本身和后果。

    一个。关于生根过程,是否有任何开源程序(或至少经过仔细审查)来生根一个可以保证该过程中没有安装恶意软件的 nexus 手机?(另见第一个问题)

    湾。据我了解,拥有一个 root 的 android 与拥有一个具有 root 帐户的 linux 操作系统没有什么不同。是否有任何(免费的、开源的?)应用程序可以监控(启动了哪些命令等)并阻止应用程序在未经我同意的情况下访问 root 帐户?(因此在 Linux 操作系统中,任何需要 root 权限的帐户都必须通过“sudo”并要求用户输入密码)。

2个回答

我将把我的答案限制在 Nexus 手机上。

我已经扎根了我的 Nexus 手机。我确信生根将适用于新的 Nexus 手机。(三星手机也可以root)

生根不依赖于任何特定的安全漏洞。广义的想法是能够以 root 用户身份执行命令(就像在 linux 系统中一样)。植根手机本身不能被称为攻击;但问题是,如果有人偷了手机然后试图对其进行 root,这可能是个问题。在生根过程中,Nexus 手机将被完全擦除。

关于在有根手机上运行应用程序的安全风险。一个非常简单的例子是,如果一个应用程序将一个经过身份验证的会话 cookie(或密码)缓存在用户通常无法访问的手机区域(在非 root 手机上),那么它可以在 root 手机上访问。(丢失有根手机很容易导致密码被盗或 cookie 被盗)

一个不太简单的例子是攻击者试图在有根手机上运行应用程序,并可能使用 android 手机上的 IP 表将流量重定向到代理(对于通常无法代理的应用程序)。

为防范此类威胁,应用程序采用根保护机制,导致应用程序无法在根电话上运行或在根电话上以受限方式运行。

有一些反应用程序试图隐藏根功能以绕过根检测防御机制。他们有时工作。

但是一个真正熟练的攻击者可以达到修改apk源代码并使用修改后的应用程序版本来满足他的目的的水平。

因此,应用程序的最佳方法是不依赖客户端来保护敏感数据或接收到的数据的完整性(源代码或应用程序无法在有根手机上运行的假设)

要根电话,我将此作为指导方针,它对我有用。 http://www.ibtimes.co.uk/root-nexus-5-nexus-7-2012-wi-fi-android-5-1-lmy47d-lollipop-firmware-1491474

您可以使用超级用户应用程序来管理具有 root 访问权限的其他应用程序。因此,如果应用程序请求 root 访问权限,您必须通过超级用户应用程序明确允许它。 https://play.google.com/store/apps/details?id=eu.chainfire.supersu

我不确定这是否完全回答了您的问题如果您有任何疑问,请告诉我,我会尽力回答。

  1. root手机的一般过程是利用相应 Android 操作系统中的漏洞进行权限升级,从而使您(非 root 用户)成为 root。然后,您可以安装修改后的固件。 根据定义,这依赖于安全漏洞

  2. 除非您知道源代码,否则无法保证使用手机上的漏洞来根它不包含恶意软件。此外,如果您下载自定义映像或内核,您很容易无意中下载了后门固件。因此,如果您决定对您的手机进行 root,请务必从 XDA Developers 之类的页面中选择自定义内核,其中至少对代码进行了一些审查。永远不要安装封闭源代码的内核。

您可以使用 相当轻松地列出 Linux 中的进程ps aux,但是,这对于移动设备几乎没有意义。此外,root 设备的主要问题是您不能简单地从 root 回到普通用户模式。Root 访问权限通常仅在 Linux 中临时使用,因此即使使用完全没有后门的 root,您的手机也会更容易受到攻击。