如何高效的进行子域名收集与筛选?

本文涉及的产品
.cn 域名,1个 12个月
简介: 本文讲的是如何高效的进行子域名收集与筛选?,当我在寻找Hackerone上的新目标时,我总是会去关注已解决报告的数量,因为这一更高的数字可能意味着你在这里能够发现漏洞的机会比在那些关闭了提交意见的程序上更为容易。正因为这个原因,所以我选择了雅虎!
本文讲的是 如何高效的进行子域名收集与筛选?

介绍

当我在寻找Hackerone上的新目标时,我总是会去关注已解决报告的数量,因为这一更高的数字可能意味着你在这里能够发现漏洞的机会比在那些关闭了提交意见的程序上更为容易。正因为这个原因,所以我选择了雅虎!

我们都知道雅虎是大型的国际公司,所以我预计其会有很多子域名,路径和重定向,但从哪里开始呢?这时候就要用到我最喜欢的枚举/强化子域名工具:Sublister(https://github.com/aboul3la/Sublist3r)和Fierce(https://github.com/davidpepper/fierce-domain-scanner)了。我希望能够通过他们找到那些被遗忘、错误配置或运行旧版本软件的子域名。最终,Subliste3r给了我9000多个子域,但我该如何检查它们呢?

如何高效的进行子域名收集与筛选?

半自动搜索

我相信在这9000个子域名中,至少会存在一个薄弱的点。因为在我看来要想记住如此大的一家公司的一切是非常困难的。当Sublist3r做了他的工作后,我打开了这一结果,并手动删除了无用的和重复的子域名,以及那些没有解决或没有响应的。当然我没有一个一个检查,但这样下来仍然还有7000个子域名。

接下来让我们试试快速扫描,我想这应该有助于整理。而为了达成这一目的,我尝试使用Nmap的输出到XML,因为它更容易解析。

nmap -sS -p80,443 -iL nmap_input.txt -oX nmap_output

来自Nmap的示例XML输出:

<hostnames>
<hostname name=”start.producersdesktop.yahoo.com” type=”user”/>
<hostname name=”proxy.publish.bf1.yahoo.com” type=”PTR”/>
</hostnames>
<ports><port protocol=”tcp” portid=”80"><state state=”closed” reason=”reset” reason_ttl=”42"/><service name=”http” method=”table” conf=”3"/></port>
</ports>
<times srtt=”148262" rttvar=”148262" to=”741310"/>
</host>

我们只能通过添加 – 打开nmap命令来扫描打开的端口。对我来说,最有用的参数是“state”和“hostname name”。我相信“hostname name”是DNS,在这种情况下,我发觉有时候有我的ISP的地址,所以我知道他们可能没有解决这一问题。在这个基础上,我们可以尝试抛出另外几百个子域。我写了一个脚本,它能够根据主机名的名称删除xml条目,并将其另存为另一个XML。

import xmltree
def removeHostname():
   for host in root.iter('host'):
        for elem in host.iter():
            if 'name' in elem.attrib and elem.attrib['name'] == 'ISP_redir_site':
                root.remove(host)tree.write('output.xml')

好的,现在我们已经有了开放80端口的所有子域名。接下来我们可以扫描nmap他们的HTML标题,并再次删除那些有些相似的标题。

雅虎有很多不同语言的网站,例如:ru.search.yahoo.com,br.search.yahoo.com,de.stars.yahoo.com等,下一步是把那些重要的子域名拒之门外。最后我整理出了约700个潜在的易受攻击的子域名。

这时候该是检查剩下的内容的时间了。我不知道如何找到其他子域之间的下一个共同点,所以我手动检查了它们。过了一段时间,我在一些子域看到了相似性和重复性,所以实际看来比我想象的容易得多。因此这样我就可以在http://yvap.query.yahoo.com/上找到开放的YQL内部控制台。而我进一步的探索也逐渐展示了在http://ygh-app.media.yahoo.com/上进行对Beaker实例的测试。

如何高效的进行子域名收集与筛选?

如何高效的进行子域名收集与筛选?

除了http://yvap.query.yahoo.com/v1/test/js/console_ajax.js之外的JavaScript代码,我找不到任何有趣的东西。虽然有不止一个内部控制台,但其他内部控制台都关闭了,至少看起来像像是如此。

如何高效的进行子域名收集与筛选?

YQL的示例查询是在https://query.yahooapis.com/v1/public/yql?q=show%20tables&diagnostics=true,所以我在其余的控制台锁定过程中也尝试了这种方法。这意味着内部控制台的主面板已关闭,但您仍然可以通过url提交查询。我列举了所有的这些,并一一进行了检查。“show tables”的命令完成了其中的大部分工作,所以我试图走得更远,但在我报告之后,证明其是可以公开访问的,甚至应该说必须是。

如何高效的进行子域名收集与筛选?

在http://ygh-app.media.yahoo.com/我发现了正在测试Beaker的网站,说实话,我其实并不一定需要处理Beaker,但经过快速的检测,我发现了另一个信息已经被披露。

如何高效的进行子域名收集与筛选?

总结

我知道这不是革命性的方法,但这样做肯定会更快,更精确,当然也会更省时,因此我仍然希望与您分享这种方法。几周前,我发现了一个名为Aquatone的工具,其中包含我所需要的一切。当然,如果您使用任何其他工具进行检测,也可以分享给我们。




原文发布时间为:2017年7月18日
本文作者:鲁班七号
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
2月前
|
网络协议 搜索推荐 定位技术
分页最好的作用是做好统计,可以用来基本条件列表的统计,可以用来统计多平台,使之呈现列表,预算统计,以及必要的技术,项目名称,常用链接
分页最好的作用是做好统计,可以用来基本条件列表的统计,可以用来统计多平台,使之呈现列表,预算统计,以及必要的技术,项目名称,常用链接
|
3月前
|
JavaScript 定位技术
详尽分享缓冲区点查询(在地图上点击一点,查询一定范围内的信息)
详尽分享缓冲区点查询(在地图上点击一点,查询一定范围内的信息)
14 0
|
4月前
|
数据采集 安全 网络协议
收集子域名信息(二):第三方网站查询
收集子域名信息(二):第三方网站查询
|
4月前
|
网络协议 安全 搜索推荐
【网络安全 | 子域名/信息收集】子域名挖掘方式总结(全网最详细)
【网络安全 | 子域名/信息收集】子域名挖掘方式总结(全网最详细)
601 0
|
SQL 监控 数据处理
网站流量日志分析--统计分析--多维统计分析--来访 referer、时间维度|学习笔记
快速学习网站流量日志分析--统计分析--多维统计分析--来访 referer、时间维度
187 0
网站流量日志分析--统计分析--多维统计分析--来访 referer、时间维度|学习笔记
|
监控 定位技术
老司机教你分析日志:分析用户的地理位置信息
地理位置的需求 通常我们分析用户的需求,了解到用户当前位置在哪里非常重要,例如,可以根据用户的地理位置,针对性的推广本地广告。 通常,我们可以在客户端获取定位权限来获取GPS信息。但是如果用户关闭了定位呢?如何获取呢?我们还有另外一种方法,就是通过用户当前的IP来定位。
4138 0
|
监控 MySQL 关系型数据库
网站访问日志统计分析
用户使用ECS搭建网站,网站的访问日志(Nginx,Apache访问日志)收集到阿里云日志服务中供查询。为了从访问日志中挖掘出更多价值,日志服务提供了一个docker镜像,用于实时统计和展示网站访问的一系列指标,例如PV,UV,延时,地理,状态码,爬虫,网络流量等指标。
9029 0
|
Web App开发 监控 JavaScript
(转) 网站统计中的数据收集原理及实现
原文地址:http://blog.codinglabs.org/articles/how-web-analytics-data-collection-system-work.html 网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。
1383 0
下一篇
DDNS