1.翻译:【XDA论坛】教程:如何手动编译TWRP Recovery
2.(一文看懂手机Root的修改操作与防护)手机root权限怎么开启
3.一文看懂手机Root的操作与安全防护
4.如何刷手机第三方中文TWRP的recovery
5.通俗易懂!一文看懂手机Root的源码源代操作与防护
翻译:【XDA论坛】教程:如何手动编译TWRP Recovery
这是一个关于手动编译TWRP Recovery的教程,对于TWRP 3.x源代码开放后,修改你有机会根据自己的源码源代设备进行定制。但请注意,修改这需要一定的源码源代万岳教育源码Linux基础和AOSP构建流程知识。
目前支持编译的修改版本包括Omni 6.0、7.1、源码源代8.1、修改9.0、源码源代CM .0、修改.1、源码源代.1以及LineageOS .0。修改推荐使用Omni 9.0,源码源代除非你的修改设备有超级分区。
如果你使用的是CM或LineageOS,TWRP需要放置在特定的文件夹(LineageOS/bootable/recovery-twrp)并设置RECOVERY_VARIANT。源代码可以在相关链接中找到,但请注意链接地址可能已更新。
编译时,建议使用轻量级构建清单,它适用于大多数情况,但可能需要额外的repo。在编译前,确保更改任何FLAGS(构建标志)会清除或执行'make clobber',以确保更改生效。
找到与你设备对应的BoardConfig.mk文件(通常在devices/制造商/代号文件夹),你需要配置相应的架构和平台设置,尤其是TW_THEME,它决定你的设备显示的主题。现在有五种主题选项,根据你的屏幕分辨率选择合适的。
除了分辨率,还有其他如RECOVERY_SDCARD_ON_DATA、BOARD_HAS_NO_REAL_SDCARD等标志,根据你的设备需求进行设置。例如,RECOVERY_SDCARD_ON_DATA可改变设备的文件存储方式。
关于fstab,TWRP 2.5及以上版本支持新特性,自动处理大多数分区。但如果是较旧版本,需要创建TWRP.fstab文件,以保持与其他恢复选项的兼容性。
在TWRP中,你可以为每个分区添加标志,opensns 源码下载如removable、storage、settingsstorage等,这些标志影响分区的行为和显示方式。例如,Galaxy S4的TWRP fstab示例显示了如何使用标志。
最后,如果你完成了编译并想让TWRP官方支持你的设备,你需要提供必要的信息,但请注意,我们不会为此提供奖励,但你可以通过XDA分享你的成果。此外,你还可以在Android模拟器上测试TWRP,这有利于开发和调试。
请在编译过程中遵循指南,如有任何问题,可以访问#twrp在Freenode上寻求帮助,或者在XDA论坛分享你的成功经验。
(一文看懂手机Root的操作与防护)手机root权限怎么开启
Root,对于任何手机发烧友、玩机客、从事移动设备研发的人员来说,并不陌生,它代表绝大部分移动设备的使用者能够掌握到的最高权限。
从技术层次来讲,用户拥有了修改系统文件的权限,甚至可以控制账户、增加或删除硬件等,但对普通用户来说,最大的一个用处就是卸载“Root之前无法卸载的软件”,部分品牌商在手机出厂之前内置安装了一些无法卸载的软件,这些软件在手机Root之后,都可以被卸载掉,Root相当于让用户拥有了自由增减软件的权限。
Root的前世今生
Root一词起源于Linux/Unix系统,众所周知,Linux/Unix系统的文件系统以根“/”出发向下形成一个倒置的树型文件系统结构,Root即根的英文释义,那么Linux/Unix系统就以Root账号所拥有的权限作为系统管理员的权限,口口相传,Root就代表了Linux/Unix上最高的权限。
在移动设备发展的初期,各种移动设备所使用的操作系统各不相同,比较出众的spring cglib 源码有塞班、Windows Phone、iOS、安卓。随着市场的选择,只有安卓与iOS留存下来,成为普及的手机操作系统。按照POSIX标准协议和开源协议的规定,安卓与iOS都应该保留了Linux/Uinx上的相应的功能。
其中,安卓就是以Linux作为基础进行构建的系统,而iOS则是使用了以xnu为内核的Darwin(Darwin来自于BSD)。按照开源操作系统而言,安卓和iOS都理应保留所有用户使用Root账户去掌控自己设备的权限。
但现实情况是,安卓与iOS不允许用户使用Root权限,尤其是iOS对于Root权限的监控与封锁达到了前所未有的地步,以至于对iOS的Root被称作“越狱”。iOS上的Root过程相对于安卓更为复杂与困难,所以本文主要以安卓系统的Root为主,详细介绍Root的前世今生。
安卓系统的三大Root方式
相较于封闭生态的iOS系统,安卓的Root方式可谓是从百花齐放到万物归一。不同安卓系统版本,获取Root权限主流方式不同。
3、进入bootloader界面,输入对应的fastboot命令,进入twrp界面。
4、选择Install,然后选择Magisk.zip。
5、进入安装Magisk的界面,将滑动条从左滑到顶端。如果出现如下界面,则证明安装Magisk成功。
6、重启手机后,使用将maigsk.zip改回magisk.apk,使用如下命令安装Magisk管理器。
随后可以在手机中打开Magisk,发现Magisk已经正常工作。
如何检测设备的Root操作
对于安全从业者与一些需要风控的企业,需要得知用户的手机是否处于风险状态,是否被Root。
1、eclipse中看源码包名检测。
由于Magisk是通过Maigsk.apk进行管理它的su权限分发的,所以可以使用获取包名的方式检查用户手机是否存在Magisk App来得知用户是否使用了Magisk Root,具体代码如下:
尝试运行程序,得到如下结果。
在上述方法中,虽然能检测到用户安装了Magisk,但是由于法律对用户隐私的保护,获取包名的方式会触及隐私合规红线,所以这种方法需要一定的权限,在使用该方法时要慎之又慎。
2、专业安全产品。
顶象设备指纹、顶象业务感知防御平台能够实时有效识别Root风险。
顶象设备指纹:能精准识别模拟器、root、越狱、调试、代码注入、多开、***代理等风险。包含,iOS平台hook、越狱行为,安卓root、debug、内存dump、注入、多开、模拟器、漏洞攻击等风险行为,WEB平台下浏览器颜色深度、分辨率,浏览器与系统、UA的匹配性和一致性、cookie是否禁用等行为。
顶象业务安全感知防御平台:基于威胁探针、流计算、机器学习等先进技术,集设备风险分析、运行攻击识别、异常行为检测、预警、防护处置为一体的主动安全防御平台,能够实时发现摄像头遭劫持、extmail 源码下载设备伪造、设备Root等恶意行为,有效防控各类人脸识别系统风险。它具有威胁可视化、威胁可追溯、设备关联分析、多账户管理、跨平台支持、主动防御、开放数据接入、防御自定义和全流程防控等特点。
写在最后
本文从Root的历史出发,讲述了获取Root的发展历史以及轶事,教大家从0到1完成对自己安卓手机的Root,提出了一些有效的检测Root的方式。Root与HOOK一样,是一把双刃剑,在普通人手里,它可以让系统不再受到约束,可以带来更好的手机使用体验,但在黑灰产手里,会变成非法牟利的工具,作为安全从业者,我们要辩证地看待每项技术,对非法行为我们要重拳出击,为安全事业添砖加瓦。
在上一篇文章《欲知己之所防,先知彼之所攻——论Hook 技术的攻防对抗》我们提到Hook的攻击,Hook一定需要Root吗?答案是否定的。如果开发者有能力修改art源码、劫持Zygote,是可以完成Rootless HOOK操作的,Root是为了让HOOK及HOOK模块管理工具的使用降低成本,让HOOK操作者的重心不再放在HOOK的前置条件,而是更专注于HOOK模块的开发。
一文看懂手机Root的操作与安全防护
Root权限是移动设备使用者所能获得的最高权限。从技术角度看,它意味着用户可以修改系统文件、控制账户、增加或删除硬件等。对于普通用户而言,主要用处是卸载无法通过常规方式卸载的软件,如部分手机厂商在出厂时预装的不可卸载应用。Root后,这些应用均可被卸载,相当于用户获得了自由增减软件的权限。
Root的历史可以追溯到Linux/Unix系统,其源于系统管理员权限的英文Root。在移动设备发展的初期,各个系统如塞班、Windows Phone、iOS、安卓等各有不同。然而,市场选择了安卓和iOS,成为主流手机操作系统。由于遵循了POSIX标准协议和开源协议,安卓和iOS都应保留了Linux/Unix的相应功能,其中安卓基于Linux构建,iOS则使用Darwin内核。理论上,所有用户都可以使用Root账户控制设备。然而,实际中,安卓和iOS并未开放Root权限,尤其是iOS的Root权限控制极其严格,因此称为“越狱”。本文主要探讨安卓系统的Root操作。
安卓系统的Root方式多种多样。根据系统版本的不同,获取Root权限的主流方式也不同。安卓手机获取Root权限主要有三种方式:利用系统漏洞、OEM官方解锁、使用特定的工厂模式。通过漏洞方式获取Root,是开发者早期的探索;工厂模式则是通过特殊ROM刷写入手机获取Root;官方解锁则是OEM厂商提供的“通道”,通过解锁Bootloader锁获取刷写ROM以获取Root。
早期安卓系统在安全性方面存在疏忽,使得许多Linux系统中的安全问题也能在安卓中复现。最早有记录并可追溯的漏洞是Znix利用CVE--进行的安卓版本提权程序。通过蓝牙协议触发sendpage漏洞,进行权限提升攻击。随着Google的不断修复与引入SElinux,安卓系统的安全问题在安卓4.4版本后逐渐稳定,Root操作进入新的探索阶段。
在安卓4.4版本后,Google修复了Linux中的可提权漏洞,不再预装su程序,并引入SElinux限制利用漏洞进行提权。此时,开发者开始尝试将自定义的su程序写入安卓的/system分区,让需要Root权限的程序通过这个su程序执行。这需要提前解锁手机。许多大神编写了不同的su程序,如chainsDD的su与chainfire的supersu。此外,还需要一个分发Root权限的管理工具,如koush的superuser,使整个系统得以完善。
然而,Google在后续版本中对/system分区进行完整性校验,使修改变得不可行。在年月,chainfire宣布不再维护supersu。随后,一个名叫topjohnwu的开发者基于supersu原理,通过overlay方法避开了对原有system分区的修改,推出了Magisk。Magisk不仅获取Root权限,还集成了Root权限管理器,是目前最稳定的Root方式。
小白如何获得安卓手机的Root权限?本文将通过TWRP方式指导大家使用Magisk。在获取Root前,需要解除BootLoader锁。步骤包括准备ADB、Fastboot命令工具、Magisk以及对应的TWRP.img镜像(根据不同厂商选择合适的TWRP镜像)。使用ADB命令将Magisk放入sdcard,进入bootloader界面,输入fastboot命令进入TWRP界面,选择Install并选择Magisk.zip。在安装Magisk的界面,将滑动条从左滑到顶端,安装成功后重启手机,将Magisk.zip改回magisk.apk并使用命令安装Magisk管理器。随后打开Magisk,可发现其已正常工作。
如何检测设备的Root状态?对于安全从业者和需要风控的企业,需要检测手机是否Root。方法包括检查Magisk App的包名、使用专业安全产品。专业安全产品如顶象设备指纹和业务安全感知防御平台,能够实时识别Root风险,精准识别模拟器、Root、越狱等风险行为,并有效防控各类人脸识别系统风险。同时,文章提到Hook技术的攻防对抗,指出Root并非Hook操作的必要条件,开发者有能力修改art源码、劫持Zygote时,可以完成Rootless HOOK操作,Root的目的在于简化Hook模块管理,使开发者更专注于模块开发。
如何刷手机第三方中文TWRP的recovery
根据前几期我们了解到手机原来还有这么多新奇的东西!那么我们总说第三方recovery,那真正的第三方recovery长什么样子呢?它又有什么优点和缺点呢?怎么样才能刷入?
带着以上问题,让我们来到本期的讲解,著名的第三方Recovery——TWRP。
介绍TWRP之前,我们提一下CWM:
来源于网络
谷歌安卓系统刷机软件,英文全名为ClockworkMod Recovery,简称CWM。Android系统必备神器之一,可以非常方便地进行刷机。早期很多手机厂商未自己定制Recovery时便使用了CWM这种Recovery,大家可以参考我们之前发布的文章,自行学习。简单来说CWM进去之后就是很多行的英语,其中
Wipe data/factory reset
Wipe cache partition
Wipe Dalvik Cache
是CWM中比较常见的选项!
不能说CWM不好,起码它提供的功能比现有官方定制REC来说多很多。但同样官方有自己的想法和技术,久而久之就没多少人使用了。
接下来我们说说TWRP:
Team Win Recovery Project (TWRP):是一个 开放源码软件的定制恢复模式映像,供基于安卓的设备使用。它提供了一个支持触摸屏的界面,允许用户向第三方安装 固件和备份当前的系统。因此经常在root系统时安装,虽然它并不是root之后才能安装。
TWRP 让用户可以随时完整地备份他们的设备(包括 boot,system 等)用来恢复到任一状态,还可以使用内置的文件管理器来删除可能导致设备问题的文件,或添加一些文件来修复问题。
截至 年,TWRP 支持定制 ROM,内核,附件(例如 Google Apps,SuperSU,主题)和其他 MOD 的安装。
来源于网络
TWRP 也支持 擦除,备份,恢复和安装各种设备分区(例如 system,boot,userdata,缓存和内部存储)。 TWRP 还具有媒体传输协议,基本文件管理器,文件传输功能和终端。它也支持定制主题。
年 1 月,TWRP 团队发布了一个 Android 应用程序,该应用程序允许使用root 访问来刷入恢复; 然而,与恢复模式不同,该应用程序不是开源的。此应用程序还通过官方 TWRP 映像发送到已经或未经 root 的设备。 它默认安装为系统级别的应用程序,使其没有 root 权限无法在操作系统内移除。
来源于网络
而大家可以发现,官方的recovery就没有这么多的功能了。可为什么这么多recovery,偏偏就TWRP最著名呢?
因为很多第三方recovery都是基于TWRP定制的,改改代码和UI即可。有一个对MIUI支持比较好的第三方Recovery——橙狐rec,就是基于TWRP定制的。
所以大家应该知道了,第三方的REC功能有多么的强大,我们一定不要随意的解锁(这里指bl锁,不懂的请看之前我们科普的文章),导致手机不慎丢失或被盗走后,被他人刷入第三方REC,进而完成他人的目的!
来源于网络
网上有很多刷入TWRP的教程,感兴趣的可以去搜搜看,或者本篇文章点赞数过1k/收藏过,我们会单独出一期如何刷入TWRP的教程文章!
预告:
第一期:ROOT
第二期:面具——Magisk
通俗易懂!一文看懂手机Root的操作与防护
理解手机Root操作及防护的关键在于掌握最高权限。Root,对于手机用户、开发者甚至移动设备专家来说,意味着可以对系统进行深度定制。它赋予用户修改系统文件、控制账户和硬件等权限,最显著的益处是卸载出厂预装的不可卸载应用。
Root一词源于Linux/Unix系统,其权限概念与Linux/Unix的系统管理员相似。随着手机市场的演变,Android和iOS成为主流,尽管它们都源自开源协议,但iOS对Root权限的管理严格,常被称为“越狱”。本文主要关注Android的Root,它有漏洞利用、官方解锁和出厂模式等多种获取方式。
早期的Android Root主要通过漏洞实现,如CVE--漏洞,但Google随后加强了安全措施。在Android 4.4及以后,官方不再预装su程序,引入SElinux,限制了漏洞利用。开发者随后转向创建如supersu和Magisk这样的工具,但Google对system分区的保护限制了这一过程。如今,Magisk因其官方认可和稳定性成为最流行的Root方式。
对于普通用户,Root安卓手机需谨慎操作,如使用TWRP方法配合Magisk,但风险需自行承担。同时,检测设备是否被Root的方法包括检查包名或使用专业的安全产品,如顶象设备指纹和业务感知防御平台,它们能提供实时风险识别。
最后,虽然Hook技术和Root类似,但并非必须依赖Root,开发者可以通过修改ART源码实现Rootless HOOK。在使用这些技术时,应权衡其利弊,确保合法使用,打击非法行为,维护网络安全。