渗透工具Burp Suite浅析
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浅析的更多相关文章
- 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二)
一.背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘.工具挖掘.代码审计三部分内容,手工挖掘篇参考地址为快速找出网站中可能存 ...
- 渗透利器burp suite新版本v2020.9.1及v2020.8汉化版下载
Burp suite是一款抓包渗透必备软件.burp Suite是响当当的web应用程序渗透测试集成平台.从应用程序攻击表面的最初映射和分析,到寻找和利用安全漏洞等过程,所有工具为支持整体测试程序而无 ...
- 介绍一款渗透神器——Burp Suite
Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程.所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代 ...
- 测试工具( Burp Suite)介绍了解篇
Mac 安装 Burp Suite破解版,参考链接: https://www.jianshu.com/p/3224c2308ffa 建议:目前官网的最新版为2.1.4.建议使用1.7.36版本,有破解 ...
- 抓包工具Burp Suite安装步骤(待补充)
Burp Suite V2.1(破解版)安装步骤:(可以自行下载破解版或汉化版) 百度网盘下载地址: 链接:https://pan.baidu.com/s/1bU5JME3OsEsXrSirTdesR ...
- 类似与fiddler的抓包工具 burp suite free edition
burp suite free edition
- Burp Suite Professional 针对APP抓包篡改数据提交【安全】
Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具.Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程.所有工具都共享一个请求,并能处理对应的HTTP 消息 ...
- [原创]Burp Suite web应用程序渗透测试神器
[原创]Burp Suite web应用程序渗透测试神器 一 Burp Suite介绍 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描 ...
- Burp Suite渗透实战操作指南-上篇
Burp必备知识 在介绍功能之前有必要让大家了解一些burp的常用功能,以便在使用中更好的发挥麒麟臂的优势. 1.1 快捷键 很多人可能都没用过burp的快捷键吧,位置如下,不说话,如果不顺手可以自 ...
随机推荐
- PowerManagerService流程分析
一.PowerManagerService简介 PowerManagerService主要服务Android系统电源管理工作,这样讲比较笼统,就具体细节上大致可以认为PowerManagerServi ...
- 详解docker部署SpringBoot及如何替换jar包
关于docker的安装和使用,可以看看之前这两篇文章.Docker从安装部署到Hello World和Docker容器的使用和连接.这篇文章主要介绍如何在docker上部署springboot项目.关 ...
- C#中的WinForm问题——如何设置窗体的大小为超过屏幕显示的最大尺寸?
今天在学习C#时遇到了一个问题,在此记录下来,留作日后总结复习之用,也分享给有同样问题和困扰的园友. 我手上的电脑是笔记本电脑,屏幕的尺寸大小为1366*768,然而项目所使用的屏幕大小为1920*1 ...
- MongoEngine模块
今儿,接到老的的要求,要把新功能的数据存放在Mongo里.虽然一直都有听过Mango的鼎鼎大名,但是那也只是见过没用过,跟个小白没啥区别.在加上功能急需,没办法只能赶鸭子上架先上再说.下面这篇就是我赶 ...
- Flutter——Dart Extension扩展方法的使用
dart的extension方法可以给已经存在的类添加新的函数,通过extension我们可以封装一些常用方法,提高开发效率. 例一:扩展String 给string添加一个log打印方法 exten ...
- 第9.10节 Python中IO模块其他文件操作属性和方法简介
本文中所有案例中的fp都是使用open函数打开文件返回的一个文件对象,为了节省篇幅,大部分没有提供文件打开的代码. 一. 文件是否关闭的属性 属性名:closed 功用:判断文件是否关闭 示例: &g ...
- PyQt(Python+Qt)学习随笔:Mode/View中的枚举类 QItemSelectionModel.SelectionFlag取值及含义
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 以上取值可以通过或操作进行组合使用. 老猿Python,跟老猿学Python! 老猿Python博文 ...
- 学习一下 SpringCloud (一)-- 从单体架构到微服务架构、代码拆分(maven 聚合)
一.架构演变 1.系统架构.集群.分布式系统 简单理解 (1)什么是系统架构? [什么是系统架构?] 系统架构 描述了 在应用程序内部,如何根据 业务.技术.灵活性.可扩展性.可维护性 等因素,将系统 ...
- Pytorch训练时显存分配过程探究
对于显存不充足的炼丹研究者来说,弄清楚Pytorch显存的分配机制是很有必要的.下面直接通过实验来推出Pytorch显存的分配过程. 实验实验代码如下: import torch from torch ...
- 【题解】「UVA1149」装箱 Bin Packing
做法显然:贪心,但是怎么贪? 首先从大到小或从小到大排序,窝这次是从大到小排,这样更容易理解(从小到大更方变) 然后设置两个变量 front 和 after 作为前指针和后指针. 循环判断: 当前后两 ...


