一加6刷入kali nethunter
Installing Kali NetHunter On the OnePlus 6
准备工具:
adb: https://jingyan.baidu.com/article/22fe7cedf67e353002617f25.html
twrp: https://www.twrp.me/(需要下载相同版本的.img与.zip)
magisk: https://github.com/topjohnwu/Magisk
kali nethunter镜像: https://www.kali.org/get-kali/#kali-mobile
OnePlus6 Oxygen线刷包(写这篇blog的时候kali要求的Oxygen版本是10)
payload_dumper: https://github.com/vm03/payload_dumper
(一加6-线刷救砖工具(以备不时之需): http://www.oneplusbbs.com/thread-4446250-1.html)
(建议准备个梯子)
ps: 写这篇blog时设备已不在身边,所以图片比较少,等日后想起来了再补上吧
刷入第三方Recovery: twrp
twrp下载
进到twrp官网,右上角有Devices,进去找到自己的设备,建议选择美版的下载

要下载.img与.zip两个文件

oneplus打开usb调试
进入到oneplus关于手机页面,连续点击版本号,根据提示进入到开发者模式
找到开发者选项,打开里面的"OEM解锁","高级重启"与"USB调试",此时注意设备上若有弹窗要选允许USB调试
刷入twrp
可先把需要的包全部保存到手机设备中,如果忘记了某个包后续可使用adb push 本机路径 目标路径传到设备上,这里先把后续需要用到的包列出来
twrp_install.zip
Oxygen10.zip (Oxygen线刷包)
nethunter.zip (nethunter镜像)
设备与电脑连接,adb devices查看有没有连接上设备,使用adb reboot fastboot进入到fastboot模式
fastboot flash boot twrp.img刷入boot分区,按锁屏键确定启动,将会看到twrp的启动画面
解锁,点击安装,刷入twrp_installer.zip完成twrp固化,但要注意每次刷入新的包时都要重新刷一遍twrp_installer.zip防止其被官方recovery覆盖。
刷入Oxygen10
进入twrp,点击清除,完成双清(或者点高级清除勾选前四个,四清)
点击安装,刷入Oxygen10(如果当前卡槽刷入失败,可以尝试切换到另一个卡槽再次尝试刷入)
关于刷入的卡槽(即oneplus6中的A/B分区):若当前是在A分区(即A分区为活动分区),在刷入Oxygen时会将Oxygen刷入到非活动分区即B分区,而刷入成功后要记得在重启中将当前活动分区切换到B分区再重启进入到系统(进入系统是进入到当前活动分区中的系统),否则会提示当前分区未安装系统,而在后面安装nethunter时,会将nethunter刷入到当前的活动分区,所以在刷入完nethunter后无需切换分区,直接启动进入系统即可
再次刷入twrp installer
点击安装,再次刷入twrp_installer.zip,防止twrp被覆盖
进入Oxygen系统,但切记不要联网
进入Oxygen10,但在初始化过程中切记不要联网,否则可能会卡谷歌验证,等初始化结束后再联网应该就没有大问题了。
root准备
提取boot.img
将刷入的Oxygen系统的线刷包解压,找到里面的payload.bin文件
使用payload_dumper对payload.bin进行提取(python payload_dumper payload.bin,执行成功后会在payload_dumper文件夹下找到output文件夹,里面即是提取出的文件),找到提取出的boot.img
使用magisk patch boot.img
安装magisk app
将前面提取出来的boot.img导入到设备中
使用magisk patch boot.img(即下图的"安装"),并将得到的magisk_patched-****.img下载到电脑上(日志中会显示文件路径)

刷入nethunter镜像并root
我选择的是kali官网提供的nethunter镜像包(才不想去重新编译改编译bug)
刷入nethunter
切记,刷nethunter时不要清除/data下的数据(建议不清除任何数据),刷nethunter时会检测你data下是否有数据,如果你/data下没有数据会导致刷入失败(也就是让你先进入系统,完成初始化操作后再刷入nethunter)
重启进入到Recovery模式,即进入到twrp中
刷入nethunter.zip
刷入成功后暂不要进入系统,直接进行root
进行root
在twrp中依次选择重启,进入到fastboot模式(有的也叫刷机模式?)
当设备进入了fastboot模式后
电脑上输入fastboot flash boot magisk_patched-****.img刷入magisk patch的boot分区
按下锁屏键确认
没有意外的话将会看到启动画面了(将会看到nethunter帅气的开机画面)
进入到系统后电脑上输入adb shell,在oneplus的命令行模式下输入su赋予root权限,在设备的弹窗上选择允许
至此,root完成
禁用oneplus系统更新
进入系统后应该就可以找到nethunter程序了,进去后点击kali Chroot Manager启动Kali Linux chroot

完成后在下面的Kali Services中把ssh服务打开(我这里勾选了开机自启),这样就可以连接到kali的命令行了(虽然后面好像用不到)

打开NetHunter终端,选择ANDROID进入Android终端,输入su -c pm disable com.oneplus.opbackup并执行,禁用oneplus的自动更新
Have Fun
随后nethunter还需进行一些初始化操作,打开nethunter程序随便点点熟悉下操作就ok了
个人一些微不足道的理解
后续如果要进行hacking操作的话应该是主要在NetHunter终端中进行的
NetHunter KeX应该是一个类似于VNC client的程序,可连接到本设备的kali上,如要使用首先要在NetHunter中打开KeX Manager,先SETUP LOCAL SERVER再START SERVER,随后通过NetHunter KeX即可连接到本地上的kali
F-Droid应该是一个类似于app store的程序,里面可以安装和更新其他的nethunter 工具(app)
questions
Required key not available
打开kali的terminal时我这里会出现一些问题,输入命令显示 Required key not available,在kali的论坛上找到了一种解决方案,但不确定是否会影响后续使用。具体就是找到/etc/pam.d/su-l文件,将其中的session optional pam_keyinit.so force revoke注释掉。
ps: 若进不去kali的terminal(闪退)请检查下nethunter中的ssh服务有没有开启
twrp被官方的recovery覆盖
成功刷入nethunter并启动后发现recovery变成了官方的recovery,尝试过再次刷入twrp_installer,但是刷入后无法开机,不知为何(可能是个人操作问题)
关于A/B分区的问题
A/B分区理解的不透彻,A/B分区似乎是在系统进行更新时会使用到的一种机制,若A分区更新失败可启动B分区,可以实现类似于回滚的操作,好像也可以利用这个机制安装双系统
Reference
http://www.oneplusbbs.com/thread-4197303-1-authorid-1125704.html
https://www.kali.org/docs/nethunter/installing-nethunter-on-the-oneplus-7/
https://www.bilibili.com/read/cv3655689/
https://forums.kali.org/showthread.php?48217-SSH-Bash-Required-key-not-available
一加6刷入kali nethunter的更多相关文章
- OnePlus One(一加1)刷机Kali Nethunter完整教程
设备信息: 设备名称:OnePlus One(一加1) OS:ColorOS 1.2 设备型号:A0001 目标: 在OnePlus One(一加1)上将 ColorOS 1.2 刷机为 Kali N ...
- 一加手机刷入第三方Rec
首先阐述一下刷机的整体流程: 备份数据(可选):短信.联系人.通话记录.图片.应用数据的云端同步. 解锁 刷入第三方Recovery(简称Rec). 进入第三方Rec,刷第三方ROM. 刷机成功 解锁 ...
- KaliLinuxNetHunter教程刷入第三方Recovery与开始刷机
KaliLinuxNetHunter教程刷入第三方Recovery与开始刷机 2.刷入第三方Recovery(即TWRP) TWRP(TeamWin Recovery Project)是一款XDA大神 ...
- Kali Linux NetHunter教程Kali NetHunter支持的设备和ROMs
Kali Linux NetHunter教程Kali NetHunter支持的设备和ROMs NetHunter是一个基于Kali Linux为Nexus设备构建的Android渗透测试平台,其中包括 ...
- one plus 1(一加1)刷 kali nethunter 教程
刚刚入手的一加1,刷成了h2os再进行的本次刷机. 用到以下资源: 链接:http://pan.baidu.com/s/1o7S0xzs 密码:2gvm 好了,开始正题,如果你的系统不是H2OS建议先 ...
- 极路由1s,固件需要刷入RipOS系统的加40块
极路由1s,固件需要刷入RipOS系统的加40块,集成wifidog功能,wifi广告路由器的理想选择功能. 经过测试,无线性能稳定,无线可带32个手机客户端. 具体配置: 7620CPU ,主频58 ...
- 一加5安卓P刷入twrp的recovery
本文介绍的方法属于普适性的一般方法,比网上的各种工具箱会繁琐.但是工具箱不一定一直会更新(之前一加论坛的刷机工具箱已经停止更新了,估计是作者不用一加5了吧,毕竟已经好几年的手机了).并且如果你手机更新 ...
- 打造“黑客“手机--Kali Nethunter
从三月份开始,继续更新技术文章.一个月没有更新技术文章了,这一个月有一部分时间是在休息,另一部分时间是在学习汇编和操作系统,沉淀底层和逆向方面的技术. 今年年初,为了玩一下 kali NetHunte ...
- 杂牌机搞机之旅(二)————移植TWRP第三方Recovery并刷入
原本想把杂牌机作为android破解和开发的测试机,破解的话肯定是安装框架的嘛,毕竟有些是要涉及到脱壳 . 但是,我尝试安装xposed的时候,手机卡在了开机界面,也就是magisk出现了错误,如果想 ...
随机推荐
- Sentry 企业级数据安全解决方案 - Relay 运行模式
内容整理自官方开发文档 Relay 可以在几种主要模式之一下运行,如果您正在配置 Relay server 而不是使用默认设置,那么事先了解这些模式至关重要. 模式存储在配置文件中,该文件包含 rel ...
- CSS基础 overflow 内容溢出部分显示效果
属性:overflow 值 作用 visible 默认,内容溢出部分可见 hidden 内容溢出部分不可见 scroll 内容有无溢出,都有滚动条 auto 有内容溢出,自动显示滚动条
- python 根据传进来的参数,动态拼接sql
根据传进来的参数,动态拼接sql,可用于实现一个方法,有些字段不确定,又用到的情况,如查询,三个查询条件,有的时候只用到一个查询条件,其他用不到则不需要拼接 def show_runjob_detai ...
- 从Base64编码转换为图片文件
package luckyclient.utils;import java.io.FileInputStream;import java.io.FileOutputStream;import java ...
- 关于APP设计规范和一些图层命名
首先,本人大学计算机专业出身,学过编程,工作的时候做过 产品经理,设计师,前端工程师,对工作的流程都有一些见解. 现在主攻前端工程师,做Web APP.今天收到设计师的设计稿,一看图层分类,这让我感觉 ...
- Java 集合详解 | 一篇文章解决Java 三大集合
更好阅读体验:Java 集合详解 | 一篇文章搞定Java 三大集合 好看的皮囊像是一个个容器,有趣的灵魂像是容器里的数据.接下来讲解Java集合数据容器. 文章篇幅有点长,还请耐心阅读.如只是为了解 ...
- 【刷题-LeetCode】307. Range Sum Query - Mutable
Range Sum Query - Mutable Given an integer array nums, find the sum of the elements between indices ...
- 学习鸟哥linux私房菜--安装centos5.6(u盘安装,中文乱码)
题头为"学习鸟哥Linux私房菜"的内容,均为博主在看鸟哥的Linux私房菜第三版的学习经历收获.以下正文: 鸟哥第一部分讲Linux规则与安装,看到第四章正式开始讲实际安装,于是 ...
- 第02讲:Flink 入门程序 WordCount 和 SQL 实现
我们右键运行时相当于在本地启动了一个单机版本.生产中都是集群环境,并且是高可用的,生产上提交任务需要用到flink run 命令,指定必要的参数. 本课时我们主要介绍 Flink 的入门程序以及 SQ ...
- Servlet三种创建方式
直接实现 Servlet 接口不太方便,所以 Servlet 又内置了两个 Servlet 接口的实现类(抽象类),分别为 GenericServlet 和 HttpServlet,因此,创建 Ser ...