通过修改rom包永久获取root权限和所有应用调试功能ro.debuggable

   日期:2024-12-27    作者:tiepibaowen 移动:http://3jjewl.riyuangf.com/mobile/quote/67721.html

准备工具

通过修改rom包永久获取root权限和所有应用调试功能ro.debuggable

1. adb

2. bootimg


部分安卓机型获取root权限比较难,刷supersu卡刷包和各种刷机工具都不见效

作为一名移动安全工程师,经常需要对各种APK进行调试,通常调试APK需要满足的条件是apk的配置文件androidmanifest.xml中android:debuggable="true"或者安卓default.prop文件中的ro.debuggable=1。以往,我们都是先将apk反编译,然后手动修改Androidmanifest.xml中的android:debuggable然后重新打包签名但是随着梆梆、乐固、360等各种“壳”的出现,手动修改Androidmanifest.xml再重打包的方式已经行不通了。

特别是SELinux机制加入安卓以后,我们想要获取所需要的权限变得更加困难。现在有一种一劳永逸的方法,如下。

在使用adb连接手机的情况下,可以看到手机根目录下有一个default.prop文件

直接使用cat default.prop命令查看内容可以看到ro.secure、ro.adb.secure和ro.debuggable等属性

正常情况下,该文件中的ro.debuggable的值应该是0,表示不可调试。我已经手动修改为1。ro.secure表示root权限,如果为0则表示启用root权限,1则相反;ro.adb.secure表示adb的root权限,同样0表示启用adb的root权限,1则相反。

----------------------------------------------

下面开始正式介绍修改这些值的方法。

首先我们看看安卓系统rom包的结构

安卓系统rom包是一个压缩文件,我们可以直接用winrar、7z等工具打开。如上图,我们需要改动的就是boot.img,我们将其解压出来。

修改boot.img需要先将其完全解开,解包boot.img的工具网上有很多,可自行搜索。再此处我推荐使用bootimg。此工具比较方便且文件很小。有exe、java、python等各种版本。我使用的是python版本,其他版本使用方法基本相同

为了方便,将bootimg.py与要修改的boot.img放在同一目录下,首先使用

将boot.img解开,可以获得 kernel 和 ramdisk.gz。 
 

此时,我们还看不到需要修改的default.prop,要修改,我们还要继续解开ramdisk.gz。使用命令

现在,文件夹中出现了initrd,我们需要的default.prop就在这里面了。 
 

进入initrd目录,使用notepad、sublime等工具直接修改,比如我需要开启所有应用的调试权限,我将default.prop中的ro.debuggable修改成了1。如果你是需要开启root权限,则将ro.secure的值改为0,要永久开启adb的root权限,可将ro.adb.secure修改为0。。。各个参数都可以按照自己的需求修改。(注意只修改自己需要的参数,不要随意更改,否则可能造成手机无法开机

修改完成后,开始重新打包,我们先对ramdisk.gz打包,然后对整个boot.img重打包。命令分别如下

打包完成后,会出现一个boot_repack.img,这就是重新打包完成的boot.img。 
 

到这儿,boot.img已经修改完成,接下来有多种方式将其刷入我们的手机。

1. 可以重新将文件名改回boot.img打包到系统rom包中,重新签名,刷入整个rom包。

2.使用fastboot工具刷入手机。

3.使用第三方recovery工具比如TWRP等,手动刷入此boot_repack.img。

重启之后,我们使用adb shell命令查看,可看到,此属性已经被永久修改,不需要每次重启都修改一遍。


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号