admin 管理员组

文章数量: 887016

kalilinux手机/如何进行安卓渗透测试平台Kali的搭建_新手漏洞自学路线

如何进行安卓渗透测试平台Kali的搭建

本文讲解"怎么进行安卓渗透测试平台Kali的搭建",希望能够解决您遇到的有关问题,下面我们来看这篇 "怎么进行安卓渗透测试平台Kali的搭建" 文章。

使用的软硬件环境

1 x 手机一台

2 7 64 位系统

3 -HS-up

4 .

5 twrp-3.0.2-0-onyx.img

6 --armhf--full-2020.1.zip

7 -.0.6-

以 OPX 指代 x, win7 指代 7 64 位系统,twrp 指代 twrp-3.0.2-0-onyx.img

安卓刷机背景介绍

所谓刷机,就是给手机重装系统。把手机当作 PC 电脑,那么手机上的 flash 就类比于硬盘。我们把 /Linux 安装到硬盘,就类似于把 安装到 flash。

比如我们的电脑安装了 系统,硬盘分为两个分区,分别是 C 盘,D 盘。flash 也类似,分为多个分区()。把 ROM 的对应文件刷写到对应的分区,就完成刷机过程。

在刷机之前,先了解一下手机的多种状态,就样机 OPX 而言,有 4 种状态,分别是

1 状态(高通 soc 才有,通过 9008 COM 通信)

2 状态

3 状态

4 OS 状态

刷机有线刷和卡刷两类,线刷是指通过 usb 线连接手机和电脑,用工具刷 rom。 而卡刷是指把 rom 放到手机本地存储或者是 SD Card,然后通过 进行刷机。

这四种状态从启动到运行系统之间的关系如下

启动 > [ 状态] > 状态 > 状态 = OS 状态

下文的环境搭建顺序是 先通过 状态刷机, 然后在 状态刷 twrp,接下来在 状态刷 kali,最终正常启动系统

状态刷机

在刷机界常听到一句话是把手机刷成砖,所谓的刷成砖是指 状态, 状态, OS 状态全都进不去。这时对于普通用户,只能通过 状态刷机。而这个 状态是高通 soc 独有的功能。

这一步大多数情况是不需要执行的,笔者抱着学习的态度,尝试了一下通过 状态刷机。不感兴趣的读者可以直接跳过本章节。

准备工作

1 准备 OPX 手机一台,USB 线一根

2 下载 -HS-up,下载

3 下载 .,下载 1,下载 2

4 安装 -HS-up,并重启电脑

上面的 Stock ROM 我没找到官方发布渠道,这两个地址提供的 ROM 我无法保证安全性,刷机请谨慎。

开始刷 ROM

步骤 1,连接手机和电脑,按住 OPX 音量+键,并同时用 usb 线连接手机和电脑,直到 win7 设备管理器 端口(COM 和 LPT)中出现 HS-USB 9008(COM n)

步骤 2,打开 V2.0.2 工具, 这个工具在 . 中自带了,在设备类型中,能看到一个是 Com 设备,说明已经准备好了,此时,点击校验按钮,校验 Stock ROM 是否无误,显示 OK 则没问题。准备就绪后,点击 start,工具的通信状态会显示“正在下载镜像 .img”, 等待一段时间(约几分钟),等到工具显示 "正在关机...", 则表明刷机完成,此时按电源键开机,即可进入氧 OS 系统

到这里 状态刷机过程就结束了, 这时候,手机 flash 的所有分区信息都被重置刷入 Stock ROM 的文件,完全和出厂设置是一样的。

状态刷 twrp

一般来说,厂商自带的 功能都比较少,我们想刷入 twrp,让我们开始吧!

准备工作

1 准备 OPX 手机一台,USB 线一根

2 下载 adb, 安卓调试工具集,-.0.1-.zip

3 下载 twrp,twrp-3.0.2-0-onyx.img

开始刷

步骤 1 关闭手机,按住音量+和开机键,直到手机屏幕显示“ Mode”

步骤 2 通过 usb 线连接手机和电脑

步骤 3 进入 -tools 目录,执行命令

C:\Users\test\Desktop\platform-tools_r29.0.6-windows\platform-tools>fastboot.exe devices
1a7c2bf0        fastboot

有上面的打印则表明 连接正常

步骤 4 执行命令 oem -info, 查看 是否锁定,如果锁定,则需要解锁才能输入 twrp

上图表明当前为锁定状态( : false),这时输入命令 oem 尝试解锁,提示"oem is "。 说明 状态下无法解锁,好在查了资料发现进入氧 OS 系统的开发者模式,可以解锁 ,操作如下

1 重新启动设备,进入氧 OS

2 打开 -- About phone -- Build 点击 7 次,退出 About phone, 进入

3 使能 OEM

上述操作执行完成后,重新进入 mode, 再次执行 oem , 此时手机提示解锁会删除用户数据,是否继续,点击 yes,手机会重启进入氧系统,重新进入 mode,查看锁定信息,发现解锁成功了

所有一切都准备就绪了,开始刷如 twrp 吧

我把 twrp-3.0.2-0-onyx.img 放在桌面 c:\Users\test\\

执行命令 flash c:\Users\test\\twrp-3.0.2-0-onyx.img

Sending 'recovery' (14758 KB)                      OKAY [  0.583s]
Writing 'recovery'                                 OKAY [  0.277s]
Finished. Total time: 0.873s

执行命令 boot c:\Users\test\\twrp-3.0.2-0-onyx.img,让手机进入 twrp,点击 -- ,此时会提示你“ now?”,拖动图标选择安装,因为后续刷 kali 需要 root 权限。手机再次进入 界面, 状态刷 twrp 这个过程就大功告成了。

点击 -- 进入系统,配置好 WiFi,此时 消息提示 ,点击进入,选择 TWRP,等待下载完成,完成后,选择 ,接下来会启动到 安装 ,安装好后会自动重启,进入 OOS(氧 OS)

至此,twrp 已经刷写完成

状态刷 kali

上述工作完成后,就可以刷入 kali 了

准备工作

1 准备 OPX 手机一台,USB 线一根

2 下载 --armhf--full-2020.1.zip,下载 ARMhf

开始刷 kali

步骤 1 关闭手机,长按音量-键和开机键,使手机进入 模式

步骤 2 点击 -- ADB , 此时手机等待中

步骤 3 进入 -tools 目录,执行命令 adb c:\Users\test\\--armhf--full-2020.1.zip(我把 --armhf--full-2020.1.zip 放在桌面 c:\Users\test\\)

步骤 4 等待进度完成 100%

重启时,显示了酷炫的界面

接下来进入系统后,要配置网络,安装

平台 Kali 环境搭建到这里就结束了。接下来探索一下刷机的原理。

探索刷机的奥秘

无论是 状态/ 状态/ 状态,我们刷机都是用到一些工具,简单操作即可,黑客精神让我们不能停留在脚本小子的层面。

我们来看看刷机奥秘是什么

首先我们在开发者选项中使能 usb 调试,让 adb 连接手机,进入 -tools 目录,执行 adb root,发现执行失败,接着执行 adb shell,此时可以获取一个低级别 shell,通过执行命令 su,让我们获取 root shell

首先我们看看 flash 分区情况

root@OnePlus:/dev/block # ls
...
mmcblk0
mmcblk0p1
mmcblk0p10
mmcblk0p11
mmcblk0p12
mmcblk0p13
mmcblk0p14
mmcblk0p15
mmcblk0p16
mmcblk0p17
mmcblk0p18
mmcblk0p19
mmcblk0p2
mmcblk0p20
mmcblk0p21
mmcblk0p22
mmcblk0p23
mmcblk0p24
mmcblk0p25
mmcblk0p26
mmcblk0p27
mmcblk0p28
mmcblk0p29
mmcblk0p3
mmcblk0p4
mmcblk0p5
mmcblk0p6
mmcblk0p7
mmcblk0p8
mmcblk0p9

接下来我们看看每个分区对应的名称

DDR -> /dev/block/mmcblk0p4
DRIVER -> /dev/block/mmcblk0p22
LOGO -> /dev/block/mmcblk0p21
aboot -> /dev/block/mmcblk0p5
boot -> /dev/block/mmcblk0p7
cache -> /dev/block/mmcblk0p15
config -> /dev/block/mmcblk0p26
dbi -> /dev/block/mmcblk0p3
fsc -> /dev/block/mmcblk0p18
fsg -> /dev/block/mmcblk0p17
grow -> /dev/block/mmcblk0p29
misc -> /dev/block/mmcblk0p20
modem -> /dev/block/mmcblk0p1
modemst1 -> /dev/block/mmcblk0p10
modemst2 -> /dev/block/mmcblk0p11
oppodycnvbk -> /dev/block/mmcblk0p12
oppostanvbk -> /dev/block/mmcblk0p13
pad -> /dev/block/mmcblk0p9
param -> /dev/block/mmcblk0p23
persist -> /dev/block/mmcblk0p14
recovery -> /dev/block/mmcblk0p16
reserve1 -> /dev/block/mmcblk0p24
reserve2 -> /dev/block/mmcblk0p25
rpm -> /dev/block/mmcblk0p6
sbl1 -> /dev/block/mmcblk0p2
ssd -> /dev/block/mmcblk0p19
system -> /dev/block/mmcblk0p27
tz -> /dev/block/mmcblk0p8
userdata -> /dev/block/mmcblk0p28

看到这些分区标签是不是很熟悉,这些文件在 Stock ROM 大多都存在,在用工具校验时,也有这些提示

那么刷机的过程,应该就是把对应的文件写入分区的过程,而卡刷,线刷的 ROM 包不一样,也是因为不同刷机模式,对 ROM 保护的文件及内容以及打包格式是不一样的。

以 分区为例,看看是不是我们猜想的这样,验证过程是:dump 出 分区,把 dump 出的二进制和 twrp 镜像做比较,我们预期的效果是两个二进制是一样的。

查看 分区大小

root@OnePlus:/dev/block/platform/msm_sdcc.1 # cat /proc/partitions
major minor  #blocks  name
...
 179       16      16384 mmcblk0p16
...

每个 block 是 1k,那么 分区是 16MB 大小,我们把整个 分区 dump 到本地,再通过 adb 从手机中 pull 出来

root@OnePlus:/dev/block/platform/msm_sdcc.1 # dd if=/dev/block/mmcblk0p16  of=/sdcard/recv.dump bs=1024 count=16384

C:\Users\test\Desktop\platform-tools_r29.0.6-windows\platform-tools>adb.exe pull /sdcard/recv.dump .
/sdcard/recv.dump: 1 file pulled, 0 skipped. 3.9 MB/s (16777216 bytes in 4.062s)

twrp-3.0.2-0-onyx.img 大小为 14.4M,共 个字节,recv.dump 是整个分区大小为 16M,经对比发现 recv.dump 的前 字节和 twrp-3.0.2-0-onyx.img 是完全一样的。

这就印证前面的猜想,即刷机无论是刷 还是 ROM,都是把对应的二进制写入分区。

接下来我做了一个尝试,把 . 中的 .img 通过 adb 传入手机,在 adb shell 中,通过 dd 把 .img 写入 分区

dd if=/sdcard/recovery.img of=/dev/block/mmcblk0p16

关机,进入 模式,发现 twrp 被覆盖回原厂 了

我猜想线刷和卡刷的差别在于线刷( 模式和 模式)的时候没有文件系统概念,只能把文件整个写入分区,只能覆盖原有分区文件。

而卡刷不一样,卡刷是在 模式,而这个模式是精简版的 linux, 是和 os 同级的,在这个模式下,一方面可以直接和线刷一样直接写分区,也可以挂载原有 文件系统,对 文件系统做增删改,实现升级的目的。

使用 Kali

在 状态刷 kali 过程,其实是一个升级的过程,升级 kali 的 zip 包时,会对 boot img 做一些改动,安装 kali 文件系统,安装一些 apk 包,如 .apk, .apk, .apk 等,我们使用 时,应该是 到 kali 文件系统,这时候对于操作者来说,就像在 kali 环境一样。

Kali 的教程网络上非常多,本文就不班门弄斧了。

接下来我用两个例子来演示手机版的kali的使用

演示1:用 msf 创建一个

演示2:修改本机 mac 地址,然后用 nmap 做一个端口扫描

打开

演示1:用 msf 生成

演示2:修改手机 MAC 进行 Nmap 扫描

首先打开 应用,点击 MAC ,修改 mac 地址为 aa:bb:cc:dd:ee:ff

接下来打开 应用,执行命令 nmap -A 192.168.1.6(同一个网段的另一台主机)

在主机抓包发现,手机的 MAC 地址确实变成 aa:bb:cc:dd:ee:ff 了。

关于 "怎么进行安卓渗透测试平台Kali的搭建" 就介绍到这。希望大家多多支持编程宝库。

下一节:如何进行平台搭建编程技术 和 程序设计

怎样进行平台搭建:本文讲解"如何进行平台搭建",希望能够解决您遇到的有关问题,下面我们来看这篇 "如何进行平台搭建" 文章。1 前言 是一种回显机制,常用于在某些漏洞无法回显但可以 ...

~

网络安全学习,我们一起交流

~

本文标签: 漏洞 路线 新手 测试 手机