刷机教程:教你如何打造一台渗透测试手机

我们下面会给大家展示怎样打造自己的攻击测试手机,大家可以在上面跑Kali系统和AOPP(安卓开源攻击测试项目)。

简述手机刷机

1. 按照你的手机型号下载Recovery镜像

https://twrp.me/Devices

2. 将设备通过USB线连接电脑

3. 关掉设备,再引导进入Bootloader:

你需要持续按住电源键和降音键

4. 确认设备已经被电脑识别,输入下面的命令会有回显:

$ fastboot devices

5. 解锁设备:

$ fastboot oem unlock

6. 解锁后,刷Recovery镜像:

$ fastboot flash recovery <name-of-recovery-image>.img

7. 在Recovery镜像刷好后,从Bootloader引导进入Recovery:

你需要使用音量按键选中Bootloader的子选项,然后按下电源键确认该选项。

8. 滑动“Swipe to Allow Modifications”

9. 进入Recovery后,我们开始对设备进行擦除,过程如下:

Wipe > Advanced Wipe > 勾选Dalvik/ART cache,system,Cache,Data >Swipe to Wipe

10. 擦除设备后,别想着进入系统(刚刚擦除了,哪儿还有系统),我们需要按Home键回到Recovery的主屏。

11. 我们这时需要确认设备是否被电脑识别,输入下面的命令后会有回显:

$ adb devices

12. 从电脑上将我们下好的AOPP ROM的zip包推送到设备的sdcard上:

13. 在设备上点击Install,然后从/sdcard里选择AOPP ROM的zip包。

14. 选择“Swipe to Confirm Flash”

15. 安装完成后,点击Reboot System

打造测试手机的过程

下载源和事前准备

下载Requirements:

https://source.android.com/source/requirements.html

下载源:

https://source.android.com/source/downloading.html

为build系统创建相应的目录,:

$ mkdir <WORKING_DIR>$ cd <WORKING_DIR>

通过源初始化一个本地repository,命令如下:

$ repo init -u git@github.com:aopp/android_platform.git-b px-0.1

同步repository

$ repo sync

Build系统

在下面的指令集里,需要读者自行替换<device-codename>。

1. build系统的参考资料

https://source.android.com/source/building.html

2. 输入下面的命令,初始化build环境:

$ .build/envsetup.sh

3. 为你的设备准备build环境(下载设备树和依赖)

$ breakfast <device-codename>

4. 将一个跑着AOPP/AOSP ROM的设备通过USB连接到电脑上

5. 确认已经引导进入系统,且咱们的设备已经被电脑识别后,输入下面的命令会有回显:

$ adb devices

6. 进入设备目录:

$ cd <WORKING_DIR>/device/<vendor>/<device-codename>/

7. 在设备上解压二进制文件:

$ ./extract-files.sh

8. 回到build系统的root目录:

$ croot

9. 开始在设备上进行build

$ brunch <device-name>

10. 一旦完成后,你可以在out/目录看见ROM的zip包

$ cd /out/target/product/<device-codename>

11. 刷好的ROM的zip包(build的成果)会被输出到out/目录:

aopp-0.1-<build-date>-UNOFFICIAL-<device-codename>.zip

刷机

1.为你的系统下载相应的命令行工具:

https://developer.android.com/studio/index.html#downloads

2.为你的设备下载AOPP ROM:

https://wiki.pwnieexpress.com/index.php/Official_devices

3.为你的设备下载Recovery镜像:

https://twrp.me/Devices

4.设备使用USB设备连接电脑

5.关掉设备,重新引导进入Bootloader:

你需要持续按住电源键和降音键

6.确认设备被电脑识别,输入下面的命令会列出设备名:

$ fastboot devices

7.解锁设备:

$ fastboot oem unlock

8.解锁后,我们就可以开始刷Recovery镜像了:

$ fastboot flash recovery<name-of-recovery-image>.img

9.在Recovery镜像刷好后,从Bootloader引导进入Recovery:

你需要使用音量按键选中Bootloader的子选项,然后按下电源键确认该选项

10.确认后,滑动“Swipe to Allow Modifications”

11. 进入Recovery后,我们开始对设备进行擦除,过程如下:

Wipe > Advanced Wipe > 勾选Dalvik/ART cache,system,Cache,Data >Swipe to Wipe

12.擦除设备后,别想着进入系统(刚刚擦除了,哪儿还有系统),我们需要按Home键回到Recovery的主屏。

13. 我们这时需要确认设备是否能够被电脑识别,输入下面的命令后会列出设备名:

$ adb devices

14.从电脑上将我们下好的AOPP ROM的zip包推到设备的sdcard上:

$ adb push <name-of-rom-zip>.zip /sdcard/

15.在设备上点击Install,然后从/sdcard里选择AOPP ROM的zip包。

16.滑动“Swipe to Confirm Flash”

17.从Chainfire下载SuperSU:

https://download.chainfire.eu/969/SuperSU/UPDATE-SuperSU-v2.76-20160630161323.zip

18.将SuperSU的zip包推送到/sdcard/:

19.安装完毕后,重启系统

20.Done! Enjoy!

* 参考来源:PE,FB小编dawner编译,转载请注明来自FreeBuf(FreeBuf.COM)

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2016-12-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java职业技术分享

成为架构师不可错过的Java架构学习笔记

12000
来自专栏散尽浮华

centos7下FFmpeg环境部署记录

随着视频在网站上的应用越来越多,越来越多的网站服务器需要支持视频转码,视频压缩,FFmpeg是目前最好用的网站服务器后台转码程序,应用最多。FFmpeg是一套可...

1.2K70
来自专栏SDNLAB

OpenStack而生的SDN控制器——OVN

一、为什么OVN会出现? OpenvSwitch (OVS) 以其丰富的功能和相对优秀的性能,成为OpenStack中广泛使用的虚拟交换机。下图是2年前的一个调...

64950
来自专栏散尽浮华

云计算和虚拟机基础梳理

云计算介绍 云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池,(资源包括网络、服务器、存储、应用软件、服务...

83960
来自专栏大魏分享(微信公众号:david-share)

为微服务引入Istio服务网格(上)

2.3K20
来自专栏技术翻译

推荐|50+有用的Kubernetes工具

在短短两年的时间里,Kubernetes在集装箱管道战场上给其竞争对手带来了浪费。令人遗憾的是,Docker Swarm自2016年以来并未成为主要的竞争者,并...

37300
来自专栏DevOps时代的专栏

60 个最棒的 DevOps 开源工具

你喜欢免费的东西吗?获得开发者社区支持的自动化,开源的工具是大家梦寐以求的。这里列举了 60+ 款最棒的开源工具,可以帮助你很好的实行 DevOps。

77130
来自专栏DevOps时代的专栏

这些工具都没用过?还谈什么 DevOps

导语: DevOps 越来越流行,越来越成为加快产品研发速度、提升团队效率的有效工具。现在,在开发、测试、部署、交付、维护以及监控分析等工作中,有越来越多的开源...

425150
来自专栏EAWorld

Flannel+K8s容器网络通信实践

? 亲爱的各位朋友,大家好! 今天很高兴可以和大家分享我们普元云平台SEM使用kubernetes时,关于pod、service网络通讯的实践与大家分享。 以...

50080
来自专栏北京马哥教育

Virtualization-Cpu/Memory/IO虚拟化详解

一、定义 虚拟化是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以...

24560

扫码关注云+社区

领取腾讯云代金券