MySQL联合查询注入原理
union select 联合查询,即合并(取交集,结果中没有重复⾏)前后两个查询;前提是前后查询视图必须拥有相同数量的列,列也必需拥有相同的数据类型。
Union联合查询注入基本流程
1、判断是否存在注入
方法一:单引号法
注入点'
方法二:逻辑法
and 1=1and 1=21' and '1'='11' and '1'='2
方法三:运算法
-1-0
2、猜解表名
常见的表名:
adminuseradmin_usersystem
3、猜解字段数
order by xx
4、猜解字段名
常见的字段名:
usernamepassworduserpass
5、获取数据
union select 1,2,3... from 表名
MySQL手注之联合查询注入详解
测试环境:dvwa
注入点:http://127.0.0.1/dvwa/vulnerabilities/sqli/

靶场注入语句:
$query = "SELECT first_name, last_name FROM users WHERE user_id = '$id';";
1、判断是否注入
我们可以判断是否存在注入:
判断注入语句:1' and '1'='1这样我们的 and 就逃逸出来了(为了闭合):$query

本文详细解析了MySQL联合查询注入的过程,从判断注入、猜解表名和字段数到获取数据,阐述了如何利用联合查询获取数据库敏感信息。重点讨论了不同方法判断注入、查询数据库版本与系统信息,以及如何利用这些信息查询表名、列名和数据。
最低0.47元/天 解锁文章
10万+

被折叠的 条评论
为什么被折叠?



