🦅 RedHawk(红隼)开发全记录:从 0 到 1 打造 AI 驱动的安全工作台

一个国产开源项目从灵感到落地的完整过程:抓包、HTTPS 解密、AI 研判、桌面版打包、开源发布。
红隼 · 落叶 · 万物生歌


一、为什么做这个东西

安全测试这件事,工具链向来是割裂的:

  • 抓包要开 Burp / Fiddler
  • 发包要用 Repeater / Postman
  • 扫描要配 fscan / nuclei / sqlmap 一堆工具
  • 分析全靠人肉看流量
  • 报告要手动整理复现步骤

每个工具都有自己的界面、自己的数据格式、自己的学习成本。我一直在想:能不能有一个工具,把这些全串起来,用 AI 做大脑,一条命令跑完全链路?

于是有了 RedHawk(红隼) —— 一款 AI 驱动的授权安全测试一体化工作台

项目开源地址:https://github.com/whisperBrocade/RedHawk
官网:https://whisperbrocade.github.io/RedHawk/


二、三条设计铁律

动手之前,我先给自己立了三条规矩,贯穿了整个开发过程:

铁律 含义 落地方式
绝对理性 砍掉一切不必要的功能 不做无关花活,每个模块都能回答"为什么存在"
绝对暴力 能枚举就枚举,能并行就并行 fscan 资产发现 ×100 并发、nuclei ×50 并发
绝对简洁 简单到极致 SQLite 单文件存储、JSON 全链路契约、单命令启动

这三条是后面所有技术决策的判断标准。


三、技术选型

选型 理由
后端 Python + FastAPI 生态好、异步性能够、开发快
存储 SQLite(WAL 模式,13 张表) 单文件、零部署、够用
CLI Typer 声明式、自动帮助文档
桌面 pywebview + PyInstaller 30MB 级单 exe,脱离浏览器
加密 cryptography CA 生成 + 动态域名证书
AI DeepSeek v4-flash / v4-pro 双模型:快 + 深
前端 单 HTML(三主题) 零构建、零依赖、可直接内嵌

选型原则:每个依赖都有不可替代的理由,没有为"技术栈好看"而堆框架。


四、核心架构

┌──────────────────────────────────────────────┐
│  Web 工作台(单 HTML)/ 独立桌面版(pywebview)  │
├──────────────────────────────────────────────┤
│  抓包代理(HTTP/HTTPS中间人) · Repeater · 流量  │
├──────────────────────────────────────────────┤
│  playbook 引擎 · 工具适配器(fscan/nuclei/...)  │
├──────────────────────────────────────────────┤
│  AI 引擎(DeepSeek 双模型)· 证据闸门 · 报告    │
├──────────────────────────────────────────────┤
│  SQLite(13表) · 授权闸门 · 审计 · 知识库(RAG)  │
└──────────────────────────────────────────────┘

五个模块各司其职,横切关注点:授权合规(硬闸门)· 证据反幻觉 · 可观测性 · AI 护栏


五、开发历程(踩过的坑,一个比一个经典)

阶段 1:系统代理接管 + 抓包

目标:启动即接管 Windows 系统代理,本机所有 HTTP/HTTPS 流量自动进入。

实现:直接写 WinINET 注册表(HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings),代理指向本地 127.0.0.1:8888,停止时自动还原。

坑 1:代理假死。服务器重启后系统代理还指着旧地址 → ERR_PROXY_CONNECTION_FAILED。解决:Web 启动时自动恢复代理 + 桌面版启动前清理残留。

坑 2:健康检查污染流量。Windows 系统自带的 captiveportal / msftconnecttest 探测包会疯狂灌进流量日志。解决:专门过滤这类 Host,直接返回 204。

阶段 2:HTTPS 中间人解密

HTTPS 流量默认加密,抓到的全是密文。要做中间人(MITM):

  1. 首启生成自签 CA(cryptography
  2. 按域名动态签发证书
  3. 客户端信任该 CA(certutil -addstore Root
  4. 代理双向解密转发

坑 3:浏览器报 ERR_CERT_AUTHORITY_INVALID。CA 没装进系统信任库。我写了个一键安装脚本,并做了 is_ca_installed 检测(用 certutil 检查,而不是自己记状态文件)。

坑 4:代理 URL 双重前缀。绝对 URL 请求被拼成了 Host + path。解决:先判断 self.path.startswith("http") 再决定拼接方式。

阶段 3:流量归类

按 Content-Type / URL 自动分组:HTML / API / JS / 图片…… 配合抓包代理,形成一张完整的"主机流量地图"。

阶段 4:AI 研判 + 证据级反幻觉

这是 RedHawk 的灵魂。让 DeepSeek 分析数据包并给出漏洞结论,但大模型会一本正经地胡说八道

设计:证据闸门(Evidence Gate)—— AI 的每个结论必须引用真实的流量 ID / 证据,引用不到真实证据的结论直接作废,重新分析。

坑 5:LLM 返回空数组。DeepSeek 有时候返回 [],我的 JSON 提取器只匹配 {...} 不匹配 [...],导致"LLM 未返回 JSON"。修复:extract_json 同时处理对象和数组。

坑 6:API Key 加密存储。key 不能明文躺磁盘。实现:用机器特征派生密钥做 XOR 加密,存 data/llm.json,本机可解、换机即废。

阶段 5:playbook 编排 + 工具适配器

fscan(资产发现)→ nuclei(漏洞验证)→ AI 研判 → 报告,用 YAML 描述流程:

# quick_scan.yaml(示意)
steps:
  - adapter: fscan
    args: "-h {target}"
    parallel: 100
  - adapter: nuclei
    args: "-templates latest"
    parallel: 50
  - ai_verdict: true

每个工具包一层适配器,输出统一成 JSON 契约——新增工具 = 加一个适配器文件,主程序零改动。

阶段 6:授权硬闸门 + 审计

安全工具最怕被滥用。RedHawk 内置:

  • 目标必须登记在授权范围内,否则进程拒绝启动
  • 每次越权尝试全量审计留痕

坑 7:FOREIGN KEY 约束失败。自动任务找不到 task_id。解决:自动创建 __auto_traffic__ 占位任务。

阶段 7:一键自动化

流量 → AI 识别漏洞 → 深度研判 → 复现报告,一次点击跑完全链路。报告自动生成复现步骤 / 请求包 / 修复建议,直接可用。

阶段 8:独立桌面版

PyInstaller 打包成单 exe(约 31MB),pywebview 内嵌浏览器窗口,双击即用、脱离浏览器。

坑 8:打包 PermissionError (WinError 5)dist\RedHawk.exe 被运行中的旧进程锁住。解决:先杀进程(taskkill)再重新打包。

阶段 9:开源发布

  • GitHub 仓库:whisperBrocade/RedHawk
  • MIT License + CONTRIBUTING + SECURITY + DISCLAIMER
  • CI:4 个 Python 版本测试 → PyInstaller 打包 → tag 自动发 Release
  • 123 个单元测试全部通过
  • 官网(GitHub Pages):SEO 完整、国内外搜索引擎可收录

坑 9:git push 被拒。远程有初始提交,本地历史不相关。解决:--allow-unrelated-histories 合并,保留完整 README。

坑 10:分支名。默认 master,统一改成 main


六、测试与质量

cd src
python -m pytest tests/ -q
# 123 passed, 1 skipped

16 个测试文件覆盖:代理、证书、AI 研判、证据闸门、playbook、适配器解析、知识库、报告生成…… 关键逻辑全部有测试兜底,重构不慌。


七、成果一览

项目 数字
代码规模 src/ 下 20+ 模块,30+ API 端点
数据库 SQLite 13 张表(WAL)
测试 123 passed
桌面版 单 exe ≈ 31MB
工具适配器 fscan / nuclei / subfinder / httpx / ffuf / sqlmap / xray / AI 扫描
插件 YAML playbook 即插即用
界面 三主题(白 / 暖 / 红黑)

八、和主流工具比,RedHawk 的定位

  • vs Burp:Burp 是重型专业级代理,RedHawk 胜在 AI 原生 + 一体化 + 轻量
  • vs MSF:MSF 是后渗透/利用框架,RedHawk 聚焦授权测试的"发现-验证-报告"链路
  • vs VulnClaw:参考了它的编排思想,但 RedHawk 更强调 AI 证据闸门和易用性

一句话:RedHawk 不是要替代谁,而是把"抓包→分析→报告"这条最日常的链路,用 AI 做到一键完成。


九、未来规划

  • 更多工具适配器(xray、dirsearch、wappalyzer…)
  • 多语言报告导出(PDF / Word)
  • 团队协作(任务共享、审计中心)
  • 流量回放 + 模糊测试
  • macOS / Linux 支持

十、免责声明

⚠️ RedHawk 是面向安全研究、CTF 竞赛、教学演示与授权渗透测试的专业工具。

  1. 使用前必须获得目标系统的明确、书面授权
  2. 遵守所在国家/地区的全部法律法规(《网络安全法》《数据安全法》《个人信息保护法》等)
  3. 因未授权使用、误用、滥用产生的一切法律后果由使用者自行承担
  4. 未经授权对任何系统进行渗透测试、漏洞利用、数据访问均属违法行为

十一、开源与交流

  • GitHub:https://github.com/whisperBrocade/RedHawk

  • 官网:https://whisperbrocade.github.io/RedHawk/

  • License:MIT

欢迎 Star ⭐、PR、Issue。如果你也在做 AI 安全方向的工具,欢迎交流。


红隼 · 落叶 · 万物生歌 · Built with ❤️
祝大家天天开心,Ciallo~(∠・ω )⌒☆
最后说一句,大佬们我是个初学者,轻点喷!
非常感谢!

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐