茂名建站公司模板,哪里有免费的h5模板,顺企网江西网站建设,安徽安庆地图导语#xff1a;前一篇文章介绍了Server Cache Poisoning在实际应用场景下#xff0c;产生DOS攻击的利用方式。本篇文章则介绍Web Cache Deception在真实场景下的应用方式和测试情况。 前言
前一篇文章介绍了Server Cache Poisoning在实际应用场景下#xff0c;产生DOS攻击… 导语前一篇文章介绍了Server Cache Poisoning在实际应用场景下产生DOS攻击的利用方式。本篇文章则介绍Web Cache Deception在真实场景下的应用方式和测试情况。 前言
前一篇文章介绍了Server Cache Poisoning在实际应用场景下产生DOS攻击的利用方式。本篇文章则介绍Web Cache Deception在真实场景下的应用方式和测试情况。
本篇文章介绍的是发表在网络安全顶会2020 USENIX Security上的一篇文章《Cached and Confused: Web Cache Deception in the Wild 》。
背景知识
我们已经在之前的文章中介绍过Web Cache欺骗的问题其在CTF场景下有比较多的应用而本篇文章主要聚焦于其在真实世界场景下的利用与一些bypass方式。关于其简单原理的一些CTF应用可以参见我们的第一篇文章 如上图所示攻击者诱导受害者点击如下路由 /account.php/nonexistent.jpg 由于是第一次访问Web Cache将其转发给源服务器源服务器在解析时由于中间件或者后端配置问题将其解析为访问/account.php路由并进行response而此时Web Cache将其对应记录。当攻击者再次请求如下链接 /account.php/nonexistent.jpg 那么将会得到受害者account.php页面的内容从而导致信息泄露达成攻击。
工具设计
对于这样一个问题本文作者设计了一套工具并测试其在真实世界下的效果如何 首先作者表明利用该攻击的场景为网站有一些私有信息只能由用户访问但因为Web Cache欺骗致使其他用户可以访问到这些数据。这就是一次WCD(Web Cache Deception)攻击。
首先作者进行了网站搜集其建立一个种子池然后使用启发式工具发现池中网站的子域名以此扩充数据集。然后对每个网站进行账户创建此时分别创立2个用户攻击者用户与受害者用户。此举旨在后期利用攻击者用户获取受害者用户数据。同时还会使用爬虫搜集攻击者与受害者的cookies信息以判断WCD攻击是否需要依赖于Cookies。
值得注意的是在搜集网站的时候由于是利用种子池中的域名进行启发式搜集那么可能会存在如下情况即爬虫可能遇到大量相似的url http://example.com/?langen http://example.com/?langfr http://example.com/?langcn 亦或是如下 http://example.com/028 http://example.com/142 http://example.com/359 这样的遍历和循环非常的浪费时间于是作者设置了上限诸如此类的url每个域名只随机挑选500个。
在上述准备工作完毕后则使用工具以此测试每个url是否存在WCD攻击隐患。攻击做法如下
1.对于指定url http://example.com/028 首先在其路径后拼接随机数.css文件 http://example.com/028/.css 使用受害者账户点击上述网址 使用攻击者账户点击上述网址并记录回显 再次点击上述网址但此时不带任何cookie并记录回显
然后对搜集到的response进行提取查看里面是否有受害者账户的关键信息同时判断response中是否带出安全相关属性例如 : csrf、xsrf、token、state、client-id
实验评估
作者首先在Alexa Top 5K网站中选取了295个支持Google OAuth的网站选取分布如下 然后将其作为种子池进行爬取并测试结果发现如下 在1470410个网页中有17293个页面存在WCD攻击同时发现对于使用Cloudflare和Akamai CDN的网站可能更容易受到威胁 同时在受到WCD的网页中其可以泄露的私密数据分布如下 可以看到不仅用户名泄露较为严重Sess ID、Auth Code等安全相关的信息泄露也存在一定比例。
并且通过对照观察在使用cookie和不使用cookie时攻击结果一致这也说明WCD攻击不依赖于授权用户或带有cookie的访问者。这进一步提升了该攻击的危害性降低了其攻击成本。
同时作者还提出了相应的bypass方式其发现不仅诸如如下请求方式可以进行WCD攻击 /account.php/nonexistent.jpg 使用其他一些手段也可以达成相应的目的 /account.php%0Anonexistent.jpg /account.php%3Bnonexistent.jpg /account.php%23nonexistent.jpg /account.php%3Fnonexistent.jpg 同时作者进一步加大了数据集用于测试新的payload方式同时发现其分布如下 可见这些bypass方式可以有效的进行WCD攻击。
同时这些攻击也可以并存例如既可以使用%0A进行WCD攻击也可以使用%3F进行WCD攻击
总结
本篇文章作者分析探索了真实世界中WCD攻击的应用和分布比例同时提出了一些新型的WCD攻击绕过方式对于之后的测试或者做题中具有一定指导意义。