BurpSuite代理工具是以拦截代理的方式,拦截所有通过代理的网络流量,如客户端的请求数据、服务器端的返回信息等。Burp Suite主要拦截HTTP和HTTPS 协议的流量,通过拦截,Burp Suite以中间人的方式对客户端的请求数据、服务端的返回信息做各种处理,以达到安全测试的目的。

在日常工作中,最常用的Web客户端就是Web浏览器,我们可以通过设置代理信息,拦截Web浏览器的流量, 并对经过Burp Suite代理的流量数据进行处理。Burp Suite运行后,Burp Proxy 默认本地代理端口为8080。

这里以谷歌浏览器为例,单击浏览器右上角“打开菜单”,依次单击“设置”→“系统”→“打开代理服务器”, 设置HTTP代理为127.0.0.1 , 端口为8080 ,与Burp Proxy 中的代理一致。

1、Burp Proxy

  • Burp Proxy是利用Burp开展测试流程的核心,通过代理模式,可以让我们拦截、查看、修改所有客户端与服务端之间的传输。
  • Burp Proxy的拦截功能主要由Intercept选项卡中的Forward、Drop、Interception is on/of和Action构成。
  • Forward表示将拦截的数据包或修改后的数据包发送至服务器端。
  • Drop表示丢弃当前拦截的数据包。
  • Interception is on表示开启拦截功能,单击后变为Interception is off,表示关闭拦截功能。单击Action按钮,可以将数据包进一步发送到Spider、Scanner、Repeater、Intruder等功能组件做进一步的测试,同时也包含改变数据包请求方式及其body的编码等功能。

打开浏览器,输入需要访问的URL并按回车键,这时将看到数据流量经过Burp Proxy并暂停,直到单击Forward按钮,才会继续传输下去。如果单击了Drop按钮,这次通过的数据将丢失,不再继续处理。

当Burp Suite拦截的客户端和服务器交互之后,我们可以在Burp Suite的消息分析选项中查看这次请求的实体内容、消息头、请求参数等信息。Burp有四种消息类型显示数据包:Raw、Params、Headers和Hex。

  • Raw主要显示Web请求的raw格式,以纯文本的形式显示数据包,包含请求地址、HTTP协议版本、主机头、浏览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等,可以通过手动修改这些信息,对服务器端进行渗透测试。
  • Params主要显示客户端请求的参数信息, 包括GET或者POST请求的参数、cookie参数。可以通过修改这些请求参数完成对服务器端的渗透测试。
  • Headers中显示的是数据包中的头信息,以名称、值的形式显示数据包。
  • Hex对应的是Raw中信息的二进制内容,可以通过Hex编辑器对请求的内容进行修改,在进行00截断时非常好用。

2、Spider

Spider的蜘蛛爬行功能可以帮助我们了解系统的结构,其中Spider爬取到的内容将在Target中展示,界面左侧为一个主机和目录树,选择具体某一个分支即可查看对应的请求与响应。

3、Decoder

Decoder的功能比较简单,它是Burp中自带的编码解码及散列转换的工具,能对原始数据进行各种编码格式和散列的转换。

Decoder的界面如下图所示。输入域显示的是需要编码/解码的原始数据,此处可以直接填写或粘贴,也可以通过其他Burp工具上下文菜单中的“ Send to Decoder"选项发送过来;输出域显示的是对输入域中原始数据进行编码/解码的结果。无论是输入域还是输出域都支持文本和Hex这两种格式,编码解码选项由解码选项(Decode as)、编码选项(Encode as)、散列(Hash)构成。在实际使用时,可以根据场景的需要进行设置。 
 

对编码解码选项而言,目前支持URL 、HTML 、Base64 、ASCII、十六进制、八进制、二进制和GZIP 共八种形式的格式转换, Hash散列支持SHA 、SHA-224 、SHA-256 、SHA-384 、SHA-512 、MD2、MD5格式的转换。更重要的是,对同一个数据,我们可以在Decoder界面进行多次编码、解码的转换。

最新文章

  1. align使图片和文字居中
  2. 淘宝网触屏版 - 学习笔记(1 - 关于meta)
  3. N-Queens leetcode
  4. jQuery之元素操作及事件绑定
  5. ios —— UIViewAdditions 布局坐标类库
  6. wifi链接配置
  7. python re 正则表达式[转]
  8. Cisco中删除flash通过tftp服务器恢复
  9. java程序查不出数据来
  10. UNIX网络编程---TCP客户/服务器程序示例(五)
  11. 个人作业3--个人总结(Alpha阶段)
  12. win10 uwp 兴趣线
  13. Java 8 特性 —— 方法引用
  14. 有关js获取屏幕宽度问题
  15. [Swift]LeetCode793. 阶乘函数后K个零 | Preimage Size of Factorial Zeroes Function
  16. 【物联网】 9个顶级开发IoT项目的开源物联网平台(转)
  17. 学习H5C3
  18. 07Vue.js快速入门-Vue路由详解
  19. mongodb与关系型数据库优缺点比较
  20. 【BZOJ】【1968】【AHOI2005】COMMON 约数研究

热门文章

  1. Docker镜像仓库Harbor之Swagger REST API整合配置
  2. 【前端必会】前端开发利器VSCode
  3. css3_媒介查询
  4. CentOS6/7开机启动配置
  5. Containerd-1.6.5 镜像容器操作
  6. 驱动开发:内核枚举ShadowSSDT基址
  7. Linux实战笔记__Centos7上搭建DVWA网站(基于宝塔)
  8. 深入浅出redis缓存应用
  9. python基础之数据类型总结
  10. 分享几个关于Camera的坑