暴力破解01(pikachu)——基于表单
初学安全,对我这种网络小白来说,我感觉暴力破解就是猜别人的用户名密码那种感觉。
暴力破解就是:连续性尝试+字典+自动化。
在暴力破解中字典真的是非常关键的因素,所以有效的字典可以提高暴力破解的效率。
一般有效的字典有
1.常用的账号密码。
2.互联网上被脱裤后的账号密码。
3.指定的字符工具按照指定的规则组合算法生成的密码。
暴力破解的流程
1.确认登陆接口的脆弱性(比如尝试登录-抓包-观察验证元素和response信息)
2.对字典进行优化
3.工具自动化操作(配置自动化工具,比如线程,超时时间,重试次数等),进行自动化操作。
在暴力破解中需要用到软件Burp Suite,安装破解版的方法在上个博客中。
在学过sql和DNWA之后我们配置pikachu环境就显得格外简单了,只需要在网站上下载pikachu的压缩包然后放入phpstudy的WWW目录下面。他会提示你将用户名和密码改为mysql数据库中的用户名和秘密。
这是已经配置好的界面。
下面我将开始暴力破解中的三个关卡。
基于表单的暴力破解
首先我们打开破解好的Burp Suite软件。Burp Suite软件有许多功能可以供我们使用,需要慢慢了解。
我们需要将火狐浏览器的代理设置为Burp Suite的地址和端口号,我们可以在Burp Suite里查看地址和端口号。
设置好之后我们对火狐浏览器所做的每一次请求都要经过Burp Suite了,这就是Burp Suite 的Proxy代理选项的作用。
1.我们先随便输入一个账号密码进行提交看看是否存在暴力破解的可能性。可以看到提示我们账号密码不存在。
然后我们可以看到Burp Suite 中抓到的post请求数据包,返回值200说明登陆失败。
2.然后我们选中这次发送的内容发送到Intruder中去。我们这里需要用到的是Cluster bomb这个选项。这个选项就是将用户名和密码字典中的数据按照笛卡尔积交叉尝试最后可以得到正确的用户名和密码。我提前写好了两个数据字典放在桌面上。如下图所示。因为我已经看到了页面上的提示所以将正确的用户名和密码添加到里面了已经。
3.我们将用户名和密码设置为变量,然后在Payloads中将第一个变量所用的字典设置成用户名文本文档,将密码所用的字典设置为密码的文本文档。
4.配置Options中的Grep Match选项。(这一步很关键,如何能看出哪个是正确的账号密码都看这一步的配置了),我们首先清空里面的常用的一些返回值。我们将浏览器上登陆失败时的返回值添加进来。没有Flag出来的数据包说明就是正确的数据包啦~
5.配置好了攻击一下。
没有FLAG的就是正确的用户名和密码了。