基于实战的Burp Suite插件使用Tips
基于实战的Burp Suite插件使用技巧
本篇文章首发于奇安信攻防社区
目录
免责声明:
本文章仅供学习和研究使用,严禁使用该文章内容对互联网其他应用进行非法操作,若将其用于非法目的,所造成的后果由您自行承担,产生的一切风险与本文作者无关,如继续阅读该文章即表明您默认遵守该内容。
0×00前言
Burp Suite是一个集成化的渗透测试工具,它集合了多种渗透测试组件,使我们自动化地或手工地能更好的完成对web应用的渗透测试和攻击。在渗透测试中,我们使用Burp Suite将使得测试工作变得更加容易和方便,即使在不需要娴熟的技巧的情况下,只有我们熟悉Burp Suite的使用,也使得渗透测试工作变得轻松和高效。
Burp Suite可执行程序是java文件类型的jar文件,免费版的可以从免费版下载地址进行下载。免费版的Burp Suite会有许多限制,很多的高级工具无法使用,如果您想使用更多的高级功能,需要付费购买专业版。
0×01专业版激活
当然了,身为一个合格的安全人士,肯定会白嫖的啦。下面具体看一下专业版安装步骤。
由于Burp Suite是由Java语言编写而成,所以我们需要安装JAVA环境。点我下载
下载完成之后打开 点击安装
安装完成
打开CMD命令输入java -version
到如下图就代表安装成功
如果输入命令没有看到如上图也不要紧,我们把他手动添加到环境变量
右键我的电脑(此电脑)→属性→高级系统设置→高级→环境变量→Path
把我们安装好的java目录放到Path里面 如下图
C:\Program Files (x86)\Java\jre1.8.0_101\bin
OK,完成了
接下来我们开始安装 点我下载
打开burp-loader-keygen-2020_1.jar 点击run
点击Manual activation
点击下一步,注册完成
看到这一步代表成功注册
0×02插件的环境安装
看到这里是不是已经迫不及待想要安装插件了,但是不行的,因为Burp Suite的一些插件需要依赖python或者ruby来实施,所以我们需要安装jython
和jruby
点我下载jython
下载完成之后我们依次点击Extender →Options 按照提示把对应的文件路径导入进去就可以了
0×03插件使用
首先打开Extender →BApp Store 可以看到插件市场有大量的插件
这里面插件实在是太多了,实战中几乎用不到几个,接下来我们讲一下实战中实用的插件
###Shiro漏洞被动检测
描述:
Apache Shiro是美国阿帕奇(Apache)软件基金会的一套用于执行认证、授权、加密和会话管理的Java安全框架。 Apache Shiro默认使用了CookieRememberMeManager,其处理cookie的流程是:得到rememberMe的cookie值 > Base64解码–>AES解密–>反序列化。然而AES的密钥是硬编码的,就导致了攻击者可以构造恶意数据造成反序列化的RCE漏洞。
喵呜师傅写的插件,非常好用,推荐!
下载完成之后打开burp主页面点击Extender,可以看到这里有个ADD点一下
我们的这个插件是java写的的所以选择java脚本把插件导入然后下一步
出现如下界面代表安装成功
接下来我们就可以愉快的挖洞了,由于这个插件是被动式检测,所以我们不用对它进行配置,直接开着BURP就行了,如果遇到漏洞会在Target页面显示出来,我们打开一个靶场测试一下,如下图。
tag界面查看漏洞情况
waiting for test results = 扫描shiro key 中
shiro key scan out of memory error = 扫描shiro key时,发生内存错误
shiro key scan diff page too many errors = 扫描shiro key时,页面之间的相似度比对失败太多
shiro key scan task timeout = 扫描shiro key时,任务执行超时
shiro key scan unknown error = 扫描shiro key时,发生未知错误
[-] not found shiro key = 没有扫描出 shiro key
[+] found shiro key: xxxxxx = 扫描出了 shiro key
fastjson漏洞被动检测
描述:
Fastjson 是阿里巴巴的开源JSON解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 JavaBean。 Fastjson 存在反序列化远程代码执行漏洞,当应用或系统使用 Fastjson 对由用户可控的 JSON 字符串数据进行解析时,将可能导致远程代码执行的危害。
依旧是喵呜师傅的作品。点我下载
插件的安装步骤对照上面的来就行,这个插件也是被动式检测,所以我们不用对它进行配置,如果遇到漏洞会在Target页面显示出来,我们打开一个网站测试一下,如下图。
Struts2漏洞被动检测
描述:
Apache Struts是美国阿帕奇(Apache)软件基金会的一个开源项目,是一套用于创建企业级Java Web应用的开源MVC框架,存在多个远程命令执行漏洞。 攻击者可以发起远程攻击,不但可以窃取网站数据信息,甚至还可取得网站服务器控制权。而且,目前针对此漏洞的自动化工具开始出现,攻击者无需具备与漏洞相关的专业知识即可侵入服务器,直接执行命令操作,盗取数据甚至进行毁灭性操作。
插件下载地址:点我下载
插件的安装步骤对照上面的来就行,成功安装如下图。
我们用它测试一下Struts2漏洞,本地起一个漏洞环境
使用这个插件也是被动式检测,所以我们不用对它进行配置直接打开BURP访问网站即可,如果扫描到漏洞会在Target页面显示出来,或者在我们点击它自己的界面展示漏洞情况,如下图。
敏感信息收集工具
描述:
HaE是基于 BurpSuite 插件 JavaAPI 开发的请求高亮标记与信息提取的辅助型插件。该插件可以通过自定义正则的方式匹配响应报文或请求报文,可以自行决定符合该自定义正则匹配的相应请求是否需要高亮标记、信息提取。
HaE插件是由gh0stkey师傅写的 特别棒的一个插件,使用简单还功能强大。
gh0stkey在Github介绍的使用方法如下:
插件装载: Extender - Extensions - Add - Select File - Next
初次装载HaE
会初始化配置文件,默认配置文件内置一个正则: Email
,初始化的配置文件会放在与BurpSuite Jar
包同级目录下。
除了初始化的配置文件外,还有Setting.yml
,该文件用于存储配置文件路径;HaE
支持自定义配置文件路径,你可以通过点击Select File
按钮进行选择自定义配置文件。
出现如下界面表示安装成功
默认的Email规则
生成的规则文件
HaE
支持自定义配置文件路径,你可以通过点击Select File
按钮进行选择自定义配置文件。
到了这一步安装已经成功,接下来会有朋友问,我不会写规则怎么办,这些东西对我来说太难用了,不要担心,作者gh0stkey师傅贴心的准备了一个公共规则网站,里面提供了大部分常用规则,以供大家使用。地址
使用方法就是复制这些规则打开Config.yml文件复制进去然后就OK了
默认的规则
复制规则网站里面的规则然后粘贴保存(替换规则的时候记得退出burp)
打开我们的插件HaE
可以发现我们的规则已经替换成功了,可以使用了
我们使用Swagger的规则来演示一下
在Proxy - HTTP History中可以看见高亮请求,响应标签页中含有Swagger UI的标签,其中将匹配到的信息提取了出来。
还有更多用法等待大家去使用。
403Bypasser
绕过 403 受限目录的 burpsuite 扩展。通过使用 PassiveScan(默认启用),这个扩展会自动扫描每个 403 请求,所以只需添加到 burpsuite 并享受。
安装
BurpSuite -> Extender -> Extensions -> Add -> Extension Type: Python -> Select file: 403bypasser.py -> Next till Finish
这个插件就是使用python编写的,这个就使用到了我们之前讲的安装jython
这个插件,我们可以让burp使用python格式的插件。
看到如下界面表示安装成功(没错就是空)
好了,这样我们就可以愉快的使用了。(这个插件也是被动扫描)
我们可以看下这个插件的payload,可以发现这个插件主要功能是用来bypass403页面的,举个例子,比如我们有时候看到很多网站限制外部访问,访问的话直接显示403,我们可能改一个IP头为本地127.0.0.1我们就能绕过这个限制,这个插件可以全自动的来帮我们验证,是不是很方便。
$1/$2
$1/%2e/$2
$1/$2/.
$1//$2//
$1/./$2/./
$1/$2anything -H "X-Original-URL: /$2"
$1/$2 -H "X-Custom-IP-Authorization: 127.0.0.1"
$1 -H "X-Rewrite-URL: /$2"
$1/$2 -H "Referer: /$2"
$1/$2 -H "X-Originating-IP: 127.0.0.1"
$1/$2 -H "X-Forwarded-For: 127.0.0.1"
$1/$2 -H "X-Remote-IP: 127.0.0.1"
$1/$2 -H "X-Client-IP: 127.0.0.1"
$1/$2 -H "X-Host: 127.0.0.1"
$1/$2 -H "X-Forwarded-Host: 127.0.0.1"
$1/$2%20/
$1/%20$2%20/
$1/$2?
$1/$2???
$1/$2//
$1/$2/
$1/$2/.randomstring
$1/$2..;/
好了,目前我使用频率较高的插件已经分享完毕,还有很多好用的插件是我没有讲到的,希望大家也可以留言分享出来,接下来讲一下BURP的一些小技巧,burp是非常一个强大的渗透测试工具,我们平时做渗透使用频率最高的工具,它其实还有很多好用的功能给大家分享一下。
dnslog功能
Burp Collaborator是从Burp suite v1.6.15版本添加的新功能,也就是DNSlog,监控DNS解析记录和HTTP访问记录,在检测盲注类漏洞很好用。
首先打开Collaborator
主界面菜单项 burp - burp collaborator client 即可启用
点击copy to clipborad来复制其提供的 payload url,number to generate 是生成的数量,
我们来ping一下刚才复制的URL
可以看到BURP成功接收到我们的请求
条件竞争漏洞测试
“竞争条件”发生在多个线程同时访问同一个共享代码、变量、文件等没有进行锁操作或者同步操作的场景中。
开发者在进行代码开发时常常倾向于认为代码会以线性的方式执行,而且他们忽视了并行服务器会并发执行多个线程,这就会导致意想不到的结果。
简单的说:本来你有100块钱,买一个商品要花100,你可以多开启多个线程去跑,有可能不止一个用户买成功
“竞争条件”漏洞有时很难通过黑盒/灰盒的方法来进行挖掘,因为这个漏洞很受环境因素的影响,比如网络延迟、服务器的处理能力等。一般都会通过对代码进行审计来发现此类问题
可以使用Burp的intruder功能来实现发送多个并发请求
将请求包发送至Intruder
Intruder – Payloads – Payload Stes
Payload type设置为NUll payloads
Payload Options 次数设置100次
线程数设置最大999 ,点击Start attack
Intruder模块匹配返回包内的中文
在一些渗透测试的教程中,用Intruder模块爆破或fuzz的时候,一般只讲到了通过返回包的长度或者状态码来识别是否爆破成功/是否fuzz出我们想要的内容。
其实在Intruder->Option->Grep-Match中提供了返回包匹配内容的功能,可以通过简单的字符串或正则表达式进行内容匹配。
可以看到匹配成功的话后面会打勾
有朋友可能会问了,我要是匹配中文字符怎么办呢,演示一下匹配中文字符怎么操作。
如果要匹配中文,需要将中文转换成十六进制,使用正则匹配的方式,操作如下: 先用python把中文转成十六进制(不局限于此方法)
然后设置正则匹配模式,把十六进制添加进去
成功匹配到,大家可以动手操作一下。
结束语:BURP的功能也不止这些,大家可以多发掘一下其他功能让自己在挖洞的时候更加方便,如果有其他更好的插件和技巧也希望大家留言分享。
基于实战的Burp Suite插件使用Tips的更多相关文章
- Burp Suite插件推荐
BurpSuiteHTTPSmuggler 网址 https://github.com/nccgroup/BurpSuiteHTTPSmuggler 作用 利用 中间件对 HTTP 协议的实现的特性 ...
- 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二)
一.背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘.工具挖掘.代码审计三部分内容,手工挖掘篇参考地址为快速找出网站中可能存 ...
- Burp Suite渗透实战操作指南-上篇
Burp必备知识 在介绍功能之前有必要让大家了解一些burp的常用功能,以便在使用中更好的发挥麒麟臂的优势. 1.1 快捷键 很多人可能都没用过burp的快捷键吧,位置如下,不说话,如果不顺手可以自 ...
- Burp Suite新手指南
Burp Suite想必大家都用过,但是大家未必知道它的所有功能.因此,本文的主要目的就是尽量深入介绍各种功能.BurpSuite有以下这些功能: 截获代理– 让你审查修改浏览器和目标应用间的流量. ...
- Burp Suite使用介绍
Burp Suite使用介绍(一) 22人收藏 收藏 2014/05/01 19:54 | 小乐天 | 工具收集 | 占个座先 Getting Started Burp Suite 是用于攻击web ...
- kali linux Burp Suite使用教程
设置Firefox并配置代理 配置Firefox Burp Suite包含拦截代理. 要使用Burp Suite,您必须配置浏览器以通过Burp Suite代理传递其流量. 这对于Firefox来说并 ...
- Burp Suite使用介绍总结
Burp Suite使用介绍(一) 小乐天 · 2014/05/01 19:54 Getting Started Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些 ...
- Burp Suite初探
Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程. 一.安装部署 需要配置java环境,首先安装java,然后配置 ...
- Burp Suite 入门教程(BURP SUITE TUTORIAL )
参考链接1:https://www.pentestgeek.com/what-is-burpsuite 参考链接2:https://www.pentestgeek.com/web-applicatio ...
- 渗透工具Burp Suite浅析
Burp suite是一款Web安全领域的跨平台工具,基于Java开发.它集成了很多用于发现常见Web漏洞的模块,如Proxy,Spider,Scanner,Intruder,Repeater等.所有 ...
随机推荐
- 记一次用arthas排查jvm中CPU占用过高问题
记一次使用arthas排查jvm中CPU占用过高问题.这工具屌爆了 碾压我目前使用的全部JVM工具. 安装 小试 curl -O https://arthas.aliyun.com/arthas-bo ...
- Hadoop集群运行
在Hadoop文件参数配置完成之后 在master上操作 su - hadoop cd /usr/local/src/hadoop/ ./bin/hdfs namenode -format hadoo ...
- Enable_hint_table 使用
KingbaseES enable_hint_table 可以看成类似 oracle outline 工具,可以在不修改SQL 的情况下,通过hint 改变SQL 的执行计划. 一.启用enable_ ...
- 在Yarn集群上跑spark wordcount任务
准备的测试数据文件hello.txt hello scala hello world nihao hello i am scala this is spark demo gan jiu wan le ...
- C语言输入输出格式符
C语言输入输出格式符 printf函数(格式输出函数) 1.一般格式 printf(格式控制,输出表列) 例如:printf("i=%d,ch=%c\n",i,ch); 说明: ( ...
- Git将本地仓库上传到github
这里采用简单的描述,提供两种方式: 一.连接本地文件夹和远程仓库 1.使用pull--拉取github项目文件 (1)进入到自己要上传的文件夹内部,然后git bash here (2)输入命令 gi ...
- Jetbrains家的软件都可用的激活码-pycharm
网址:http://vrg123.com/ 步骤: 1,关注下方的公众号 2,点击菜单中的"激活密钥" 3,点击进入,获得网站密钥 4,在网站上输入网站密钥,点击获取,即可获取激活 ...
- SECS半导体设备通讯-4 GEM通信标准
一 概述 GEM标准定义了通信链路上的半导体设备的行为. SECS-II标准定义了在主机和设备之间交换的消息和相关数据项.GEM标准则定义了在哪种情况下应该使用哪些SECS-II消息以及由此产生的结果 ...
- 洛谷U81904 【模板】树的直径
有负边权,所以用树形DP来找树的直径. 1 //树形DP求树的直径 2 #include<bits/stdc++.h> 3 using namespace std; 4 const int ...
- DDD-领域驱动(三)-聚合与聚合根
概念 高内聚 , 高内聚合Aggregate 就好比一个功能,各个模块互相是有依赖关系存在,例如: 低耦合:模块可以任意替换,不会影响系统的工作 例如:比如你今天穿了这套衣服,明天穿了另一套衣服,但你 ...