首页 > 其他分享 >less29(http参数污染)

less29(http参数污染)

时间:2023-01-18 16:00:42浏览次数:55  
标签:http name less29 漏洞 污染 参数 服务器 解析

基于WAF的一个错误

这一关要点进login.php才是题目,如果点进index.php就是第一关一样了。这题是基于http污染
img

漏洞描述

HTTP参数污染漏洞(HTTP Parameter Pollution)简称HPP,由于HTTP协议允许同名参数的存在,同时,后台处理机制对同名参数的处理方式不当,造成“参数污染”。攻击者可以利用此漏洞对网站业务造成攻击,甚至结合其他漏洞,获取服务器数据或获取服务器最高权限。

原理

浏览器在跟服务器进行交互的过程中,浏览器往往会在get/post请求中带上参数,这些参数以名称-值的形式出现,通常在一个请求中同一个名称参数只会出现一次,但在http协议中是允许出现多次的。
例如:
http://www.baidu.com?name=a&name=b,
百度解析的name值为-- a
雅虎解析的name值为-- b
谷歌解析的name值为-- a b

解析:不同的服务器针对同一个名称出现多次的情况处理方式也不一样,有的服务器取第一个值name=a,有的服务器取第二个值name=b,也有的服务器两个参数都取 name=a,b。这种特性在绕过一些服务器的逻辑盘点时非常有用。

hpp漏洞与web服务器环境,服务端使用的脚本有关,如下是不同web服务器对于出现多个参数是的选择:
img

这关可以看一下对于login页面的过滤,这里他是写了一个正则来只匹配数字,如果有数字以外的输入就跳到hacked页面。
img
img
img

但是他这里只对第一个参数进行匹配,匹配第一个参数第3个字符起最多匹配30个字符。没有对第二个参数进行过滤,那么可以构造两个参数来绕过过滤。具体要看是什么样的脚本和服务器的配置。
img
img
img
由于我这里是php+apache,服务器解析的是第二个参数,那可以直接在第二个参数上面注入。
img
img

标签:http,name,less29,漏洞,污染,参数,服务器,解析
From: https://www.cnblogs.com/qianyuzz/p/17060024.html

相关文章