LuaN1ao 安全代理
面向授权渗透测试的可追溯图推理自动化运行时。
- Star 数
- ★ 1.5k
- 最近更新
- 1 个月前
- License
- AGPL-3.0
- 主语言
- TypeScript
- FA 评分
- 57/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配OpenAI API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 企业内部红队在书面授权的 Web 服务范围内,需要把侦察、验证和证据保留在同一可审计运行会话中。
- 不适合
- Windows 用户:v2 未验证 Windows 发布目标
- 希望直接测试生产系统或未授权目标的人
- 源码审查
- 57/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
LuaN1aoAgent v2 是一个以 TypeScript 和 Pi SDK 重写的自治安全研究运行时,面向明确授权范围内的测试任务。它将 Planner、Executor 和 Observer 分离:Planner 管理任务图,Executor 在隔离工作区内执行有界任务,Supervisor 与 Projector 分别负责控制决策和图投影。运行时持久化执行事件、工件、任务图、推理图和操作图,并提供终端时间线与经认证的 Web Workbench 进行观察。Executor 可使用本地检查、受控 shell、Web 获取与搜索、漏洞检索、浏览器渲染及路由管理等能力;Docker 是推荐的隔离和透明网关后端。它适合具备授权目标、可隔离执行环境和 OpenAI 兼容 LLM 服务的安全团队,而不是无边界地扫描生产环境的工具。
用户通过 npm start -- --goal ... --scope ... 提交目标和授权范围后,Controller 调用 Planner 维护 Task Graph,并按依赖关系准入可并发任务。每个 Executor 接收 TaskEnvelope,在任务专属工作区中使用 read、grep、find、ls、bash、web_fetch、web_search、vulnerability_search、browser_render、artifact_read 和 artifact_write 等工具;完成或交接时调用 task_result_submit。Pi 事件会被规范化写入 ExecutionLog,较大输出保存为内容寻址工件;Projector 通过 graph_delta_submit 将观察结果投影为带证据引用的 Reasoning Graph 和 Operation Graph,Supervisor 通过 control_submit 决定继续、检查点、停止或交还 Planner。运行结束可输出最终 JSON 或 JSONL 事件流,也可用 Web Workbench 查看图、事件、工件与网络流量。
- 企业内部红队在书面授权的 Web 服务范围内,需要把侦察、验证和证据保留在同一可审计运行会话中。
- 安全研究人员测试实验室或 CTF 环境时,需要将公开 CVE 线索与对目标的实际验证区分开来。
- 需要并行处理多个相互独立的授权测试任务,同时通过依赖图控制后续验证任务的安全团队。
- 希望在终端实时查看 Agent 意图、工具调用和工件,或在浏览器中审查持久化执行记录的分析人员。
- 需要通过 Docker Gateway、SSH 或 Chisel 路由访问授权内网目标,并保留连接和流量证据的测试人员。
如何安装或部署这个 Agent?
要求 macOS 或 Linux、Node.js 25+ 以及 OpenAI 兼容 LLM API。克隆仓库后执行:
git clone https://github.com/SanMuzZzZz/LuaN1aoAgent.git
cd LuaN1aoAgent
npm ci
npm run build如使用推荐的 Docker 后端,再执行:
npm run build:executor-image
npm run build:network-image在项目根目录创建未提交的 .env:
LLM_API_KEY=your-api-key
LLM_API_BASE_URL=https://api.openai.com/v1
LLM_DEFAULT_MODEL=your-model-id
LLM_API_TYPE=openai-completions也可将 LLM_API_TYPE 设为 openai-responses。
如何使用这个 Agent?
使用明确授权的目标和范围启动一次新会话:
npm start -- --goal "在授权范围内评估 http://<authorized-routable-host>:8080" --scope "仅限 http://<authorized-routable-host>:8080" --max-cycles 8 --max-parallel-tasks 2交互终端会自动显示时间线;使用 --json 获取最终 JSON,或使用 --jsonl 获取持久化事件流。恢复未完成会话时运行 npm start -- --resume 20260720-080000Z-a1b2c3d4,且不要同时传入 --goal 或 --scope。如需审查某个会话,运行 npm run web -- --runtime-dir .agent-runtime/sessions/<session> --port 8787,然后访问 http://127.0.0.1:8787。
这个 Agent 有哪些优点和局限?
- Planner、Executor、Supervisor 和 Projector 具有明确职责边界,任务拓扑、低层工具动作和语义图投影不会混在同一 Agent 历史中。
- 推理图将 Evidence、Hypothesis、Vulnerability 与 Exploit 关联;确认漏洞和成功利用需要证据引用。
- 每个任务保留隔离工作区和同一任务的 Pi 会话谱系,同时用依赖感知调度支持独立任务并发。
- 执行日志、工件、图增量和网络流量均可持久化,并能在终端和认证 Web Workbench 中审查。
- v2 需要 Node.js 25+,仅验证 macOS 和 Linux;Windows 不是已验证的 v2 发布目标。
- 必须配置 OpenAI 兼容 LLM API;公开搜索的完整 Brave API 路径需要
BRAVE_SEARCH_API_KEY或BRAVE_API_KEY,NVD 限流提升需要可选的NVD_API_KEY。 - Executor 能运行 shell 命令并访问网络,文档要求使用隔离主机、VM 或容器,且只能测试获得明确授权的目标。
- Docker 是推荐透明 Gateway 后端;显式 Docker 模式在 Docker 或所需镜像不可用时会失败关闭,v2 的公开可复现基准尚未发布。
这个 Agent 与同类方案有什么区别?
仓库将 v2 与其 v1 分支和 v1.0.0 发布版对比:v1 使用 Python 与 Planner/Executor/Reflector 共享反思循环;v2 使用 TypeScript + Pi SDK、Planner/Executor/Observer、任务/推理/操作三图、任务级会话和认证运行时观测界面。仓库明确说明 v1 的基准结果不能自动归因于 v2。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| LuaN1ao 安全代理 当前 | 57 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.5k | 1 个月前 | TypeScript | OpenAI API |
| DarkMoon 自主渗透测试平台 | 48 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.2k | 9 天前 | Python | OpenAI API · Claude API |
| PentAGI 渗透测试智能体平台 | 44 · 缺口较多 | 自托管服务免费 + 模型费 | ★ 33k | 14 天前 | Go | OpenAI API · Claude API |
| PentesterFlow | 73 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 1.4k | 2 个月前 | TypeScript | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:最小权限原则在沙箱隔离和权限控制方面有较好体现(Docker 容器以 UID 1000 运行、无 capabilities、只读根文件系统、网络命名空间隔离),但缺少对 Agent 自身权限的细粒度限制,如工具调用级别的权限控制。用户确认机制存在但薄弱:CLI 启动时要求显式提供 --scope 和 --goal,但运行过程中没有逐步确认或审批机制。数据流透明度较好:事件日志、图增量、工件等持久化记录,但缺少对数据流向的完整可视化。敏感数据处理较好:凭证以 0600 权限存储且不可搜索,但未提及加密存储。依赖安全性一般:依赖版本部分固定,但未提供依赖漏洞扫描或供应链安全措施。外部影响控制较好:网络流量通过代理和网关进行管控,但未提供回滚机制。回滚能力薄弱:仅支持会话恢复,没有操作级回滚。来源归属一般:未提供明确的作者或维护者信息,仅提及团队。
证据显示:自一致性较好,README 与代码结构一致,测试覆盖了核心功能。依赖可用性一般:依赖了多个第三方库,但未提供依赖的可用性保障或镜像。失败消息较好:测试中验证了错误消息的明确性,如 'No part of the delta was accepted'。
证据显示:目标受众明确(安全研究人员),场景覆盖了授权渗透测试。能力边界清晰:通过 --scope 和 --goal 限制目标范围,工具集受限。触发精度较好:通过结构化工具和 schema 验证确保精确触发。环境适配较好:支持 macOS 和 Linux,但 Windows 未验证。
证据显示:信息架构清晰,README 结构完整。安装说明详细,包括依赖和构建步骤。命名稳定性一般:项目名称和版本号明确,但未提供 API 稳定性保证。示例和 FAQ 较好:提供了快速开始和 CLI 选项。已知限制明确:如 Windows 未验证。许可证为 AGPL-3.0,但未提供版权声明。版本和变更日志缺失:未提供 CHANGELOG。维护责任不明确:未提供维护者信息或贡献指南。
证据显示:输出可用性较好:提供 JSONL 和 TUI 等多种输出格式。边际价值较高:提供了因果图推理和证据保留等创新功能。成本效益较好:自动化渗透测试可节省人力,但需要 LLM API 和 Docker 等资源。
证据显示:声明可追溯性较好:README 中声明了功能,代码和测试支持。跨来源佐证一般:仅依赖单一仓库,未提供外部验证。事实与推断分离较好:明确区分了假设和确认的漏洞。
- 该 Agent 是自主渗透测试工具,必须在授权环境中使用,否则可能违反法律。
- 依赖的第三方技能集合(如 pentest-skills)可能包含恶意内容,需审查。
- 未提供回滚机制,操作失误可能导致不可逆后果。
- 未提供依赖漏洞扫描,供应链风险需关注。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v2.0.0 LuaN1aoAgent v2.0.0
发布说明摘录
LuaN1ao Security Agent v2 is a TypeScript rewrite focused on an observable, resumable Agent Workbench powered by the Pi SDK. Highlights - Planner, Executor, and Observer collaboration with durable runtime state. - Causal Graph Reasoning and Plan-on-Graph dynamic task planning. - Interactive terminal workbench with live reasoning, tool calls, result previews, expandable details, parallel Executor visibility, and reliable interruption. - Web workbench for live traces, task graphs, reasoning graphs, artifacts, sessions, and authentication. …在 GitHub 查看 ↗ -
v1.0.0 LuaN1aoAgent v1.0.0 (Legacy)
发布说明摘录
Legacy Python release of LuaN1aoAgent, preserved before the v2 Agent Workbench release. This release freezes the former main branch at commit 27a4310. Continued v1 maintenance, if needed, is available on the v1 branch.在 GitHub 查看 ↗
常见问题
它能否用于任意公网目标?
运行时会保存什么?
.agent-runtime/sessions/<session>/ 下,包括 state.sqlite、execution.jsonl、graph-deltas.jsonl、工件、任务沙箱、Pi 会话谱系和流量数据。没有 Docker 可以运行吗?
workspace 开发回退,但 Docker 是推荐后端;若显式选择 Docker 且 Docker 或镜像不可用,运行会失败关闭。