hackingpal/hackingpal

GitHub: hackingpal/hackingpal

一款以 engagement 为核心流程、由 Claude AI 辅助的授权安全测试工作区,集成了 75+ 渗透测试与取证工具并自动生成报告。

Stars: 4 | Forks: 1

MyHackingPal

HackingPal

用于授权测试的 AI 辅助安全工作区。

Platforms Windows Release

**一个用于授权测试的 AI 辅助安全测试工作区。** 应用的核心是 **engagement**:一个针对单一工作项划分了范围且具名的容器。你可以创建一个(包含明确的目标和排除项),选择一个 playbook 或逐一挑选工具,而每一个结果——扫描输出、发现、屏幕截图——都会自动附加到该 engagement 中,并在最后生成报告。一个由 Claude 驱动的 copilot 会监视会话,帮助你解读结果、建议下一步检查并起草报告——但它**只提供建议,不执行操作**。每一个激活的检查都需要等待人工批准。 ``` Engagement → Targets → Playbook → Tools → Evidence → Report ``` 该产品正是围绕这一流程构建的。75+ 个独立工具——发现、侦测、Web exploit、AD、云、取证——是存在于 engagement 内部的**库**,而不是产品本身。你仍然可以直接启动任何工具(侧边栏 / ⌘K 面板的工作方式相同),但 engagement 上下文才是将工具启动器转变为安全工作区的关键。 混合的 **Electron + React + TypeScript** 前端,搭配一个内置的 **FastAPI + Python** sidecar,负责处理所有的网络/取证/exploit 逻辑。请参阅 [ROADMAP.md](ROADMAP.md) 了解发展方向,以及 [CLAUDE.md](CLAUDE.md) 获取架构 + 贡献者指南。 ``` myhackingpal/ ├── backend/ FastAPI server — one router per tool │ ├── lib/ shared libs: target_policy, web_fuzz, hids_notify, … │ ├── routers/ tool routers/endpoints, one per page or capability │ ├── main.py │ └── network-tools-backend.spec PyInstaller spec (sidecar) └── frontend/ ├── electron/ main + preload (Electron host) ├── src/ │ ├── pages/ one .tsx per sidebar entry │ ├── components/ Sidebar, ChatBubble, CommandPalette, … │ └── lib/ theme, nav, sessionLog ├── package.json └── tailwind.config.js ``` 内部 sidecar 二进制文件仍命名为 `network-tools-backend`(为了构建流水线的简便性保持不变)——只有面向用户的品牌名称是 **MyHackingPal**。 ## 安装 ### 选项 1 — 下载(推荐) 发布资产是公开的,无需登录 GitHub 即可下载。(以下链接使用 GitHub 的 `releases/latest/download/` 重定向,因此它们始终指向最新发布的版本。) | 平台 | 下载 | 说明 | |---|---|---| | macOS (Apple Silicon) | [MyHackingPal-macos-arm64.dmg](https://github.com/myhackingpal/myhackingpal/releases/latest/download/MyHackingPal-macos-arm64.dmg) · [.zip](https://github.com/myhackingpal/myhackingpal/releases/latest/download/MyHackingPal-macos-arm64.zip) | 挂载 DMG 并拖拽到 `/Applications`,然后运行下方的 Gatekeeper 绕过操作。`.zip` 是一个通过 `ditto` 打包的 `.app`,适用于无法挂载 DMG 的工具链。 | | Linux (x86_64) | [MyHackingPal-linux-x86_64.AppImage](https://github.com/myhackingpal/myhackingpal/releases/latest/download/MyHackingPal-linux-x86_64.AppImage) | `chmod +x` 然后运行 | **macOS 首次启动(构建版本未签名)。** MyHackingPal 尚未获得付费的 Apple Developer 证书,因此操作系统在首次运行时会拒绝普通的双击打开,提示“无法打开 MyHackingPal,因为 Apple 无法检查其是否包含恶意软件。”有两种解决方法: 1. 在 Finder 中 **右键点击 → 打开**(然后在对话框中点击 **打开**)。这是 Apple 官方认可的未签名应用绕过方法——该选择会被记录下来,因此随后的启动将正常工作。如果你不想接触终端,推荐使用此方法。 2. **在终端中剥离隔离属性**,然后启动: xattr -cr /Applications/MyHackingPal.app && open /Applications/MyHackingPal.app `xattr -cr` 会清除 macOS 附加到下载文件上的 `com.apple.quarantine` 标志;`open` 会启动该应用包。如果你将 `.zip` 解压到了 `/Applications` 之外的位置,请使用此方法。 一旦启动过一次,随后的启动就会恢复正常。 原生 Windows 构建可能仍会出现在 CI/发布中,但 Windows 是实验性的,并不是 v1.0 的支持目标。如果你从 Windows 工作站进行测试,请使用 Docker/远程 backend 模式。 请参阅 `docs/` 中特定平台的指南以获取更多首次启动详细信息,并查看 [docs/SIGNING.md](docs/SIGNING.md) 了解代码签名实际需要什么。已安装的应用会通过 [electron-updater](https://www.electron.build/auto-update) 自动检查更新——在 Windows 和 Linux 上这也会自动安装;在 Mac 上,操作系统会拒绝未签名的替换文件,因此可以检测到更新,但需要重新下载 DMG。 每次提交的 CI 构建产物(包括 Linux arm64 AppImage 和 `.deb`)仍可在 [Actions 标签页](https://github.com/myhackingpal/myhackingpal/actions/workflows/build.yml) 中找到。 ### 选项 2 — Docker(仅限 backend API) Docker 镜像以无头模式运行 FastAPI backend——适用于服务器部署或远程使用。容器中没有 Electron GUI;你可以通过浏览器、curl 或其他客户端通过 HTTP 与其通信。 ``` git clone https://github.com/myhackingpal/myhackingpal.git cd myhackingpal docker compose up -d curl http://127.0.0.1:8765/health # {"status":"ok","version":"0.1.0","pid":"1"} ``` compose 文件授予了 `NET_RAW` + `NET_ADMIN` 权限,以便 tcpdump 和 nmap 的 SYN/UDP/OS 扫描能够正常工作。要在 Linux 主机上的主机网络中进行 LAN 扫描,请切换到 `network_mode: host`(参见 `docker-compose.yml` 中的内联注释)。需要特定操作系统 API 的 endpoint 会返回带有提示信息的 501/503 状态码——例如,`/macos/posture` 仅限 macOS,`/linux/posture` 仅限 Linux,`/windows/posture` 仅限 Windows。 交互式 API 文档位于 `http://127.0.0.1:8765/docs`。 ### 选项 3 — 从源码构建 首先在 macOS 和 Linux 上运行。Windows 可能在开发环境下能够启动,但它是实验性的/在 v1.0 版本中暂缓支持。请参阅下方的 [开发](#development) 了解双终端开发循环,以及 [构建发布版本](#building-a-release) 了解如何生成打包的二进制文件。 ### 特定平台安装指南 - [macOS](docs/README-macos.md) — Gatekeeper、Keychain、sudoers drop-ins - [Windows](docs/README-windows.md) — 实验性/暂缓支持;SmartScreen、Credential Manager、Npcap *(非 v1.0 目标)* - [Linux](docs/README-linux.md) — capabilities、Secret Service、AppImage 说明 *(进行中)* ### 平台支持矩阵 | 支持层级 | 平台 | 状态 | 说明 | |---|---|---|---| | 第 1 层级 | macOS | 主要的 v1.0 桌面基准 | 首个精细优化的 UX 目标;Keychain、posture、WiFi、tcpdump/nmap sudoers 以及签名构建工作首先集中在这里。 | | 第 1 层级 | Linux | 主要的 v1.0 实验室/高级用户基准 | 最适合安全工具、Docker 主机、systemd/防火墙/用户审计以及 homelab 使用。 | | 第 1 层级 | Docker | 实验室/服务器/远程 backend 模式 | 适用于可信网络、VPN/Tailscale 和 homelab 部署的 backend/API 模式。请勿公开暴露。 | | 暂缓支持 | Windows | 实验性 | 在简单的地方保持干净的防护/501 响应并避免回归,但原生 Windows 的功能对等并不是 v1.0 的阻碍。 | 特定平台的路由器通过 `src/lib/nav.ts` 中每个 NavItem 上的 `platforms` 数组进行标记,并通过 `GET /system/info` 在错误的操作系统上自动隐藏。不受支持的 endpoint 应返回带有有用提示的干净的 501/503 响应,而不是崩溃。如果维护成本低廉,Windows CI 冒烟测试很有用,但 Windows 的功能对等已暂缓。 ## 首次运行 首次启动时,第一次接触特权工具(tcpdump、nmap SYN/UDP/OS)时会提示创建新的 Keychain 条目。对于 AI 助手,打开 **Settings → API keys** 并粘贴一个 Anthropic API key。Claude 是第一个支持的提供商;路线图应保持提供商层的灵活性,以便日后支持更便宜或本地模型。 ## 工具库 该库是**在 engagement 中调用的资源**,而不是产品本身。你可以从侧边栏 / ⌘K 面板启动任何工具并独立运行它(实验室模式),但是一旦你激活了一个 engagement,相同的工具就会变成“engagement 中的下一个检查项”——它们的结果会作为证据自动附加,并且 AI 在起草报告时可以提取这些信息。 以下部分与侧边栏相对应。 ### DISCOVERY | 工具 | Endpoint(s) | 功能 | | ---------------- | ---------------------------------- | ------------------------------------------------------- | | LAN Scan | `WS /ws/lan-scan` + `/lan/info` | 本地 /24 网段的 ARP 扫描 | | IP Checker | `GET /ip/{addr}`, `POST /ip/bulk` | Geo/ASN/DNSBL 查询 + 滥用报告联系信息 | | DNS Recon | `GET /dns/recon/{domain}` + WS | A/AAAA/MX/NS/TXT, 域传输探测, 子域暴力破解 | | WHOIS · ASN | `GET /whois/{target}` | Domain & IP WHOIS, ASN 分配 | | Local Discovery | `WS /ws/local-disco` | mDNS / SSDP / LLMMR 被动嗅探 | | Ping | `WS /ws/ping` | 流式 ping | ### RECON | 工具 | Endpoint(s) | 功能 | | ---------------- | ---------------------------------- | ------------------------------------------------------- | | Port Scanner | `WS /ws/port-scan` | 带 banner 抓取的 TCP connect 扫描 | | Nmap | `/nmap/*` + WS | 完整 nmap 接口 (600+ NSE 脚本), 多目标 | | Network Audit | `WS /ws/audit` | LAN 扫描 + 单主机风险评级 | | TLS Auditor | `GET /tls/audit/{host}` | 证书, 协议, HSTS, 加密算法 | | Fingerprint | `GET /fingerprint/{host}/{port}` | Banner 抓取服务识别 | | HTTP Probe | `WS /ws/http-probe` | 内容发现暴力破解 + header 分析 | | TCPDump | `WS /ws/tcpdump` | 实时数据包捕获 (通过 sudoers drop-in 实现免密) | ### OSINT | 工具 | Endpoint(s) | 功能 | | ----------- | --------------------------------- | -------------------------------------------------------- | | CT Logs | `GET /ct/search/{domain}` | 证书透明度子域枚举 | | Email Sec | `GET /email/audit/{domain}` | SPF / DMARC / DKIM / BIMI / MTA-STS | | Takeover | `GET /takeover/check/{fqdn}` + WS | 子域接管签名检查 | | Reverse IP | `GET /reverse-ip/{target}` | 托管在同一 IP 上的其他域名 | ### WEB RECON | 工具 | Endpoint(s) | 功能 | | ---------------- | -------------------------- | ------------------------------------------------------- | | Subdomain Enum | `WS /ws/subdom-enum` | 聚合器: 免费 crt.sh / HackerTarget / OTX / RapidDNS;通过 Keychain 密钥使用 SecurityTrails / VirusTotal / Shodan | | CMS / Stack | `GET /cms/fingerprint` | Wappalyzer 风格技术指纹 | | JWT | `POST /jwt/decode` | Header/payload 解析 + 弱密钥检查 | | GraphQL | `GET /graphql/introspect` | Introspection 枚举 | ### WEB EXPLOIT *— 受授权限制,激活状态* 所有工具都采用带有 `FUZZ` 标记的请求模板(URL、body、header 值或 cookie 值)。每个工具都强制要求勾选“我已获得授权”复选框,除非你也勾选了“Allow internal”,否则将阻止访问 RFC1918 / loopback / metadata IP。 | 工具 | 检测 | Exploit 选项 | | --------------------- | ---------------------------------------------------------------------- | ------------------------- | | XSS | 15 个 polyglot + 上下文感知 payload;上下文 = body / attr / JS / URL | 无(仅反射) | | SQL Injection | error / boolean / time / union, 涵盖 MySQL/PG/MSSQL/SQLite/Oracle | 提取 DBMS 版本 | | Command Injection | 基于时间 (Unix `; sleep 5` + Windows `& timeout 5`) + 输出 (`id`) | 读取 /etc/passwd | | LFI / 路径遍历 | `../`, 编码, 双重编码, 绝对路径, PHP wrappers, /proc/self/ | 导出 /etc/shadow 及相关文件 | | SSRF | loopback + 十进制/十六进制/进制 IPv4 + AWS/Azure/GCP IMDS + file:/gopher: | 完整的 IMDS / 凭据导出 | | IDOR | 遍历 ID,对比 OWNER 认证配置与 N 个攻击者配置 | 标记 200 + 长度接近的响应 | ### RED TEAM | 工具 | Endpoint(s) | 功能 | | ------------- | ---------------------- | ---------------------------------- | | Reverse Shell | `/revshell/*` + WS | Payload 生成器 + 监听器 | ### CRYPTO | 工具 | Endpoint(s) | 功能 | | ------------- | ---------------------- | ------------------------------------------------------ | | Hash Cracker | `/hash/*` + WS | 识别 + 字典攻击;通过 PyInstaller spec 捆绑 rockyou | ### MONITORING | 工具 | Endpoint(s) | 功能 | | -------------- | ---------------------------- | ---------------------------------------------------------------- | | IDS | `WS /ws/ids` | 轻量级主机 IDS — 新的监听端口、失败的认证事件 | | Systemd Units *(linux)* | `/systemd/*` | 列出 + 检查 units,跟踪日志 | | Firewall Rules *(linux)*| `GET /firewall/rules`| 将 nft / iptables-save 解析为 chains + rules | ### FORENSICS | 工具 | Endpoint(s) | 功能 | | ---------------- | ---------------------------- | ---------------------------------------------------------------------------------- | | Persistence | `GET /persistence/audit` | Mac: launchd。Linux: systemd + cron + autostart + rc.local。Windows: 注册表 Run + 启动 + 计划任务。 | | Processes | `GET /processes/list` + kill | 运行中的进程 + 监听器 + 签名状态 | | Steganography | `/stego/*` | LSB 隐写/提取 (PNG/BMP/WAV), JPEG 分析, AES-GCM | | macOS Posture *(mac)* | `GET /macos/posture` | SIP / Gatekeeper / FileVault / firewall / XProtect | | Linux Posture *(linux)* | `GET /linux/posture` | SELinux / AppArmor / firewall / sshd / sysctl / sudoers / LUKS | | Windows Posture *(windows)* | `GET /windows/posture` | BitLocker / Defender / UAC / firewall / SmartScreen / Secure Boot / updates | | Users Audit *(linux)* | `GET /users/audit` | passwd / sudoers / lastlog / authorized_keys 指纹扫描 | ### UTILITIES | 工具 | Endpoint(s) | 功能 | | ---------------- | ----------------------- | ----------------------------------------------------------------------------- | | WiFi Integrity | `GET /wifi/report` | SSID/BSSID/gateway/DNS 完整性检查 *(mac + linux;Windows 移植待定)* | | VPN Manager | `/vpn/*` | WireGuard `wg0` 启动/停止/状态 *(mac + linux;Windows 使用不同的服务)* | | Terminal | `POST /terminal/exec` | 一次性 shell 执行 (无 PTY) | | Packages | `/brew/*` + WS | Homebrew (mac) / apt (Debian) / dnf (Fedora) / pacman (Arch) 搜索 + 安装 | ## 贯穿性特性 ### AI 聊天助手 位于右下角的浮动气泡 (`components/ChatBubble.tsx`)。使用带有自适应思考和摘要显示的 `claude-opus-4-7`。通过来自 `POST /chat/stream` 的 SSE 进行流式传输。 - 前端的会话日志 (`lib/sessionLog.ts`) 会记录每一个成功的 `api()` 响应(最后约 50 条记录,每条截断为约 1.2KB)。 - 每一轮聊天都会发送最后 30 条会话日志条目以及当前活动页面作为上下文,以便助手能够解读你最新的扫描结果。 - API key 存储在 macOS Keychain 中,服务名为 `MyHackingPal`,账号为 `anthropic_api_key`。 - 在向 Claude 解释每个工具类别的(庞大且稳定的)system prompt 上启用了 prompt 缓存。 ### 主题 深色 / 浅色 / 系统主题,持久化到 localStorage。顶部栏按钮可循环切换。颜色是 `:root` 和 `:root.light` 下的 CSS 变量(参见 `src/index.css`);Tailwind 类使用 `rgb(var(--xxx) / )`,因此透明度修饰符仍能正常工作。 ### 命令面板 — ⌘K 对所有页面进行模糊搜索。通过邻近度 + 词边界 + 位置 0 加权对子序列匹配进行评分;平局时优先选择较短的标签。Section 名称(如 "WEB EXPLOIT")也会匹配。侧边栏导航通过 `src/lib/nav.ts` 与面板共享。 ### 侧边栏 — ⌘B 切换隐藏。状态持久化到 localStorage。隐藏时通过 `pl-[88px]` inset 保留了 macOS 的红绿灯按钮。 ## 配置 ### Anthropic key(聊天必需) 在应用内:打开 **Settings → API keys** → 粘贴 `sk-ant-…` → 保存。或者: ``` security add-generic-password -a anthropic_api_key -s MyHackingPal -w 'sk-ant-…' -U ``` ### 付费版 subdomain-enum API(可选) 设置 UI 将在 v0.2.0 版本中推出。在此之前,启动后通过 curl 配置: ``` curl -X POST http://127.0.0.1:8765/settings/keys/securitytrails_api_key \ -H 'Content-Type: application/json' -d '{"value":""}' curl -X POST http://127.0.0.1:8765/settings/keys/virustotal_api_key \ -H 'Content-Type: application/json' -d '{"value":""}' curl -X POST http://127.0.0.1:8765/settings/keys/shodan_api_key \ -H 'Content-Type: application/json' -d '{"value":""}' ``` Subdomain Enum 页面会在打开时重新获取源状态,并在配置了 key 后点亮相应的复选框。 ### Target 策略 `backend/config.json` → `target_policy` 控制对于任何基于 `target_policy.check_target` 进行拦截的工具,什么情况算作软“警告”,什么情况算作硬“拒绝”。默认允许私有 / loopback / Tailscale 网段,并对外部 target 仅发出警告。Schema 请参见 `backend/lib/target_policy.py`。 ### Sudoers drop-ins `tcpdump` 和 `nmap` 通过 `osascript` 提示的管理员权限安装一次性 sudoers 条目。Endpoint:`POST /tcpdump/install`,`POST /nmap/install`。每个工具都会写入 `/etc/sudoers.d/network-tools-`,属主为 `root:wheel`。 ## 安全 / 授权 WEB EXPLOIT 工具是双刃剑。内置的默认设置: - **授权复选框** — 在你勾选“我已获得测试此 target 的授权”之前,每个页面都拒绝启动。 - **Scope 防护** — 默认拒绝 RFC1918 / loopback / link-local / 云 metadata IP。勾选“Allow internal targets”以覆盖此设置。 - **速率限制** — 每个页面上都有滑动条,默认 8 req/s,最大 30。 - **停止按钮** — 每次扫描都可以在运行中中断。 - **审计跟踪** — 每一个成功的 HTTP 请求都会记录在会话日志中,并呈现给聊天助手。 其目的是让 *容易的* 路径成为 *安全的* 路径。这些措施都无法阻止蓄意的滥用——它们的存在是为了防止意外误操作(例如不小心对你自己的局域网网关进行 fuzzing)。 ## 开发 两个进程,每个终端运行一个。 ``` # 终端 1 — 后端(FastAPI 在 8765 端口,自动重载) cd backend python3 -m uvicorn main:app --reload --port 8765 # 终端 2 — 前端(Vite 在 5173 端口,然后是 Electron) cd frontend npm install # one-time npm run dev:all # vite + electron # 或者直接使用 Vite: npm run dev # open http://localhost:5173 # 终端 3 — Android 伴侣应用(可选) cd mobile flutter pub get flutter run # 在 Settings 中将应用指向您的后端 IP ``` 当 `app.isPackaged` 为 true 时,Electron 会从 `Contents/Resources/backend/network-tools-backend` 启动内置的 sidecar,并等待 `/health` 响应。在开发环境中,它期望你自己运行 uvicorn。 ### 添加新工具 1. Backend:放入 `routers/.py` 暴露一个 router;在 `backend/main.py` 中注册。 2. Frontend:放入 `src/pages/.tsx`;在 `App.tsx` 中导入并添加到三元运算符中;在 `src/lib/nav.ts` 中将条目添加到相应的 section(侧边栏和命令面板会从此文件读取)。 3. 元数据:声明支持的 platforms、模式要求、风险级别,以及该工具是否接受 target。 4. 安全性:将接受 target 的工具通过 scope 强制执行、命令预览、审计日志进行串联,并在激活时通过授权限制。 5. AI:扩展工具目录/prompt 元数据,以便助手能够解读结果并恰当地推荐该工具。 ### 构建发布版本 ``` cd frontend npm run dist:dir # PyInstaller backend → Vite build → electron-builder # → dist-electron/mac-arm64/MyHackingPal.app ``` 安装到桌面: ``` # 先退出正在运行的实例,否则 electron-builder 可能会失败。 osascript -e 'quit app "MyHackingPal"' 2>/dev/null rm -rf ~/Desktop/MyHackingPal.app cp -R ~/network_tools/frontend/dist-electron/mac-arm64/MyHackingPal.app ~/Desktop/ ``` CI 会在每次推送时生成跨平台构建版本(参见 [路线图](#roadmap)): Windows `.exe` (NSIS + 便携版),Linux `.AppImage` + `.deb`,macOS `.app` —— 全部通过 `.github/workflows/build.yml` 中的 `windows-latest` / `ubuntu-latest` / `ubuntu-24.04-arm` / `macos-latest` 矩阵完成。PyInstaller 无法交叉编译,这就是为什么矩阵要在每个操作系统上原生运行的原因。 特定平台的路由器通过 `src/lib/nav.ts` 中每个 NavItem 上的 `platforms` 数组进行标记,并通过 `GET /system/info` 在错误的操作系统上自动隐藏。核心平台辅助函数位于 `backend/lib/platform_util.py`(`IS_DARWIN` / `IS_LINUX` / `IS_WINDOWS`,`app_data_dir()`,`require_darwin()` / `require_linux()` / `require_windows()` 辅助函数)。 ## 贡献 欢迎各种贡献。目前最简单的贡献方式是: - **Bug 报告** — 开启一个 issue 并附带复现步骤 - **Preset 文件** — 为新的攻击场景提交一个 .mhp playbook(参见 CONTRIBUTING.md) - **新工具** — 遵循上方“添加新工具”中的 3 步模式 - **平台测试** — 帮助验证 macOS、Linux 和 Docker 构建。欢迎 Windows 测试,但属于实验性/暂缓支持。 在提交 PR 之前,请阅读 CONTRIBUTING.md 和 DISCLAIMER.md。 ## 路线图 ### v0.1.0-beta — 已发布 ✅ - [x] 涵盖 9 个类别的 40+ 个工具 - [x] 带有会话上下文的 Claude 驱动的 AI 助手 - [x] 攻击 playbook / preset 系统 - [x] 所有激活工具的 WebSocket 流式传输 - [x] 所有 exploit 工具上的授权限制 - [x] Scope 防护 + 速率限制 - [x] 所有凭据使用 macOS Keychain - [x] 命令面板 (⌘K) + 侧边栏 (⌘B) - [x] 深色 / 浅色 / 系统主题 ### v0.2.0-beta — 跨平台 + 移动端 ✅ (当前版本) - [x] Windows 构建 (.exe NSIS 安装程序 + 便携版) - [x] Linux 构建 (.AppImage + .deb, x64 + arm64) - [x] Docker backend 镜像 (无头 API 服务器) - [x] Android 配套应用 (Flutter,7 个工具 + 聊天) - [x] 跨平台持久化审计 (launchd / systemd / Registry) - [x] 跨平台 posture (macOS / Linux / Windows) - [x] 跨平台 WiFi 扫描 (CoreWLAN / nmcli / netsh) - [x] 跨平台软件包 (Homebrew / apt / dnf / pacman) - [x] Linux 专用工具 (Systemd Units, Firewall Rules, Users Audit) - [x] 每次推送到 main 分支时运行 CI 矩阵构建 ### v0.3.0 — 稳定性 + 优化 - [ ] 所有工具的全面错误处理 - [ ] 每个 endpoint 的输入验证 - [ ] 测试套件 (pytest backend + Vitest frontend) - [ ] 首次启动向导 - [ ] 带有应用内 API key 管理的设置页面 - [ ] Engagement / 会话管理 + 发现跟踪器 - [ ] PDF/markdown 报告导出 - [ ] 代码签名 + 公证 (macOS + Windows) - [ ] 通过 electron-updater 自动更新 ### v0.4.0 — 移动端扩展 - [ ] iOS 配套应用 (Swift) - [ ] Android:与桌面端实现完全的工具对等 - [ ] 移动端发现与桌面会话同步 - [ ] 长时间扫描的推送通知 ### v1.0.0 — 社区 - [ ] 社区 preset 库 (.mhp 文件) - [ ] NGFW 集成 (pfSense, OPNsense, Palo Alto) - [ ] 插件 / 自定义工具 API - [ ] GitHub Releases 上的签名发布版本 ## WebSocket 协议 流式 router 都遵循相同的结构: 1. 客户端打开 `ws://127.0.0.1:8765/ws/`。 2. 客户发送一个 JSON 对象作为握手信息(target、选项等)。 3. 可选:随时发送 `{"action":"stop"}` 以中止。 4. 服务器发送一系列 `{"type": ...}` 事件,以 `done` 或 `error` 终止。 web-exploit 系列还在 init 消息中额外要求包含 `confirm_auth: true`。规范示例请参见 `routers/port_scanner.py`。 ## 技术栈参考 - **Backend:** Python 3.11+,FastAPI,uvicorn (asyncio loop),httpx,websockets/wsproto,anthropic SDK,Pillow,cryptography,python-multipart。 - **Frontend:** React 18,Vite,TypeScript,Tailwind (CSS-variable theme),Electron 33。 - **Mobile:** Flutter 3.x (Dart),目标为 Android 7+ (minSdk 24),compileSdk 36。包名 `dev.adamsjack.myhackingpal`。通过 Tailscale 连接到 FastAPI backend。 - **Container:** Docker (`python:3.11-slim`),内置 nmap 7.95 + tcpdump 4.99.5 + 云 SDK (boto3, azure-mgmt-*, google-cloud-*) + AD 工具 (ldap3, impacket, bloodhound)。具有 `NET_RAW` + `NET_ADMIN` capabilities。 - **打包:** PyInstaller (backend → 独立二进制文件),electron-builder (Electron + sidecar + 图标 → `.app`)。 - **持久化:** 所有 API key 使用 macOS Keychain / Linux Secret Service / Windows Credential Manager。Docker:`ANTHROPIC_API_KEY` 环境变量。不在磁盘上存储凭据。
标签:AI辅助, AV绕过, Electron, FastAPI, 域环境安全, 安全测试, 实时处理, 密码管理, 攻击性安全, 数据泄露, 漏洞报告, 漏洞挖掘, 请求拦截, 逆向工具