Python:
JAVA:
靶场环境配置:
安装phpstudy,然后启动数据库和服务器
访问本地地址查看是否创建成功:
修改pikachu的config.inc.php配置文件:
修改用户名及其密码
访问靶场安装初始化页面,点击”安装/初始化“查看是否成功:
靶场搭建完成
Pikachu弱口令爆破
先尝试抓取包看是否可以正常拦截
我们首先随意填写一个账号密码,并打开bp进行抓包,抓取成功的界面如下
我们点击Action然后准备进行爆破。
进入 Intruder界面后,我们需要选择需要对需要破解的数据进行标记,并且选择攻击方式(Attack type)
首先选择clear$,然后分别选中username和password输入的数据进行标记,点击Add$,最后选择攻击方式Cluster bomb
随后进入Payloads模块,在payload set 1位置,也就是username位置,上传关于我们的账号的字典,在2位置选择我们的密码字典,这里如果没有字典,可以去网上查找,或者直接手动添加爆破的数据
随后点击右上角start attack进行爆破
爆破结束后,我们可以根据返回数据长度来判断正确的账号密码,返回长度不同于其他数据包的,就是正确的账号密码,此处账号:root 密码:123456
输入密码后成功登录:
验证码绕过
我们首先观察一下
当我们输入错误的用户名密码以及验证码时,提示我们验证码输入错误
当我输入错误的账号密码,但输入正确的验证码时,提示我们username or password is not exists
并且我们发现,只有当页面刷新时,验证码才会重新刷新,下面我们就来验证一下这个猜想
我们先来抓一个包,输入正确的验证码和错误的账号密码
再次修改密码
依旧提示username or password is not exists,由此验证我们的猜想是对的,只要页面不刷新,验证码就不会改变。
那么剩下的步骤就和上一关一样了,我们将数据包发送到攻击模块,暴力破解,即可得到用户和密码