kakkle-crack/Pentesting-Pal
GitHub: kakkle-crack/Pentesting-Pal
一个基于 Kotlin/Android 的模块化渗透测试套件,将手机变为集网络扫描、Web 目录枚举和漏洞验证于一体的便携侦察设备。
Stars: 2 | Forks: 1
# Pentesting Pal
Pentesting Pal 是一个模块化的 Kotlin/Android 侦察与漏洞利用套件,可将 Android 手机变成一台便携的、多功能的渗透测试设备。它超越了简单的网络扫描,目前采用完整的 Navigation Drawer 架构,内置了网络扫描器、Web 端点 Fuzzer 和交互式漏洞利用库。
## 模块
### 1) 网络扫描器模块
- 用于局域网发现的核心侦察引擎
- 自动子网检测: 读取当前的 Wi-Fi DHCP 信息并推导出本地 CIDR 范围(例如 192.168.1.0/24)
- 主机发现: 使用 ICMP/ARP 以及对 .1–.254 的 TCP connect-scans 执行快速发现。
- 三种扫描配置:
- Pulse Scan:对 8 个最关键的端口(21、22、53、80、443 等)进行快速的“存活检查”扫描。
- Quick Scan:对已发现的主机枚举精选的 Top-100 端口列表。
- Deep Scan:对已发现的主机枚举 Top-1000 端口列表,使用 coroutine chunking 来减少网络突发。也可针对单个 IP 进行深入探测
- 服务与 Banner 抓取: 尝试进行基本的服务识别,并抓取开放端口的 HTTP 头/服务 Banner。
### 2) Web 端点 Fuzzer 模块
- 快速、带宽优化的目录和文件枚举器。
- 上下文感知字典: 包含内置且分类的字典,涵盖常见目录、开发平台、电子商店和 IoT/设备控制面板。
- 动态扩展名 Fuzzing: 可选择自动将最常见的 25 个文件扩展名(例如 .php、.bak、.old)附加到基础词之后,以最大化覆盖率而不会使字典膨胀。
- 智能执行: 使用 HTTP HEAD 请求以节省带宽并加快扫描速度。自动解析状态码,跟踪 301/302 重定向的 Location 头,并干净利落地过滤掉失败的 404 请求。
- 无缝集成: 网络扫描器发现的 Web 目标(HTTP 80/8080,HTTPS 443/8443)会自动桥接到 Fuzzer 的自动补全下拉列表中。
-
### 3) 漏洞利用库与漏洞扫描器模块
- 主动式 Web 层漏洞审计器和 payload 启动器。
- 自动化审计: 扫描授权目标以查找常见的 Web 漏洞,包括 SQL 注入 (SQLi)、命令注入 (CMDi)、本地文件包含 (LFI)、IDOR 以及敏感信息泄露。
- 智能 SSL 旁路: 自动信任自签名证书,允许你审计内部的 HTTPS 目标(如路由器和 IoT 设备)而不会抛出握手异常。
- 交互式漏洞利用启动器: 发现漏洞后,UI 会动态解锁 payload 启动器。选择发现的漏洞,选取特定的攻击 payload(例如 ' OR 1=1 --),然后直接从应用中发起攻击。
- 智能验证:引擎会主动读取 DOM 响应以验证漏洞利用是否成功(例如,查找反射的 payload、MySQL 错误语法或 /etc/passwd 的内容),而不是盲目返回 HTML。
- 上下文 XSS 处理: 可以将 XSS payload 复制到你的 Android 剪贴板以进行手动浏览器测试,从而确认基于 DOM 攻击的上下文性质。
### 4) HTTP 代理模块
- 开发中。
## 核心功能与易用性
- 模块化架构: 基于单宿主 DrawerLayout 系统构建,允许在工具之间无缝切换,同时保持后台操作继续运行。
- 情报共享: 轻量级的桥接 可在工具之间传递上下文。扫描器中发现的 IP 会填充到 Fuzzer 中,而 Fuzzer 的目标可以被推送到漏洞利用库。
- 后台稳定性: 利用 Android WakeLocks 和 Kotlin Coroutines 确保长时间运行的 Deep Scans 或 Fuzzing 任务在屏幕变暗时不会中断。
- 报告与导出: 生成纯文本侦察报告,可通过 Android 原生的分享面板 导送导出。
## 低开销行为
- 带宽优化: Fuzzing 默认使用 HEAD 请求,以将流量占用降至最低。
- 限速与分块: Deep Scans 通过带有微小延迟的异步分块处理端口,以避免使路由器不堪重负或触发基本速率限制。
## 限制 / 假设
- 主要为局域网 设计(扫描默认假设为 /24 子网)
- Android 沙盒环境阻止了原始套接字的创建(如 SYN 隐蔽扫描);所有扫描均为标准的 TCP Connect 扫描。
- 服务识别基于启发式方法,可能会出现错误或不完整。
- 由于移动端执行限制(无本地 Linux shell 访问权限),漏洞扫描严格限于 Web/HTTP 层。
## 推荐用途
将 Pentesting Pal 作为强大的、随身的初次侦察和分类工具。它擅长识别攻击面、发现暴露的管理面板,并直接从你的口袋中测试初始 Web payload。对于高度复杂的漏洞利用、脚本编写或逆向工程,请将你的发现转移至专用的测试机上进行。
## 截图




标签:Android, ARP, ATT&CK模拟, Banner抓取, DHCP, DInvoke, DSL, HTTP HEAD请求, ICMP, Kotlin, Qt框架, Web模糊测试, 云存储安全, 侦察套件, 便携式渗透设备, 反取证, 多级导航抽屉, 字典爆破, 安全评估, 并发扫描, 插件系统, 数据统计, 无线网络安全, 服务识别, 漏洞利用库, 白帽子工具, 目录枚举, 目录枚举, 移动安全, 移动安全, 端口扫描, 网络安全, 网络安全审计, 网络扫描, 隐私保护