DVWA实验之Brute Force(暴力破解)- Low

DVWA实验之Brute Force-暴力破解- Low

 
 
这里开始DVWA的相关实验~
 
有关DVWA环境搭建的教程请参考:
 
 
 
Brute Force,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的攻击手法之一。
 
这里我们先将安全等级设为  low
 
 
 
 

Low

服务器端核心代码
<?php
 
if(isset($_GET['Login'])){
//Getusername
$user=$_GET['username'];
 
//Getpassword
$pass=$_GET['password'];
$pass=md5($pass);
 
//Checkthedatabase
$query="SELECT*FROM`users`WHEREuser='$user'ANDpassword='$pass';";
$result=mysql_query($query)ordie('<pre>'.mysql_error().'</pre>');
 
if($result&&mysql_num_rows($result)==1){
//Getusersdetails
$avatar=mysql_result($result,0,"avatar");
 
//Loginsuccessfulecho"<p>Welcometothepasswordprotectedarea{$user}</p>";
echo"<imgsrc="{$avatar}"/>";
}
else{
//Loginfailedecho"<pre><br/>Usernameand/orpasswordincorrect.</pre>";
}
 
mysql_close();
}
 
?>
 
知识点:
1. isset函数在php中用来检测变量是否设置,该函数返回的是布尔类型的值,即true/false
2.我们知道isset函数的用途之后,我们可以得知服务器只是验证了参数Login是否被设置,并没有做任何防爆破机制
3.对参数username、password没有做任何过滤,存在明显的sql注入漏洞
 
 
 
 
我们先用 burpsuite抓包分析一下
 
在火狐中开启代理
在bp中配置好
 
随意输个密码,这里我输入123
 
 
 
 
 
 
 
 
将代理中抓取到的信息 发送至 intruder模块
因为要对password参数进行爆破,所以在password参数的内容两边加$
 
 
 
 
 
选中Payloads,载入字典,点击Start attack进行爆破
 
 
爆破完成后,我们可以通过长度来判断,爆破出的密码为password
 
 
输入密码password
 
 
 
 
bingo~~
 
 
 
另一种方法~~
 
手工sql注入
 
1. Username:    admin’ or ’1′=’1  
   Password:     (空)
 
注入成功
 
原理: select name from 表 where name=’  admin’ or ’1′=’1
          1=1 永真
 
2. Username :   admin’ #
    Password :    (空)
 
注入成功
 
原理:# 为注释   后面均无效
 
 
 
 
 
完成!

猜你喜欢

转载自www.cnblogs.com/0yst3r-2046/p/11609227.html
今日推荐