Answers:
su
(“切换用户”的缩写)是二进制可执行文件。Android和其他基于* nix的系统使用它来允许进程更改与其关联的用户帐户。从su
植根的角度来看很重要的原因是,没有任何其他参数将切换到root用户,这意味着需要调用需要root权限才能执行其功能的进程su
(因为默认情况下,它们不是由root运行的)。
超级用户是一个Android应用程序(.apk是一个Android应用程序包)。它充当su
二进制文件的一种“关守” 。尝试调用的应用程序su
将被迫通过超级用户进行路由,然后该超级用户将提示该用户是未知应用程序还是新应用程序。然后,用户可以选择批准或拒绝对su
超级用户的访问,也可以选择让超级用户记住他们的决定,以便它可以自动将该决定应用于该应用程序的后续呼叫。这样,唯一被授予根权限的应用程序就是用户选择的应用程序。
这两个应用程序的源代码都可以在Github上找到,并且可以由任何希望查看它的人进行检查/审核(超级用户在这里,su 在这里)。
您可以在Superuser的网站上找到更多详细信息以及更改日志。
有关Android发烧友的其他相关问题:
su
与其他linux / unix操作系统使用的文件相同,没有其他替代方法,但superuser.apk可能存在。为什么要替代?
该超级用户的源代码可以在GitHub上,超级用户的主要作者是亚当·尚克斯(ChainsDD)和科希克杜塔(koush,笔者也发条恢复的)。
Koushik Dutta在他的博客中解释了Superuser.apk的工作原理 ; 请注意,该帖子出自Superuser应用程序的最早版本,此后发生了很多变化,其中一些内容已不再适用于现代的superuser / su实现,但基本知识应相同。
su和Superuser都可以用替代方法代替,但是由于su使用的功能(即exec()和setuid()系统调用)可用于任何可执行文件,因此它实际上并不会发挥太大作用,前提是该可执行文件具有适当的功能。权限位(即setuid位设置为root)。su的核心是一个非常简单的程序,它只是以另一个用户的身份生成一个进程。真正的安全检查由内核完成。
因此,只要您获得了未经修改的官方su和superuser应用程序,并且在获得适当许可的情况下正确安装了它们,您就不必担心,它们是开源的并且安全的,您可以验证源代码在github上编写代码。但是,肯定有可能获得特洛伊木马程序超级用户/ su二进制文件,因此请确保无论您在何处获取超级用户/ su二进制文件都是值得信赖的(如果您确实偏执,则可以自己编译su / superuser)。