[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-96037":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":23,"readmeContent":24,"aiSummary":25,"trendingCount":15,"starSnapshotCount":15,"syncStatus":26,"lastSyncTime":27,"discoverSource":28},96037,"StrikeAgent_AtkBrain-Flash","Yean-Sec\u002FStrikeAgent_AtkBrain-Flash","Yean-Sec","由夜安团队研发的AI渗透测试平台，涵盖红队打点、SRC、CTF，特别是在红队领域有极为亮眼的存在","",null,"Python",266,61,1,0,22,47.58,"Other",false,"main",true,[],"2026-09-20 04:01:32","\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fassets\u002Ficon.svg\" width=\"128\" height=\"128\" alt=\"StrikeAgent\" \u002F>\n  \u003Cimg src=\"docs\u002Fassets\u002Ftimes.svg\" width=\"48\" height=\"128\" alt=\"×\" \u002F>\n  \u003Cimg src=\"docs\u002Fassets\u002Fbrand.jpg\" width=\"128\" height=\"128\" alt=\"夜安团队 SEC\" \u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Csub>StrikeAgent × 夜安团队 SEC\u003C\u002Fsub>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">StrikeAgent_AtkBrain-Flash\u003C\u002Fh1>\n\n![本项目提出：自循环 · 自监督 · 自进化](docs\u002Fassets\u002Fcoined-triad.gif)\n\n此项目由夜安团队开发，旨在探索 AI 渗透方面的能力，希望做点有自己思想的东西而不是Ai千篇一律随便搞出来的\n\n项目整体看似简单，实则经过多轮实战测试，倾注了团队大量心血。细节设计更是数不胜数：单单“不打歪又能获得更大攻击面”这一点，就让团队煞费苦心（Flash 版）。此外，为了避免 AI 给出的漏洞存在夸大或误报的情况，团队特别设计了红队二次评级和二次验证，让漏洞所见即所得、拿着就能用，等等这些小细节。\n\n团队自用的Pro版本更是已经落地几十个项目超千个外网真实授权环境，所有努力只聚焦外网打点。专注于一点登峰造极\n\n## 架构\n\n控制台调度猎面；攻击图驱动自循环；监督只在轮次边界出方案；收工把可迁移手法蒸馏进记忆库，回灌下一局。\n\n![StrikeAgent_AtkBrain-Flash 架构](docs\u002Fassets\u002Farchitecture.png)\n\n## 产品页面展示\n\n新建项目：单目标 \u002F 集群，红队（getshell）或 CTF。\n\n![新建项目](docs\u002Fassets\u002FScreenShot_2026-09-07_213431_146.png)\n\n控制台：攻击图、时间线、漏洞、对话。\n\n![控制台](docs\u002Fassets\u002FScreenShot_2026-09-07_220023_410.png)\n\n内网横向：橙线为 RCE 路径，紫实线为已控跨主机，紫虚线为跳板可达。\n\n![内网横向](docs\u002Fassets\u002FScreenShot_2026-09-07_220034_635.png)\n\n## 交付报告\n\n \u003Cp>\u003Ci>此报告为一次真实的授权业务场景\u003C\u002Fi>\u003C\u002Fp>\n\n交付报告：[打开 HTML](docs\u002Fdemo\u002Fintranet-lab-report.html)\n\n![交付报告封面](docs\u002Fassets\u002Freport-cover.png)\n\n![交付报告执行摘要](docs\u002Fassets\u002Freport-body.png)\n\n关键攻击路径：\n\n![关键攻击路径](docs\u002Fassets\u002Freport-path.png)\n\n资产画像：\n\n![资产画像](docs\u002Fassets\u002Freport-assets.png)\n\n## 排行榜\n\nCybench 官方认证榜单第 3 名（`deepseek-v4-flash`，84.13 \u002F 100）。\n\n![Cybench 榜单](docs\u002Fassets\u002Fcybench.png)\n\n## 环境与安装说明\n\n### Agent 部署提示词\n\n把下面整段连同源代码交给任意能跑本机命令的 AI。它应按原文部署，不要改 skill 绑定方式、不要把路径写死成别人的机器。\n\n```\n你要在本机把 StrikeAgent_AtkBrain-Flash 从当前源代码部署到可打开控制台。目标系统是 Kali Linux（Debian 系、systemd、能 sudo）。不要用 Docker 当主路径。不要把仓库里的猎面 skill 装进 ~\u002F.claude。不要把任何路径写死成 \u002Fhome\u002Fkali\u002F桌面\u002F... 或其它克隆者机器上的目录。\n\n一、目录与进程纪律\n- 仓库根记为 REPO（含 backend\u002F、frontend\u002F、scripts\u002F、.claude\u002F、tools\u002F）。\n- 后端 :5003，前端 :5001。不要在临时 shell 里再起 python3 -m atkbrain.main 或 npm run dev，会和 systemd 抢端口。\n- 后端解释器必须是 \u002Fusr\u002Fbin\u002Fpython3（3.12+），包装到系统 Python，不要只装进 venv 却让 unit 跑系统 python。\n- 数据、库、工作区、密钥只写 backend\u002Fdata\u002F（已 gitignore）。不要提交 .env、*.db、workspaces、loot、atkbrain-claude.env。\n- 启动\u002F重启只用：sudo scripts\u002Fatkbrain-up.sh（首次）、sudo scripts\u002Fatkbrain-backend.sh restart、sudo scripts\u002Fatkbrain-frontend.sh restart。unit 名是 atkbrain-flash-backend.service \u002F atkbrain-flash-frontend.service。\n\n二、依赖\n- sudo apt 安装 python3 python3-pip python3-dev build-essential nodejs npm curl；导出 PDF 再装 libcairo2 libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf-2.0-0 libffi-dev shared-mime-info。\n- pip：sudo \u002Fusr\u002Fbin\u002Fpython3 -m pip install -r backend\u002Frequirements.txt --break-system-packages\n- 前端：cd frontend && npm install（atkbrain-up.sh 前必须有 frontend\u002Fnode_modules）\n- 全局安装 Claude Code：sudo npm install -g @anthropic-ai\u002Fclaude-code；本机 claude 能跑（已登录，或 ANTHROPIC_AUTH_TOKEN \u002F ANTHROPIC_API_KEY，可选 ANTHROPIC_BASE_URL）。\n- 把当前 shell 里的 ANTHROPIC_* \u002F CLAUDE_* \u002F ATKBRAIN_* 准备好后再 sudo scripts\u002Fatkbrain-up.sh。脚本会把密钥快照到 backend\u002Fdata\u002Fatkbrain-claude.env（权限 600）。systemd 的 PATH 里要有 claude。\n\n三、Skill \u002F 工具路径（最容易部署错）\n猎面 Claude 的 cwd 是 backend\u002Fdata\u002Fworkspaces\u002F\u003C项目id>\u002F，不是仓库根。Skill 和本仓库绑定，不是用户全局环境。\n- 源文件：REPO\u002F.claude\u002Fskills\u002Fkali-kit、recon-fanout、recon-spiral。只进 git，不要复制到 ~\u002F.claude，不要改 Claude Code 用户级 settings。\n- 运行时：会话启动会把本赛道 skill 拷到该猎工作区 backend\u002Fdata\u002Fworkspaces\u002F\u003Cpid>\u002F.claude\u002Fskills\u002F。ClaudeAgentOptions 必须是 setting_sources=[\"project\"]、plugins=[]、skills=白名单里这几个名字。\n- kali-kit 不能用手写死本机路径。仓库里的 .claude\u002Fskills\u002Fkali-kit\u002FSKILL.md 用占位符 \u003CREPO>。真正给从者看的那份由 backend\u002Fatkbrain\u002Fagents\u002Fkali_kit.py 的 skill_markdown() 按 REPO_ROOT 生成（REPO_ROOT = backend 的上一级）。project_skills.install_into_workspace 会在拷贝后覆盖工作区里的 kali-kit\u002FSKILL.md。部署时不要把 SKILL.md 改成某台机器的绝对路径。\n- Kali 没有、仓库自带的脚本必须用仓库绝对路径调用（工作区 cwd 找不到相对路径）：\n  python3 $REPO\u002Ftools\u002FJSFinder\u002FJSFinder.py -u \u003Curl> -ou js_urls.txt -os js_subs.txt\n  bash $REPO\u002Ftools\u002Fbypass-403\u002Fbypass-403.sh http:\u002F\u002F\u003Chost> \u003Cpath>\n  禁止 which jsfinder \u002F which bypass-403，也不要把这两份脚本复制进 \u002Fusr\u002Fbin。\n- nmap \u002F ffuf \u002F nuclei 等用系统绝对路径（\u002Fusr\u002Fbin\u002F...），清单在 kali-kit，禁止 which \u002F ls \u002Fusr\u002Fshare\u002Fwordlists。\n- 不要把 kali-kit 全文塞进系统提示；从者需要路径时调用 skill kali-kit。CTF 开局读 recon-fanout，红队开局读 recon-spiral。\n\n四、验收\ncurl -sS http:\u002F\u002F127.0.0.1:5003\u002Fapi\u002Fhealth   期望 ok: true，并有 claude_sdk\ncurl -sS -o \u002Fdev\u002Fnull -w '%{http_code}\\n' http:\u002F\u002F127.0.0.1:5001\u002F   期望 200\n浏览器打开 http:\u002F\u002F127.0.0.1:5001\u002F\n失败先看 backend\u002Fdata\u002Flogs\u002Fbackend.err.log 与 frontend.err.log：缺包、端口占用、claude 不在 unit 的 PATH、或没快照密钥。\n```\n\n### 环境\n\n建议在 **Kali Linux** 上跑（执行层会调用本机已有的渗透工具）。其它 Debian \u002F Ubuntu 也能起控制台，但工具不一定齐。\n\n\n| 依赖            | 版本 \u002F 说明                                                                                    |\n| ------------- | ------------------------------------------------------------------------------------------ |\n| 系统            | Kali \u002F Debian 系，systemd，root（`sudo`）                                                       |\n| Python        | `\u002Fusr\u002Fbin\u002Fpython3`，**3.12+**。后端 unit 直接跑这个解释器，不要只用 venv 装包却不改 unit                         |\n| Node.js \u002F npm | **18+**（[Claude Code](https:\u002F\u002Fdocs.anthropic.com\u002Fen\u002Fdocs\u002Fclaude-code) 官方要求 **≥ 22** 时按官方走） |\n| Claude Code   | 本机 `claude` 能用：已登录，或配好 Anthropic 兼容网关                                                      |\n| 端口            | **5001** 控制台，**5003** API，不要被其它进程占着                                                        |\n| 磁盘            | `backend\u002Fdata\u002F` 会写库、工作区、日志、报告                                                              |\n\n\n系统包（Kali \u002F Debian）：\n\n```bash\nsudo apt update\nsudo apt install -y python3 python3-pip python3-dev build-essential \\\n  nodejs npm curl\n# 导出 PDF 报告时 weasyprint 需要这些库；不装也能跑渗透，导出 PDF 会失败\nsudo apt install -y libcairo2 libpango-1.0-0 libpangocairo-1.0-0 \\\n  libgdk-pixbuf-2.0-0 libffi-dev shared-mime-info\n```\n\n安装 Claude Code：\n\n```bash\nsudo npm install -g @anthropic-ai\u002Fclaude-code\nclaude --version\nclaude auth status    # 或按官方文档完成登录\n```\n\n模型密钥用环境变量即可，安装脚本会快照到 `backend\u002Fdata\u002Fatkbrain-claude.env`（权限 `600`，不要提交进 git）：\n\n\n| 变量                                           | 作用                            |\n| -------------------------------------------- | ----------------------------- |\n| `ANTHROPIC_API_KEY` \u002F `ANTHROPIC_AUTH_TOKEN` | 大模型密钥                         |\n| `ANTHROPIC_BASE_URL`                         | 兼容 Anthropic Messages 的网关（可选） |\n| `ANTHROPIC_MODEL` 等                          | 模型名（可选）                       |\n| `ATKBRAIN_CLAUDE_BIN`                        | `claude` 可执行文件路径，默认 `claude`  |\n| `ATKBRAIN_CLAUDE_MODEL`                      | 默认 `sonnet`                   |\n| `ATKBRAIN_API_TOKEN`                         | 非空则 API \u002F WebSocket 要带令牌（可选）  |\n\n\nDebian 12+ 若 `pip` 报 `externally-managed-environment`，给系统 Python 装包时加 `--break-system-packages`（本仓库的 systemd unit 用的就是 `\u002Fusr\u002Fbin\u002Fpython3`）。\n\n### 安装\n\n```bash\ngit clone \u003C本仓库 URL>\ncd StrikeAgent_AtkBrain-Flash\n```\n\n1. 前端依赖（`atkbrain-up.sh` 前必须有 `frontend\u002Fnode_modules`）：\n\n```bash\ncd frontend\nnpm install\ncd ..\n```\n\n2. 后端依赖（装到 **系统** `python3`，和 unit 一致）：\n\n```bash\ncd backend\nsudo \u002Fusr\u002Fbin\u002Fpython3 -m pip install -r requirements.txt --break-system-packages\ncd ..\n```\n\n3. 把当前 shell 里的 `ANTHROPIC_*` \u002F `CLAUDE_*` \u002F `ATKBRAIN_*` 准备好（没有的可以先 `export ANTHROPIC_API_KEY=...`），再一键交给 systemd：\n\n```bash\nsudo scripts\u002Fatkbrain-up.sh\n```\n\n脚本会安装并 enable `atkbrain-flash-backend.service`、`atkbrain-flash-frontend.service`，把模型相关环境变量写入 `backend\u002Fdata\u002Fatkbrain-claude.env`，拉起后端 `:5003`、前端 `:5001`（崩溃会自动重启）。\n\n浏览器打开 **[http:\u002F\u002F127.0.0.1:5001\u002F](http:\u002F\u002F127.0.0.1:5001\u002F)**。局域网其它机器用 `http:\u002F\u002F\u003Ckali-ip>:5001\u002F`。\n\n确认起来：\n\n```bash\ncurl -sS http:\u002F\u002F127.0.0.1:5003\u002Fapi\u002Fhealth\n# 期望含 \"ok\": true，以及 claude_sdk 状态\n\ncurl -sS -o \u002Fdev\u002Fnull -w '%{http_code}\\n' http:\u002F\u002F127.0.0.1:5001\u002F\n# 期望 200\n```\n\n日志：`backend\u002Fdata\u002Flogs\u002Fbackend.log`、`backend.err.log`、`frontend.log`、`frontend.err.log`。数据在 `backend\u002Fdata\u002F`，已进 `.gitignore`。\n\n红队默认 5 个项目、CTF 默认 3 个，两道互不占槽，都可调到 20。每项目 2 路编排（从者 + 御主）。设置页和顶栏能看到当前占用。\n\n### 常见问题\n\n**`health: DOWN`**  \n刚 restart 时 uvicorn 还在加载，等几秒再 curl。一直挂就看 `backend.err.log`：缺包、端口占用、或 `claude` 不在 `PATH`。\n\n**前端 unit 起不来，提示先 `npm install`**  \n`scripts\u002Fatkbrain-frontend.sh` 要求 `frontend\u002Fnode_modules` 已存在。\n\n**控制台显示 Claude Code 未就绪**  \n本机 `claude` 未登录，或 `atkbrain-claude.env` 里没有密钥。在已登录的 shell 里再执行一次 `sudo scripts\u002Fatkbrain-backend.sh restart`（会重新快照环境变量）。\n\n**5001 \u002F 5003 被占**  \n`ss -tlnp | grep -E '5001|5003'`，停掉旧进程后再 `atkbrain-up.sh`。\n\n## 开源协议与免责声明\n\n本仓库按 [LICENSE](LICENSE) 开源，**不准商用**。\n\n学习、研究和授权测试可以阅读、修改、非商用分发。售卖、SaaS、外包、把本软件用于收费服务等商业用途，请联系 [gavenmiya@outlook.com](mailto:gavenmiya@outlook.com)。\n\n本软件仅限在已获明确授权的环境中使用。使用即表示你已获得目标环境的授权，并自行承担合规与后果。作者与夜安团队 SEC 不对滥用、数据损坏或法律纠纷负责。\n\n交流群目前已满。关注公众号「夜安团队SEC」，联系我们拉进群。\n\n![夜安团队SEC 公众号名片](docs\u002Fassets\u002Fwechat-oa.png)\n\n## 写在最后\n\n当前 AI+安全领域百花齐放，各种工具层出不穷。在 AI 的加持下，想法到落地可以以极快的方式进行，但很多工具缺乏大量测试，只有其形没有其神。我们在写项目的同时，也对 AI+安全方向的众多工具（包括商业化闭源工具）进行了测试。\n\n测试后发现，同质化问题相当严重；也拿到过一些竞赛排名靠前的项目，发现不少问题。比如竞赛通常有时间和并发限制，大概率没有 WAF，并且题目肯定有解；而红队则不限时间，是否会有 RCE 或者数据库权限等，都是未知数，并且大概率有 WAF。再比如大资产的测试时间分配、是否容易打偏、什么叫目标资产（比如 JS 中有很多资产，如何精准区分旁站和毫不相关的资产）、Agent 的调用、沙箱、上下文、召回率，skill 的数量、嵌套深度和最佳平衡点到底是多少，是否采用 Skill 和 MCP，等等一系列问题，都需要大量测试和反复验证。\n\n现在这个 AI 盛行的时代，代码不是重点，重要的是思想、观点和想法，而不是千篇一律地二开个项目、加几句话，然后导入一大坨资产，发现能搞点东西——这种量变无法引起质变。当然，也看到社区里有非常优秀的产品和非常先进的理念。比如杭州那个前辈团队的 Cairn 理念就很有意思：它摒弃了 Skill、MCP、RAG，完全由底座模型和 Agent，再加上一些编排自行决定，这颠覆了以往传统的“Skill+RAG 引导调用 MCP 工具”的理念，这种思想的提出也极具参考意义。还有社区“教红队的 Des”的产品融合，感觉做得很有意义，在增效方面有巨大提升，等等。许多极其优秀的前辈\u002F作品都值得学习。\n\n我 2024 年开始做进攻型红队方向，前期在训练模型上走了不少弯路。如今感受到这股浪潮的来临，也希望在这股潮流中实现自我价值。最后欢迎拷打，欢迎比较，共同进步！\n","StrikeAgent_AtkBrain-Flash 是一个面向实战的AI驱动渗透测试平台，专注于红队外网打点、SRC漏洞挖掘与CTF攻防演练。其核心采用攻击图驱动的自循环架构，支持自动路径规划、RCE链识别、内网横向推演，并内置红队二次验证机制以降低误报、确保漏洞可复现可利用；通过自监督学习与手法蒸馏实现攻击能力持续进化。平台提供可视化控制台（含攻击图、时间线、资产画像）、自动化HTML交付报告及本地Claude集成，部署基于Kali Linux原生环境，不依赖Docker。适用于授权红队评估、安全众测支撑及攻防教学场景。",2,"2026-09-09 02:30:03","CREATED_QUERY"]