pikachu靶场通关之暴力破解

1、pikachu靶场简介

1.项目地址

2.具体安装就不在叙述了。

2、暴力破解漏洞概述

暴力破解描述
字典
暴力破解测试流程
优化技巧

3、暴力破解-实验环境介绍

burp-proxy代理模块介绍
intruder模块
具体intruder模块介绍
具体intruder模块介绍

4、基于表单的暴力破解

随便输入一个用户名和密码,用burpsuite抓包。

发送到intruder模块,使用Clusterbomb工具进行暴力破解。先全选数据包清除变量,然后分别选中admin和password两个变量,分别添加变量符号。

然后选择有效载荷集payload,这里可以选择运行时文件(自定义payload),也可以选择简单清单(可以导入burp内置的字典)。这里我就随便输入了一些字典作为爆破使用。。。因为用别的字典基数太大爆破太慢,这里使用TOP100即可~

选定payload后,还可以进行一个小步骤的操作优化。在Grep-Match这里,我们可以添加错误提示。这样就可以和成功登陆的响应包区分开来。

一切准备就绪,开始攻击。

最后筛选一下数据,得到了三个有效的用户名密码。暴力破解成功~

admin     123456 
pikachu   000000 
test      abc123

5、暴力破解的绕过和防范

6、验证码绕过(on client)

先抓个包看看效果。

看到了增加了一个验证码的功能。查看网页源代码,找到了一串js代码。整个验证码的逻辑都是在js里面实现的。

这个onclick=”createCode()”就是调用了验证码的功能。

整个验证码的生成和验证都是使用JavaScript在前端做的校验。而在前端做验证是不靠谱的。很容易绕过。

接下来我们来验证后端有没有开启验证模式,将数据包发送到repeater中,任意修改验证码,send发送,发现提示用户名密码错误,于是发现验证码被绕过了。

接下来就是暴力破解用户名和密码了,和之前4的步骤一样,就不在具体叙述了

最终得到用户名密码,直接登录进去。

让我们来看一下后端代码,后端只是对用户名密码做了校验,而验证码没有,因此可以绕过。

常见的问题

7、验证码绕过(on server)

常见的问题

验证码复杂度。。设计验证码。

开始实验。

我们先来尝试正常输入,发现没什么问题,抓包看一下后端校验。于是乎,发现了后端是有校验的。

判断验证码是否不过期。我们进行两次不同用户名密码的输入,使用同一个验证码来进行判断。最终得到的结果是验证码不过期!

接下来,就重复4和5的基础暴力破解用户名和密码的操作了,这里强调一点,就是验证码给它固定下来即可。其余不变,具体就自己尝试吧~与之前一样。

接下来,让我们从代码层面来看。img的标签调用的是产生验证码的文件,点击验证码也会从新获取验证码。

而生成验证码的文件中,每当调用showvcode就会生成验证码,存到vcode中。vode就是生成一个验证码。

好啦~问题就在验证码长时间不过期这里。后续可以改进哦~

8、防暴力破解的措施总结

9、token防爆破?

查看token。当我们打开一个页面,后端收到请求后,就会生成一个token放到session中,同时输出到前端的表单中。当我们每一次登录,就会验证用户名和密码以及token,刷新一次页面token也会刷新。

我们在后端看一下token验证

token生成-当访问一个页面,先看看有没有token有就销毁,没有就销毁,即set_token()函数。

这里的token被echo出来到表单中,是隐藏状态

所以,token是预防不了暴力破解的~~~

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇