SuperAPI AI 工具集

alibabacloud-ddos-security-monitor

安全与审计

查看项目

更新于 10-15 12:04

技能介绍

用途

该技能对阿里云账号下的 DDoS 安全产品执行安全巡检与监控,覆盖三类产品:DDoS 基础防护、DDoS 原生防护、DDoS 高防(Anti-DDoS Pro/Premium)。整个巡检完全通过阿里云 CLI 直接调用 OpenAPI 完成,不使用任何脚本或 SDK。整体架构为:antiddos-public(基础防护)+ ddosbgp(原生防护)+ ddoscoo(高防)→ CLI OpenAPI → 巡检报告。

覆盖的产品与 API

  • DDoS 基础防护:CLI 代码 antiddos-public,用于 ECS/SLB 等默认免费防护,地域参数为 --ddos-region-id。
  • DDoS 原生防护:CLI 代码 ddosbgp,付费升级,提供原生 IP 级防护,地域参数为 --biz-region-id 或 --region。
  • DDoS 高防(Anti-DDoS Pro/Premium):CLI 代码 ddoscoo,提供专用高防 IP、L4/L7 防护,地域参数为 --region。

技能强调严格的产品路由隔离:三类产品的 API 绝不能混用,不得用 ddoscoo API 替代 ddosbgp 查询,反之亦然,一旦检测到混用立即中止。此外,ddosbgp 的 describe-instance-list 默认端点不支持中国大陆地域,所有该调用必须指定 --endpoint ddosbgp.cn-hangzhou.aliyuncs.com。还需注意易混淆 API:原生防护攻击事件使用 ddosbgp describe-ddos-event(单数),高防攻击事件使用 ddoscoo describe-ddos-events(复数),两者不可互换。

前置条件

  • Aliyun CLI 版本需 >= 3.3.3。
  • 需要配置凭证,可通过 aliyun configure list 验证。
  • 需要相应的 RAM 权限。
  • 权限失败处理:遇到权限错误时,先阅读 references/ram-policies.md,使用 ram-permission-diagnose 技能诊断,并暂停直到用户确认权限已授予。
  • AI-Mode 生命周期:在任何 CLI 调用前启用,并在每个退出点禁用。

参数确认

所有用户可自定义参数必须在执行前与用户确认,包括:巡检产品范围(可选,默认全部)、时间范围(可选,默认最近 24 小时)、对比模式(可选,默认日环比,支持日环比/周环比/自定义)、基础防护实例类型(可选,默认 ecs,支持 ecs/slb/eip/ipv6/swas/waf/ga_basic)。

地域策略

  • ddosbgp 地域遍历采用动态加硬编码回退:硬编码基线为 12 个地域(cn-hangzhou、cn-shanghai、cn-beijing、cn-shenzhen、cn-hongkong、ap-southeast-1、ap-southeast-2、ap-southeast-3、ap-southeast-5、ap-northeast-1、us-west-1、eu-central-1),不得减少;动态扩展通过 aliyun ddosbgp describe-regions 获取并与基线取并集(只增不减),动态获取失败则直接使用基线。最终列表需 >= 12 个地域,且必须全部遍历,不得因空结果或错误而中断。
  • antiddos-public:仅从 cn-hangzhou 集中查询。
  • ddoscoo:必须同时查询 cn-hangzhou 和 ap-southeast-1。

核心巡检流程

阶段一:环境、凭证与权限预检

检查 CLI 版本并启用 AI-Mode,设置全局超时和自动插件安装,检查凭证配置,并对每个产品执行一次权限验证调用。若任一预检连续失败 3 次,则关闭 AI-Mode、输出错误报告并终止。

阶段二:产品资产盘点(多地域强制遍历)

循环规则:所有地域都必须查询,遇到任何错误(InvalidRegionId/Empty/Throttling)都要记录并继续,禁止中断或退出。循环后需验证执行数:ddosbgp >= 12,ddoscoo = 2。每次调用后立即记录结果,禁止依赖记忆。空结果处理:Total 为 0 时记录“无实例”并继续;出现错误码时记录错误并继续;正常时提取实例 ID。遍历后整理“地域 → 实例 ID 列表”映射供阶段四使用。

具体包括:基础防护资产查询;原生防护在单个 bash 中执行完整地域循环;原生防护关联 IP 查询(按发现的实例,使用 --biz-region-id);高防实例查询(必须查询两个地域);高防关联域名查询(按发现的实例)。

结束验证:1)地域数量 ddosbgp >= 12、ddoscoo = 2;2)产品隔离,无混用 API 前缀;3)实例去重,全局实例(CoverageType=4)会出现在每个地域,需按 InstanceId 去重。

阶段三:确认对比周期

向用户询问对比周期,解析为秒级 Unix 时间戳。必须使用 bash date 命令计算,禁止手工计算。支持日环比、周环比(偏移 604800 秒)、小时环比(偏移 3600 秒)。

阶段四:执行巡检并生成报告

顺序执行守卫:对每个实例严格按顺序执行 API 链,不得停留在“规划”阶段,每个 API 都必须有实际执行的 aliyun 命令和可见输出。每个子步骤完成后打印完成标记。

  • 4.1 基础防护巡检:有资产用真实 ID,无资产用探针调用(--instance-id dummy)。强制检查点:确认 describe-ddos-event-list 返回 JSON 或明确错误,否则重试,未确认前不得进入 4.2。
  • 4.2 原生防护巡检(仅 ddosbgp API):攻击事件用 describe-ddos-event(单数),L4 流量必须调用 describe-traffic。地域参数:describe-ddos-event/describe-pack-ip-list 用 --biz-region-id,describe-traffic 用 --region。有实例则每实例调用全部 3 个 API;全部为空则在 cn-hangzhou 执行 3 个探针调用。强制检查点:必须验证 3 个 ddosbgp API 均已实际执行,缺失则立即补执行,连续两次失败则输出错误日志并终止。
  • 4.3 高防巡检(仅 ddoscoo API):有实例则每实例调用全部 API;两个地域均为空则在 cn-hangzhou 执行探针调用。涉及 describe-ddos-events、describe-domain-qps-list、describe-port-flow-list、describe-domain-status-code-list(query-type 分别为 gf 和 upstrem)。强制检查点:验证全部 5 个 ddoscoo API 均有终端输出,缺失则立即执行。
  • 4.4 周期对比分析:变化率 =(基准 - 对比)/ 对比 × 100%。阈值:±30%~±100% 为关注,>±100% 为异常,出现黑洞/清洗为异常。
  • 4.5 报告输出:必须遵循报告模板,不得省略章节,按地域分组资产。数据一致性校验包括:汇总数字与明细列表计数完全一致;跨地域相同实例/IP 去重后再计数;空值标注硬规则(空数组 [] 写 0(API 返回为空)或 Query failed(ErrorCode: XXX),禁止使用“未发现异常”等模糊表述,关键指标空数据必须在章节开头标注 [DATA MISSING]);交叉验证汇总总数等于各地域明细之和;调用记录验证,声称的 API 调用与结论必须与实际执行一致,禁止编造;原始数据绑定,从终端输出复制粘贴精确值,禁止凭记忆推断。

预计算验证(硬性阻断):禁止直接写 echo "<数字>" 预填值,必须使用 grep/jq/wc 解析实际终端输出或保存的日志。验证脚本必须包含管道命令提取真实数据,纯 echo 数字视为编造并中止。与报告草稿不匹配则中止、重新遍历日志、重新运行。报告必须引用验证输出片段。

清理

强制退出保护:无论退出原因(成功、失败、取消、超时),最后一步必须无条件执行 AI-Mode 禁用并验证。验证成功才可写“AI-Mode confirmed disabled”;若状态命令和 configure list 均无法确认,则写“AI-Mode disable executed but verification inconclusive (CLI compatibility issue)”,不得声称已确认。

参考资料

技能附带以下参考文件:CLI 安装指南、RAM 权限策略、API 参数参考、CLI 命令表、巡检报告模板、验证方法、验收标准。

适用场景与限制

适用于需要对阿里云账号下 DDoS 安全产品进行定期或按需安全巡检、资产盘点、攻击事件与流量分析、周期对比的场景。限制包括:依赖 Aliyun CLI 3.3.3 及以上版本、需配置凭证和 RAM 权限、必须启用 AI-Mode 并在退出时禁用、严格的产品 API 隔离与地域遍历要求、报告数据必须来自实际终端输出不得编造。