DVWA系列之11BruteForce中的密码绕过

下面来分析一下DVWA中的Brute Force暴力破解,在页面的文本框中输入用户名和密码,如果输入错误,会出现错误提示。

为路北等地区用户提供了全套网页设计制作服务,及路北网站建设行业解决方案。主营业务为做网站、成都做网站、路北网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

DVWA系列之11 Brute Force中的密码绕过

正确的密码跟DVWA登录密码一样,都是password。正确输入的页面:

DVWA系列之11 Brute Force中的密码绕过

所谓的暴力破解,就是在不知道密码的情况下,通过软件挨个密码进行尝试,从而最终将密码破解出来。

我们还是先选择low级别,查看一下源码。

DVWA系列之11 Brute Force中的密码绕过

有了之前的基础,很容易就可以发现这段代码中存在SQL注入漏洞,问题就出在下面这行语句:

$qry = "SELECT * FROM `users` WHERE user='$user' AND password='$pass';";

比如我们输入用户名“admin’ or ‘a’=’a”,那么无论输入什么密码都可以正常登录,这就是经典的密码绕过漏洞。

原理其实很简单,只要将那段用户名代入到代码中就可以理解了。

$qry = "SELECT * FROM `users` WHERE user='admin’ or ‘a’ = ‘a' AND password='$pass';";

因为了有了“or ‘a’ = ‘a'”的存在,所以后面的“AND password='$pass'”密码验证根本就没有发挥作用。


本文题目:DVWA系列之11BruteForce中的密码绕过
网站网址:http://myzitong.com/article/jecigi.html