目录
一.简介
Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具。Burp Suite代理工具是以拦截代理的方式,拦截所有通过代理的网络流量,如客户端的请求数据、服务器端的返回信息等。Burp Suite主要拦截http和https协议的流量,通过拦截,Burp Suite以中间人的方式,可以对客户端请求数据、服务端返回做各种处理,以达到安全评估测试的目的。
二.下载burp
配置java环境:从java官网进行下载:搜索java jdk
下载地址:Burp Suite - Application Security Testing Software - PortSwigger
三.burp 入门
1设置代理
burp suite代理工具是以拦截代理的方式,拦截所有通过代理的网络流量,如客户端的请求数据、服务端的返回信息等。burp suite主要拦截HTTP和HTTPS 写协议的流量,通过拦截,burp以中间人的方式对客户端的请求数据、服务端的返回信息做各种处理,以达到安全测试的目的。
在日常工作中,最常用的web客户端就是web浏览器,我们可以通过设置代理信息,拦截web浏览器的流量,并对经过burp代理的流量数据进行处理。burp运行之后,Burp Proxy默认本地代理端口为8080。如图:
①Http
以火狐浏览器为例:打开菜单——》选项——》网络代理——》设置——》手动配置代理
127.0.0.1端口是8080
也可以使用代理插件:
如上图所示,设置HTTP代理为127.0.0.1,端口为8080,与burp Proxy中的代理一致
②Https
HTTPS(S表示security),多添加了一套SSL层(在TCP和HTTP中间),作加密的。
burp suite有一个证书:http://burp/(输入的是http,所以一定要代理http 才可以访问http的网站,代理的是https就可以访问https的网站)
安装证书后就可以解密百度传回的数据
导入刚刚下载的证书
这个证书的名字叫PortSwigger CA
导入后弹出的弹框(选第一个也行,都选中也行)
导入这个证书就可以解密https协议里面的乱码数据了
2.Proxy(代理)
Burp Proxy的拦截功能主要由intercept(intercept拦截/截夺)选项卡中的Forward、Drop、Interception is on/off和Action构成,他们的功能如下所示。
Forward(放包)表示将拦截的数据表或修改后的数据包发送至服务器端。
Drop(废包)表示丢弃当前拦截的数据包
Interception is on(拦截请求)表示开启拦截功能,单击后变为interception is off(拦截禁用),表示关闭拦截功能
单击Action(行动)按钮,可以将数据包进一步发送到Spider、scanner、Repeater、Intruder等功能组件做进一步测试,同时也包含改变数据包请求方式及其body的编码功能。(发送到其他功能组件)
当Burp Suite拦截的客户端和服务器交互之后,我们可以在Burp Suite的消息分析选项中查看这次请求的实体内容、消息头、请求参数等信息。Burp有四种消息类型显示数据包:Raw、Params、Headers和Hex。
Raw主要显示web请求的raw格式,以纯文本的形式显示数据包,包含请求地址、Http协议版本、主机头、浏览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等,可以通过手动修改这些信息,对服务器端进行渗透测试。(Raw就是以文本的形式显示数据包)
Params主要显示客户端请求的参数信息,包括GET或者POST请求的参数、cookie参数。可以通过修改这些请求参数完成对服务器端的渗透测试。
Headers中显示的是数据包中的头信息,以名称、值的形式显示数据包。
Hex对应的是Raw中信息的二进制内容,可以通过Hex编辑器对请求的内容进行修改,在进行00截断时非常好用。
Burp Target 组件主要包含站点地图、目标域、Target 工具三部分组成,他们帮助渗透测试人员更好地了解目标应用的整体状况、当前的工作涉及哪些目标域、分析可能存在的攻击面等信息,下面我们就分别来看看Burp Target的三个组成部分。
3.Target
目标域设置 Target Scope
①Target Scope中作用域的定义用法:
当我们对某个产品进行渗透测试时,可以通过域名或者主机名去限制拦截内容,这里域名或主机名就是我们说的作用域;如果我们想限制得更为细粒度化,比如:你只想拦截login目录下的所有请求,这时我们也可以在此设置,此时,作用域就是目录。总体来说,Target Scope主要使用于下面几种场景中:
过滤站点地图和Proxy 历史中的显示结果
设置Burp Proxy 拦截请求
设置Burp Spider抓取哪些内容
Burp Scanner自动扫描哪些作用域的安全漏洞
在Burp Intruder和Burp Repeater 中指定URL
通过Target Scope 的设置可以更方便的操作对象,减少无效的请求。在Target Scope的设置中,主要包含两部分功能:允许规则和去除规则。
以地址、端口、文件名等维度去控制哪些消息出现在允许或去除在规则列表中。
②站点地图 Site Map
除了加入 Target Scope外,从上图中,我们也可以看到,对于站点地图的分层,可以通过折叠和展开操作,更好的分析站点结构。
③filter过滤
//issue definition 问题定义
4.Spider
①Spider介绍
Burp Spider的功能主要使用于大型的应用系统测试,它能在很短的时间内帮助我们快速地了解系统的结构和分布情况,抓取到某些隐藏的页面等等。
②Burpsuite Spider Control介绍
具有开关爬虫的功能,以及设置爬取状态、爬取目标。默认在Target设置
Spider is running:开关爬虫的功能
Clear queues:清空爬虫之后的队列
可以通过设置Spider Score来表示我们要爬取那些目标域
同时我们也可以自定义设置,设置的方式跟Target设置是一样的
③Burpsuite Spider Option选项
Spider可选项设置由抓取设置、抓取代理设置、表单提交设置、应用登陆设置、蜘蛛引擎设置、请求消息头设置六个部分组成
这个是抓取设置
Maximum link depth:爬取的最大深度
④实战演练
打开代理拦截功能
打开想要爬取的网站
转发到Spider
点击Target,选Site map,点Filter,勾上Show only in-scope items
选Scope,选Target Scope,点Add,添加爬取的网站,点OK,点Yes
爬取完后会在站点地图逐一显示