今天将基于Pikachu平台练习有关暴力破解内容。web
先来简单地介绍一下:后端
“暴力破解”是一攻击具手段,在web攻击中,通常会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登陆,直到获得正确的结果。 为了提升效率,暴力破解通常会使用带有字典的工具来进行自动化操做。理论上来讲,大多数系统都是能够被暴力破解的,只要攻击者有足够强大的计算能力和时间,因此判定一个系统是否存在暴力破解漏洞,其条件也不是绝对的。 咱们说一个web应用系统存在暴力破解漏洞,通常是指该web应用系统没有采用或者采用了比较弱的认证安全策略,致使其被暴力破解的“可能性”变的比较高。 这里的认证安全策略, 包括: 1.是否要求用户设置复杂的密码;
2.是否每次认证都使用安全的验证码(想一想你买火车票时输的验证码~)或者手机otp;
3.是否对尝试登陆的行为进行判断和限制(如:连续5次错误登陆,进行帐号锁定或IP地址锁定等);
4.是否采用了双因素认证;
千万不要小看暴力破解漏洞,每每这种简单粗暴的攻击方式带来的效果是超出预期的!安全
而后开始练习:工具
先用burpsuite抓包看看网站
输入一点东西ui
发送这个包到Intruder,攻击方式选择Cluster bomb,并自行设置字典3d
将字符串username or password is not exists复制到burpsuite的Grep-Matchserver
而后开始攻击blog
总共找出了三个帐户token
登录成功
先试一试正确的验证码康康:
看一下该网站验证机制是怎么写的
这就写的真的搞笑了~
因此我如今须要干什么爆破呢~直接把上一解拿过来用不就行了~
因此,我很无耻地去看了源代码:
Duck没必要这个亚子,哥们……
好了,那就直接爆破好了。
设置爆破字典
发现几个帐户均可以:
成功登陆
emmmmmmmmmm……
我就忘了关ATTACK了,结果他给我跑出了第四个帐户……
试试吧:
不对欸……
千古谜题,我不知道为何会这样,应该是某个过滤条件没注意到……
先尝试一个错误的用户名和密码加上正确的验证码
抓到的包发给repeater
发现原先的验证码仍然可使用,确认是发一次包在后端没有进行刷新。
那么暴力破解,直接用原来的验证码就能够。
破解步骤和上面的同样了……
登录成功
废话很少说,直接抓包
发现提交了token
因为后端是先验证每次用户提交的随机的token再进行后续的验证,因此每次都得考虑绕过token检验。
使用pitchfork,token值也要加上payload
设置好token的payload
最后长度不同的就是正确的用户名和密码
根据以前的结果可知这个确定是正确滴~