Show HN: 我们后训练了一个可进行渗透测试而非拒绝的模型

Hacker News Top 工具

摘要

ArgusRed 是一个 CLI 工具,使用后训练的 AI 模型对代码库进行安全扫描和渗透测试,输出详细的 Markdown 报告。它提供两种模式:安全扫描(只读)和渗透测试(主动利用),并可选择性地进行利用验证。

<p>Anthropic 和 OpenAI 公开可用的模型都有明确的安全限制,因此它们会拒绝执行攻击性任务。而它们专注于网络安全的模型则对企业级用户受限开放。这导致中小企业和中端市场暴露于重大漏洞之中。</p><p>在网络世界中,AI 既可以作为攻击工具也可以作为防御工具。最坏的情况是只有攻击者才能使用它。</p><p>与此同时,大多数现有的 AI 网络安全工具只是封装器。问题在于它们仍然保留着基础模型中的所有安全限制,从而继承了其拒绝行为。</p><p>在这个项目中,我们基于十年的夺旗赛(CTF)题目后训练了一个特定模型。这个模型不会向所有人开放,但我们认为负责任的中小企业和中端市场公司也需要使用这些工具来识别其系统中的关键漏洞,而不仅仅是大型企业。</p><p>我们开发了两种 CLI 模式:</p><p>• 安全扫描:对本地代码库进行只读审计,查找漏洞。它只报告能够关联到具体文件和行的内容,因此你无需在基于感觉的发现中费力筛选。</p><p>• 渗透测试:一种主动攻击模式,会在沙盒环境中尝试攻破运行中的系统。它通过实际运行漏洞利用并展示发送的请求和代码返回的响应来证明每个漏洞,而不是给出置信度分数。目前为受限使用。</p><p>为了展示扫描的功能,我们将其指向了 Bank of Anthos,发现了一个转账路径中的整数溢出:amount 是一个整数,amount + fee 可能溢出为负数,因此余额检查通过,你可以转移不属于你的资金。此外还有常见的身份验证和密钥问题。(Bank of Anthos 是 Google 的开源银行应用。这是一个已知的应用,其中部分功能故意薄弱,这正是关键所在:你可以克隆它并自行重新运行扫描,而不是相信截图。)</p><p>基础模型是 Kimi K2.6(开放权重)。我们没有从头预训练。我们自行进行了后训练:先在 CTF writeups 上进行 SFT,然后使用可验证奖励的强化学习针对实际的漏洞利用检测进行训练。</p><p>工作框架的工作原理:</p><p>除了模型之外,我们还构建了支持它的工作框架。该工作框架运行在多智能体集群上:一个编排器将任务分配给并行运行的子智能体,每个子智能体负责一部分,然后综合生成一份报告。</p><p>CLI 是一个本地二进制文件(通过 brew/curl 获取)。它在本地读取你的代码,然后通过 TLS 将上下文发送到我们的推理 API——你可以用 tcpdump 抓取它,从而准确看到什么数据离开了哪里。安装是免费的;你可以免费运行扫描最多 200 万 token,超出后需要付费。</p><p>完全披露:这是 Cosine(YC W23)的产品的一部分。</p><p>有待讨论:工具的安全性,例如域名验证是一种证明控制权但不一定证明权限的方法。既然如此,你会如何限制渗透测试工具的使用?</p>
查看原文
查看缓存全文

缓存时间: 2026/06/20 20:17

# argusred — 安全扫描与渗透测试 · ArgusRed 来源:https://www.argusred.com/cli ## 审计你的代码。或者攻击它。一个 CLI 两种模式。 **安全扫描**读取代码。 **渗透测试**对你授权的系统尝试漏洞利用。 $ `brew install CosineAI/argusred/argusred && argusred` $ `curl -fsSL https://raw.githubusercontent.com/CosineAI/argusred-dist/main/install.sh | sh` PS> `Windows 支持即将到来。` 选择模块,设置代理的权限,可选启用漏洞利用验证,然后运行。输出为 Markdown 报告 —— 包含每个能在代码中落地的问题的位置、严重等级、原因及修复方向。 **免费安装。** 首次运行会快速引导**Cosine 注册** —— 与运行 Cosine 编码代理相同的登录方式 —— 新账户获赠**200 万免费 Token**。 $ `cd path/to/your/repo` $ `argusred` → 首次运行会打开 Cosine 注册 —— 你从 200 万免费 Token 开始。 ### 扫描运行前 argusred v2.0.19 · 安全扫描 · 设置 扫描范围 —— 8 个模块中 5 个已激活 [×] 依赖漏洞分析 [×] 密钥与凭证检测 [×] SQL 注入 / XSS 向量 [ ] 认证与会话流程 [×] 输入验证与清理 [ ] CORS 及 CSP 配置错误 [ ] 加密弱点扫描 [×] 文件权限与访问控制 漏洞利用验证 可选择在初始报告后尝试安全复现来验证已报告的结果。 漏洞利用验证 (•) 禁用 ( ) Docker ( ) 实时文件系统 代理权限 终端访问 ( ) 启用 (•) 禁用 ( ) 沙盒化 网络请求 ( ) 启用 (•) 禁用 ( ) 沙盒化 文件写入 ( ) 启用 ( ) 禁用 (•) 沙盒化 滚动 0% · a 开始 · tab 下一个 · shift+tab 上一个 · q 退出 ### 验证发现。不是只报告一个漏洞——**证明它**。 开启**漏洞利用验证**,代理会在初始报告*之后*尝试安全复现每个发现,这样你看到的是已确认的,而非理论上的。 - **Docker** —— 复现在从你的仓库启动的临时隔离容器内运行。不会触及你的宿主机;完成后容器被销毁。 - **实时文件系统** —— 复现在你的实际签出目录中运行,用于那些仅在真实环境中才能显现的发现。你的代码保持只读 —— Go 守护程序仍会阻止写入。 - **禁用**(默认)—— 仅报告,不尝试复现。 ### 查看输出。阅读示例报告。 `argusred/scan-2026-06-05.md` # Bank of Anthos — 安全审计报告 29,846 行代码 / 391 个文件 · 8 个模块中 6 个已启用 --- ## 1. 高管摘要 整体风险评级:**严重** 存在多个严重和高危漏洞: - **每个账本服务均可伪造令牌** —— `balancereader`、`transactionhistory` 和 `ledgerwriter` 使用单个共享 RSA 公钥验证 JWT,未绑定发行者(iss)或受众(aud)声明。结合仓库中硬编码的私钥(见下文),离群签发的令牌可通过所有服务的验证并授权任意账户;每个服务的安全性被简化为“你是否拥有该仓库”。 - **前端认证助手禁用了 JWT 签名验证** - **金融交易验证中的整数溢出**导致余额绕过 - **OAuth 同意流程中的 SSRF 和开放重定向** - **登录流程中凭据以 URL 查询字符串传输** - **版本控制中硬编码的密钥**,包括用于签署 JWT 的 RSA 私钥 [已截断 —— 完整报告包含每个模块的发现] 观看扫描运行 · 1 分 26 秒 ### 不会做的事。 - **不会修改你的代码。** 只读由模型底层的 Go 守护程序强制执行 —— 每次工具调用在执行前都会被拦截;变异操作(文件写入、命令执行)将被确定性阻止,无论模型想要什么。 - **没有模糊测试、DAST 或实时漏洞利用。** 主动测试位于渗透测试模式(https://www.argusred.com/cli#)中。 - **不会包含无法在你的代码中落地的发现。** 没有“感觉式”漏洞。 ### 快速问答。 **一次扫描需要多长时间?** 两个参考点:Bank of Anthos(约 3 万行代码、6 个模块)的扫描大约 10 分钟完成;Symfony(约 150 万行代码)的完整扫描用了约 40 分钟。时间随着代码库大小呈次线性增长,因为模块以并行方式运行;TUI 会在开始前显示实时预估时间。 **输出文件是什么?** 一个 Markdown 文件,位于 `.argusred/scan-<date>.md`,包含高管摘要、每个模块的发现、位置、严重等级、原因和修复方向。文件保存在你的机器上。 **费用如何?** 安装**免费**,首次运行会在新 Cosine 账户中存入**200 万免费 Token** —— 足够在一个真实仓库上试用。之后,扫描将使用同一登录下的 Cosine 用量运行,该登录也用于运行 Cosine 编码代理。一个账户,两款产品。 相同的 CLI,第二个标签页。 这个 swarm 转向对你授权的系统发起攻击 —— 不仅读取代码,还尝试漏洞利用。 由于安全影响真实存在,进入需预约;在运行任何内容之前,需书面确定靶标、范围和授权。 ### 渗透测试运行前 argusred vnightly-906 · 渗透测试 · 设置 靶标 仅添加你被授权测试的系统。按 `a` 添加主机或 URL。 ○ 尚未添加任何靶标 Effort 被动 积极 侦察 轻量▲ 中等 深度 积极 使用构造的载荷进行主动探测。可能触发 WAF 规则或速率限制。无破坏性操作。适用于预发布环境。 [×] 端口与服务指纹识别 [×] 标头与 TLS 分析 [×] 目录与端点枚举 [×] 载荷注入(SQLi、XSS、SSTI) [ ] 暴力凭证喷洒 —— 深度 [ ] 漏洞利用链构造 —— 积极 [ ] 拒绝服务弹性测试 —— 积极 代理权限 终端访问 (•) 启用 ( ) 禁用 ( ) 沙盒化 网络请求 (•) 启用 ( ) 禁用 ( ) 沙盒化 文件写入 ( ) 启用 ( ) 禁用 (•) 沙盒化 预估 靶标:0 台主机 Effort:中等(4 种技术类别) 预估时间:~1 分钟 代理循环:~2-3 轮迭代 ▶ 开始渗透测试 取消 s 开始 · tab 下一个 · shift+tab 上一个 · 1/2 模式 · a 添加靶标 · q 退出 ### 查看输出。阅读示例会议摘要。 `argusred/pentest-2026-06-08.md` # api.your-app.com — 渗透测试预约 2A4F · 2026-06-08 · 4h22m · 中等努力 --- ## 高管摘要 状态:**2 个严重、1 个高危、3 个中危** —— 全部可复现。 范围:2 台主机、47 个端点。超出范围的项目已推迟并标记到下次会议。 --- ## 已确认漏洞 **1. JWT 签名绕过**(严重 · CVSS 8.6) `POST /v1/sessions/refresh` —— 伪造令牌,签名验证被禁用,返回 200 OK,包含管理员权限。附有复现脚本。 **2. OAuth 同意重定向导致的 SSRF**(高危 · CVSS 7.4) `/oauth/authorize` 上的开放重定向解析了任意内部 URL。附有复现步骤。 [已截断 —— 完整摘要包含每个发现的证据和修复建议] ### 不会做的事。 - **不会在没有签署授权的情况下运行。** 预约是法律步骤 —— 靶标、时间盒和允许的操作在运行前已书面确定。 - **不会扩大范围。** 仅限已授权的靶标,即使旁边出现了有趣的目标。 - **不会在预约的时间盒之外继续运行。** 努力水平在预约指定处停止。 - **不进行权限提升。** 如果某个发现需要比预约更深的访问权限,它会停止并在会议摘要中注明。 ### 快速问答。 **这与扫描有何不同?** 扫描读取代码并根据已有内容推断。渗透测试则是对你授权的运行系统实际尝试漏洞利用 —— 不同的二进制模式、不同的代理行为、不同的交付物(会议摘要而非审计报告)。 **范围如何确定?** 你在预约时提供主机/端点以及书面同意。代理的网络范围限制在此列表中 —— 它无法访问任何其他内容,即使某个发现建议应该访问。 **费用如何?** 根据预约情况按次决定。范围和努力水平决定了时间盒;时间盒决定了价格。 ## 它是一个封闭的二进制程序,基于 Cosine 自有模型构建。 `argusred` 运行在 **Cosine 为攻击性安全后训练** 的模型上,而不是一个提示包装器后面的现成 API。我们训练它是因为现成模型会拒绝此产品所做的工作 —— 一个不愿意读取你代码中值得攻击的部分的安全扫描仪不是真正的安全扫描仪。 安全性不是一层你可以说服模型绕过的拒绝。**它是位于模型下方的一个 Go 守护程序,在执行之前拦截每次工具调用。** 在安全扫描模式下,该守护程序确定性阻止变异工具(文件写入、命令执行),无论模型想要什么 —— 只读是一个守卫,而非一个标志。 在渗透测试模式下,相同的守护程序将网络出口限制为你预约时授权的靶标。 你用 `brew` 或 `curl` 安装的二进制程序与我们内部运行的是同一个。 它**不是开源的**。它在你的机器上本地运行。 你可以在防火墙后运行 `argusred`,并用 `tcpdump` 观察它在信任真实代码前的行为。

相似文章

OpenAI Red Teaming Network

OpenAI Blog

OpenAI 推出红队测试网络,从多个领域的专家和不同视角众包对 AI 模型的对抗性测试。该计划接受持续申请,提供灵活的时间承诺(每年仅需 5 小时),提供报酬,并强调安全专业知识和来自代表性不足群体的背景。

免费AI代理安全评估

Reddit r/AI_Agents

Antitech 为AI代理提供免费的早期安全评估服务,针对提示注入、工具滥用、数据泄露等攻击向量进行测试,并提供漏洞报告和参与折扣。