跟我把Kali Nethunter编译至任意手机

本文详细介绍了如何将Kali Nethunter编译到任意Android手机上,以Oneplus one和三星i9100g为例,涉及内核修改、CM 12.1源码编译、Kali rootfs制作以及刷机测试。通过编译自定义内核,实现手机的无线破解、HID攻击等安全功能。
摘要由CSDN通过智能技术生成

lxj616 · 2015/12/08 16:11

Kali Nethunter是一款用于安全研究的手机固件包,可以使Android设备增加“无线破解”、“HID攻击”、“伪造光驱”等的硬件功能以及metasploit等软件工具,目前官方只支持少量的Android手机,然而,通过重新编译Kali Nethunter源代码,可以将其编译到其他型号的手机上

本文将以Oneplus one为例讲解Kali Nethunter代码的移植方式,同时也在三星的i9100g手机上测试成功

0x00 Kali Nethunter架构分析


Kali Nethunter大体分为三个部分

  1. 定制过的手机内核:由于需要使用OTG外接usb网卡、用手机模拟HID设备、用手机模拟CDROM光驱,必须对手机内核进行修改添加对应的驱动,以及patch相关的代码,如果没有这一部分修改过的内核,Kali Nethunter将无法使用与硬件相关的所有功能
  2. chroot环境的文件系统:所有相关的软件程序以ARM架构的Kali为基础集成在一个文件系统内,通过linux的chroot功能可以在Android中跳转至Kali文件系统,然后把内核相关的东西mount进kali的文件系统,之后就可以在这个chroot后的Kali中执行对应的命令了
  3. 用于提供界面的APK手机APP,仅仅是作为UI界面起展示作用,实际是通过调用chroot的Kali中的命令来实现所有功能的,当然这些APP也提供了一键挂载并启用Kali chroot的功能

其中修改内核要求手机内核代码必须开源,尽管内核代码根据GPL协议必须开源,国内某些手机仍然不公开其内核源代码,这也是Kali Nethunter仅支持Oneplus、三星和谷歌Nexus的原因

0x01 准备CM 12.1源码以及相关环境


首先,我们为了简化修改内核的过程,可以直接编译一份CyanogenMod 12.1的代码,其中就包括了对应机型(Oneplus one、三星i9100g)的内核代码。而且鉴于Kali Nethunter本身采用的就是CM 12.1的ROM,为了避免其他ROM中可能存在的兼容性问题,建议选择CyanogenMod支持的手机来进行移植

你可以参考CyanogenMod官方wiki上对应机型的编译说明,这里在Ubuntu上以Oneplus和i9100g为例演示编译过程

亲测编译时硬盘至少需要100G可用空间,虚拟机至少需要4GB内存,不要问我如果达不到要求会发生什么……全是眼泪啊

在开始配置环境之前,先提示大家后文会有简化的环境配置方式,不过建议大家还是按部就班地用“官方”方式配置,因为将来CM可能会有新的版本出现,而官方配置方式可以获取到最新的代码

比如对于Oneplus one的官方示范:http://wiki.cyanogenmod.org/w/Build_for_bacon

sudo apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-7-jdk openjdk-7-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev
复制代码

然后64位系统还需要:

sudo apt-get install g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev
复制代码

如果遇到软件包不存在,可以apt-cache search一下包名,看看是不是改名字了

之后同步Android代码(代码从google上拿,该怎么访问googl

  • 6
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值