HRS 请求走私 学习记录
前言:
其实http 请求走私,去年火起来的时候就有了解了,也自己看过一些portswigger 上面的视频和文章,但是没有自己动手来实践,这次来自己动手来实践一下。
0x01 什么是请求走私:
HTTP请求走私是一种干扰网站处理从一个或多个用户接收的HTTP请求序列的方式的技术。
产生原因:
设置了transfer-encoding : chunked (http 2 将移除)后 , 请求主体按一系列块的形式发送,并且将省略Content-Length.在每一个块的开头需要用十六进制数说明当前块的长度,数值后接\r\n ,然后接块的内容,然后再接\r\n表示这个块结束。最后用长度0的块加\r\n\r\n表示终止块。
0x02 请求走私分类:
1.CL不为0 的get 请求
所以就可以借用admin 的cookie ,进行其他操作
2.CL-CL 走私:
3.CL-TE 走私
产生原因:
前端服务器不支持chunked encoding , 按照content length 来处理,后端则使用chunked encoding 来处理
实验地址: https://portswigger.net/web-security/request-smuggling/lab-basic-cl-te
payload: 发送两次
4.TE-CL 走私
实验地址:https://acd01f881f8f0a7c80e5860e009800b9.web-security-academy.net/
payload: 发送两次
5.TE-TE 走私
payload:
0x03 portswigger实验记录:
所有实验的地址: https://portswigger.net/web-security/all-labs
4. Lab: HTTP request smuggling, confirming a CL.TE vulnerability via differential responses
payload:
注意 :
(1) 必须要在GET 下面再添加额外的http 头 以及 添加的头后面不要再以\r\n 结尾,这样才会把第二次请求的POST / HTTP/1.1 变成一个头部的值拼接到走私数据中 , 否则会返回400错误
第二个请求拼接后应该像这样:
GET /404 HTTP/1.1
X-Ignore:xPOST /HTTP/1.1
HOST: …
…
5.HTTP request smuggling, confirming a TE.CL vulnerability via differential responses
原理: 把下一次的请求变成走私中POST 请求的数据部分
6.绕过前端服务器的安全控制CL-TE
HRS 请求走私 学习记录相关推荐
- 显示请求_学习记录:HTTP的响应与请求amp;Curl
本文包含四个部分,简要介绍HTTP请求.HTTP响应.chrome开发者查看.与CURL命令. Part1:HTTP请求 1GET请求指定的页面信息,并返回实体主体. 2HEAD类似于get请求,只不 ...
- burpsuite靶场系列之高级漏洞篇 - HTTP请求走私专题
转载至https://www.anquanke.com/post/id/246516 robots 本系列介绍 PortSwigger是信息安全从业者必备工具burpsuite的发行商,作为网络空间安 ...
- ASP.NETCore学习记录(一)
ASP.NETCore学习记录(一) asp.net core介绍 Startup.cs ConfigureServices Configure 0. ASP.NETCore 介绍 ASP.N ...
- Android开发技术周报176学习记录
Android开发技术周报176学习记录 教程 当 OkHttp 遇上 Http 2.0 http://fucknmb.com/2018/04/16/%E5%BD%93OkHttp%E9%81%87% ...
- Redis的学习记录
Redis的学习记录 1.先导了解 1.1 NOSQL概述 1.1.1 为什么要用NoSql? 1.1.2 NoSql了解 1.1.3 NoSql特点 1.1.4 NoSQL的四大分类 2. Redi ...
- [Django]模型学习记录篇--基础
模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...
- 架构与设计 之一 C 嵌入式设计模式(Design Patterns for Embedded Systems in C)的学习记录
唉 时至今日,已经不知道在嵌入式的道路上到底挣扎了多少个岁月,总感觉要"病入膏肓"了.此间总是不时出现一些疑惑:人家搞 Java.搞 C# 的动不动就是什么架构 / 框架的,搞 ...
- 【转】BLE 学习记录
原文网址:http://m.blog.csdn.net/blog/chiooo/43985401 BLE 学习记录 ANROID BLE 开发,基于 bluetoothlegatt 分析 mBluet ...
- Shiro学习记录(详细)
文章目录 Shiro学习记录 shiro核心组件 Spring Boot 整合 Shiro Shiro 整合 Thymeleaf Shiro学习记录 什么是 Shiro 官网:http://shiro ...
最新文章
- CentOS 7安装mysql-5.6.17
- idea提交spark任务,内存不足,指定JVM内存的解决方法
- iOS利用视频做起始页
- Android 应用内启动第三方应用
- oracle游标循环定义变量赋值,PL/SQL 循环 数组 游标的使用
- python3.6基础知识_python的基础知识
- 移动通信—无线波传播
- python入门之装饰器
- 第三百六十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的基本概念...
- 不可以! 南阳理工ACM 题目1071
- 修改虚拟机设置过游戏检测
- 华硕主板怎么刷bios
- 虚幻引擎UE4源码编译安装(x86,arm64平台)
- linux能yum装mcafee吗,Redhat(64位)安装Mcafee步骤
- 数学建模国赛latex写作模板
- MySQL性能瓶颈排查
- UE4 打包设置全屏模式和窗口模式方法
- 移动端切图内容包括什么_移动终端界面切图
- Linux 下 TC 命令原理及详解
- 关于PS课程中字体部分的学习总结
热门文章
- 招聘 | 美团-算法工程师-社招
- Oracle 表分析缩表,MySQL中的表分析
- 配置基于区域策略的防火墙
- 浅谈网络之“TCP协议”
- 计算机设置了桌面显示为什么没有,电脑桌面没有图标怎么回事?如何解决?
- Excel中的智能模糊查询下拉菜单,比下拉列表强20倍
- Solving environment: failed with initial frozen solve. Retrying with flexible solve的解决方法
- 评央企员工持股时隔11年将重启 个人比例不超5%
- 让笔记本延年-电池的保养技巧
- 安装vmware虚拟机详细教程