论二级域名收集的各种姿势

测试dns域传送

测试方式如图:

当然,这种方式不一定都能成功,但也不失为一种获取二级域名的方式。

反查whois

工具:站长工具

1 查询whois http://whois.chinaz.com/baidu.com

2 反查whois http://whois.chinaz.com/reverse?host=domainmaster@baidu.com&ddlSearchMode=1

获得关联域名信息

通过搜索引擎

搜索推荐工具:https://github.com/laramies/theHarvester

支持:google、bing、yahoo、baidu、shodan、twitter

通过全网dns反解析

下载地址: https://scans.io/study/sonar.rdns_v2

这是Rapid7 Labs扫描的结果,大家可以下载下来,搜索关键字,获取二级域名

通过证书获取

下载地址:

https://scans.io/study/sonar.ssl

https://scans.io/study/sonar.moressl

这也是Rapid7 Labs扫描的结果,通过证书信息获取二级域名

也可以不下载,直接使用censys提供的免费项目来搜,如下:

https://www.censys.io/certificates?q=baidu.com

谷歌也提供了证书搜索的功能,不过需要翻墙,大家自行搜索吧。

利用全网IP扫描http端口

原理:在访问IP的80或者8080端口的时候,可能会遇到配置了301跳转的,可以在header里获取域名信息。全网扫描结果如下:

https://scans.io/study/sonar.http

枚举二级域名

推荐工具:https://github.com/ring04h/wydomain

工具原理: 通过dns解析域名

支持字典和暴力枚举

利用第三方网站

登入github.com,通过代码搜索功能,查找由于程序员误上传代码造成的二级域名泄漏

可能垃圾数据比较多,请自行决定,这种方式也可以使用谷歌关键字:

site:github.com baidu.com

的方式获取github泄漏的二级域名

其他第三方: Alex、Chaxunla、Netcraft、DNSDumpster、Virustotal、ThreatCrowd、CrtSearch、PassiveDNS、GooglCT、ILink、Sitedossier、Threatminer、Pgpsearch

利用工具:

https://github.com/bit4woo/Teemo

利用爬虫

一个强大的爬虫工具:

https://github.com/binux/pyspider

大家自行把玩

不过自己写的爬虫才是最适合的,如何写正则可以参考前文写的三篇正则表达式的学习,传送门:

正则上篇正则中篇正则下篇

利用文件信息泄漏

1 crossdomain.xml 文件

2 运维安全之安全隐患

利用漏洞报告平台

虽然乌云关了,但是在乌云的历史数据中还是有不少企业域名信息的,这个是不可以忽视的。

工具汇总

经典的子域名爆破枚举脚本

https://github.com/lijiejie/subDomainsBrute

子域名字典穷举

https://github.com/ring04h/wydomain

子域名枚举与地图标记

https://github.com/le4f/dnsmaper

在线子域名信息收集工具

https://github.com/0xbug/orangescan

根据DNS记录查询子域名

https://github.com/TheRook/subbrute

基于谷歌SSL透明证书的子域名查询脚本

https://github.com/We5ter/GSDF

使用CloudFlare进行子域名枚举的脚本

https://github.com/mandatoryprogrammer/cloudflare_enum

A domain scanner

https://github.com/18F/domain-scan

Knock Subdomain Scan

https://github.com/guelfoweb/knock

多方式收集目标子域名信息

https://github.com/Evi1CLAY/CoolPool/tree/master/Python/DomainSeeker

兄弟域名查询

https://github.com/code-scan/BroDomain

基于dns查询的子域名枚举

https://github.com/chuhades/dnsbrute

总结

域名收集的方式千千万,别人写的开源工具也很多,但是用起来毕竟不是那么的顺手,所以大家完全可以自己开发,集大家之所长,开发属于自己的域名获取工具。

原文发布于微信公众号 - 信安之路(xazlsec)

原文发表时间:2017-06-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java技术栈

扫盲,为什么分布式一定要有Redis?

考虑到绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知...

1603
来自专栏小狼的世界

黑莓作为猫带笔记本上网

明天就要放假回家了,心情非常激动,但是回去之后没有网络环境非常苦恼。打听了一些3G网卡的收费,网卡加上SIM卡大多都要300元以上,我也就收收邮件,看看新闻,办...

1154
来自专栏web前端教室

WEB前端架构(一)

想到哪说哪,, 前端架构当然首推MVC,在我这个项目里, (一)、view层,就是html、css、一些直接控制DOM的JS; --login.h...

3098
来自专栏walterlv - 吕毅的博客

配置 legacyUnhandledExceptionPolicy 防止后台线程抛出的异常让程序崩溃退出

发布于 2017-10-16 12:52 更新于 2017-10...

5321
来自专栏JackieZheng

十分钟带你了解服务化框架

在此之前 在此之前,你需要知道中间件的概念,可能在过往的从业生涯这个名词无数次的从你的眼前、耳畔都留下了足记,但是它的样子依然很模糊。 今天要说的服务化框架其...

18710
来自专栏后端技术探索

节约内存:Instagram的Redis实践

可以说是网拍App的始祖级应用,也是当前最火热的拍照App之一,而在Instagram里,我们需要知道每一张照片的作者是谁,下面就是Instagram团队如何使...

1211
来自专栏后端技术探索

为什么分布式一定要有Redis?

考虑到绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知...

1074
来自专栏微信终端开发团队的专栏

Android M doze特性预研

Android M doze特性预研 2015年5月29日GoogleI/O大会发布新一代Android系统 - Android M preview 版本(AP...

2698
来自专栏华章科技

Python 开发者的 6 个必备库

无论你是正在使用 Python 进行快速开发,还是在为 Python 桌面应用制作原生 UI ,或者是在优化现有的 Python 代码,以下这些 Python ...

752
来自专栏小怪聊职场

HTTP|GET 和 POST 区别?网上多数答案都是错的!

34610

扫码关注云+社区

领取腾讯云代金券