Mac安装使用渗透测试神器Burpsuite[详细教程] — — 9大模块使用

Mac安装配置渗透测试神器Burpsuite

介绍

Burp Suite是一个集成化的渗透测试工具,它集合了多种渗透测试组件,使我们自动化地或手工地能更好的完成对web应用的渗透测试和攻击。Burp Suite主要组件:

  1. proxy:代理,默认地址是127.0.0.1,端口是8080
  2. target:站点目标,地图
  3. spider:爬虫
  4. scanner:漏洞扫描
  5. repeater:http请求消息与响应消息修改重放
  6. intruder:暴力破解
  7. sequencer:随机数分析(破解cookie、token等)
  8. decoder:各种编码格式和散列转换
  9. comparer:可视化差异对比功能

安装

我本地是Mac arm m3芯片,其他操作系统激活与下载方式类似。
注意:

  • Burp suit是java编写,需要有java环境,java官方地址:
    https://www.oracle.com/cn/java/technologies/downloads/
  • 选择对应版本下载dmg,然后直接安装即可
    在这里插入图片描述
  • 安装完成后,打开终端执行java -version ,检查是否安装成功

官网下载

官网2022.3版本下载链接:https://portswigger.net/burp/releases/professional-community-2022-3

  • 其他版本下载链接:https://portswigger.net/burp/releases#professional

在这里插入图片描述
下载成功后是.dmg,双击后,正常安装即可:
在这里插入图片描述

注册机下载

https://www.123pan.com/s/dpIYjv-0e8Bh.html提取码:1234

激活

  1. 在应用程序文件夹找到burp,右击显示包的内容
    在这里插入图片描述
  2. 修改vmoptions.txt

直接复制下面内容,替换原有内容

# Enter one VM parameter per line
# For example, to adjust the maximum memory usage to 512 MB, uncomment the following line:
# -Xmx512m
# To include another file, uncomment the following line:
# -include-options [path to other .vmoption file]

-XX:MaxRAMPercentage=50
-include-options user.vmoptions
-javaagent:BurpLoaderKeygen.jar
-javaagent:BurpSuiteChs.jar
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.Opcodes=ALL-UNNAMED
-noverify
  1. 添加jar包到burpsuit包下
# finder放达打开如下路径:
/Applications/Burp Suite Professional.app/Contents/Resources/app
  1. 点击访达 - command+shift+G,输入/Applications/Burp Suite Professional.app/Contents/Resources/app
    在这里插入图片描述
  2. 将破解工具中的BurpLoaderKeygen.jar和BurpSuiteChs.jar放入app文件夹中:
    在这里插入图片描述

注意:该列为启用中文包,注释可取消中文
在这里插入图片描述

  1. 运行BurpSuit,出现如下页面:
    在这里插入图片描述

  2. 运行注册机

重新打开一个新终端,运行注册机

在这里插入图片描述
随便修改个License Text的内容,然后复制License的内容,粘贴到上一步中的Enter license key,点击Next

  1. 然后点击手动激活

再选择“Manual activation”
在这里插入图片描述

  1. 复制"Manual activation"中的request,粘贴到注册机中的"Activation Request",并将注册机中生成的"Activation Response"复制粘贴到"Manual activation"中的response
    在这里插入图片描述
  2. 注册成功
    在这里插入图片描述

使用

1 proxy 代理

默认地址是127.0.0.1,端口是8080

方式一:使用内置浏览器(无需配置代理)

如果通过burp suite自带的浏览器访问网站,是不用配置代理的

  • Intercept拦截:开启拦截之后,在请求到达服务器前,我们可以对包进行操作
    在这里插入图片描述

在这里插入图片描述
打开内置浏览器,输入网址:
在这里插入图片描述

方式二:配置浏览器代理

以Firefox为例(其他浏览器都大同小异)

  1. 打开浏览器,点击右上角 - 设置
    在这里插入图片描述

  2. 搜索代理
    在这里插入图片描述

  3. 选择手动配置代理并设置BurpSuite代理

BurpSuite开启代理后,默认地址:127.0.0.1 8080
在这里插入图片描述

在这里插入图片描述
4. 浏览器输入http://burp,出现如下页面表示代理配置成功
在这里插入图片描述

2 target 目标,显示我们访问过的站点

Target模块下的Site map会以树状的显示展示我们访问过的站点

在这里插入图片描述

3 spider 爬虫

爬虫模块用于自动爬取网站的每个页面内容,并生成完整的网站地图

  1. 首先点击目标,进入目标模块
    在这里插入图片描述

  2. 点击站点,鼠标右击,选中discovery content
    在这里插入图片描述

  3. 配置爬取参数(是否只扫描文件,最大爬取子目录深度、爬取的文件拓展名等)
    在这里插入图片描述

在这里插入图片描述

可以看到会话正在运行表明正在爬取网站
在这里插入图片描述
4. 可以将扫描站点添加到scope进行进一步分析
在这里插入图片描述
在这里插入图片描述
5. 来到dashboard,点击new scan,就可以看到我们开始添加的scope已经被添加到其中了

后续就可以针对其进行漏洞扫描,具体操作参考下方scanner模块
在这里插入图片描述

4 scanner 漏洞扫描

1. 主动式:new scan
  1. 新建扫描

在这里插入图片描述

  1. 设置扫描范围:

可以选择爬虫和审计或者只审计,扫描的url列表及scope配置

在这里插入图片描述

  1. 设置扫描类型(扫描参数配置)

一般默认即可。可以配置爬虫和审计的规则,一般不用选,默认就行。

在这里插入图片描述

  1. 配置用户凭证

如果扫描过程中需要登录,用户配置username和password。
这个只有在爬虫时检测到登陆表单会自动提交,在审计时用不到

在这里插入图片描述

  1. 自定义资源池(并发请求数、请求间隔时间等)

在这里插入图片描述

2. 被动式:new live scan (根据用户浏览的网页进行分析)

被动式是几乎不额外构造请求进行爬虫和扫描,根据用户浏览网页进行常规请求,并对请求的数据进行简单分析。

  1. Dashboard - new live scan,创建被动扫描
    在这里插入图片描述
  2. 配置扫描详细参数:扫描目标等
    在这里插入图片描述
  3. 配置扫描信息:只扫描、审计严重问题等
    在这里插入图片描述
  4. 配置扫描资源池:同时并发请求数
    在这里插入图片描述

5 repeater 请求重放

选中请求 - 鼠标右键添加到Repeater - 编辑请求内容 - 点击Send重放请求

  1. 将数据包发送到Repeater模块中
    在这里插入图片描述

  2. 编辑内容
    在这里插入图片描述

  3. 点击Send 发送请求数据
    在这里插入图片描述

6 intruder 自动化攻击(暴力破解)

在进行网页爆破的时候会用到Intruder,在Target页面对目标右键发送到Intruder。我们可以通过设置不同的负载和位置,进行各种复杂的攻击测试。
Intruder模块中主要包含四种不同攻击方式:

  1. Sniper
  2. Battering ram
  3. Pitchfork
  4. Cluster bomb
1. Sniper 狙击手模式(每次只替换一处变量)
  • 这种模式主要适用于:竞争条件测试(选择Null payloads),密码、验证码暴力破解,重放攻击等场景。
  • 狙击手模式使用一组payload集合,它一次只使用一个payload位置,假设你标记了两个位置“A”和“B”,payload值为“1”和“2”,那么它攻击会形成以下组合(除原始数据外):
    在这里插入图片描述

具体操作:

  1. 选中对应请求,鼠标右击发送到Intruder模块
    在这里插入图片描述

  2. 选择攻击模式,添加变量信息
    在这里插入图片描述

  3. 配置payload载荷

  • 设置自定义爆破字典
  • 载荷处理: 如果我们想对载荷的值进行处理,也可以点击下方Payload Processing进行前置处理,例如:我们字典中的值是admin,我们想要给他添加前缀hei,使得最终请求的载荷为heiadmin

在这里插入图片描述

  1. 点击右上角的start attack,发起攻击
    在这里插入图片描述
    在这里插入图片描述
2. Battering ram 攻城锤模式(每次替换全部变量)

攻城锤模式与狙击手模式类似的地方是,同样只使用一个payload集合,不同的地方在于每次攻击都是替换所有payload标记位置,而狙击手模式每次只能替换一个payload标记位置。
在这里插入图片描述

还是上面的例子,我们定义username、password两个变量,同时添加载荷,观察情况

  1. 添加username、password两个变量
    在这里插入图片描述
  2. 设置变量可能的值
    在这里插入图片描述
  3. 点击send attack,发起攻击,查看结果

载荷处理: 如果我们想对载荷的值进行处理,也可以点击下方Payload Processing进行前置处理,例如:我们字典中的值是admin,我们想要给他添加前缀hei,使得最终请求的载荷为heiadmin

在这里插入图片描述

3. Pitchfork 草叉模式(每次替换全部变量,且一一对应)
  • 草叉模式允许使用多组payload组合,在每个标记位置上遍历所有payload组合,假设有两个位置“A”和“B”,payload组合1的值为“1”和“2”,payload组合2的值为“3”和“4”,则攻击模式如下:
    在这里插入图片描述
  • Pitchfork最多只能设置三个Payload以及三个position,如果超过三个就会出现以下报错
  1. 还是按照上面的例子,我们定义了username、password两个变量
    在这里插入图片描述
  2. 设置负载(载荷),此时我们会发现,我们定义了几个变量就可以设置几个变量字典,字典1对应变量1、字典2对应变量2…

载荷处理: 如果我们想对载荷的值进行处理,也可以点击下方Payload Processing进行前置处理,例如:我们字典中的值是admin,我们想要给他添加前缀hei,使得最终请求的载荷为heiadmin

在这里插入图片描述
3. 点击start attack,查看结果
在这里插入图片描述

4. Cluster bomb 集束炸弹模式(每次将变量进行排列组合)
  • 集束炸弹模式跟草叉模式不同的地方在于,集束炸弹模式会对payload组进行笛卡尔积,还是上面的例子,如果用集束炸弹模式进行攻击,则除baseline请求外,会有四次请求:
    在这里插入图片描述
  1. 选中对应请求,鼠标右击发送到Intruder模块
    在这里插入图片描述
  2. 设置负载(载荷),我们定义了几个变量就可以设置几个变量字典,字典1对应变量1、字典2对应变量2…
    在这里插入图片描述
    在这里插入图片描述
  3. 点击start attack,发起攻击

载荷处理: 如果我们想对载荷的值进行处理,也可以点击下方Payload Processing进行前置处理,例如:我们字典中的值是admin,我们想要给他添加前缀hei,使得最终请求的载荷为heiadmin

在这里插入图片描述

  1. 查看结果
    在这里插入图片描述
总结
  1. sniper 对变量依次进行破解。多个标记依次进行(单字典尝试,每次只替换一处变量)
  2. Battering ram 对变量同时进行破解。多个标记同时进行(单字典尝试,每次替换所有变量)
  3. Pitchfork 每一个变量对应一个字典,取每一个字典的对应项(多字典尝试,每次多个字典值组合一一对应进行尝试)
  4. Cluster bomb 每个变量对应一个字典,并且进行交集破解,尝试各种组合,适用于用户名+密码的破解(多字典尝试,每次多个字典值排列组合/笛卡尔积进行尝试)

7 sequencer 随机数分析(验证cookie等)

验证cookie、token等信息是否可以预测,是否随机。此功能新手了解即可,一般使用较少。

  1. 选中请求,鼠标右击发送到sequencer模块
    在这里插入图片描述
  2. 来到sequencer模块,配置破解参数信息

下方的 LIve Capture Option可以配置暴力破解时的并发数、请求间间隔时长

在这里插入图片描述
3. 点击start live capture,开始破解
在这里插入图片描述
4. 运行完成或者爆破请求到一定数量时,就可以分析结果

主要判断:

  1. 比如cookie或token是否是一个周期之后又轮回,比如token总共有100种,每次请求都不一样,第101次时,又开始新一周期,返回第1种token
  2. cookie、token所用的生成方式是否可预测、可破解,比如都是对当前时间戳进行base64编码后返回等

在这里插入图片描述

8 decoder 解码

Burp Decoder是Burp Suite中一款编码解码工具,将原始数据转换成各种编码和哈希表的简单工具。

  1. 顶部选中Decoder模块
  2. 输入需要编解码的内容,右侧选择编解码类型,点击之后下方输入框会直接展示编解码的结果

在这里插入图片描述

9 comparer 比对

可视化差异对比功能,比较两个请求包或响应包的差异

  1. 选中对应请求,添加到comparer模块
    在这里插入图片描述
  2. 点击comparer模块
    在这里插入图片描述
    在这里插入图片描述

参考文章:
https://www.cnblogs.com/zohn/p/17983767
https://blog.youkuaiyun.com/xiangxue666/article/details/142873022
https://blog.youkuaiyun.com/weixin_43876557/article/details/108583391
https://blog.youkuaiyun.com/weixin_45808483/article/details/121392526

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值