渗透测试

更新时间:
复制 MD 格式

企业已部署大量安全防护,但"防护是否真正有效"往往缺乏持续验证手段;传统人工渗透测试成本高、覆盖范围有限。AI 渗透测试(AgenticBAS)通过多 Agent 协作自动模拟真实攻击,7×24 持续验证安全体系有效性,以低成本运营方式驱动安全体系建设与安全运营效能提升。本文介绍如何创建渗透测试任务、配置访问凭证与最大 Credits 用量、查看与验证漏洞,以及计费说明。

什么是Agentic BAS

Agentic BAS是云安全中心提供的智能入侵攻击模拟服务,基于多 Agent 协作,聚焦安全体系有效性验证,通过智能化手段持续评估安全体系的防护能力,驱动安全体系建设和安全运营效能提升。该功能具备以下核心能力:

  • 多Agent“拟人”角色协作:多个 AI Agent 分工协作,模拟真实攻击者的渗透路径和攻击手法。

  • 自主思考与决策:Agent 能够根据目标环境动态调整攻击策略,不依赖固定规则库。

  • 7×24 小时持续验证:支持立即执行或定时调度,持续覆盖安全盲区。

  • 低成本运营,安全稳定:通过 Credits 按量计费模式,相比传统人工渗透测试大幅降低验证成本。

适用范围

  • 资产授权:待测试的目标资产必须是拥有合法授权的 IP 地址或域名。

  • 支持的资产:

    • 云安全中心纳管资产(有公网 IP 的 ECS 主机)。

    • 攻击面管理扫描发现并完成盘点的已归属确认的资产。

    • 自定义资产:仅支持域名,不含 http://、https://、端口或路径。

  • 支持的漏洞检测类型:

    漏洞类型

    说明

    未授权访问

    检测系统中存在的越权或未授权访问漏洞。

    跨站脚本攻击

    注入恶意脚本窃取用户数据。

    SQL 注入

    检测 SQL 注入漏洞。

    Web 请求伪造

    伪造用户请求执行非授权操作。

    通用漏洞

    检测其他常见 Web 安全漏洞。

购买并开通Agentic BAS

  1. 访问云安全中心控制台- Agentic BAS,在页面左侧顶部,选择需防护资产所在的区域:中国内地或非中国内地。

  2. 单击立即购买,跳转至购买页。

    说明

    也可直接访问购买页进行购买。

  3. 在购买页,选择购买时长后,单击立即购买并完成支付。

  4. 返回Agentic BAS首页,可在Credits 使用量/余量区域,查看套餐内 Credits。

    重要

    购买后,默认获得 100 万 Credits(按月过期),超出后自动启用 Credits 按量付费。详细说明,请参见计费说明。

添加白名单

如果在网络环境中部署了 Web 应用防火墙 (WAF)、云防火墙或其他安全访问控制策略,请将扫描器 IP 地址加入目标服务器的访问白名单,避免扫描请求被拦截。

  • 非中国内地:8.219.211.171

  • 中国内地:8.133.212.119 121.40.209.82

创建渗透测试任务

  1. 访问云安全中心控制台- Agentic BAS,在页面左侧顶部,选择需防护资产所在的区域:中国内地或非中国内地。

  2. 单击页面右上角的渗透任务创建。

  3. 在创建渗透测试任务面板中,配置以下参数。

    参数

    说明

    任务名称

    自定义任务名称,最多 128 个字符。

    任务描述

    对本次渗透测试的补充说明,最多 1000 个字符。

    安全漏洞选择

    选择需要检测的漏洞类型,支持多选。可选类型包括:未授权访问、跨站脚本攻击、SQL注入、Web请求伪造、通用安全漏洞。

    渗透要求

    以自然语言描述额外的渗透测试需求或关注点。

    渗透对象选择

    选择检测目标的来源方式。支持以下三种方式:

    • 云安全中心资产:云安全中心纳管资产(有公网 IP 的 ECS 主机),可在左侧资产中心 > 主机资产中查看接入的 ECS 资产。

    • 攻击面归属资产:攻击面管理扫描发现并完成资产盘点的已归属资产,详情请参见边界资产发现。

    • 自定义资产:仅支持域名,不含 http://、https://、端口或路径。单击自定义资产输入框右侧的image,填写域名并完成验证。具体操作,请参见高级配置-配置自定义资产。

    访问凭证(选填)

    用于登录态认证和越权测试,可配置不同身份权限,以保障渗透测试深度。具体操作,请参见高级配置-配置访问凭证。

    说明

    若未添加凭证信息,渗透任务将在无身份认证状态下执行。

    最大Credits用量(选填)

    可选配置。开启后,任务执行过程中当 Credits 用量超过配置的最大值时,将自动终止任务并基于已检出信息生成报告。可拖动滑块(范围 0~5,000,000,默认 500)或直接输入数字设置。

    说明

    由于渗透任务执行存在阶段性用量差异,实际消耗可能略微超出所配置的最大 Credits 用量上限。

    执行方式

    选择任务的执行方式:

    • 立即执行:创建后立即开始渗透测试。

    • 定时单次执行:在指定时间自动开始执行一次渗透测试。

    执行时间

    选择定时执行时,需设置执行时间。执行时间不能早于当前时间。

  4. 确认配置无误后,单击确定。渗透测试任务执行时间较长(可能超过 1 小时),请耐心等待。

    重要

    若任务执行超过 12 小时,系统将自动停止当前任务并将本次任务状态变更为超时。已扫描出的数据将会保留,已消耗 Credits 不会退还。

处理和验证漏洞

查看和处理漏洞

  1. 在任务列表中,单击目标任务名称或操作列的详情。

  2. 在安全漏洞页签,可查看当前任务扫描出的漏洞列表。

  3. 单击漏洞操作列的下载报告,可下载漏洞详情(如端点、发现时间、漏洞发现过程、修复方案等)。

  4. 请根据报告中的修复方案,手动执行修复操作。

    说明

    Agentic BAS暂不支持在控制台直接修复漏洞。

验证漏洞修复情况

手动修复完成后,可返回漏洞列表,验证漏洞是否已完全修复。

  1. 触发验证:

    1. 在任务列表中,单击目标任务名称或操作列的详情。

    2. 在安全漏洞页签,单击目标漏洞操作列的验证。

    3. 在验证详情页,单击右上方的验证。

    4. 漏洞有效性变为验证中,Tea Agent 开始复现验证,验证日志实时写入。

  2. 验证完成:验证完成后,历史验证记录新增一条,Credits 消耗累加到漏洞验证总消耗。验证状态说明:

    • 可利用:验证流程无异常,漏洞经验证可复现、可利用,验证结果已输出至日志中。

    • 不可利用:经验证后漏洞已修复或隔离,无法复现,可通过验证日志做进一步确认修复结果。

      说明

      因网络异常、临时中断等因素无法完全验证,而造成的不可利用,已消耗的Credits不会返还。

  3. 确认漏洞修复结果:在验证日志区域的CONSOLE输出框中,查看验证流程日志。通常会在最有一行输出漏洞修复情况,如“复测结论 ### 漏洞状态:**未修复 (Vulnerable)”。

  4. 下载验证日志:在验证日志区域,单击CONSOLE输出框右上方的下载日志。

查看/下载渗透报告

  1. 在任务列表中,单击目标任务名称或操作列的详情。

  2. 在渗透报告页签在线查看报告,单击右上角下载报告,可将报告下载至本地保存。

管理渗透测试任务

  • 管理单个测试任务:单击目标任务操作列的image,可对渗透测试任务执行以下操作:

    操作

    适用任务状态

    说明

    启动

    待启动

    立即执行当前任务。

    终止

    执行中

    停止正在执行的渗透测试任务。停止后无法恢复,需重新创建任务。

    删除

    非运行中

    删除渗透测试任务及其结果数据。删除后不可恢复。

  • 批量操作:支持勾选多个相同状态的任务后进行批量操作。

    1. 在Agentic BAS任务列表页,勾选多个相同状态的任务。

    2. 单击列表右下角启动、终止、删除。

查看 Credits 消耗

查看任务消耗

  • 查看单个任务消耗:

    1. 在任务列表中,单击目标任务名称或操作列的详情。

    2. 在任务详情页签的任务概况区域,查看Credits 消耗。

  • 查看任务整体消耗:在Agentic BAS首页的Credits 使用量/余量区域,查看套餐内 Credits消耗百分比和剩余量。

查看漏洞验证消耗

重要

漏洞验证消耗Credits与任务执行消耗Credits独立计量。

  1. 在任务列表中,单击目标任务名称或操作列的详情。

  2. 在安全漏洞页签,单击目标漏洞操作列的验证,进入在验证详情页。

    • 验证记录区域可查看Credits总消耗。

      说明

      也可在漏洞列表页的Credits验证消耗列查看验证总的消耗。

    • 在历史验证记录区域,每一条验证记录下方,查看单次验证Credits消耗。

高级配置(可选)

配置自定义资产

若需对自定义资产进行渗透测试,需手动填写域名并完成域名验证。验证通过后,资产会进入自定义资产库,可重复下发任务。

  1. 在渗透任务创建面板的渗透对象选择区域,在自定义资产页签,单击自定义资产输入框右侧的image。

  2. 在新建自定义资产并验证面板,填写待验证的资产域名,单击验证资产。

    说明

    仅填写域名,不含 http://、https://、端口或路径。

  3. 配置域名验证:支持DNS TXT 验证和文件验证两种方式。生成的验证信息有过期时间,请在过期前完成验证。

    警告

    若验证信息已过期,请单击重新验证资产后,使用新的验证信息完成域名验证。

    DNS TXT 验证

    操作步骤

    1. 登录域名解析网站:找到"域名解析""DNS 解析"或"解析记录"等入口,再选择当前需要验证的域名。找不到入口时,请联系域名管理员操作。

    2. 新建并填写 TXT 记录:在添加记录或添加解析页面,根据提供的记录类型(TXT)、主机记录 / Name和记录值 / Value逐项填写。下文以域名解析托管在阿里云云解析 DNS 为例,介绍如何配置 TXT 记录。

    3. 保存记录并等待生效:单击确定或保存,保留这条记录。

      重要

      DNS 解析不会立即生效,等待时间取决于 DNS 服务商和 TTL 配置。

    4. 记录生效后,返回新建自定义资产并验证面板,单击验证并保存资产。

    DNS 配置样例

    本文以域名解析托管在阿里云云解析 DNS 为例。若域名解析托管在其他 DNS 服务商,请在对应服务商的解析设置页面按相同参数添加记录。

    1. 使用域名持有者所在的阿里云账号,登录云解析DNS控制台。

    2. 在域名列表中找到目标域名,单击其操作列下的解析设置,进入解析设置页面。

    3. 在解析设置页面,单击添加记录,按以下说明填写各字段:

      参数

      说明

      记录类型

      选择 TXT。

      主机记录

      粘贴新建自定义资产并验证面板提供的主机记录 / Name。

      记录值

      粘贴新建自定义资产并验证面板提供的记录值 / Value。

      说明

      解析请求来源、TTL 等其他参数保持默认即可。

    4. 填写完成后,单击确定。

    文件验证

    操作步骤

    1. 下载或创建验证文件:单击下载验证文件保存至本地。也可以按照页面提供的上传路径 / 文件名和文件内容手动创建。

      重要

      文件名和文件内容必须与页面提供的内容完全一致,不能重命名、增删内容或添加空格。

    2. 上传到网站的指定位置:

      1. 创建文件保存路径:登录网站服务器、对象存储或建站后台,按照文件内容中的路径说明,逐级创建文件路径(.well-known/pki-validation/)。若已创建,请忽略本步骤。

      2. 放置文件:将验证文件上传至对应的路径。下文将以部署在阿里云 ECS 上的 Nginx(Linux 版本)为例,介绍如何上传验证文件。

    3. 用浏览器检查验证地址:复制页面提供的验证地址,在浏览器无痕窗口中打开。

      重要

      必须无需登录就能直接看到验证文件内容,如果出现 404、403、登录页或跳转页面,请先调整文件位置或访问权限。

    4. 确认浏览器显示的内容与页面提供的文件内容完全一致后,单击验证并保存资产。

      警告

      验证成功前请不要删除或修改文件,否则可能导致验证失败。

    文件上传配置样例

    本文以部署在阿里云云服务器 ECS 上的 Nginx(Linux 版本)为例,介绍如何上传验证文件。若网站部署在其他服务器或对象存储上,请按相同思路将文件放置到上传路径/文件名对应的位置。

    1. 连接 ECS 实例:具体操作,请参见选择ECS远程连接方式。

    2. 创建目录:依次执行以下命令,在服务器的 Web 根目录(Nginx 服务默认为 /var/www/html/)下,按照新建自定义资产并验证面板提供的上传路径(.well-known/pki-validation/)逐级创建目录。若已创建,请忽略本步骤。

      cd /var/www/html
      mkdir -p .well-known/pki-validation
    3. 上传验证文件:可以使用 WinSCP、Xshell 等远程登录工具的文件上传功能,将验证文件上传至上一步创建的目录。具体操作,请参见选择传输文件的方式。

    4. 在浏览器无痕窗口中打开面板提供的验证地址(格式:https://域名/.well-known/aibas-site-verification/文件名.txt),确认可直接访问到验证文件内容。

配置访问凭证

如需应用于登录态认证和越权测试,可为任务配置不同身份权限的访问凭证,以保障渗透测试深度。每个身份只需录入一种访问凭证,切换凭证类型后将仅提交当前选中的凭证。配置访问凭证包含三个步骤:

  1. 凭证选型:根据目标站点的登录方式,选择合适的凭证类型。

  2. 获取凭证内容:按所选类型从浏览器或已授权测试环境中获取待填写的凭证信息。

  3. 配置步骤:在渗透任务创建面板中录入身份信息与凭证内容。

凭证选型

凭证类型

适用场景

常见获取位置

账号/密码

站点可通过标准登录表单完成认证。

测试账号管理方提供。

Cookie

已在浏览器或代理工具中完成登录,希望直接复用登录态。

浏览器 DevTools、Burp、curl。

Local Storage

Token 或身份信息持久化保存在浏览器本地存储中。

DevTools → Application → Local Storage。

Session Storage

Token 仅保存在当前浏览器会话中。

DevTools → Application → Session Storage。

额外 Headers(高级)

站点通过固定请求头传递 Token、租户或身份信息。

DevTools → Network → Request Headers。

配置建议

  • 优先使用临时、最小权限、可随时撤销的凭证,避免使用个人常用账号或生产高权限账号。

  • 测试结束后及时停用临时账号、轮换密码或撤销 Token,并清理不再需要的登录态。

  • 多身份与越权测试:如需进行水平或垂直越权测试,建议至少准备两个权限不同的临时身份,例如:

    • 普通用户A:普通业务权限。

    • 普通用户B:与用户 A 数据范围不同,用于水平越权检查。

    • 管理员:用于比较高、低权限行为差异。

    如果某个登录态同时依赖多种客户端数据,请选择能够独立恢复登录态的主要凭证方式,当前每个身份只会提交一种凭证类型。

获取凭证内容

不同凭证类型的获取位置不同。请先使用已授权的测试账号登录目标站点,再按所选凭证类型获取对应内容。

账号/密码

由测试账号管理方提供授权测试账号,账号和密码均需填写。建议优先使用低风险、最小权限、可随时停用的临时测试账号,不要录入生产高权限账号。

重要

如果登录过程依赖人工验证码、多因素认证或其他交互操作,建议先在浏览器中完成登录,再改用 Cookie、Local Storage 或 Session Storage 复用已有登录态。

Cookie
  1. 使用测试账号登录目标站点。

Local Storage
  1. 使用测试账号登录目标站点。

  2. 打开浏览器开发者工具,进入 Application > Local Storage。

  3. 选择目标站点对应的 Origin。

  4. 逐项复制与认证相关的 Key 和 Value,填入凭证的 Key/Value 输入框。示例如下:

    Key

    Value(示例)

    auth_token

    <temporary-token>

    user_profile

    {"role":"viewer"}

Session Storage
重要

Session Storage 通常与当前会话绑定。重新登录、关闭会话或凭证过期后,原有的值可能已经失效,需要重新获取。

  1. 使用测试账号登录目标站点,并保持当前标签页的会话有效。

  2. 打开浏览器开发者工具,进入 Application > Session Storage。

  3. 选择目标站点对应的 Origin。

  4. 逐项复制与认证相关的 Key 和 Value,录入方式与 Local Storage 相同。

额外 Headers
  1. 使用测试账号登录目标站点。

  2. 打开浏览器开发者工具,进入 Network。

  3. 选择一个已认证的请求,在 Request Headers 中确认用于认证或租户识别的固定请求头。录入示例如下:

    说明

    仅建议录入固定 Header。时间戳、Nonce、一次性 Token、请求体摘要等动态签名字段由站点自身生成,不要作为固定 Header 录入。

    Key

    Value(示例)

    Authorization

    Bearer <temporary-token>

    X-Tenant-Id

    tenant-a

配置步骤

  1. 在渗透任务创建面板中,单击访问凭证区域的添加身份,可为任务配置不同身份权限的访问凭证。

  2. 在添加身份凭据对话框中,配置以下参数后,单击保存身份即可。

    说明

    如需配置多个身份,可再次单击添加身份继续添加。

    参数

    说明

    身份名称

    必填。自定义身份名称,例如管理员、普通用户、测试用户,最多 32 个字符,同一任务内不能重名。

    身份说明

    选填。补充说明该身份的权限特征,例如"仅具备只读权限的授权测试身份",最多 200 个字符。

    选择凭证类型

    必填。单选以下 5 种凭证类型之一:账号/密码、Cookie、Local Storage、Session Storage、额外 Headers(高级)。选型参考,请参见凭证选型。

    凭证内容

    根据所选凭证类型,录入对应的凭证信息。各类型的凭证获取方式和填写要求,请参见获取凭证内容。

常见校验提示与处理方法

提示或现象

处理方法

身份名称已存在

修改为同一任务内唯一的名称。

没有解析到有效 Cookie

检查 名称=值 格式以及英文分号分隔,建议加上 Cookie: 前缀后重试。

请至少填写一组有效的 Key 和 Value

检查 Local/Session Storage 或 Headers 的 Key、Value 是否完整。

任务中仍为未登录态

检查凭证是否过期、Cookie 域和路径是否匹配、Storage 类型和 Origin 是否正确、Key 大小写是否一致。

登录后仍缺少租户或业务权限

检查是否还需要固定租户 Header,或当前测试账号本身是否具备目标权限。

计费说明

计费项

AI 渗透测试采用基础服务订阅 + Credits 按量消耗的混合计费模式。

说明

每次渗透测试任务根据复杂度消耗一定数量的 Credits,用量参考请参见下文。

计费项

计费方式

说明

基础服务订阅费

包年包月

36,800 元/月

重要

开通服务后预送 100 万 Credits(按月过期),超出预送额度后按实际消耗的 Credits 数量按量计费。

超量 Credits

按量计费

0.015 元/Credit。

用量参考

Web 渗透测试场景下,Credits 用量消耗与 Web 点的规模、业务复杂度、安全状态等因素相关。以下 Credits 用量预估仅供参考,具体 Credits 用量以实际渗透任务执行完成后的统计为准。如何查看用量,请参见查看 Credits 消耗。

档位

子链接数

客户端 JS 代码量

Credits 用量参考

小型 Small

< 20

< 150 行 / < 50 KB

5W~35W

中型 Medium

20~50

150~3,000 行 / 50~300 KB

15W~75W

大型 Large

> 50

> 3,000 行 / > 300 KB

50W~300W

到期或退订说明

服务到期或退订后,将立即停止所有渗透测试功能,超量 Credits 的按量计费也会同步停止。具体影响如下:

  • 功能停用:无法创建新的渗透测试任务,已有任务将停止执行。

  • 计费停止:超量 Credits 的按量付费立即终止,不再产生新的后付费账单。

到期

  • 到期前提醒:服务到期前 7 天,系统将通过短信和邮件发送到期提醒,请在费用与成本中心及时续费,避免服务中断。

  • Credits 处理:

    • 到期后,套餐内预送的 100 万 Credits 将自动清零,不可延期、不可转移,到期前未消耗完的 Credits 不予退款。

    • 到期当日产生的超量 Credits 费用,将在次日出具按量付费账单。

  • 数据清理:到期后渗透任务数据保留 15 天,15 天后释放实例并进行历史数据清理。15 天内重新购买服务,历史渗透任务数据可恢复;超过 15 天未续费,数据将被永久删除,无法恢复。

退订

Agentic BAS暂不支持退订。如有需要,请联系商务经理进行人工退订。

常见问题

  • 云安全中心的弹性防护开关关闭后,影响Agentic BAS的按量付费吗?

    不影响。Agentic BAS的 Credits 超出后,自动启用按量付费,属于独立计费逻辑,不受弹性防护开关控制。

  • Agentic BAS支持单独关闭 Credits 按量付费模式吗?

    不支持。

  • 渗透测试任务执行需要多长时间?

    单次任务执行时间通常较长(可能超过 1 小时),具体取决于渗透目标对象的规模体量、业务复杂度和安全状态。任务完成后可在任务详情页查看结果。

  • 渗透测试扫描会对业务造成影响吗?

    AI 渗透测试采用非破坏性检测方式,不会对目标系统的正常运行造成破坏性影响。但如果网络环境中部署了 WAF、云防火墙等安全策略,建议提前将扫描器 IP 加入白名单,避免扫描请求被拦截,影响渗透测试效果。

  • 预送 Credits 不够用时怎么办?

    预送 100 万 Credits 用完后,系统将自动启用 Credits 按量付费模式,无需手动开通,服务不会中断。可在Agentic BAS首页查看 Credits 消耗情况。

  • 渗透测试发现问题后是否支持直接修复?

    不支持。Agentic BAS仅提供漏洞检测和报告下载功能,需根据报告中的修复方案手动执行修复操作。