不一样的Burpsuite扩展武装篇(一)
前言
拖更了快一周的不一样的Burpsuite扩展武装篇系列终于写出了第一篇,本系列宗旨是一个BurpSuite挖SRC打通关无需运行很多别的工具去辅助,作者根据类型分出了三个方向主动,被动,效率扩展去武装自己的Burpsuite,这篇文章仅仅是不一样的Burpsuite扩展武装篇系列的第一篇后面应该还会有几篇,一篇文章写不了那么多的扩展推荐。下文推了很多不错的小众或是大众的Burpsuite扩展,或许其中有一个会对你挖SRC带来很大帮助。给你开拓新的思路!
主动扫描篇
FastjsonScan
一个简单的Fastjson反序列化检测burp插件
使用方法也很简单,就像使用repeater一样,你可以在burp的任何地方选中一个请求右键选择【Send to FastjsonScan】将这个请求发送到Fastjson Scan,然后就只需要等待扫描结束🌶 。如果扫描的目标存在漏洞,在窗口下面的Request窗口会展示使用的payload,如果没有漏洞,则会展示原始的请求与响应
ps: 由于反序列化检测利用了dnslog,所以检测会稍微慢一点,在等待结果期间你还可以继续看其他请求,真的是相当方便呢
地址:https://github.com/Maskhe/FastjsonScan.git
rexsser
这是一个burp插件(python),它使用regexes从响应中提取关键字,并测试目标范围内的XSS反射。有效的参数会被反射,易受攻击的参数会显示在rexsser扩展选项卡的结果中。
地址:https://github.com/profmoriarity/rexsser.git
Struts2-RCE
一个用于检查struts 2 RCE漏洞的Burp扩展器。
这个Burp扩展可以检测到以下18个远程代码执行漏洞,它们是
·S2-001·S2-007·S2-008·S2-012·S2-013·S2-014·S2-015·S2-016·S2-019·S2-029·S2-032·S2-033·S2-037·S2-045·S2-048·S2-053·S2-057·S2-DevMode
地址:https://github.com/prakharathreya/Struts2-RCE.git
被动扫描篇
Passive Scan Client and Sendto
Passive Scan Client and Sendto | Burp被动扫描流量自动转发和手动重发插件
基于@c0ny1师傅的被动扫描流量自动转发的基础上添加右键手动重发的功能
地址:https://github.com/Conanjun/passive-scan-client-and-sendto
burp_find_shiro
1、通过burp代理流量寻找shiro站点,加载模块
2、开启代理,访问网站
3、如果网站使用的是shiro,则在模块输出和“Dashboard”提示
地址:https://github.com/Jumbo-WJB/burp_find_shiro.git
BurpShiroPassiveScan
一款基于BurpSuite的被动式shiro检测插件
BurpShiroPassiveScan 一个希望能节省一些渗透时间好进行划水的扫描插件
该插件会对BurpSuite传进来的每个不同的域名 端口的流量进行一次shiro检测
目前的功能如下
·shiro框架指纹检测·shiro加密key检测
地址:https://github.com/pmiaowu/BurpShiroPassiveScan.git
burp_jspath
获取js文件路径
获取html脚本标签路径
筛选资产内容
效果如下:
地址:https://github.com/j1anFen/burp_jspath.git
Burp Bounty - Scan Check Builder
这个Burp Suite扩展允许你以一种快速和简单的方式,通过一个非常直观的图形界面,通过个性化的规则来改进主动和被动的Burpsuite扫描仪。通过对模式的高级搜索和改进发送的有效载荷,我们可以在主动扫描器和被动扫描器中创建自己的问题配置文件。
这个插件很强,Burpsuite官方插件商店可下,分免费版和收费版。
收费版有很多非公开的被动扫描规则价格好像是人民币500多一年,不过你们可以去github搜一些别人写好的开源到github上的规则一样用,或者你自己学习去写规则。
地址:
https://github.com/wagiro/BurpBounty.git 或者 burpsuite 官方商店
使用demo视频(请自备武当穿云梯)
https://www.youtube.com/channel/UCSq4R2o9_nGIMHWZ4H98GkQ/videos
免费的规则库:
https://github.com/Sy3Omda/burp-bounty.git
效率扩展篇
BurpCrypto
在Web渗透测试中有一个关键的测试项:密码爆破。
目前越来越多的网站系统在登录接口中加入各式各样的加密算法,依赖于BurpSuite中的那些编码方式、Hash算法已经远远不够,这里给大家介绍一款支持AES/RSA/DES加密算法,甚至可以直接将加密算法的Javascript脚本运行与BurpSuite中的插件:BurpCrypto。
地址:https://github.com/whwlsfb/BurpCrypto/releases
使用教程:https://blog.wanghw.cn/security/burpcrypto-tutorial.html
burpFakeIP
伪造随机ip爆破的先决条件可以伪造ip绕过服务器限制。
四个小功能
·伪造指定ip·伪造本地ip·伪造随机ip·随机ip爆破
地址:https://github.com/TheKingOfDuck/BurpFakeIP
burp-fofa
基于BurpSuite的一款FOFA Pro 插件。
地址:https://github.com/0nise/burp-fofa.git
knife
插件的主要的目的是对burp做一些小的改进,更加方便使用。就像用一把小刀对其进行小小的雕刻。增加了一些右键菜单提升效率
地址:https://github.com/bit4woo/knife
使用视频教程:https://www.bilibili.com/video/bv1BC4y1s7nS
HaE - Highlighter and Extractor
HaE是基于 BurpSuite
插件 JavaAPI
开发的请求高亮标记与信息提取的辅助型插件。
该插件可以通过自定义正则的方式匹配响应报文或请求报文,可以自行决定符合该自定义正则匹配的相应请求是否需要高亮标记、信息提取。
注: HaE
的使用,对测试人员来说需要基本的正则表达式基础,由于Java
正则表达式的库并没有Python
的优雅或方便,在使用正则的,HaE要求使用者必须使用()
将所需提取的表达式内容包含;例如你要匹配一个Shiro应用的响应报文,正常匹配规则为rememberMe=delete
,如果你要提取这段内容的话就需要变成(rememberMe=delete)
。
地址:https://github.com/gh0stkey/HaE、
共享一下作者自己整理收集的一些Hae规则吧
{
'azure_storage': {
'loaded': true,
'regex': '(https?://[\\w-\\.]\\.file.core.windows.net)',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'IPv6': {
'loaded': true,
'regex': '(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])) ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'Ipone': {
'loaded': true,
'regex': '([^0-9] (1[3-9]\\d{9})[^0-9] )',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'AWS Client ID': {
'loaded': false,
'regex': '(A3T[A-Z0-9]|AKIA|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)[A-Z0-9]{16} ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'Facebook Client ID': {
'loaded': false,
'regex': '(?i)(facebook|fb)(.{0,20})?['\\\'][0-9]{13,17} ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'IPv4': {
'loaded': true,
'regex': '\\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}\\b ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'Facebook Secret Key': {
'loaded': true,
'regex': '(?i)(facebook|fb)(.{0,20})?(?-i)['\\\'][0-9a-f]{32} ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'Cloudinary Basic Auth': {
'loaded': true,
'regex': 'cloudinary:\\/\\/[0-9]{15}:[0-9A-Za-z] @[a-z] ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'secret_key': {
'loaded': true,
'regex': '[Ss](ecret|ECRET)_?[Kk](ey|EY)',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'Artifactory API Token': {
'loaded': true,
'regex': '(?:\\s|=|:|\'|^)AKC[a-zA-Z0-9]{10,}',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'aliyun_oss_url': {
'loaded': true,
'regex': '([\\w-.]\\.oss.aliyuncs.com)',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
},
'URL Parameter': {
'loaded': true,
'regex': '(?<=\\?|\\&)[a-zA-Z0-9_] (?=\\=) ',
'color': 'red',
'engine': 'nfa',
'scope': 'response',
'action': 'any'
}
}