Skip to content

AfterSnows/YakProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

子域名模块实现思路

目前开源的子域名扫描工具主要有OneForAll这类,优点是结果数量足够多,但噪音数据太多,所以需要取个均衡。

首先是子域如何提取,分几个部分:

第三方API

Fofa API:https://fofa.info/api

Hunter API:https://hunter.qianxin.com/home/helpCenter?r=5-1-2

DNS枚举

主要依赖DNS Server

字典爆破

高质量的字典如何提取?

目前很多子域名字典都是10年前的东西,前缀里包含的脏数据太多(例如博彩,色情网站前缀)

子域名扫描模块不应该设计的太臃肿,最明显的影响就是在这一阶段扫描时间过长,会影响下一步端口扫描的效率~

这三个部分拼接起来则是如下流程

  • 用户输入参数(目标主域名或者域名list,批量),DNS枚举设置为可选开关(bool)和指定DNS Server,用户可配置fofa api以及hunter api的api key等信息,以及字典的存放位置
  • 拿到目标后直接进行API收集,如果API收集的结果数量小于某个阈值,才调用字典+DNS枚举进行爆破
  • 收集到的子域结果进行去重以及测活(测试状态码是否为200或者302之类),测活时需要合理设置超时时间,不然也会影响整体扫描效率,同时还需获取子域名的解析IP,如a.example.com > 10.10.10.1
  • 在yakit界面使用table组件或者命令行中展示json格式的子域扫描结果

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published