☰
第8章_阶段7_输出与监控
2026/10/7 2:47:20 网站建设 项目流程

第8章 阶段7:输出与监控

本篇定位:子域名挖掘流程的最后一个阶段。前面六步是一次性挖掘——从准备到 HTTP 探测,拿到一份资产清单。但子域名不是静态的——目标天天在上线新服务、下线旧服务、变更 IP。一次挖掘的成果会过期。这一步把成果变成"持续跟踪的资产清单"。

阅读建议:如果你搭过资产监控流水线,可以跳到 8.3 差异对比看变更检测方法。如果是新手,按顺序读——8.1 到 8.3 是输出与监控的三道工序,缺一不可。


8.0 方法论框架

输出与监控在全局流程里的位置:

阶段6:HTTP 探测(带价值分级的子域列表) ──→ 【阶段7:输出与监控】 ──→ 闭环 │ ├── 结果归档(结构化资产清单) ├── 定期复扫(重跑流程,发现变化) ├── 差异对比(新增/下线/变更) └── 自动化流水线(定时任务+脚本+告警) │ └── 新增子域 → 回流到阶段2(重跑被动发现)

什么是输出与监控

输出与监控(Output and Monitoring),指的是把一次性挖掘的成果归档为结构化资产清单,定期重跑挖掘流程,对比新旧清单发现变化,持续跟踪目标的攻击面。

为什么不是终点

子域的变化频率后果
新上线天/周攻击面扩大——新服务可能有新漏洞
下线周/月旧资产可能被接管——悬挂 DNS
IP 变更月原 IP 失效,新 IP 要重新评估
状态码变更天/周原本 404 的变 200——新服务上线

关键认知:一次挖掘的成果是"快照"——记录了某个时间点的攻击面。快照会过期。持续监控的价值是"发现变化"——新上线的子域往往是高价值目标(新服务、新漏洞),下线的子域可能有接管风险。

一次挖掘 vs 持续监控

对比一次挖掘持续监控
目标拿到全量资产清单跟踪攻击面变化
频率一次性定期(周/月)
输出资产清单差异报告
价值知道"现在有什么"知道"新增了什么、下线了什么"

三个环节概览

输出与监控

结果归档

字段规范

格式选择

分级标注

去重合并

定期复扫

扫描频率

扫描范围

重跑流程

资源规划

差异对比

新增子域

下线子域

变更子域

差异处理

监控的本质

关键认知:监控是整个流程的闭环。前面六步是线性的——从准备到 HTTP 探测,走一遍就结束。监控把线性流程变成循环——每次复扫发现新子域,新子域回到阶段2重跑被动发现,又可能发现更多——流程是循环的,不是一次性的。


8.1 结果归档

前置知识

资产清单概念

资产清单(Asset Inventory)是一份结构化的记录,列出目标的所有已知资产——子域名、IP、服务、价值等级。它的作用是"当前状态的基准线"——没有基准线,无法判断什么是"新增"的。

是什么

把前六步的成果整理成结构化的资产清单,作为后续差异对比的基准。

为什么

没有归档的结果会散乱、丢失、无法对比。前六步跑完,你可能有一份子域列表、一份 IP 列表、一份价值分级——但如果字段不统一、格式混乱、分散在多个文件里,下次复扫后没法对比。

怎么做

第一步:字段规范

资产清单的字段分四类(完整字段表见流程总结):

类别包含字段说明
基础信息子域名、根域名、发现来源、发现时间子域的身份证
DNS 信息A 记录 IP、CNAME 链、NS 记录子域的 DNS 状态
HTTP 信息协议、状态码、标题、响应体大小子域的 HTTP 状态
价值信息价值等级、风险标注、建议动作子域值不值得打

第二步:格式选择

格式优点缺点适合场景
CSV简单、Excel 能开不支持嵌套小规模、人工查看
JSON支持嵌套、程序友好体积大自动化处理
数据库可查询、可对比要搭建大规模、长期监控

第三步:分级标注

把 HTTP 探测的价值分级写入清单:

等级标注处理优先级
高价值重点跟踪优先处理
中价值常规跟踪常规处理
低价值定期检查低频处理
信息价值记录不处理
CDN 后标注 CDN需绕过处理

第四步:去重合并

多源结果合并去重——同一个子域从多个方法发现,合并为一条记录:

子域来源合并后
api.example.comCT, 搜索引擎, 字典爆破来源=CT+SE+爆破

技巧

技巧做法价值
标准化字段所有子域用统一的字段名和格式下次对比时能自动匹配
时间戳记录每条记录标注发现时间和最后验证时间区分历史数据和当前数据
来源追溯记录每个子域从哪些方法发现的评估可信度
历史数据保留旧清单不删——存档用于长期趋势分析

注意事项

事项说明
字段不统一难对比这次用subdomain,下次用host——对比不了
历史数据要保留不要用新清单覆盖旧清单——存档保留
敏感信息脱敏资产清单可能包含敏感信息——分享时脱敏
去重不要过度同一子域不同 IP 都要保留(负载均衡)

8.2 定期复扫

前置知识

攻击面变化概念

目标的攻击面不是静态的,它在持续变化:

变化类型触发场景频率
新上线新服务部署、新域名解析天/周
下线旧服务下架、域名删除周/月
IP 变更服务器迁移、CDN 调度月
状态码变更服务恢复/故障、配置修改天/周

是什么

定期重跑挖掘流程(阶段2-6),发现新增和变更的子域。

为什么

一次挖掘的成果是快照,会过期。目标天天在上线新服务、下线旧服务。新上线的子域往往是高价值目标——新服务可能有未修复的漏洞。下线的子域可能有接管风险——悬挂 DNS。

怎么做

第一步:扫描频率

频率适合目标资源消耗
周级高价值目标、频繁更新的业务高
月级常规目标中
季度级低频更新的目标低

建议分级设定频率——高价值目标周级,中价值月级,低价值季度级。

第二步:扫描范围

范围做什么资源消耗
全量扫描重跑完整的阶段2-6高
增量扫描只跑被动发现(阶段2)+ DNS 清洗(阶段5)低

建议增量优先——先用低成本的方法发现新增,再对新增的做完整流程。

第三步:扫描流程

定期复扫流程: 1. 重跑阶段2(被动发现)→ 拿到新清单 2. 和旧清单对比 → 发现新增子域 3. 对新增子域跑阶段3-6 → 拿到价值分级 4. 对旧清单做 DNS 清洗(阶段5) → 确认旧子域是否仍存活 5. 更新资产清单

第四步:资源规划

资源月级扫描消耗周级扫描消耗
时间2-4 小时每周 1-2 小时(自动化后)
API 配额SecurityTrails 50次/月要升级或分摊
带宽HTTP 探测的请求量同上
DNS 查询量字典爆破的查询量同上

技巧

技巧做法价值
分级扫描频率高价值周级,低价值季度级资源集中到高价值目标
增量优先先跑被动发现看有没有新增低成本发现变化
自动化流水线搭自动化定时任务不用人工触发
资源预算预留 API 配额给定期扫描避免一次挖掘用完配额

注意事项

事项说明
配额限制第三方 API 有月度配额——要给定期扫描预留
扫描时机避开目标业务高峰期——减少影响
目标感知定期复扫会增加被发现的概率——频率越高越明显
资源平衡扫描频率和资源消耗要平衡——不要为了全覆盖耗尽资源

8.3 差异对比

前置知识

差异检测概念

差异检测(Diff)是对比两份数据,找出不同部分。在子域名监控里,Diff 对比新旧两份资产清单——新清单(这次扫描结果)和旧清单(上次扫描结果)——找出新增、下线、变更的子域。

是什么

对比新旧两份资产清单,找出新增、下线、变更的子域。

为什么

从几百上千个子域里手动找变化不现实。一份完整的资产清单可能有几千条记录——人工对比不可能,要自动化。

怎么做

第一步:新增子域

新清单有、旧清单没有的子域:

新清单旧清单结果
newapi.example.com没有新增
www.example.com有不变

第二步:下线子域

旧清单有、新清单没有的子域:

旧清单新清单结果
oldservice.example.com没有下线
www.example.com有不变

第三步:变更子域

新旧清单都有、但字段变了:

子域字段旧值新值结果
api.example.comIP1.2.3.45.6.7.8IP 变更
admin.example.com状态码401200状态码变更
cdn.example.comCNAMEold.cloudfront.netnew.cloudfront.netCNAME 变更

第四步:差异结果处理

差异类型处理去向
新增子域重跑阶段2-6,拿价值分级回流阶段2
下线子域标注下线,检查悬挂 DNS进入阶段5清洗
IP 变更重新评估价值更新清单
状态码变更重新分级更新清单

技巧

技巧做法价值
多维度对比不只比子域名,还比 IP、CNAME、状态码发现隐含变更
变更分级IP 变更 vs 状态码变更 vs 新增 vs 下线不同变更优先级不同
告警阈值新增超过 5 个触发告警避免小变化被淹没
趋势分析对比多期清单看趋势发现目标的扩张/收缩

注意事项

事项说明
通配符干扰差异通配符 DNS 的 IP 可能随机变化——不等于真实变更
CDN IP 变化不等于真实变更CDN 调度导致 IP 变化——要看 CNAME 是否变
DNS 缓存影响对比不同 DNS 缓存状态可能导致结果差异——要多 DNS 交叉
假新增/假下线DNS 超时导致误判——要重试验证

8.4 自动化流水线

前置知识

自动化流水线概念

自动化流水线(Automation Pipeline)是把"手动做的重复流程"变成"定时自动执行"的机制。三件套:定时任务(触发器)+ 脚本(执行器)+ 告警(通知器)。定时任务到点触发脚本,脚本跑完出结果,有变化时发告警。

是什么

搭建自动化定时任务,定期重跑挖掘流程,有变化时自动告警。

为什么

定期复扫如果手动做很累——每周要手动跑一遍流程、手动对比、手动整理报告。自动化流水线把这三件事变成自动的——人到点不用管,有变化自动告警。

怎么做

三件套:

组成做什么工具示例
定时任务到点触发扫描cron / GitHub Actions / CI/CD
脚本执行挖掘流程 + 差异对比自定义脚本 / 工具链
告警有变化时通知邮件 / Slack / 飞书 / Webhook

流水线流程:

定时任务触发(每周一 09:00) ↓ 脚本执行: 1. 重跑阶段2被动发现 2. 和旧清单对比 3. 对新增子域跑阶段3-6 4. 生成差异报告 5. 更新资产清单 ↓ 告警判断: - 新增 > 5 个 → 发告警 - 高价值新增 > 0 个 → 发告警 - 下线 > 3 个 → 发告警 ↓ 通知发送(邮件/Slack/飞书)

技巧

技巧做法价值
分级告警高价值新增立即告警,低价值新增汇总周报避免告警淹没
失败重试扫描失败自动重试避免单次失败导致漏扫
结果存档每次扫描结果存档长期趋势分析
工具链组合被动发现工具 + 清洗工具 + HTTP 探测工具各环节用最擅长的工具

注意事项

事项说明
API 密钥管理流水线里的 API 密钥要安全存储
扫描超时长时间扫描要设超时——不能无限跑
告警风暴配置不当会发大量告警——要设阈值
工具更新工具版本要定期更新——字典和工具过时影响覆盖率

8.5 阶段输出

输出1:资产清单

类别包含字段说明
基础信息子域名、根域名、来源、时间子域的身份证
DNS 信息A 记录 IP、CNAME 链、NS 记录子域的 DNS 状态
HTTP 信息协议、状态码、标题、响应体大小子域的 HTTP 状态
价值信息价值等级、风险标注、建议动作子域值不值得打

完整字段表见流程总结文档。这里只给类别框架。

输出2:差异报告

字段说明示例
差异类型新增/下线/变更新增
子域名变化的子域newapi.example.com
旧值上次扫描的值不存在
新值这次扫描的值200, 标题=API Docs
价值等级新增子域的分级高
告警是否触发告警是
时间变化发现时间2026-10-04

输出3:监控配置

字段说明示例
扫描频率多久扫一次周级
扫描范围全量/增量增量
告警规则什么情况告警新增>5 / 高价值新增>0
通知方式怎么通知飞书 Webhook
上次扫描上次扫描时间2026-09-27
下次扫描下次扫描时间2026-10-04

8.6 与其他阶段的衔接

输出流向与回路

回流阶段2

回流阶段4

一次挖掘成果
(阶段1-6的输出)

8.1 结果归档

资产清单
(基准线)

8.2 定期复扫

新清单

8.3 差异对比

新增子域

下线子域

变更子域

阶段2:被动发现
(重跑)

阶段4:进阶发现
(递归)

检查悬挂 DNS

更新清单

监控是整个流程的闭环

闭环做什么
差异→阶段2新增子域回到被动发现重跑
差异→阶段4新增子域进入进阶发现做递归
差异→阶段5下线子域做 DNS 清洗检查悬挂

全流程回顾

从准备到监控的完整循环:

阶段1:准备 → 阶段2:被动 → 阶段3:主动 → 阶段4:进阶 → 阶段5:清洗 → 阶段6:HTTP 探测 → 阶段7:输出与监控 → 新增子域 → 回到阶段2(循环)
阶段做什么输入输出
1 准备界定范围、选字典、配环境目标信息根域名+字典+环境
2 被动零风险找子域根域名子域名列表(60-80%)
3 主动向 DNS 敲门找子域被动结果补充子域名列表
4 进阶以子域为跳板递归已发现子域新子域+新根域名
5 清洗把原始数据变可信原始子域列表可信子域+IP 列表
6 HTTP判断存活和价值可信子域列表价值分级清单
7 输出归档+复扫+对比价值分级清单资产清单+差异报告

关键认知:输出与监控不是"做完了就结束",而是"持续跟踪的开始"。一次挖掘给你的是"快照"——某个时间点的攻击面。持续监控给你的是"趋势"——攻击面怎么变化。新上线的子域往往是高价值目标——新服务可能有新漏洞,值得优先关注。


子域名挖掘流程的七个阶段到这里全部讲完。下一篇:踩坑实录——实战中会遇到的陷阱与预防。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询