SRC之Burp宏利-验证码明文返回

admin 2023年12月26日13:32:06评论14 views字数 1916阅读6分23秒阅读模式

SRC之Burp宏利-验证码明文返回

又是好久没发文章了,最近太忙了,不过后续可能会好一点?可能吧,后续打算就开始写一些免杀方面的文章了,从浅入深,欢迎师傅们关注交流学习并指正,本篇文章写了最近遇到的一个有趣的滑块验证码存在的安全问题,整个过程很简单,但是里面遇到了各种问题和bug,解决经验还是比较有价值的。

一开始挂上BP访问这个站点会如下提示

SRC之Burp宏利-验证码明文返回
image-20231215100622474

这个情况,把BP里面的如下设置打开就可以了

SRC之Burp宏利-验证码明文返回
image-20231215100650569

开局一个登录框,本来想着测试一下有没有短信炸弹来着,结果一看好家伙竟然有滑块验证码,这种情况下我的测试思路就是开两个页面,具体的之前的文章中说过这里也不多说了,最后发现并没有短信炸弹漏洞

SRC之Burp宏利-验证码明文返回
image-20231215100217959

怎么办呢,测试吗,细心也很重要,通常每个请求包我都会看到,于是当我拖动滑块验证码的时候发现了这东西,你,,,在搞笑吗?

我拖动滑块完成验证后,发了一个请求,然后返回了4位数字,作为验证码

SRC之Burp宏利-验证码明文返回
image-20231215101035002

然后我点击获取验证码按钮之后,发出获取手机验证码的请求,然后在请求中存在两个参数,一个是手机号,一个就是所谓滑块验证码返回的四个数字,这个跟图形验证码中的响应体返回验证码值本质上是一个东西啊

SRC之Burp宏利-验证码明文返回
image-20231215101106231

ok,那么接下来利用它,首先第一步js逆向把telephone的加密逻辑找到,浏览器中直接打开f12看流量堆栈,可以看到下图中第三个像是对应函数,点进去

SRC之Burp宏利-验证码明文返回
image-20231215101358112

找到telephone参数,可以看到RSA,非对称加密,接下来找公钥,去追溯参数key

SRC之Burp宏利-验证码明文返回
image-20231215101516603

找到对应位置,可以看到公钥非常见的x509格式,而是ModulusAndExponent,模数指数的形式

SRC之Burp宏利-验证码明文返回
image-20231215101609430

好在BP的Burpcrpto支持这个格式,但是在复现的时候发现,通过插件中RSA进行加密的值后端不认,醉了,然后我直接简单粗暴,用的下图中的Exec Js,直接debug把之前前端翻到的RSAUtils里面的代码拿过来

SRC之Burp宏利-验证码明文返回
image-20231215102835182

然后定义如下所示

SRC之Burp宏利-验证码明文返回
image-20231215103349445

接下来,梳理利用思路,我们要证明这个验证码是有问题的,那么我们分两步走,第一步滑块完成获取4位数字的请求,然后拿这个数字去构造发送手机验证码的包,也就是说每次我要获取一下4位数字,然后放到下方的值那里,然后这个包我们就可以随便发了

SRC之Burp宏利-验证码明文返回
image-20231215104355973

ok,那么Brup中的宏可以出色的完成这个任务,创建一个宏

SRC之Burp宏利-验证码明文返回
image-20231215104526494

点击add后,选中我们获取4位数字那个请求

SRC之Burp宏利-验证码明文返回
image-20231215104823990

配置

SRC之Burp宏利-验证码明文返回
image-20231215111623638

添加

SRC之Burp宏利-验证码明文返回
image-20231215104746313

默认的方式,开始和结束符去定位就可以,我们直接选中四个数字,点击ok,然后上方Parameter name那里写我们利用的发送手机验证码请求里面四位数字参数的名称也就是graphicCode

SRC之Burp宏利-验证码明文返回
image-20231215105008948

然后一路ok,添加好后,让这个宏生效

SRC之Burp宏利-验证码明文返回
image-20231215105135917

添加规则,规则行为里面选择运行一个宏

SRC之Burp宏利-验证码明文返回
image-20231215105151084

选它,把刚才的参数名加进去

SRC之Burp宏利-验证码明文返回
image-20231215105316341

ok之后,再到scope里面选择匹配的url为所有urls(因为我比较懒)

SRC之Burp宏利-验证码明文返回
image-20231215105404261

这个时候我们去重放模块去发送请求,每点击一次发送graphicCode的参数值都会自动改变

SRC之Burp宏利-验证码明文返回
image-20231215110446625

第二次

SRC之Burp宏利-验证码明文返回
image-20231215110521071

然后拿一批手机号开始爆破,graphicCode参数那块不用管,因为有全局宏

SRC之Burp宏利-验证码明文返回
image-20231215110728993

爆破结果如下,发现没有好用,为什么?没好用吗?

SRC之Burp宏利-验证码明文返回
image-20231215110654265

我想了想,可能是速度太快,并发太高造成的,也就是前一个验证码获取完,还没发包,就又获取了第二个所以前一个就失效了,改一下

SRC之Burp宏利-验证码明文返回
image-20231215110912998

这多好~~

SRC之Burp宏利-验证码明文返回
image-20231215111201771

原文始发于微信公众号(小惜渗透):SRC之Burp宏利-验证码明文返回

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月26日13:32:06
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SRC之Burp宏利-验证码明文返回http://cn-sec.com/archives/2335440.html

发表评论

匿名网友 填写信息