HTTP参数污染
HTTP Parameter Pollution简称HPP,所以有的人也称之为“HPP参数污染”。
一篇很不错关于HPP参数污染的文章:http://www.paigu.com/a/33478/23535461.html
如文章中所言,HPP并非一个漏洞,但是网站存在SQL或者XSS,在有WAF的情况之下可以帮助黑客进行绕过WAF。
那么什么是HPP参数污染呢?
假设这个URL:http://www.xxxx.com/search.php?id=110&id=911
百度会理解成让百度搜索:110 #选择了第一个参数,放弃了第二个参数。
雅虎会理解成让雅虎搜索:911 #选择了第二个参数,放弃了第一个参数。
谷歌会理解成让谷歌搜索:110 911 #两个参数同时选择。
主要的就是这三种情况了。
这主要是源于,不同的网站对处理参数的处理方式不同。PS:跟米哥一起学习的,总结米哥的,感觉我总结的还是欠妥当。
那么注入是怎么跟HTTP污染产生关系的呢?
倘若是第三种情况,也就是第一个参数取第二个参数也取。那么大家请看下面的URL
http://www.xishaonian.com/hello.php?id=select 1&id=2,3,3 from admin
该种情况还可用于Bypass WAF.
当然还可以与XSS结合。
具体服务端处理方式如下:
| Web服务器 | 参数获取函数 | 获取到的参数 | 
| PHP/Apache | $_GET(“par”) | Last | 
| JSP/Tomcat | Request.getParameter(“par”) | First | 
| Perl(CGI)/Apache | Param(“par”) | First | 
| Python/Apache | Getvalue(“par”) | All(List) | 
| ASP/IIS | Request.QueryString(“par”) | All(comma-delimited string) | 
HTTP参数污染的更多相关文章
- 学习笔记 HTTP参数污染注入
		HTTP参数污染注入源于网站对于提交的相同的参数的不同处理方式导致. 例如: www.XX.com/a?key=ab&key=3 如果服务端返回输入key的值,可能会有 一: ab 二:3 三 ... 
- HTTP参数污染【转】
		HTTP参数污染注入源于网站对于提交的相同的参数的不同处理方式导致. 例如: www.XX.com/a?key=ab&key=3 如果服务端返回输入key的值,可能会有 一: ab 二:3 三 ... 
- 通过HTTP参数污染绕过WAF拦截 (转)
		上个星期我被邀请组队去参加一个由CSAW组织的CTF夺旗比赛.因为老婆孩子的缘故,我只能挑一个与Web漏洞利用相关的题目,名字叫做”HorceForce”.这道题价值300点.这道题大概的背景是,你拥 ... 
- WEB安全番外第一篇--其他所谓的“非主流”漏洞:URL跳转漏洞与参数污染
		一.URL跳转篇: 1.原理:先来看这段代码: <?php if(isset($_GET["url_redircetion_target"])){ $url_redirect ... 
- 【sqli-labs】【jsp/tomcat】 less29  less30 less31 less32 (GET型利用HTTP参数污染的注入)
		sqli-labs带了几个Java版本的web注入,在tomcat-files.zip里 以Less29为例,查看源码,可以看出请求最后还是提交给了php应用,难怪less29文件夹下有一个没有任何防 ... 
- HTTP参数污染学习
		HTTP参数污染 --- HPP 参考: 参数污染漏洞(HPP)挖掘技巧及实战案例全汇总 视频内容 HPP,简而言之,就是给参数赋上多个值. 比如: https://www.baidu.com/s?w ... 
- HTTP参数污染(HPP)漏洞
		HPP(HTTP参数污染) HPP是HTTP Parameter Pollution的缩写,意为HTTP参数污染.原理:浏览器在跟服务器进行交互的过程中,浏览器往往会在GET/POST请求里面带上参数 ... 
- 一枚通过参数污染绕过百度RASP的XSS
		日常工作过程中,偶然发现一个网站登录页面,在页面返回包中存在一个隐藏参数"mess",且该页面部署了百度RASP进行防护,本文介绍如何发现隐藏参数以及如何通过参数污染方式造成XSS ... 
- HTTP参数污染(参数处理图)
随机推荐
- Linux下基于vsftpd搭建ftp服务器
			1.先用检查是否已经安装rpm -qa| grep vsftpd2.然后再进行在线安装vsftpd这个服务yum install vsftpd -y3.修改vi /etc/vsftpd/vsftpd. ... 
- 《JavaScript高级程序设计》笔记整理
			欢迎各位指导与讨论 : ) -------------------------待续------------------------------- 本文为笔者在学习时整理的笔记,如有错漏,恳请各位指出, ... 
- 14-前端开发之HTML
			1. 什么是HTML? HTML (Hyper Text Mark-up Language) 即超文本标记语言,是用来描述网页的一种语言. 它不是一种编程语言,而是一种标记语言 (markup lan ... 
- Android5.0资源 colorAccent,colorPrimary,colorPrimaryDark
- iOS地图 -- 区域监听的实现和小练习
			区域监听用到的方法 [self.mgr startMonitoringForRegion:region]; --> 开启区域监听,没有返回值,在代理方法中得到信息并且处理信息 注:该方法只有用户 ... 
- C/C++的编译过程
			预处理(Preprocess). 使用Preprocessor Directives将一些代码替换成另一些代码. 例如将include替换成它指向的文件包含的代码. 编译成目标文件(Compiatio ... 
- 如何根据执行计划,判断Mysql语句是否走索引
			如何根据执行计划,判断Mysql语句是否走索引 
- bzoj 2301: [HAOI2011]Problem b
			2301: [HAOI2011]Problem b Time Limit: 50 Sec Memory Limit: 256 MB Submit: 3757 Solved: 1671 [Submit] ... 
- C#使用 DirectX SDK 9做视频播放器 并在视频画线添加文字  VMR9
			视频图像处理系列 索引 VS2013下测试通过. 在百度中搜索关键字“DirectX SDk”,或者进入微软官网https://www.microsoft.com/en-us/download/det ... 
- 简单的c# TCP通讯(TcpListener)
			简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TC ... 
