Pikachu靶场通关实录-暴力破解篇

0x01 简介

“暴力破解”是一种攻击手段。在web攻击中,一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。 为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作。理论上来说,大多数系统都是可以被暴力破解的,只要攻击者有足够强大的计算能力和时间。


0x01 基于表单的暴力破解

这种没有验证码的登录界面,破解真的只是时间的问题。高准确率的字典是很重要的, 所以说信息收集真的是很重要的一个步骤。此处为了提高效率,我将皮卡丘靶场的几个常见用户名给做成了username字典,而password字典就选用top500弱密码。


基于表单的暴力破解

掏出我们的大宝贝-burpsuite,调好攻击模式,设置好爆破变量,加载好字典文件,开搞。


基于表单的暴力破解-burpsuite1

用户名字典文件

密码字典文件

密码出来了,分别是admin/123456,test/abc123,pikachu/000000。这里密码为0的时候,返回的响应包数据长度也不一样,特意试了一下,是因为密码为0的时候,皮卡丘靶场不会有任何提示,因此跑出来的响应包长度就有三种不同的长度。


密码

0x02 验证码绕过(on server)

看到关卡标题就明白了,这一关是服务端验证码绕过,先抓个包看一下。
抓到之后发到重放模块里面发送了几次请求包,响应包的数据长度都一样的,猜测服务端并没有及时销毁验证码,因此存在验证码复用的漏洞。


验证码数据包

跑了一波果然跑出来了。


密码

0x03 验证码绕过(on client)

本地端的验证码是能在数据包中看到的,抓包试下。
结果数据包里并不能看到校验信息,原来这里跟我想的还不一样。我以为是数据包中有验证码,只要把数据包中post正文的验证码改得一致就能通过校验进行爆破了。结果靶场这里比我想象的更简单,验证码纯粹是前端JS验证,只要删除js代码或者价格数据包就能直接开搞了。


密码

0x04 token防爆破?

看到题目就知道是加入了token校验,只要每次爆破的时候把token值取出来就OK了,并不复杂。
抓个包发送到intruder模块,然后设置下每次爆破时获取token值。
intruder模块找到options选项,然后找到Grep-Extract功能,点击add新增一条数据提取规则。
然后在新窗口点击refetch response获取到响应包内容,在响应包内找到token,然后选中token值后点击OK,接下来就可以设置爆破规则了。

image.png

我们给账号密码和token处都设为变量,然后将token的payload设置为我们刚提取的token值,并且将当前数据包的token填入,爆破线程设为1,始终遵循重定向也给设置好,开搞!
变量设置

token的payload设置

线程设置为1

始终遵循重定向

本以为这样就能轻松搞定这一关,却在查看结果时发现了一个问题。因为将burpsuite设置为了Cluster bomb模式,因此在爆破时将所有出现的token值进行了笛卡尔积运算,这就导致爆破的数据量无限增加,并且正确结果也不便于我们查看。
image.png

因此,我们此处使用另外一种取token值的方法。来到project options模块的sessions功能下,找到macros并点击add来添加一条宏规则。
选中POST方法带有token值的请求包后,点击OK。
image.png

然后点击configure item进行配置。
image.png

点击add
image.png

填写参数名,注意此处的参数名必须跟表单中的参数名保持一致,选中token值然后一路点击确定。
image.png

接下来新增一条处理规则,选择仅更新token参数。此处的token参数名称为手打的,非下拉选择。
image.png

规则生效范围

设置下规则生效范围,然后就可以配置payload了。这种模式下只需要将用户名和密码添加为变量即可。
image.png

OK,成功跑出来了。


0x05 防御方法

  • 如果用户登录次数超过设置的阈值,则锁定帐号(有恶意登录锁定帐号的风险)
  • 如果某个 IP登录次数超过设置的阈值,则锁定IP
  • 增加人机验证机制
  • 验证码必须在服务器端进行校验,客户端的一切校验都是不安全的
  • 及时销毁验证码
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容

  • 暴力破解及验证码安全(逻辑漏洞) 1.暴力破解注意事项 破解前一定要有一个有效的字典(top100 top2000...
    Admin3K阅读 6,223评论 0 3
  • 写出一个网站登录的地方有那些漏洞,用自己的语言做一个总结。 1、 用户是否设置了复杂的密码 2、网站是否存在验证码...
    卿酌南烛_b805阅读 1,043评论 0 1
  • 暴力破解&暴力破解漏洞概述 暴力破解连续性尝试 + 字典 + 自动化 字典 一个有效的字典,可以大大的提高暴力破解...
    sunnnnnnnnnny阅读 738评论 0 1
  • 一、爆破原理 顾名思义,暴力破解的原理就是使用攻击者自己的用户名和密码字典,一个一个去枚举,尝试是否能够登录。因为...
    Jewel591阅读 11,036评论 4 7
  • 0x01如何判断存在暴力破解? 1.确定登录接口的脆弱性 例如尝试登录→抓包→分析观察验证元素和respons...
    21adc3a3fb75阅读 423评论 0 0