前言

作为一个软件逆向分析师,拥有一台干净纯粹的手机,是一件开心事情。 对于拥有Google Nexus系列机器的我, 编译Android源码并刷入机器中,一件振奋人心的事情,我们今天就来带大家一块来刷个机,顺便把手机Root一下 。

Android手机ROM分区

在刷机之前先给大家介绍一下andriod手机的rom分区,有三个区,分别是:
1.bootloader分区,存储bootloader代码。bootloader的作用是安装卸载启动system或者recovery分区的镜像
2. system分区,用于存储android系统镜像;
3. recovery分区,用于存储recovery镜像,(recovery镜像的作用就是用于安装卸载system分区的镜像)。

当手机开机上电后,首先启动bootloader分区的代码,启动Bootloder, 而bootloader默认情况下是启动System分析的镜像的,对于Android手机,我们常常将Android系统镜像存放在System分析。
手机刷机有两种方式: 一种是卡刷,就是需要将卡刷包Push到手机中,一种是线刷,通过USB线进行刷机。

线刷原理:
在bootloader下,使用fastboot 命令对system分区进行更新Android系统镜像

卡刷原理是:首先在bootloader 模式下安装合适本设备对应的recovery镜像,然后启动recovery来更新system分区的Android镜像。

文章相关资源:
链接:https://pan.baidu.com/s/1WZ4uUFbwYhfnMmjpFwQyzQ 密码:v4g0

刷机

  1. nexus5 手机一台
  2. 自己编译的android系统包(下次讲解Android源码编译)
  3. SuoerSu线刷包(用于root使用)

刷机过程

第一步,安装一个适配nexus5 的recovery镜像https://twrp.me/lg/lgnexus5.html。这里的镜像是一个第三方开发的recovery镜像,灰常好用!
让手机进入bootloader模式,有两种方法进入:
1,在关机的情况下,按开机键+音量减键;

默认情况下是recovery分区是没有镜像的,此时我们需要刷一个镜像进去。
fast boot flash recovery 路径

bogon:~ py$ fastboot flash recovery  ‘recovery镜像路径’


看到finished就表示recovery刷入成功了。
通过音量上下键找到recovery mode,然后按开机键进入,如下:

现在需要在recovery模式下更新Android system镜像,此刻我们还没有将镜像放入sd卡里,所以我们需要将android镜像包push 到sd卡,如下命令:

bogon:~ py$ adb push /Users/py/iRevserse/刷机/aosp_hammerhead-ota-eng.tux.zip  /sdcard

看到下图就算push成功了。

此刻 系统镜像已经在sd卡内,只需使用recovery镜像的安装功能

点安装android system镜像,如下:

成功后,相同操作安装SuperSu用于root!

完成安装后,点击reboot system 重启。 就完成了刷机和手机root!!

Android逆向之源码刷机及Root相关推荐

  1. Android 源码刷机版本号、支持设备对照表(AOSP )

    Android 源码刷机版本号.支持设备对照表(AOSP ) Android 官方地址:https://source.android.com/setup/start/build-numbers#sou ...

  2. 对google手机编译android源码刷机

    一.简介 最近因为修改系统源码层某功能的代码,对多个版本的系统源码进行了编译,并刷到手机中.如果是单纯研究Android源码或Android手机系统层的某个功能,以google原生Android手机和 ...

  3. 逆向环境准备(刷机与root)

    刷机 在安卓逆向工程中,经常会碰到一些app无法在模拟器中正常运行,为了避免麻烦,一台测试机是必不可少的.这里推荐"Google亲儿子"Nexus系列和Pixel系列的测试机.笔者 ...

  4. 编译android源码刷机到Nexus5x

    基础环境 1.系统:ubuntu16.04 2.安卓版本: android-8.1.0_r1 3.openjdk: 1.8 4.python版本: 2.7(系统默认) 1.设置ubuntu镜像源 /e ...

  5. Ubuntu18.04编译Android7.1.2源码(刷机Pixel)

    Pixel系列Android Beta版本ROM下载 1.安装所需工具 # apt-get install -y openjdk-8-jdk openjdk-8-jre git flex bison ...

  6. 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/fuchaosz/article/details/52473660 1 前言 经过一周的奋战,终于从谷 ...

  7. [Android编译(二)] 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机

    1 前言 经过一周的奋战,终于从谷歌官网上下载最新的Android 6.0.1_r62源码,编译成功,并成功的刷入nexus6p,接着root完毕,现写下这篇博客记录一下实践过程. 2 简介 自己下载 ...

  8. android注入 定位,[原创]修改源码实现全局(无需root)注入躲开注入检测

    看这篇文章需要的技能 1.会编译android源码(如果你不愿意编译源码,还有另外一种办法,下面我会提供) 2.会使用substrate或者xposed 以上2个网上资料很多我就不啰嗦了 一.市面上目 ...

  9. PackageManagerService Android 8.1 源码解读 02

    接上文:PackageManagerService Android 8.1 源码解读 01 d.第三步细节:PKMS.main(),main函数主要工作: [检查]Package编译相关系统属性 [调 ...

最新文章

  1. Thread Dump 和Java应用诊断(转)
  2. 802.1x------2
  3. pandas布尔索引
  4. 快速掌握mysql,可备用查找相关用法(吐血整理)
  5. NLTK找出最频繁的名词标记的程序(代码详细解释)
  6. iisapp 查看PID所对应的IIS应用程序池及详细介绍
  7. win10系统电脑wifi图标不见了的开启方法
  8. ASP.NET MVC 3 Validation - 正则表达式验证RegularExpressionAttribute之日期验证
  9. 华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布 | 极客头条...
  10. new Option() 创建一个option标签
  11. sqldr load 以及extract data 的中文问题--
  12. 用计算机怎么按四分之三次方等于多少,八十一分之十六的负四分之三次方怎么算,要具体过程,答案是多少?...
  13. Error: ImageIO: PNG invalid PNG file: iDOT doesn't point to valid IDAT chunk 解决
  14. caffe从秃头到入门 /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master
  15. 网站被劫持,打开一个网站会跳到另一个怎么办,直接输入网址也是这样。怎么办呢?
  16. 【学习笔记】网络安全基础知识总结
  17. 探寻Beacon技术
  18. 《Python+Kivy(App开发)从入门到实践》自学笔记:简单UX部件——ToggleButton切换按钮
  19. 普特英语听力——前言
  20. 小型数控雕刻机制作Arduino_Arduino 3D打印机,兼具CNC雕刻机功能 (一)机械设计、组装...

热门文章

  1. 【如何开发小程序?】如何快速开发一个小程序
  2. mysql 嵌套查询性能_MySQL数据库之嵌套查询与连接查询的性能详解
  3. js  计算是今天多少周
  4. 世界的尽头是铁岭,互联网的尽头是它
  5. PBR 基础知识干货总结
  6. ppt讲解中的过渡_PPT过渡页其实大有学问!如何让你的PPT过渡页更加精美?
  7. java8的LocalDate、LocalDateTime和之前的Date、Calendar
  8. 002_2 gtsam/unstable/examples/ISAM2_SmartFactorStereo_IMU.cpp
  9. vite打包快几款基于vue3和vite的开箱即用的中后台管理模版
  10. 不管你怎么赶,人生中总有抓不住的,享受当下吧