搜索此博客

2017年9月15日星期五

【技术分享】通过伪造DNS响应绕过域名所有权验证

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
【技术分享】通过伪造DNS响应绕过域名所有权验证  阅读原文»

2017-09-15 14:02:00 阅读:2758次 收藏 来源: detectify.com 作者:testvul_001

http://p8.qhimg.com/t01c6d6a680fe14b15f.jpg

译者:testvul_001

预估稿费:120RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿


前言:


我们的客座博主和Detectify众包团队黑客Evgeny Morozov将在本文中解释他是如何通过伪造DNS响应来绕过Detectify的域名所有权验证的。非常感谢Evgeny的突出贡献―众包团队中有这样的研究者很令人感到自豪。

当用户需要使用Detectify来扫描一个网站时,我们必须先验证他对这个域名的所有权(几乎所有的在线扫描都有这种验证)。其中的一种验证方式是在DNS的TXT记录中增加Detectify提供的字符串。当用户点击验证时,Detectify会执行一个DNS检查来确认是否存在验证字符串。下面我们来看看如果验证一个你并不拥有的域名会发生什么。 


DNS 伪造背景


DNS查询和响应通常都是通过UDP协议传输的,所以IP地址伪造可以让查询客户端认为攻击者所发的DNS响应是来自于正常DNS服务器的。当然查询客户端只会接受明显符合要求的响应,下面的几个项目必须符合要求:

1、源IP地址(DNS服务器)

2、目的IP地址(DNS客户端)

3、源端口(DNS服务器)-通常是53

4、目的端口(DNS客户端)-DNS请求的源端口

5、Transaction ID- 客户端产生的16 bit数字

6、Questions-本质上是复制的DNS查询请求

源地址和端口以及目的IP都是已知的,DNS "question"可以猜出来,或者从一个攻击者可以访问的地方复制一个真实的查询。现在唯一不能确定的就是目的端口和Transaction ID了。

九年前很多DNS客户端修复了可以预测源端口和Transaction ID的漏洞。猜测一个16bit的数字是完全可行的―因为只有65536种可能,攻击者完全可以在真实的DNS响应到达前给DNS客服端发送成千上万的假响应包。2008年的7月Dan Kaminsky披露了这个问题。随后DNS维护方就用完全随机的Transaction ID和端口修复了这个问题。所以这种攻击已经过时了,那么真是这样吗?


通过验证


我有一种预感,为了避免得到缓存数据,Detectify会执行自己的DNS查询,而不仅仅是使用系统的DNS解析工具。如果这样的话,它就仍可能还在使用可预测的Transaction ID和小范围的源端口。

为了测试我通过dnsmasq为我控制的域名搭建了一个简单域名服务器,并且在进行Detectify验证的时候抓了多次包。使用Wireshark打开抓的包,可以发现来自scanner.detectify.com的dns查询请求。源端口看起来是足够随机了,但是Transaction ID是不是有问题呢?

http://p7.qhimg.com/t01ea5f487807b53327.png

 

事情简单了!!!


【技术分享】如何将Pastebin上的信息应用于安全分析和威胁情报领域  阅读原文»

2017-09-15 14:11:50 阅读:2632次 收藏 来源: techanarchy.net 作者:�d趣使然的小胃

http://pic1.hackdig.com/pp/69703ce7a46d1e2ebe4a3bf5791266bf5dc28a8b9569b8b758f85683e185cbf53007d085fa5e4fda2e449ab2303d7026.jpg

译者:�d趣使然的小胃

预估稿费:120RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿


一、前言


从安全分析以及威胁情报的角度来看,Pastebin是一个难得的信息宝库。只要没有设置隐私(private)选项(需要注册账户才能设置该选项),任何人都可以查看上传到pastebin数据的具体内容。

本文介绍了一款PasteHunter工具,该工具可以使用Yara规则从Pastebin上搜索有价值的信息,并将结果保存到本地环境中。


二、实现方案


公开数据来源非常广,比如,黑客以及脚本小子迫不及待地想把他们的成果推送到网站上,享受被全世界瞩目的自豪感,而开发者或网络工程师一旦出现疏忽,就会不小心把内部配置信息以及凭证信息公之于众。

这种情况下,普通安全分析师如何筛选这些数据,在安全分析行业中发挥这些数据的价值呢?

我们可以搜索Pastebin上的所有上传数据,检查这些数据是否包含有价值的信息。现在有很多工具可以提供类似功能,比如,dumpmon使用了一组正则表达式来监控类似Pastebin的多个网站,然后通过推特公布监控结果。

这个资源很不错,然而我希望自己能在更多细节上进行控制。Pastebin并不反对我们爬取其数据,但该网站存在某些限制条件,同一个IP地址多次请求后可能会被临时或者永久封禁。

幸运的是,Pastebin提供了一个API,这种API专门服务于此类任务场景。目前,Pastebin正在搞为期几天的促销,一次支付19.95美元就能永久拥有Pro(专业版)账号

http://pic1.hackdig.com/pp/d2bd8ab8780efecdb70a25b22e968cee2e9905101ce78902b830c93c3f1df9918240efe316c2cb42cdd1ff1dbe5655a4.jpg

图1. Pro账户促销

拥有Pro账户后,我们可以使用某个白名单IP,以每秒1次的频率请求API。实际环境中,我们请求的频率并不需要那么高。

现在我们已经可以访问所有的数据,接下来如何处理这些数据呢?是时候请出PasteHunter这个工具了。

这个工具实际上是一个简单的脚本,可以通过一组Yara规则,利用pastebin API来获得数据,筛选其中匹配的数据内容,存放到elastic search引擎中,然后使用Kibana前端来展示匹配的结果。

没有评论: