前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >手动给boot.img添加init.d支持和内核ROOT

手动给boot.img添加init.d支持和内核ROOT

作者头像
用户1127987
发布于 2018-06-05 06:27:33
发布于 2018-06-05 06:27:33
3.3K0
举报
文章被收录于专栏:deed博客deed博客
  • 2
  • 3,635 views
  • A+

所属分类:技术

-----------------------------------------------------内核添加init.d------------------------------------------------------------------------

1.使用bootimg.exe解包内核(文章末尾提供下载链接,bootimg.exe需要和boot.img在同一目录下,然后打开系统cmd.exe,使用cd命令到达你放置bootimg.exe和boot.img的文件夹下,然后运行解包命令bootimg --unpack-bootimg)

2.进入解包目录(即你放置bootimg.exe和boot.img的文件夹了里),找到initrd文件夹进入。

3.在initrd文件夹找到inid.rc文件用notetap++打开,打开后搜索class_start core,在该代码上面另起一行添加如下代码,

4.在最底加入如下代码

  1. service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
  2. disabled
  3. oneshot

使用 bootimg.exe 打包内核 命令:bootimg.exe –-repack-bootimg

打包完 boot-new.img 为修改好滴内核  boot-old.img为旧的内核

-----------------------------------------------------内核ROOT------------------------------------------------------------------------

解包内核里面有个default.prop,用notepad++打开default.prop如下:

  1. ro.secure=1
  2. ro.allow.mock.location=1
  3. ro.debuggable=1
  4. persist.service.adb.enable=1

如果ro.secure=0 就是允许我们运行adb root命令,通常内核root就是指ro.secure=0 将ro.secure=1修改成ro.secure=0,之后打包回来boot.img,这样就成功root了内核了!但是内核ROOT我们还要在 ROM里手动添加 权限控制软件和SU文件

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年2月23日1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Android boot.img的解包/修改/重打包
最近研究对了Android的boot.img的操作,将一些繁琐的东西整理了一下,发到了github:https://github.com/difcareer/BootImgTool/
用户2930595
2018/08/23
10K1
修改手机的ro.debuggable配置0x01:获取boot.img0x02:修改boot.img0x03:boot.img相关0x04:变砖后的自救
我们自己编译的源码刷机ro.debuggable就是为1,这个时候所有的进程都可以远程调试。但是自己编译的源码里面没有GooglePlay,有些应用的部分功能又依赖于GooglePlay。那怎么办呢?
用户2930595
2018/10/09
2.7K0
修改手机的ro.debuggable配置0x01:获取boot.img0x02:修改boot.img0x03:boot.img相关0x04:变砖后的自救
【Android 逆向】修改 Android 系统文件 ( default.prop 配置信息 | 修改 default.prop 配置信息文件 )
使用 cat default.prop 命令 , 查看 default.prop -> system/etc/prop.default 文件信息 ; 这是 Android 系统的默认属性 ;
韩曙亮
2023/03/29
1.8K1
【Android 逆向】修改 Android 系统文件 ( default.prop 配置信息 | 修改 default.prop 配置信息文件 )
解密所有APP运行过程中的内部逻辑
0x01前言 这年头,apk全都是加密啊,加壳啊,反调试啊,小伙伴们表示已经不能愉快的玩耍了。静态分析越来越不靠谱了,apktool、ApkIDE、jd GUI、dex2jar等已经无法满足大家的需求了。那么问题就来了,小伙伴们真正需要的是什么?好的,大家一起呐喊出你内心的欲望吧,我们的目标是——“debug apk step by step”。 0x02那些不靠谱的工具 先来说说那些不靠谱的工具,就是今天吭了我小半天的各种工具,看官上坐,待我细细道来。 2.1 IDA pro IDA pro6.6之后加入
FB客服
2018/02/05
1.9K0
解密所有APP运行过程中的内部逻辑
安卓root权限管理_root权限在哪里设置
Android系统是运行在Linux内核上的,Android与Linux分别有自己的一套严格的安全及权限机制, Android系统权限相关的内容,
全栈程序员站长
2022/11/17
14.2K0
Lichee(三) Android4.0该产品的目标文件夹,Lichee链接—extract-bsp
由《Lichee() 在sun4i_crane平台下的编译》介绍了编译lichee的基本情况,我们终于得到了编译后的结果例如以下:
全栈程序员站长
2022/01/11
6400
CVE-2016-10277在MOTO X手机上的漏洞利用实践
CVE-2016-10277是存在于摩托罗拉系列手机的bootloader高危漏洞,可以通过内核命令注入劫持手机的启动流程,加载攻击者控制的initramfs,从而达到root提权的目的。我们手上正好有一个摩托罗拉的MOTO X手机,于是参照[1]的漏洞利用过程,将CVE-2016-10277的漏洞利用过程实践了一把,复现过程还是十分曲折。 0x00 系统环境 1.手机: MOTO X(XT1581) 2.系统固件版本: 3.Android版本:5.1.1 在漏洞利用过程中需要用到手机boot.img中的a
FB客服
2018/02/28
9570
CVE-2016-10277在MOTO X手机上的漏洞利用实践
ROOT检测与绕过
  现在很多app特别是银行、政务app等在使用时,假如你的手机已经被ROOT了,就会弹框提醒你的运行环境不安全,然后某些特定功能就无法使用。在逆向过程中常常会遇到ROOT检测的问题,假如无法绕过,就很难使用Xposed和Frida等常用工具,给逆向造成很大的困难。我个人认为ROOT的检测与绕过是一种基于Pattern的对抗,检测方根据ROOT后手机的一些特征Pattern来检测ROOT,而绕过方则是根据检测方的各种检测方式来设计各种绕过方法。本文主要总结一下平时遇到过的ROOT检测方式,以及绕过的一些思路。
大A
2023/02/14
4.8K2
Appium+python自动化(二十五)- 那些让人抓耳挠腮、揪头发和掉头发的事 - 获取控件ID(超详解)
  在前边的第二十二篇文章里,已经分享了通过获取控件的坐标点来获取点击事件的所需要的点击位置,那么还有没有其他方法来获取控件点击事件所需要的点击位置呢?答案是:Yes!因为在不同的大小屏幕的手机上获取控件的坐标点,不是一样的,而是有变化的,因此在不同的手机机型上,我们可能都需要重新获取坐标点,这么操作起来,如果操作控件特别的多,那么获取控件的坐标点就会显得特别的繁琐。因此我们可以通过获取控件的ID来避免获取控件坐标点的这种弊端。   通过控件ID实现自动化脚本的运行,就性能而言,会比控件坐标的实现差一些;但是对于不同分辨率的设备都通用,不需要动态变换坐标。控件ID的获取主要是通过HierarchyViewer。下面就HierarchyViewer从打开方式和使用两方面进行讲解。
北京-宏哥
2019/08/01
2.2K0
Appium+python自动化(二十五)- 那些让人抓耳挠腮、揪头发和掉头发的事 - 获取控件ID(超详解)
smali hello
Android Studio动态调试smali源码 androidstudio动态调试smali
tea9
2022/09/08
5680
安卓6.0+关机状态下通电自动开机方案
网上能找到的几篇教程都是安卓4.4、5.0时代的方法,安卓7.0+暂未有找到分享的方案,研究两个晚上,终于研究出来这个方案,理论上通杀安卓6~10系统(2020-03-01测试一加5,安卓10 红米 note4 有效 )
怪兽
2022/10/04
2.2K0
安卓6.0+关机状态下通电自动开机方案
Linux文件系统的安全保障---Overlayroot!
`overlayroot` 是一种使用 OverlayFS 实现的功能,可将根文件系统挂载为只读,并通过一个临时的写层实现对文件系统的修改。这种方法非常适合嵌入式设备或需要保持系统文件完整性和安全性的场景。下文以 RK3568 平台为例,介绍制作 overlayroot 的详细步骤。
武汉万象奥科
2025/01/07
2060
Linux文件系统的安全保障---Overlayroot!
init进程启动过程
init进程是Android系统中用户空间的第一个进程,进程号为1,是Android系统启动的一个关键步骤,作为第一个进程,它的主要工作是创建Zygote和启动属性服务等。init进程是由多个源文件共同组成的,源码目录在system/core/init中。
八归少年
2023/11/13
5150
Nexus5 bootloader内容初探及延伸思考编译使用
在Android启动过程分析-从按下电源键到第一个用户进程[转载]中,我们知道BootLoader是在操作系统前执行的程序,有没有很好奇它到底有些啥内容呢?
用户2930595
2018/08/23
5070
Android系统启动——3init.rc解析
init.rc文件是以“块”(section)为单位服务的,,一个“块”(section)可以包含多行。“块”(section)分成两大类:一类称为"动作(action)",另一类称为“服务(service)”。
隔壁老李头
2018/08/30
5.5K0
Android系统启动——3init.rc解析
GRUB多操作系统启动程序介绍与设置使用
描述:GRUB英文全称GRand Unified Bootloader俗称引导程序是硬盘中的软件,它可以启动用户在计算机中的多个操作系统所以也叫多重启动管理器。 目前主流版本是 GRUB2,在windows中也有类似的引导程序ntloader虽然它也可以引导Linux操作系统但是比较麻烦;
全栈工程师修炼指南
2022/09/29
8.6K0
GRUB多操作系统启动程序介绍与设置使用
linux内核升级图文攻略 转
一、Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统。 设备驱动程序可以完全访问硬件。 Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载。 1. linux内核 linux操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。 一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割。 计算机的硬件,含有外围设备、处理器、内存、硬盘和其他的电子设备组成计算机的发动机。 但是没有软件来操作和控制它,自身是不能工作的。 完成这个控制工作的软件就称为操作系统,在Linux的术语中被称为“内核”,也可以称为“核心”。 Linux内核的主要模块(或组件)分以下几个部分: . 进程管理(process management)  . 定时器(timer) . 中断管理(interrupt management) . 内存管理(memory management) . 模块管理(module management) . 虚拟文件系统接口(VFS layer) . 文件系统(file system) . 设备驱动程序(device driver) . 进程间通信(inter-process communication) . 网络管理(network management . 系统启动(system init)等操作系统功能的实现。 2. linux内核版本号 Linux内核使用三种不同的版本编号方式。 . 第一种方式用于1.0版本之前(包括1.0)。   第一个版本是0.01,紧接着是0.02、0.03、0.10、0.11、0.12、0.95、0.96、0.97、0.98、0.99和之后的1.0。 . 第二种方式用于1.0之后到2.6,数字由三部分“A.B.C”,A代表主版本号,B代表次主版本号,C代表较小的末版本号。   只有在内核发生很大变化时(历史上只发生过两次,1994年的1.0,1996年的2.0),A才变化。   可以通过数字B来判断Linux是否稳定,偶数的B代表稳定版,奇数的B代表开发版。C代表一些bug修复,安全更新,新特性和驱动的次数。   以版本2.4.0为例,2代表主版本号,4代表次版本号,0代表改动较小的末版本号。   在版本号中,序号的第二位为偶数的版本表明这是一个可以使用的稳定版本,如2.2.5;   而序号的第二位为奇数的版本一般有一些新的东西加入,是个不一定很稳定的测试版本,如2.3.1。   这样稳定版本来源于上一个测试版升级版本号,而一个稳定版本发展到完全成熟后就不再发展。 . 第三种方式从2004年2.6.0版本开始,使用一种“time-based”的方式。   3.0版本之前,是一种“A.B.C.D”的格式。   七年里,前两个数字A.B即“2.6”保持不变,C随着新版本的发布而增加,D代表一些bug修复,安全更新,添加新特性和驱动的次数。   3.0版本之后是“A.B.C”格式,B随着新版本的发布而增加,C代表一些bug修复,安全更新,新特性和驱动的次数。   第三种方式中不使用偶数代表稳定版,奇数代表开发版这样的命名方式。   举个例子:3.7.0代表的不是开发版,而是稳定版! linux内核升级时间图谱如下:
henrylee2cn
2019/04/04
3.3K0
linux内核升级图文攻略 
                                                                            转
OnePlus 7 Pro 刷KOSP教程
所需工具 PC或Mac一台 一加手机(已解锁BootLoader) USB连接线
vincentKo
2022/09/19
1.4K0
OnePlus 7 Pro 刷KOSP教程
安卓手机原生运行 ARM Ubuntu 24.04 桌面版(一)
本篇文章,聊一聊尝试让安卓手机原生运行 Ubuntu,尤其是运行官方未发布过的 ARM 架构的 Ubuntu 24.04 桌面版本。
soulteary
2024/05/11
4.7K2
安卓手机原生运行 ARM Ubuntu 24.04 桌面版(一)
HTC G14解锁S-OFF、刷机、获取ROOT权限
前期准备工作: 1、安装连接电脑的ADB 驱动,这是连接电脑必要的驱动(如果已安装过或自动安装了,可忽略!) 下载: HTCDriver3.0.0.008_x32.rar (1.7 MB) 或这个驱动:http://bbs.anshouji.com/thread-53371-1-1.html 2、获取手机的S/N码: 在手机上操作: 设置--关于手机--设备信息(设备序列号,即是我们要找的S/N码,先记下来存在一个记事本中) 我的是HT15ZV****** (共12位) 3、获取HBOOT版本号(关于HBOOT详细说明) 重启手机,直到黑屏后,快速按住 【音量-】 和 【开机电源键】,几秒后,即可进入HBOOT模式。 此时看到第二行,我的是HBOOT-1.17.0008
阳光岛主
2019/02/19
1.9K0
推荐阅读
相关推荐
Android boot.img的解包/修改/重打包
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档