freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

前端加密爆破之Burp插件测试(jsEncrypter、BurpCrypto)
2020-09-03 17:31:35

使用场景

在我们渗透过程在,经常会发现没有验证码,也没有登录次数限制,但是用户名密码都是加密的,当然不限于账号密码,其他的fuzz测试加密也是可以使用,至于怎么用自己打开脑洞思考,在这里我就介绍下插件工具。

例如这样:

这样:

【图片】

还有这种验证码可复用的:

如果只是md5加密或者hash,burp的Intruder模块自带加密爆破功能,但是如果是自定义的加密方式,或者多层md5此时就没法直接爆破了,就需要用到插件。

插件简介

这里我们会提到两款插件,jsEncrypter与BurpCrypto。BurpCrypto跟jsEncrypter差不多,相当于是个升级版,不用依赖phantomjs。文末附GitHub下载地址。

jsEncrypter:

此插件使用phantomjs启动前端加密函数对数据进行加密,phantomjs会返回加密结果传给burp。因此此插件需要启动phantomjs开启服务,burp去读取结果。

BurpCrypto

不用单独启用phantomjs,直接在burp插件页面选择AES加密,传入AES key与AES value即可。如果是其他的加密可直接把加密函数复制进去就可以了。

jsEncrypter使用:

jsEncrypter界面

打开jsEncrypter的练习环境

配置加密函数

phantomjs_server.js这个是配置文件,里面可以自定义一下东西。首先要配置加密js的函数路径,然后配置调用加密函数并把结果返回到newpayload,其它的默认就好不用管。

虽然环境里面都有现成的,但是我这里顺便提一下在前端找加密函数。毕竟不可能每次都是能有现成的用,授人鱼不如授人以渔。

这是靶场前端源码,这里我们可以看到选择的md5对于的就是值为1,调用的是hex_md5()函数,上面加载了很多js,真实环境我们就在这些js里面去搜索这个函数,出现在哪个js里面就把整个js保存下来,当然也有多个js处理的,都给他保存下来。但是我们在phantomjs_server.js里面就需要引用多个js了。(^-^这里有点废话了^-^)

接下来就是启动phantomjs了。

phantomjs.exe phantomjs_server.js

然后点击Test测试看生成加密结果对不。

最后在Intruder模块Payload Processing中选择此模块就可以使用了

位置:Payload Processing – Add – Invoke Burp extension – jsEncrypter

一个扩展小知识(多次md5及加其它字符加密)

直接在phantomjs_server.js中写出调用md5加密函数处理后再按需处理。

BurpCrypto使用

此插件可以快捷使用AES、RSA等加密,但由于RSA环境有问题,没法显示。还是拿md5环境来演示吧,

把整个加密js复制进插件,在Js Method Name中填写需要调用的函数即可。然后保存即可。

在Intruder中选择BurpCrypto保存的对应加密模块。

总结

上面两个插件功能上都差不多,看个人爱好更喜欢使用哪一个。当然这里再说一次,这个工具不仅限于爆破账号密码,一些其他的fuzz测试也是可以使用,比如短信轰炸等。

下载地址

jsEncrypter:https://github.com/c0ny1/jsEncrypter

BurpCrypto:https://github.com/topics/burpcrypto

第一节jsEncrypter演示使用了作者Github的图片,本来我自己也有截图,但觉得作者的动图做得非常棒就直接使用了,如有侵权请见谅,联系本人会及时删除。

更多内容欢迎关注 微信公众号 凌晨安全

# 工具 # BrupSuite # 插件
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者