CFIRE简介 CFire将运用多个技术来发现CloudFlare后面的真实IP,并且可以管理相关的数据。尽管这个工具刚刚诞生,我们觉得它在我们自己的渗透测验中还是非常有用的,所以我们将把它介绍给社区,希望它能帮助更多人,并且将来可以发现更多云供应商的误配置(如AWS Cloudfront)。 现在有很多种大家已经知道的方式来发现CloudFlare后面的真实IP,这些方式有一个共同特征就是:都是利用误配置来发现IP的泄露。 CloudFlare首先提供DNS服务,缓存资源提升网站的访问速度,同时提供安全服务。一旦服务启用,CloudFlare就会拦截恶意的流量。很多公司仅仅运用CloudFlare作为防DDOS的工具,在这种简单情形下是有效的,但是随着公司扩展和实现新的服务或技术,他们无意中打开了IP发现的大门。 1、普通DNS记录误配置 寻找真实IP的一个最常用技术是寻找子域名,或者用于后台服务的域名。在一段时间内,CloudFlare会自动配置会泄露web服务器IP的子域名。很多用户都不知道这些DNS记录的存在,这个寻找真实IP的方式存在了几年。现在CloudFlare已经修改了这个问题,所以这个方式只能用在一些老的设置中。 2、MX记录 所有的环境各有不一样,有的客户喜欢自己搭建邮件服务。根据RFC5321,MX记录是用于优先指定一个域名的邮件服务器的。 如果目标没有运用第三方的邮件服务,那么它的邮件服务器很可能和web服务器在同一个网络内。在这种情况下,发现真实IP就和执行DNS查询一样简单。 和MX记录相似,有很多组织需要将外部资源传输到内部服务器中。事实上,正确的方式是运用VPN来允许远程办公的员工安全的传输文件到内部网络上。不幸的是,很多老的架构里,会运用FTP/SCP服务传输文件,这样就大大增加了攻击者发现真实IP的几率。 4、WEBSOCK 尽管最近CloudFlare已经开始提供WebSockets (WS)支持技术,但是很多客户还不知道这个技术或者来不及迁移他们的WS服务。WS可用于发现真实IP是因为WS在开始HTTP(S)握手后需要在客户端和服务端之间保持连续的链接。 2014年以前CloudFlare不提供WS技术支持,因为CloudFlare似乎运用的是NGINX WEB服务器,而NGINX在2013年底才支持WS代理。当浏览一个网站的时候,我发现尽管该站点的主站已经运用CloudFlare防护,但是它的WS服务器完全暴露了了它的真实IP。 CrimeFlare项目应该是最好的研究数据库之一。尽管项目的主旨是发现服务背后的犯罪行为,但是攻击者也能用它来发现潜在的泄露IP。CrimeFlare没有详细描述它是如何收集数据的,但是我们可以放心开发者每周都会查询大量的域名、相关的域名服务器、IP地址以及SSL证书信息,最后把信息分组存进数据库。 现在CrimeFlare已经将成立来的数据开放,研究者们有机会运用这些数据对CloudFlare的用户趋势进行分析。在开发CFire项目的过程中,我们创建了一个SQLite3数据库和一个查询工具,如下例子: Server-Side Request Forgery (SSRF) 漏洞允许攻击者代理访问任意资源(通常是内部服务)。现在已经有很多关于SSRF的研究了,SSRF不仅可以用于探测使用所处的生产环境,同时也可以用于发现CloudFlare隐藏的真实IP。 我们测验案例运用的是安装了有漏洞的Nelio AB Testing 4.5.8插件的Wordpress。主要是为了模拟SSRF漏洞环境。 同样的,在Amazon Web Services S3 Buckets中,一个小的配置改变也会对安全方面造成大的影响。 1、CloudFlare是很有用的云安全工具,可以保护你的IP和你的资产。 2、CloudFlare在正确的配置下才会发挥作用。 3、如果你从CloudFlare迁移到“direct IP” DNS服务商,IP依旧会暴露。 4、子域名绕过CloudFlare通常会暴露所有的DNS记录。 CFire将会加快安全研究中寻找真实IP过程中的最繁琐的步骤。我们开发这个工具的目的是告诉人们CloudFlare做的不错,但是我们需要做一些正确的配置来保护自己的资产。 |