注入学习之pikachu(环境搭建+暴力破解部分)

疫情期间在家完全没有学习动力,还是在好哥们的带动和火烧眉毛的学习任务下开始写随笔。所以说自制力是一个人相当重要的优点!

这次要学习的是pikachu注入练习,首先环境搭建,我这里用的是phpstudy的环境,下载pikachu后,将文件夹拷贝到phpstudy/PHPTutorial/WWW 目录下,下面这是我找的一个网盘地址可供下载。

链接:https://pan.baidu.com/s/1bTc0XaSi0GnVcO5VfC8dBQ 
提取码:dl16

然后在文件夹中按照图片目录找到config.inv.php   打开后将里面密码填上 

我这里将密码修改为 root,然后我们就可以用XSS虚拟机,登录网站开始学习之旅了。

 打开主页 左侧就是们要学习的内容了。

 一、暴力破解

  首先要讲一下暴力破解工具 Burp suite

 通过这个工具我们可以将网站发送的信息截取下来进行分析,然后进行破解,其中包含许多模块,这次实验我们用到intruder这个模块,这个模块我们可以将截获的数据包以变量的方式自定义参数,然后根据策略进行自动化的重放。常用于自动化猜测/暴力破解过程中。话不多说我们开始暴力破解的学习。

1.基于表单的暴力爆破

首先我们打开浏览器配置代理,工具--高级--网络--设置--手动代理

 这样我们就可以将包先通过brup suite抓包然后修改,配置完成后我们先随便输入一个账号密码测试,然后我们点开burp suite查看发送的包

 然后我们右击橙色一栏将包发到intruder中,我们将变量先清除 然后把账号密码部分添加变量 将攻击类型改为Cluster bomb

 改好的结果如下

 然后我们点击payloads选项进入

 将两个payload分别设置为Runtime file 并且添加相应的密码本 然后开始攻击

 等待破解完成后,对比右侧length数据的不同可以判别正确的账号密码,如上图所示。这就是暴力破解最简单的一种。

2.不安全的验证码-on client-绕过实验演示

我们通过右击查看页面源代码发现,这个验证码是在前台通过js的代码生成并且验证的,这样是不安全的,我们先成功输入一次验证码,然后通过burp suite抓包查看

抓包后我们将包发送到Repeater模块(可以对包进行处理,并且继续发送),我们将验证码修改为其他,然后看一下返回结果

如下图,我们发现并没有提示验证码错误,而是提示账号密码不存在,说明验证码已经被我们绕过,这时我们就可以通过普通的暴力破解将账号密码设为变量破解。

 

 结果如下。

 

 3.不安全的验证码-on server

 首先我们打开代理 随便输入一个验证码 然后抓包发送到Repeater查看 这时提示我们验证码错误

 然后我们从页面重新生成一个验证码 用这个验证码尝试 这时结果正确返回出 用户名密码不存在 

 然后这时我们继续使用这个验证码 修改账号密码尝试   结果发现这个验证码可以多次使用  这下我们就可以重复上述步骤  使用intruder进行破解

 结果如下,破解成功  这次实验由于我的burp suite 无法回显中文  所以我将代码改为拼音方便展示

4.token防爆破?

 我们通过控制台查看form表单里的元素发现 在我们打开页面的时候 通过token生成了一串字符串,然后提交时除了验证账号密码之外,还要验证生成的token值

 通过查询后台代码,可以发现他先比较token的值 如果正确了才会比较账号和密码的正确与否。

这样可以防暴力破解吗? 很明显是不能的,因为他每次生成的token值都会显示到表单里面 虽然通过hidden隐藏了 ,但是从页面代码中可以找到,破解者只需要写一个获取token值的工具每次获取到值,然后再进行暴力破解就可以实现了。

原文地址:https://www.cnblogs.com/laoxu777/p/12615015.html