尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

第2章_阶段1_准备

第2章_阶段1_准备 第2章 阶段1准备本篇定位子域名挖掘流程的第一阶段。在开始被动发现或主动探测之前把三件事准备好——范围、字典、环境。准备做不好后面全白费范围错了挖到不相关的域名字典差了命中率极低环境没配好会被 DNS 服务器封禁。阅读建议如果你已经做过子域名收集可以直接看 2.4 阶段输出确认准备阶段的产出是否完整。如果是新手从头读——准备阶段决定了后续所有步骤的起点。2.0 方法论框架准备阶段在全局流程里的位置目标根域名 ──→ 【阶段1准备】 ──→ 阶段2被动发现 │ ├── 范围界定 → 根域名列表 ├── 字典选择 → 字典文件 └── 环境配置 → 环境参数准备阶段做三件事界定范围、选字典、配环境。这三件事的产出是后续所有阶段的输入——根域名列表决定你挖什么字典决定你怎么挖环境配置决定你能不能持续挖。输出准备工作输入流向阶段2流向阶段3全局使用目标信息公司名、主域名业务知识行业、产品线DNS 资源解析器、带宽范围界定字典选择环境配置根域名列表字典文件环境配置参数阶段2被动发现阶段3主动探测关键认知准备不是一次性动作。进阶发现阶段阶段4发现新的根域名时要回到这里重新界定范围、调整字典。流程是循环的准备阶段每次循环都会更新。2.1 范围界定是什么确定哪些根域名在挖掘范围内。一个目标公司可能拥有多个根域名——主品牌、子公司、收购来的产品、历史遗留域名——范围界定就是把它们全部找出来。为什么没有范围界定会出现两类问题挖到不相关的域名浪费时间或者遗漏关联域名漏掉资产。更严重的是超授权挖掘——挖到了不该碰的域名涉及法律风险。授权范围确认在开始之前确认哪些根域名在授权范围内、哪些不能碰、授权时效到什么时候。合规问题集中在第8章踩坑实录里讲这里只强调一点——先确认授权再开始挖。怎么做第一步根域名确认主域名是什么有哪些。一个公司通常不只有一个根域名来源说明例子直接给定授权方提供的域名example.comWHOIS 查询用注册信息反查同主体域名查example.com的 registrant反查该 registrant 下的其他域名备案信息国内目标查 ICP 备案同备案主体下的域名备案号京ICP证XXXX号下的所有域名收购历史目标公司收购了哪些产品这些产品的域名startup.com被example.com收购startup.com也在范围内关联公司子公司、母公司、合资公司的域名example-group.com是集团域名旗下各子公司域名都在范围内第二步资产边界哪些子公司、哪些业务线、哪些关联域名在范围内边界类型要确认的容易漏的子公司边界全资子公司、控股子公司刚收购还没整合的、持股比例低的业务线边界主营业务、新业务、测试环境已下线的旧业务、内部工具域名关联域名集团域名、品牌域名短链接服务、邮件服务、图片 CDN第三步授权范围确认哪些能挖、哪些不能碰、授权时效到什么时候。这一步不展开指向第8章踩坑实录的子域名接管法律边界。技巧技巧做法价值WHOIS 反查查目标域名的注册人邮箱反查该邮箱下的其他域名发现未公开的关联域名备案反查国内目标查 ICP 备案主体反查同主体下的域名发现同公司不同品牌的域名收购历史排查查目标公司的收购记录纳入被收购方的域名发现未整合的旧资产LinkedIn / GitHub查目标公司的员工从邮箱后缀发现关联域名发现内部使用的域名注意事项事项说明范围越界挖到不属于目标的域名特别是共享主机或托管服务授权过期授权有时效过期后继续挖等于未授权忘记纳入新收购子公司公司刚收购的子公司域名容易漏要持续跟踪历史遗留域名公司改名的旧域名、废弃产品的域名可能仍解析到内部资产2.2 字典选择是什么用于主动爆破的子域名候选列表。字典里每一行是一个子域名前缀如dev、staging、api爆破时把这些前缀拼到根域名上如dev.example.com查 DNS 看是否存在。为什么字典质量直接决定爆破命中率。通用字典能覆盖常见子域名但每个目标有自己的命名习惯——用dev还是develop用staging还是stage还是stg用api还是apiv1还是apiv123。只用通用字典会漏掉目标特有的子域名。怎么做第一步通用字典通用字典收录了最常见的子域名词汇适用于所有目标字典类型内容典型词汇常规服务常见的服务命名www、mail、ftp、ssh、vpn开发环境常见的开发命名dev、test、staging、qa、uat管理后台常见的管理命名admin、manage、console、panel、dashboardAPI 相关常见的 API 命名api、graphql、rest、swagger内部服务常见的内部命名internal、intranet、office、oa第二步定制字典基于目标业务特征和行业关键词定制定制维度做法例子公司名加入公司名、品牌名、产品名的变体目标是tencent→ 加入qq、weixin、wx行业词加入行业特有词汇金融目标 →trade、pay、risk、fund技术栈加入目标使用的技术栈相关词目标用 K8s →k8s、kube、prometheus、grafana地域词加入地域相关词跨国目标 →us、eu、cn、jp、sg第三步多级字典子域名爆破不只是爆破二级子域还要爆破三级、四级层级示例字典策略二级子域dev.example.com通用字典 定制字典三级子域api.dev.example.com基于已发现的dev.example.com用小字典爆破四级子域v2.api.dev.example.com通常不爆破靠被动发现或网页爬取技巧技巧做法价值词根提取从被动发现阶段已发现的子域里提取词根加入字典命中率最高的定制字典合并去重多个通用字典合并后去重减少无效查询节省爆破时间按目标行业定制同行业的目标命名习惯相似维护行业字典跨项目复用字典分层高频词字典先跑、低频词字典后跑先拿高命中、再补长尾注意事项事项说明字典过大几万行的字典爆破耗时极长先跑高频词再跑长尾词字典过时旧的通用字典收录了已不常见的词汇定期更新通用字典不够只用通用字典命中率有限必须定制多级爆破深度三级以上的子域不靠爆破靠被动发现或网页爬取2.3 环境配置是什么DNS 解析器、并发参数、限速策略的配置。这些参数决定了你能不能持续、稳定地跑批量 DNS 查询。为什么批量 DNS 解析时如果你用单一 DNS 服务器、高并发、无限速很快会被 DNS 服务器限速或封禁。封了之后所有查询返回空结果你以为没这个子域其实是被限速了——假阴性。怎么做第一步DNS 解析器配置项推荐做法说明不要用系统默认 DNS系统 DNS如127.0.0.1或路由器 DNS有缓存污染系统 DNS 会缓存结果影响判断用公共 DNS1.1.1.1Cloudflare、8.8.8.8Google、9.9.9.9Quad9响应快、稳定、有 EDNS 支持多 DNS 轮询配置多个 DNS 服务器轮询查询分散压力单个被封不影响全局避免用目标 DNS不要直接查目标的权威 DNS查目标权威 DNS 直接接触目标有风险第二步并发参数参数参考范围说明并发数50-200太低 → 慢太高 → 触发限速超时3-5 秒太短 → 慢响应被误判为不存在太长 → 卡住重试次数2-3 次首次超时不代表不存在重试避免假阴性第三步限速策略策略做法说明QPS 控制每秒查询数控制在 10-50公共 DNS 的限速阈值通常在 50-100 QPSJitter 随机延迟每个查询之间加 50-200ms 随机延迟避免固定间隔被识别为扫描自适应限速遇到超时增多时自动降速防止被限速后继续打导致封禁技巧技巧做法价值多 DNS 轮询配 5-10 个公共 DNS轮询查询单个被封不影响全局超时降级首次用 UDP 查超时后用 TCP 重查UDP 可能被丢包TCP 更可靠分批查询字典分批每批之间暂停几秒避免持续高并发触发防护监控成功率实时统计查询成功率低于 90% 自动降速早期发现限速避免大面积假阴性注意事项事项说明单 DNS 被封只用一个 DNS 服务器被封后全部查询失败并发过高并发拉到几百上千瞬间触发限速系统 DNS 缓存污染系统 DNS 缓存了旧结果影响判断准确性忽视 Jitter固定间隔的查询模式容易被识别为扫描关键认知环境配置的核心不是调到最快而是调到最稳。慢一点但全程稳定跑完比快一下然后被封要高效得多。2.4 阶段输出准备阶段结束时你应该有三样东西输出1根域名列表字段说明示例根域名要挖掘的根域名example.com来源这个根域名是怎么发现的授权方给定 / WHOIS 反查 / 备案反查关联类型和主目标的关系主品牌 / 子公司 / 收购产品 / 关联域名授权状态是否在授权范围内已授权 / 未授权备注补充信息新收购尚未整合输出2字典文件字段说明示例字典名字典标识通用-高频 / 定制-金融 / 定制-tencent词条数字典行数5000来源字典怎么来的开源字典合并 / 从已发现子域提取 / 行业定制用途用于哪个阶段阶段3主动爆破 / 阶段4排列扫描优先级先跑还是后跑高先跑高频词/ 低后跑长尾词输出3环境配置参数字段说明示例DNS 服务器列表配置了哪些 DNS1.1.1.1, 8.8.8.8, 9.9.9.9并发数配置的并发100超时配置的超时3s重试次数配置的重试2QPS 限制配置的 QPS30Jitter随机延迟范围50-200ms2.5 与其他阶段的衔接输出流向根域名列表 ──→ 阶段2被动发现作为挖掘的起点 ──→ 阶段4进阶发现递归时扩展范围 字典文件 ──→ 阶段3主动探测爆破时使用 ──→ 阶段4进阶发现排列扫描生成变体时使用 环境配置 ──→ 全局使用所有阶段都依赖这些参数准备做不好会怎样准备没做好影响的后续阶段后果范围错了全局挖到不相关域名、超授权挖掘漏了关联域名阶段2-4漏掉整个资产段字典太差阶段3主动爆破命中率极低字典太大阶段3耗时极长、被限速DNS 被封阶段3、5查询返回空结果假阴性并发过高阶段3、5触发限速大面积假阴性没配 Jitter阶段3被识别为扫描触发防护递归时回到准备进阶发现阶段阶段4发现新的根域名时要回到这里重新做三件事重新做的为什么怎么调整范围界定新发现的根域名可能要纳入范围确认关联关系决定是否纳入字典选择新子域的命名习惯可能和主域不同从新根域名已发现的子域提取词根定制新字典环境配置通常不用改如果新根域名的 DNS 服务器不同可能要调参数关键认知准备阶段不是做完就完了。每次发现新的根域名都要回到这里更新范围和字典。流程是循环的准备阶段每次循环都会更贴近目标的真实全貌。下一篇第3章——被动发现从零接触目标的信息收集开始。
返回列表