看看 Web Agentic Deep Scan 报告是什么样子

这是一份针对 VulnBank(一款故意设置漏洞的银行应用)及其 API 的 227 页评估报告。它展示了每个发现如何通过可重现的请求加以验证、评分,并追溯到根本原因。

目标
VulnBank Web 应用和 API
扫描
Web Agentic Deep Scan
篇幅
227 页
结果
整体风险:严重

基于故意设置漏洞的演示目标,不含任何客户数据。

发现详细分析发现汇总封面和风险等级

报告内容

执行摘要

在报告开头呈现整体风险、主要攻击路径和优先修复事项。

发现汇总表

每个发现的风险等级、CVSS 评分、状态和简短说明。

已验证的漏洞利用

对主要严重和高危问题的详细分析,附有证据和业务影响。

修复方法

每个发现的根本原因和修复方法,并附可重复执行的复现步骤。

带注释的发现

逐步解读一个发现

展示报告如何把一个发现从测试目标一路跟到修复方案。每一步都标注了它在完整报告中的页码。

  1. 目标

    vulnbank.org,一个在线演示银行

    一个为安全培训而故意设置漏洞的网上银行应用及其 API,在真实环境中测试。报告记录了它的功能和扫描观察到的技术栈。

    报告第 2 页
  2. 范围

    一个域名及其上发现的所有端点

    登录、转账、贷款、卡片、上传、管理后台和 AI 代理 API,于 2025 年 12 月 14 日至 2026 年 3 月 16 日在未提供测试凭据的情况下测试。子域名不在范围内。

    报告第 2 页
  3. 方法

    每个发现都附带证据

    代理会探索应用并逐一尝试攻击。已确认的发现包含可复现的请求和验证尝试;无法确认的线索会被标记为潜在问题。

    报告第 7 页
  4. 流程

    登录与访问控制

    该发现位于保护每个请求(包括管理功能)的登录和授权层。

    报告第 48 页
  5. 发现

    严重(CVSS 9.8):访问令牌未经验证

    服务器在接受访问令牌时没有检查其真实性,因此无需账户即可访问管理后台和执行管理操作。

    报告第 48 页
  6. 证据

    证明问题的请求与响应

    报告展示了扫描中经过精简的请求和响应:没有有效令牌的请求被拒绝,随后检查被绕过,管理操作执行成功。

    报告第 49 页
  7. 修复

    验证每个令牌,并在服务器端检查角色

    报告将漏洞追溯到两个原因:令牌在解码时没有验证签名,以及授权直接信任令牌中的 is_admin 值。修复方法:验证每个签名,并在服务器端加载用户角色。

    报告第 58 页
  8. 状态

    评分、归类与跟踪

    发现列表为每个问题列出风险等级、CVSS 评分、状态和简短说明。

    报告第 20 页

代理如何判断

为什么这是真正的风险

扫描器会报告所有匹配规则的内容。代理在报告之前,会先确认一条线索确实会造成实际危害,并逐一排除无害的解释。以下是它对 vulnbank.org 上一个发现的推理过程。

  1. 第 1 步

    为什么余额页面无需登录就有响应?

    在没有令牌和 Cookie 的情况下,GET /check_balance/<账号> 返回了 200,并显示了另一位用户的用户名和余额。

    报告第 23 页
  2. 第 2 步

    会不会是缓存的副本?

    代理带上 no-cache 请求头和唯一的 nonce 重新发送了请求。响应显示 cf-cache-status: DYNAMIC,说明它来自服务器,而不是缓存。

    报告第 24 页
  3. 第 3 步

    是不是只是对令牌比较宽松?

    使用伪造令牌 Bearer invalid 的请求得到了同样的 200 和同样的数据。该端点根本不检查令牌。

    报告第 24 页
  4. 第 4 步

    这是真实数据还是固定的演示数据?

    代理以一位用户身份登录并转账 12.34,然后在未登录的情况下读取该用户的交易记录,新交易就在其中。

    报告第 25 页
  5. 第 5 步

    问题出在哪里?

    POST /transfer 会以 401 拒绝没有令牌的请求,说明认证机制存在,但没有应用到这两个读取接口上。API 规范中也将它们标记为无需任何安全验证。

    报告第 26 页
  6. 第 6 步

    那么,这是风险吗?

    是的,严重(Critical)。互联网上的任何人都能读取账户余额和交易历史,并利用 200 与 404 响应的差异找出有效的账号。

    报告第 27 页
  7. 第 7 步

    如何修复?

    在两个端点上都要求有效令牌,缺少时返回 401。然后确认账户属于调用者,否则返回 403。

    报告第 27 页

想为您自己的应用获取这样的报告?

预约演示,我们将为您讲解对您的移动应用、Web 应用或 API 的扫描。