IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> HTTP请求走私 | PortSwigger(burpsuite官方靶场)| part 2 -> 正文阅读

[网络协议]HTTP请求走私 | PortSwigger(burpsuite官方靶场)| part 2

写在前面

http走私的原理介绍:
Part1
在前面介绍了http走私的探测方法,基本利用。在这里来看看在实际场景中这个漏洞的相关利用吧

Exploiting HTTP request smuggling to bypass front-end security controls, CL.TE vulnerability

这里是使用http走私来绕过前端安全限制,在一些应用程序中,会使用前端服务器来实现访问控制限制,只有授权了,前端才转发该请求。但是后端是不识别的,后端接受每个请求,默认前端完成访问控制。

比如:当前用户被允许访问/home但不允许访问/admin。可以使用以下请求走私攻击绕过此限制:

POST /home HTTP/1.1
Host: vulnerable-website.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 62
Transfer-Encoding: chunked

0

GET /admin HTTP/1.1
Host: vulnerable-website.com
Foo: xGET /home HTTP/1.1
Host: vulnerable-website.com

前端会看到两个请求,两个 /home 。传往后端后,后端识别TE,处理两个请求,一个/home 一个/admin

这里,先请求 /admin 显然无法访问。
在这里插入图片描述
请求 / 首页可以完成
在这里插入图片描述
使用插件开cl-te探测,出现请求差异,有http走私漏洞
在这里插入图片描述
修改一下这个请求,发出这个请求两次,后端开始响应第二个请求。出现401未授权
在这里插入图片描述
补全一下请求头,注意此时应使用下列写法。这样可以把下一个请求放入body中,这样请求头不会冲突。这里response就已经进入了 /admin ,找到敏感链接,再次走私请求
在这里插入图片描述
请求完成
在这里插入图片描述

Exploiting HTTP request smuggling to bypass front-end security controls, TE.CL vulnerability

前面是cl-te,这里是te-cl,首先同样 /admin无法访问
在这里插入图片描述
出现响应差异,漏洞探测成功。
在这里插入图片描述
和前面一样的思路进行修改,不过此时te是正常的,注意修改后每次重新计算分块值。此时cl较少(注意关闭自动更新cl),分割出第二个请求,前端看到为一个正常请求,后端看到一个请求和一个等待完善的请求。发送两次即可。
在这里插入图片描述
进入敏感链接
在这里插入图片描述

Exploiting HTTP request smuggling to reveal front-end request rewriting

对于请求,前端服务器可能有字段限定,比如限制一个请求必须含有x-forwarded-for,限制ip。而请求走私出去的请求,你并不知道要加哪些字段才能作为一个“正常”请求。

对于这个问题有两个解决方案,第一就是直接看,查看请求走私的前一个请求,有哪些字段看似是必需的,加上去就行了。第二,将请求走私的内容进行回显,这非常有效,因为此时回显的请求,是已经被前端服务器识别成功的请求,你可以看到解析后的请求(或waf后)是怎样的。

探测明显有走私漏洞
在这里插入图片描述
取出这个请求走私点
在这里插入图片描述
除了正常的浏览之外,还有一个搜索功能,返回会显示搜索了什么值
在这里插入图片描述
就像这样
在这里插入图片描述
抓出搜索请求的包,修改为一个走私请求
在这里插入图片描述
这里的请求回显,cl要长,这样post请求就不会被截断,这样才可以让下一个请求成为postbody

显然这里识别了请求头 X-TaMrxw-Ip ,也就是说,ip是作为判断条件之一的,现在我们加上它,同时设ip为本地。注意每个靶场这个值都是不同的

成功访问
在这里插入图片描述
发出敏感链接包
在这里插入图片描述

Exploiting HTTP request smuggling to capture other users’ requests

通过上面的请求,相信你也发现了,http请求走私还可以暴露下一个请求的请求细节,尤其是已经被识别过的请求,更加致命。这个场景就是在不断地在http请求走私中发现其他用户的敏感请求,利用敏感信息,完成攻击。这就是“捕获其他用户请求”。

由于是对别人发起攻击,那么一定是一个公共的功能,就不再是对主页请求这种东西了,即使捕获到其他用户对主页的请求,也很难获得敏感信息。浏览一下,只有这个评论点有可能出现敏感信息,因为肯定是登录了再评论
在这里插入图片描述
抓出发表评论包
在这里插入图片描述
测试该点是否可以进行走私请求,响应差异探测成功。

cookie ,很容易想到的: 如果拦截到请求,就可以以别人的身份发评论,查看别人登录的情况
在这里插入图片描述
不过仍然要处理的就是回显点,想要获取到下一个请求的消息,必须有一个地方来进行回显,这个点就是评论,需要打乱参数,让下一个请求成为评论,而不是链接
在这里插入图片描述
在这里插入图片描述
这里要多试几次,很有可能是自己的包。多点几下。得到cookie: victim-fingerprint=2F4rpxi73qg5fYoNzPUzLMiS7zJzUTmD; secret=A1xkItl3COG2MIYp7o9szNosj0B4YzI7; session=Cip1s2nRdN57CNSCPqEbRceGHDqp88Ed
抓一个进入个人页面的包,这里由于没登录,跳转到了登录,更改cookie
在这里插入图片描述
完成
在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:56:47  更:2022-05-05 11:57:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 3:23:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码