Burp suite是一款Web安全领域的跨平台工具,基于Java开发。它集成了很多用于发现常见Web漏洞的模块,如Proxy,Spider,Scanner,Intruder,Repeater等。所有的模块共享一个能处理并显示HTTP消息的框架。

Proxy 代理模块

这是Burp的核心模块。首先我们要理解一个概念,我们访问一个网站的时候,客户端会向服务器发送请求数据包。在这个过程中,它会先检查是否设置了Proxy代理信息,如果没有的话,数据包就会被发送至服务器。但是如果我们设置了代理服务器,这个数据包信息就会被拦截下来。

而在代理服务器中,它收到了客户端发送的HTTP请求,它会将数据包解析,我们可以在代理服务器上对这些数据进行处理,处理完后发送给目标服务器。Burp的Proxy代理模块承担的就是代理服务器的作用。

配置代理

Proxy->Options->Proxy Listeners->Add添加代理

Bind to port表示监听端口号

Bind to address设置中,Loopback only表示本机使用,All interfaces表示局域网内的设备使用代理。

Proxy->Intercept中进行抓包分析

HTTP请求报文

HTTP请求报文可以分成5部分:

HTTP主要头字段

头字段类型 含义
Host 接受请求的服务器IP地址和端口号
User-Agent 客户端软件的名称和版本号等相关信息
Accept 客户端可支持的数据类型(Content-Type),以MIME类型来表示
Accept-Language 客户端可支持的语言
Accept-Encoding 客户端可支持的编码格式(Content-Encoding),一般表示数据的压缩格式
Content-Type 表示消息体的数据类型,以MIME规格定义的数据类型来表示
Content-Length 表示消息体的长度
Origin 用来说明请求从哪里发起的,仅包括协议和域名
Connection 设置发送响应之后TCP连接是否继续保持的通信选项
Referer 告诉服务器该网页是从哪个页面链接过来的
Cookie 一段保存用户访问记录足迹等个人信息的字符串
X-Forwarded-For HTTP 请求端真实 IP

一个好用的代理插件:SwitchyOmega

Repeater 重放模块

一般在抓到数据包后,我们可以对数据包的信息进行修改并重新发送,就可以用到Repeater模块。

Raw

Proxy->右键Send to Repeater将截获的数据包发送至Repeater模块。在这个模块中,左边为将要发送的原始HTTP请求,右边为服务器返回的数据,在左边对数据包进行修改,测试payload,修改完成之后点击Go按钮,右侧就可以收到服务器的响应。

Headers

方便添加HTTP头信息,避免手动修改HTTP头时产生的格式问题,比如对于检查IP地址的题目,就可以在这里添加X-Forwarded-For头进行绕过。

Hex

修改HTTP数据包的十六进制编码,比如文件上传时截断后缀,对WAF进行模糊测试,上传Webshell等等。

Intruder 破解模块

爆破是一种低成本但是可能带来高回报的方式,Burp中提供了简单易用的Intruder模块来进行爆破

Attack type

  • Sniper(狙击手)

    一一对应爆破。一个参数,500个payload,就执行500次;两个参数,500个payload,就执行1000次。

  • Battering ram(攻城锤)

    共同对应爆破。一个参数,500个payload,和上面一样执行500次;两个参数,500个payload,也只执行500次,两个参数一起换。

  • Pitchfork(草叉模式)

    一一对应爆破。至少有两个参数,每一个payload都应该有参数数量的值,如用户名密码撞库攻击。

  • Cluster bomb(集束炸弹)

    排列组合爆破。至少有两个参数,将所有的payload进行排列组合爆破

payloads

  • Payload Sets

    Payload set:爆破参数个数

    payload type:爆破参数类型

  • Payload Options[]

    会根据爆破参数类型的不同而改变,设置字典

  • Payload Processing

    对生成的Payload进行编码、加密、截取等操作

  • Payload Encoding

    对payload中的部分字符进行URL编码,进行安全传输

Options

主要对Request Engine中的参数进行设置。

  • Number of threads:线程数量
  • Number of retires on network failure:网络连接失败时的重连次数。
  • Pause before retry:每次重传前的暂停时间。
  • Throttle:调节数据包发送速度的选项。
  • Start time:开始时间。

Decoder 解码模块

这个当中是一些编码和解码工具,可以方便地对需要地数据进行编码和解码,而且支持用文本格式或十六进制模式进行查看。

Comparer 比较模块

在某些注入Bool盲注地正确或错误回显的题目中,有时候两次数据包之间的差别很小,通过比较模块可以很清楚地进行比较。

Scanner 漏洞扫描模块

常用于渗透测试当中,用来自动地发现WEB应用程序的漏洞。

渗透测试常用工具

OWASP ZAP 用来自动检测WEB应用程序的漏洞

Nessus 系统漏洞扫描工具

MSF渗透测试中最重要的漏洞利用框架

渗透工具Burp Suite浅析的更多相关文章

  1. 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二)

    一.背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘.工具挖掘.代码审计三部分内容,手工挖掘篇参考地址为快速找出网站中可能存 ...

  2. 渗透利器burp suite新版本v2020.9.1及v2020.8汉化版下载

    Burp suite是一款抓包渗透必备软件.burp Suite是响当当的web应用程序渗透测试集成平台.从应用程序攻击表面的最初映射和分析,到寻找和利用安全漏洞等过程,所有工具为支持整体测试程序而无 ...

  3. 介绍一款渗透神器——Burp Suite

    Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程.所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代 ...

  4. 测试工具( Burp Suite)介绍了解篇

    Mac 安装 Burp Suite破解版,参考链接: https://www.jianshu.com/p/3224c2308ffa 建议:目前官网的最新版为2.1.4.建议使用1.7.36版本,有破解 ...

  5. 抓包工具Burp Suite安装步骤(待补充)

    Burp Suite V2.1(破解版)安装步骤:(可以自行下载破解版或汉化版) 百度网盘下载地址: 链接:https://pan.baidu.com/s/1bU5JME3OsEsXrSirTdesR ...

  6. 类似与fiddler的抓包工具 burp suite free edition

    burp suite free edition

  7. Burp Suite Professional 针对APP抓包篡改数据提交【安全】

    Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具.Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程.所有工具都共享一个请求,并能处理对应的HTTP 消息 ...

  8. [原创]Burp Suite web应用程序渗透测试神器

    [原创]Burp Suite web应用程序渗透测试神器 一 Burp Suite介绍 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描 ...

  9. Burp Suite渗透实战操作指南-上篇

    Burp必备知识 在介绍功能之前有必要让大家了解一些burp的常用功能,以便在使用中更好的发挥麒麟臂的优势. 1.1  快捷键 很多人可能都没用过burp的快捷键吧,位置如下,不说话,如果不顺手可以自 ...

随机推荐

  1. java基础之一:基本数据类型

    在java中有基本数据类型和引用类型两种,今天来说下基本数据类型和其对应的包装类的之间的关系. 一.概述 java中的基本数据类型有八种,分别是char.byte.short.int.long.flo ...

  2. 第一次个人编程作业:我的分数我做主 - 软件工程与 UML

    博客班级 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 作业要求 https://edu.cnblogs.com/campus/fzzcxy/2018SE ...

  3. JZOJ 11.14 提高B组反思

    JZOJ 11.14 提高B组反思 T1 题目虽然有点高大上,但是很容易懂 有一个\(d\)维空间,同时有一个长度为\(2n\)的操作序列,每个操作往某一维的正方向或反方向走一格,问多少种方案使得最后 ...

  4. PyQt(Python+Qt)学习随笔:Designer中不能编辑信号和槽的问题

    新建了一个窗口部件,在窗口上添加了相关布局,再设置窗口窗口的布局为垂直布局,窗口设计好界面后如图所示: 可以看到窗口是QWidget类,窗口上从上到下有三个布局,窗口自身的布局为垂直布局,布局名为ve ...

  5. baby sqli 联合查询加入数据 手工注入

    0x00 BabySQli 原题目描述:刚学完sqli,我才知道万能口令这么危险,还好我进行了防护,还用md5哈希了密码! 登陆页面,查看源码后点进search.php看到一段可疑的句子MMZFM42 ...

  6. Metasploit魔鬼训练营第一章作业

    1, Samba服务 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共 ...

  7. caffe源码 理解链式法则

    网络结构 首先我们抽象理解下一个网络结构是怎样的,如下图所示 F1,F2,F3为某种函数 input为输入数据,output为输出数据 X1,X2为为中间的层的输入输出数据 总体来说有以下关系 X1 ...

  8. 【题解】「UVA1149」装箱 Bin Packing

    做法显然:贪心,但是怎么贪? 首先从大到小或从小到大排序,窝这次是从大到小排,这样更容易理解(从小到大更方变) 然后设置两个变量 front 和 after 作为前指针和后指针. 循环判断: 当前后两 ...

  9. Java集合源码分析(三)——LinkedList

    简介 LinkedList是一个链表结构的列表,也可以被作为堆栈.队列或双端队列使用.它继承于AbstractSequentialList双向链表,实现了List.Deque.Cloneable.ja ...

  10. mysql创建表分区

    MySQL创建表分区 create table erp_bill_index( id int primary key auto_increment, addtime datetime ); inser ...