零基础学黑客,搜索公众号:白帽子左一
作者:掌控安全-wangma
简介
Web缓存欺骗(Web Cache Deception)是一种新的web攻击方法,包括web框架以及缓存机制等在内的许多技术都会受到这种攻击的影响。
攻击者可以使用这种方法提取web用户的私人及敏感信息,在某些场景中,攻击者利用这种方法甚至可以完全接管用户账户。
Web应用框架涉及许多技术,这些技术存在缺省配置或脆弱性配置,这也是Web缓存欺骗攻击能够奏效的原因所在。
如果某个用户访问看上去人畜无害、实际上存在漏洞的一个URL,那么该Web应用所使用的缓存机制就会将用户访问的具体页面以及用户的私人信息存储在缓存中。
网站通常都会通过如CDN、负载均衡器、或者反向代理来实现Web缓存功能。通过缓存频繁访问的文件,降低服务器响应延迟。
例如,网站 htttp://www.aaaa.com 配置了反向代理。对于那些包含用户个人信息的页面,如 http://www.aaaa.com/index.php ,由于每个用户返回的内容有所不同,因此这类页面通常是动态生成,并不会在缓存服务器中进行缓存。
通常缓存的主要是可公开访问的静态文件,如css文件、js文件、txt文件、图片等等。此外,很多最佳实践类的文章也建议,对于那些能公开访问的静态文件进行缓存,并且忽略HTTP缓存头。
Web cache攻击类似于RPO相对路径重写攻击,都依赖于浏览器与服务器对URL的解析方式。
当访问不存在的URL时,如 http://www.aaaa.com/index.p