黑客接单一般多少钱 不免费黑客接单平台

访客3年前黑客文章926

缓存投毒,听起来就是寻找和利用都很困难的一类漏洞利用。但在了解了原理以及实际体验过之后,你会发现,过程很神奇,结果很美好~ 这篇文章算是对缓存投毒的一个小总结,以便后面的复习。内容浅尝即止,师傅们轻喷。

文章一共分为以下几个部分:

  1. 什么是缓存投毒?

  2. 缓存投毒的发现与利用

一、什么是缓存投毒?

什么是Web缓存:

缓存位于服务器和用户之间,通常在固定的时间内保存(缓存)对特定请求的响应。如果另一个用户在这段时间内发送了同样的请求,则缓存会直接提供响应的副本(缓存)给用户,而无需与服务器直接进行交互。通过减少服务器对重复请求进行处理的次数,来减轻服务器的负担。使用CDN(内容分发 *** )就可以达到这样的目的。关于CDN与缓存之间的理解,参考:CDN与缓存的归纳理解


如下图就是同时间的用户访问同一个内容时,获取资源的过程。

那CDN怎么知道用户要访问的是同一个页面呢?(实际上除了CDN还有其他的缓存技术,这里以CDN为例,其他的暂不了解)


当缓存接收到HTTP请求的时候,它会匹配vary头部指定的HTTP HEADER来进行判断。当指定的头部与缓存中的数据匹配时,则提供缓存的内容。如果不匹配,就直接与服务器交互。这些指定的头部被称作:缓存键 “cache key”。其他的头部就是非缓存键。

参考:HTTP请求的响应头部Vary的理解


  • 缓存投毒的原理

在web缓存部分我们知道,当一个页面的内容被缓存后,其他用户访问这个页面时会接收到同样的内容。如果在缓存的过程中,存入了有害的内容,比如存入了一个带有XSS payload的页面。其他用户访问时,就会受到XSS漏洞的攻击。这就是缓存投毒。


那什么情况下可以在缓存中写入一个带有XSS的页面呢?或者说其它对用户有害的内容?


二、缓存投毒的发现与利用

这个部分的内容,在参考的文章当中已经有比较完整的步骤描述。大致可以分为以下几个步骤:


1.判断哪些非缓存键会影响页面内容

任何的缓存投毒都依赖于非缓存键,所以我们在一开始就要判断哪些HTTP头部属于缓存键,哪些不属于。再通过修改或添加HTTP头部来判断哪些头部会引起页面内容的变化。常用的两种方式:


  • 手动修改或添加HTTP头部,指定随机字符来判断头部是否影响页面内容

  • 使用Brupsuite插件Param Miner来自动判断


2.构造内容引起服务器端的有害响应

针对不同的非缓存键,我们需要知道哪些非缓存键会导致页面返回有害的内容。举一个例子:页面中js链接的域名是通过获取HTTP头部中的“X-Forwarded-Host”字段来设置的。而服务器不会将这个字段作为缓存键,那么这个字段就可以利用。


3.获取响应,使有害内容被缓存

通过构造有害的内容,访问页面,获取响应。就会将有害的内容存入缓存中。需要注意的是,页面是否会被缓存受到文件扩展名、内容类型、url路由、状态代码和响应标头的影响。在测试的会比较麻烦。


看完上面这几个步骤,应该对投毒的过程有了一个大概的了解。现在我们通过几个实验例子来学习具体的缓存利用方式。这里的实验环境为Brupsuite社区的缓存投毒实验案例。目的都是通过缓存投毒来导致XSS漏洞。


地址:Web cache poisoning


三、通过几个实验例子来实践缓存投毒

以下的几个实验过程中,构造了Payload并发送请求之后,都需要等待一段时间才能够解决题目。因为题目后端每分钟会对实验主页进行访问,这时你投毒的缓存才能被后端加载。


1、缓存投毒之资源的危险导入

某些网站会使用非缓存键动态生成页面中的url地址,比如说使用HTTP头部中的“X-Forwarded-Host”字段来设置外部托管的Javascript文件的域名(host)。我们可以通过寻找和利用这样的字段来进行缓存投毒。


相关文章

先做事后收款黑客团队业务(黑客先办事后付款的账号

Monero加密货币挖掘运动已成为利用面向公众的Web应用程序中已知漏洞的头条新闻。这些Web应用程序基于ASP.NET开源框架构建。 该活动已被检测到该操作的Red Canary分析人员命名为Bl...

教你如何成为黑客  如何成为一名黑客

如何成为一名黑客 Copyright © 2001 by Eric S. Raymond 翻译:Barret 翻译水平有限,欢迎来信指教,我的Email是barret(a)ynmail.com,...

怎么查看我老公手机的微信聊天记录 怎么查看我老公的微信聊天记录

看了兜哥在freebuf上的专栏文章《学点算法搞安全之HMM(上篇)》,大意就是将URL参数进行范化,然后使用hmm算法来进行训练和测试,这里检测的重点是xss,但是带着我自己的疑问认真看了下方的评论...

教你3步设置强密码挡住黑客  黑客教程十

黑客教程十:数据库注入(下) 进 阶 篇 在入门篇,我们学会了SQL注入的判断方法,但真正要拿到网站的保密内容,是远远不够的。接下来,我们就继续学习如何从数据库中获取想要获得的内容,首先,我们先看...

怎么查开房同住人记录 公安局怎么才给查开房记录

研究人员使用端口扫描服务进行了快速搜索,发现大约6,000个IP地址可以托管易受攻击的Docker安装。 防范可能在运行时损害云环境的新兴威胁,这对组织构成了重大挑战。 容器是DevOps中最重要的技...

一秒教你成世界顶尖黑客  一个黑客的自白

一秒教你成世界顶尖黑客  一个黑客的自白

        他们日进万金,挥金如土,纸醉金迷,他们是隐秘黑客产业链的暴盈者,他们是一群没有信仰的金钱奴隶。 2011年12月21日上午,有黑客在网上公开了中国最大的开发者社区CSDN网...