危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2289 浏览18982407

使用HTTP FUZZER暴力破解密码

FUZZER中文名称是漏洞检查工具,通过FUZZER可以发送数据到组件,可以完成数以万计的检查任务,代替手工进行检测,从而发现软件中的漏洞。HTTP FUZZER的意思也就是通过漏洞检测工具发现WEB网站中的漏洞。危险漫步将会在本文介绍WVS的HTTP FUZZER功功能。

一、什么是WVS的HTTP FUZZER

WVS的全称为Web Vulnerability Scanner,通过这英文名大家应该就知道它就是一款网站漏洞扫描器,不过其实这工具除了扫描网站的漏洞,还有很多的其它功能,比如说端口扫描,扫描眼务器服务等功能。使用这个工具可能大家一般都只使用它的扫描功能,对于其它功能使用的比较少。其实这个工具其它功能也十分的强大,这里就介绍下它的其中一个功能,也就是HTTP FUZZER功能,这个功能类似于很久以前一个前辈写的溯雪,也就是暴力破解网页密码的一款工具,不过由于溯雪的年代比较久远,因此对于现在的很多的登陆表单都不支持了,因此WVS的HTTP FUZZER相当于溯雪的加强版,无论在表单支持的种类上还是稳定性以及破解速度上都比溯雪好些,所以这里就介绍下使用WVS的HTTP FUZZER暴力破解密码。

二、HTTP FUZZER功能介绍

首先打开WVS,在Tools这一览中可以看见HTTP Fuzzer这个选项,点击后出现如下界面。下面我就介绍下怎么使用这个功能。首先start这个按钮也就是开始破解,这个大家都明白。Fuzzer Filters这个主要对返回状态进行过滤,通过设置规则,让程序懂得什么情况是密码错误,什么情况是密码正确,这里可能说得有点抽象,等会儿通过实例就很好懂了。Request这里填写发送的数据包,通过对‘发送的数据包进行修改,可以使程序明白什么地方是可以暴力猜解的地方。Results就是返回的结果,根据不同的返回状态,判断密码是否爆破成功。

三、使用HTTP FUZZER暴力破解登陆密码

上面简单说明HTTP FUZZER的功能,可能大家都还不是很懂具体的操作,下面我就以暴力破解登陆密码作为实例。

有些时候在检测一个网站的时候,可能会看见其他人留的WEBSHELL,但是由于没有密码,就不能控制这个WEBSHELL,这时候就可以尝试下使用HTTP FUZZER对密码进行暴力破解,如果对方使用的是弱口令那么就很有可能暴力破解出来密码。要对密码进行破解,字典是必须的工具,虽然说wvs的HTTP FUZZER也支持简单的字符和数字的暴力破解,但是一款好的字典的用处还是很大的。字典可以从网上下载生成好的,也可以自己通过工具生成。这里通过易优字典生成器生成一个字典。由于只是简单测试,这里就只生成一个小写字母的字典,生成的字典名字为superdic.txt。

为了让大家能够理解原理,这里我就写了一小段php代码模拟后台登陆,通过这段代码应该就可以轻松的理解后台登陆的原理以及为什么可以暴力破解密码。

这段代码相当的简单,不过登陆的原理也包含在这小段代码中了,如果输入的密码为heix,那么就输出密码正确,如果密码错误,那么当时输出错误提示。这里要注意的就是错误提示,因为要让工具自动破解密码,就必须让工具找到关键点,也就是key,而key-般就包含在错误提示中,比如说这里的wrong就明显是个key,等会儿就会在工具中用到。

要进行密码破解,就需要抓取网页提交的数据包,可能大家以前经常使用winsock expert这款工具,以前的也介绍过这款工具的使用。这里就使用一款比winsock expert功能强大的工具burpsuite。这里简单说下用法,先本机设置代理,将数据通过burpsuite的代理转发出去。然后访问登陆地址,我这里使用的本机搭建的测试环境。然后随便输入一个密码,比如说test,点击登陆后urpsllite就会有数据,数据在proxy的history选项下,比如这次访问的数据如下:

最重要的数据就是最后一行的数据,可以看到test,是刚才提交的数据。

这时候只需要将数据放在wvs的Request里面。然后点击add generator,选择file generator,然后在下面的filename中选择刚才生成的那个字典,riietype选择Text,encoding保持默认。

然后我们将Request中的数据最后一行,也就是password=test,将test用鼠标左键选中,然后点击Insert into fRequest,这时候hackx就会变成${Gen一2},这样的目的就在于告诉程序password是一个用于暴力破解的变量,这一步很重要,不然的话HTTP FUZZER是不知道哪个是需要破解的变量。然后就是设置过滤器了,也就是Fuzzer Filter。首先要添加一个规则,这里rule description是对这个规则的描述,可以不填,这里就随便填一个heix吧。rule fype有两种选择,一种是exclude,也就是不包含,另一种是include,也就是包含。这里我们使用exclude。Apply To可以保持默认,然后regu'larexpression也就是规则描述,这个选项比较重要,关系着破解的成功与否。由于选择了exclude.也就是当页面出现了某个特定字符的时候表示密码是错误的,这里使用wrong作为关键字,在regular expression中填写wrong。然后点击add,就添加成功了一个规则了。准备工作做好了,就可以点击start进行破解了,很快密码就破解出来了,是heix。这里只演示了破解密码这种情况,其实大多数时候还是有用户名的,这时候只要多添加一个变量就可以了,操作步骤也差不多,这里就不再说明了。

通过上面的操作,我想大家应该都明白了登陆的原理和怎么使用HTTP FUZZER破解密码了吧。可以看出,破解密码还是挺简单的,有些事情想起来可能比较难,其实自己亲手实践后才会发现其实还是挺容易的。