- 网络安全
- 渗透测试
【免费下载链接】android-wifi-pojie
Android使用密码本暴力破解wifi密码工具
android-wifi-pojie(WiFi 工具箱)是一款开源的 AndroidWiFi 密码字典暴力破解工具:它把密码本中的密码逐个尝试连接目标 WiFi,再通过读取网络日志判断哪个才是正确密码。上手时最常被问到的问题就是——Shizuku、Root、命令行、系统 API 四种运行模式到底选哪个?这篇指南帮你一次讲清楚。
如上图中间的设置页所示,"运行方式"是核心配置区:读取网络日志、连接 wifi、扫描 wifi、调整 wifi 状态四个下拉框决定了每个动作走哪条"权限通道"。
先搞懂:四种模式分别在"做权限"
要破解 WiFi 密码,应用需要循环执行三类动作:
- 连接 WiFi:添加目标 SSID 并带上候选密码尝试连接
- 读取网络日志:判断本次尝试是"认证失败"还是"连接成功"
- 扫描 / 调整 WiFi 状态:辅助动作,如扫描附近 WiFi、开关 WiFi
这些操作都需要shell 级别及以上的系统权限,而普通 App 直接调用会被 Android 拒绝。android-wifi-pojie 为此提供了四种权限通道:
| 模式 | 权限来源 | 实际操作 |
|---|---|---|
| 系统 API | 应用自身 API | WifiManager连接、监听系统广播 |
| 命令行 | shell 身份 | logcat读日志、cmd wifi start-scan等命令 |
| Shizuku | shell 进程(UID 2000) | 系统隐藏接口IWifiManager |
| Root(AidlService) | root 进程 | 系统隐藏接口IWifiManager+Runtime.exec |
这几种通道分别定义在 PojieSettings.kt,所有选项文案可在 strings.xml 中对照查看。
模式一:系统 API(免 Root 免 Shizuku,门槛最低)📱
不需要任何额外环境,装好即用,适合只想快速体验的新手。
- 连接方式:
[应用API] WifiManager(API 28)与[应用API] 连接到设备(API 29) - 日志方式:
[应用API] BroadcastReceiver,通过监听系统连接状态广播来判断结果,实现在 WifiBroadcastService.kt
⚠️ 代价:执行过程可能误报,广播只能反映"连接/断开"状态,无法像日志那样精确判定密码是否正确,并且不支持握手超次模式。官方 README 的原话是:"如果没有条件可以全部使用系统API模式。但是执行过程可能会误报,没有前者稳定"。
模式二:命令行(logcat / cmd wifi)⌨️
严格说命令行不是一种独立模式,而是一种能力:读取网络日志使用logcat,扫描失败时自动降级执行cmd wifi start-scan。它真正需要你决定的,是"命令用哪种身份去跑",即命令行实现方式三选一:
[Shizuku] newProcess:借道 Shizuku 的 shell 进程[AidlService] Runtime.exec:在 root 进程里执行(需开启 AIDL 服务)[root] su -c:直接以su -c提权执行
命令分发逻辑见 WifiLogcatService.kt 与 CommandRunner.kt。命令行读日志能精确解析认证失败与四次握手次数,因此支持握手超次模式,结果比系统 API 可靠得多。
模式三:Shizuku(官方首推)⭐
安装并激活 [Shizuku] 应用后(App 会自动申请权限,初始化见 AppShizuku.kt),WiFi 操作全部以shell 进程(UID 2000)身份调用系统隐藏接口IWifiManager。
亮点是它对Android 7~16 各版本的方法签名差异做了完整适配(connectToWifi、enableNetwork、forget等),实现在 ShizukuUtil.kt。
✅ README 中的官方推荐组合:全部使用 Shizuku 模式,读取网络日志使用命令行。
模式四:Root / AidlService(纯 Root 玩法)🔐
已 Root 的设备可以彻底甩开 Shizuku。App 基于 SuperUser 的RootService启动了一个运行在 root 进程的 AIDL 服务(AidlService.kt),主 App 通过 AIDL 远程调用它,以 root/system 身份执行IWifiManager接口与 shell 命令。
使用纯 Root 模式的完整步骤(来自 README):
- 在"工作模式"设置页,将所有功能选中"命令行"以及"AidlService"模式
- 在设置中勾选"启用AIDL服务"
- 重启应用生效
四种模式快速对比 📊
| 对比项 | 系统 API | 命令行 | Shizuku | Root (AidlService) |
|---|---|---|---|---|
| 系统要求 | 无(需定位权限) | 需 shell/root 环境 | Shizuku 应用 + 激活 | Root + 授权 + 开启 AIDL 服务 |
| 配置难度 | ⭐ 最简单 | ⭐⭐ | ⭐⭐ | ⭐⭐⭐ |
| 结果稳定性 | 可能误报 | 高 | 高 | 高 |
| 握手超次模式 | ❌ 不支持 | ✅ | ✅ | ✅ |
| 推荐场景 | 零配置尝鲜 | 日志判定主力 | 日常首选 | 已 Root 设备 |
如何选择:三种常见情况对号入座
- 手机已 Root→ 纯 Root 方案:日志选"命令行",其余选
AidlService,开启 AIDL 服务后重启; - 未 Root、愿意多装一个 App→Shizuku + 命令行 logcat(官方首推,稳定性最好);
- 什么都不想装→ 全"系统 API"模式,能跑但要有误报心理准备。
官方设置页也有一条贴心提示(见 SettingsPage.kt):"实现方法越往前越推荐,'请选择'为必选项,'空闲'为可选项。如果不能使用请尝试更换不同的组合"——即下拉框中排在前面的实现方式通常更稳,某个组合跑不起来时换换组合即可。
设置步骤:3 步切换运行模式 🛠️
- 打开设置 → 运行方式区域,确认四个必选项:读取网络日志、连接 wifi、扫描 wifi、调整 wifi 状态(首选项后命令行实现方式会自动出现);
- 按上表推荐组合选好模式,Shizuku 模式记得先在 Shizuku 应用中完成激活并授权;
- 纯 Root 用户额外勾选"启用AIDL服务"并重启应用。
常见问题 FAQ 💬
"空闲"和"--请选择--"有什么区别?"--请选择--"是必选项,必须指定一种实现;"空闲"表示该动作无需任何实现(如当前不需要主动扫描)。
命令行实现方式怎么选?跟着权限来源走:用 Shizuku 就选newProcess,已 Root 选su -c(或开启 AIDL 服务后选Runtime.exec)。该项未选择时程序会提示"命令行实现方式为空,请先去设置中选择"。
为什么系统 API 会误报?广播接收器只能感知SUPPLICANT_STATE_CHANGED/NETWORK_STATE_CHANGED这类粗粒度状态变化,而logcat日志能看到具体的认证失败码与四次握手次数,判断精度自然更高——这也是"系统 API 不支持握手超次模式"的根源。
相关文件索引
- 功能总览与推荐组合:README.md
- 运行方式设置页:SettingsPage.kt
- Shizuku 通道实现:ShizukuUtil.kt
- Root AIDL 服务:AidlService.kt
- 命令行执行器:CommandRunner.kt
- logcat 日志解析:WifiLogcatService.kt
- 广播监听实现:WifiBroadcastService.kt
一句话总结:能 Shizuku 就 Shizuku,已 Root 走 AidlService,实在没条件再用系统 API——选对运行模式,WiFi 密码破解的稳定性就成功了一大半。
- 网络安全
- 渗透测试
【免费下载链接】android-wifi-pojie
Android使用密码本暴力破解wifi密码工具
相关推荐
MediaGo 与 yt-dlp 怎么选:图形界面与命令行下载器的完整对比指南
MediaGo 与 yt dlp 怎么选:图形界面与命令行下载器的完整对比指南 本文基于 MediaGo 开源仓库的真实实现,对比 yt dlp 与 Media
音视频桌面应用后端G-Helper 的 Eco、Standard、Ultimate、Optimized 四种 GPU 模式怎么选?
G Helper 的 Eco、Standard、Ultimate、Optimized 四种 GPU 模式怎么选? 如果你在华硕 ROG、TUF、ProArt 等
桌面应用系统编程运行 UI UX Pro Max 设计系统命令提示找不到 Python 怎么解决?
运行 UI UX Pro Max 设计系统命令提示找不到 Python 怎么解决? 安装 UI UX Pro Max 技能后,运行设计系统生成命令时,shell
AI 技能前端设计系统
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考