实验室:通beplay体育能用吗过无关查询字符串的网络缓存中毒
从业者
这个实验室很容易受到伤害beplay体育能用吗网络缓存中毒因为查询字符串不关键。用户定期使用Chrome访问该网站的主页。
要解决实验室,请用执行的响应毒化主页警报(1)
在受害者的浏览器中。
暗示
- 如果您在挣扎,可以使用
PRAGMA:X-GET-CACHE-KEY
标题以在响应中显示缓存键。这也适用于其他一些实验室。
- 尽管您不能将查询参数用作缓存Buster,但是如果存在,则有一个通用请求标头。您可以使用参数矿工扩展程序可以自动添加缓存Buster标头向您的请求中。
解决方案
- 运行burp,加载网站的主页。beplay体育能用吗在Burp中,转到“代理”>“ HTTP历史记录”。找出
得到
请求主页。请注意,此页面是潜在的缓存Oracle。将请求发送给Burp Repeater。
- 将任意查询参数添加到请求中。观察,即使您更改查询参数,您仍然可以受到缓存命中。这表明它们不包括在缓存键中。
- 请注意,您可以使用
起源
标题作为缓存巴斯特。将其添加到您的请求中。
- 当您获得缓存失误时,请注意您的注入参数反映在响应中。如果对您的请求的响应被缓存,则可以删除查询参数,并且仍将反映在缓存的响应中。
添加一个任意参数,该参数从反射的字符串中漏出并注入XSS有效载荷:
get/?evil ='/> <脚本>警报(1)
- 继续重播请求,直到您看到有效载荷反映在答复中,然后
X-CACHE:点击
在标题中。
- 要模拟受害者,请从您的请求中删除查询字符串,然后再次发送(同时使用同一缓存Buster)。检查您是否仍会收到包含有效载荷的缓存响应。
- 删除缓存 - 重击
起源
标题并将有效载荷添加回查询字符串。重播请求,直到您为普通用户毒死了缓存。通过将主页加载到您的浏览器中并观察弹出窗口,确认此攻击已成功。
- 当受害者用户访问中毒主页时,将解决实验室。如果实验室在35秒后未解决,则可能需要重新使用缓存。