偷偷挪用人家的分享:

https://blog.csdn.net/aojie80/article/details/43836521

写的很棒

Burp Suite 介绍

https://blog.csdn.net/lynnlinlin/article/details/76736972

Burp Suite 是用于攻击 web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程

所有的工具都共享一个能处理并显示 HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。

他的官方网址是 https://portswigger.net/burp/。

Burp Suite(以下简称 Burp),该公司发行了两个版本,一个是 Community Edition 社区版,另一个则是 Professional 专业版,所支持的功能也不大相同。

专业版提供了 Web 漏洞扫描功能和一些高级工具,而社区版则只是提供基本的手动工具,但 Pro 版的价格是昂贵的,需要用户每年 $ 349.00 美金。

这个工具好就好在能够共享一个 HTTP 消息,能够在各种模块之间交换信息。

如果上天只能让我选择一个 Web 扫描器,那么我会选择 Burp,因为他不仅仅只起一个爬网的作用。

Burp Suite 安装:安装 Burp 很简单,在 Kali Linux 里已经集成了社区版的 Burp,故此不在多叙述。

Windows 的安装环境,需要各位读者先安装 “Java” 环境后才能打开。

下载好 Burp 之后,里面有两个文件,他们分别是 “BurpLoader.jar” 和 “burpsuite_pro_v1.7.11.jar”,点击 “BurpLoader.jar” 即可打开软件,如下图所示。

打开软件后会出现如图,现 Burp 官方版本号为 “v1.6”,笔者手里的是 Pro 版本。

Burp 模块介绍

- Target

Target 作为 Burp 的第一个模块,作用是一个站点地图,会在左侧出现所有通过代理服务器的网页都会在此显示。

当访问了http://test-dapp.3hea.com:8033/views/之后,“Target” 功能模块已经将所有访问记录给爬取了下来,并显示在左侧,如图所示。

当然,如果想使用 Burp 进行测试,首先要修改一下本机浏览器的代理。

下面以chrome为例来讲解 Burp 的基本配置

首先需要在GoogleChrome的设置里,找到代理设置,设置为和 Burp 软件一样的 IP,即可。

需要注意的就是端口号需要和这上面设置的端口号一致,都是 8080

Proxy

在 Burp 里,“Proxy” 模块是一个至关重要的模块,他的布局是这样的。

Proxy 模块里面的 intercept 模块的作用是截断 HTTP/HTTPS 之间的请求流量,如果第三个按钮 “intercept is off”,这里是未开启拦截的意识,如果开启了则会变为 “intercept is on”

现在我们拦截下 CSDN 登陆页面的 HTTPS 流量。

在我输入了账号密码之后,点击了开启拦截,状态变为 “intercept is on”,此时,通过这个 HTTPS 请求下来的流量都会被拦截不发送并且显示在你的 “intercept” 模块下,如图所示。

当拦截开启的时候,整个网页他是无法请求的,因为发送的所有请求都被拦截下来了,如果你想访问下个网页,选择模块里的第一个按钮 “Forward”,这个按钮意味着放行,令他通过请求,发送此数据包。

Drop

Drop 则是丢掉这个包,重新抓取数据。

Action

Action 的功能如下,可以把请求发送到各个模块进行交互。

HTTP history

这个模块的功能则是这个就是截取包的历史记录,把先前截取的数据包历史停留在这里。

Scan

Scan 这个功能模块的作用则是扫描,一个 Web 应用程序的扫描器,是 Pro 版独有的,社区版则不带有此功能。

使用方法是在抓包后右键菜单,出现 “Do a active scan”,点击后则会发送到 Burp 的 Scan 模块下,最重要的指示则是会高亮黄色。

Intruder

Intruder 模块则是整个 Burp 工具里最有用的一块,在暴力破解这方面经常会上手,可以通过增加一个字典来实现自动化的攻击。

在 Intruder 模块下的 Position 下可以对 HTTP 请求进行操作,可以把 HTTP 请求里的某个单独的参数设置为变量,来进行替换,比如上图所示,标黄的部分即为变量参数。

Attack type

Attack type 里的参数有四种,分别是如下图所示:

1、Sniper

Sniper,就是将你添加的字典里的数值一次赋给我们的多个参数去组合尝试,比如我们设置了有三个参数,分别是 a,b,c,字典里面有五个值(1,2,3,4,5),那么该模式下 Burp 会把 a 去替换成字典里的数值,b、c 保持原值,然后 b 去替换字典里的数值,a、c 保持原值,c 则以此类推。

2、Battering ram

Battering ram,则是同时将 abc 赋值都用添加的字典去替换尝试。

3、Pitchfork

Pitchfork 则是需要用户导入三个字典,后依次替换变量。

4、Cluster bomb

Cluster bomb 也需要用户导入三个字典,但是他会把每个字典里的数值都去给变量测试替换一遍,比如 a 变量,字典一测试了字典二和三也会跟上去替换。

Payload

Payload,作用是导入字典的作用:

Simple list

在这个模块下的 Simple list 定义则是最基础的,适合小量数据。

Brute forcer

Brute forcer 则是单纯的暴力破解,选择这个模块后他会尝试字典的所有内容。

Options

Options 是 Intruder 最后一个模块,他的功能是线程等功能的设置。

Number of chreads,线程量。

Number of retries on network failure ,则是网络故障的重试次数,三次则是重试三次连接。

Pause before retry,重试失败的请求时,Burp 将在重试之前等待失败后的指定时间(以毫秒为单位)。如果服务器被流量淹没,或发生间歇性问题,最好在重试之前等待一段时间,默认值为 2000 毫秒。

Repeater

Repeater 即网页请求头,一般使用这个功能也是通过 Proxy 抓包然后 Send 发送过来的。

主要就是修改请求的各项参数等等然后点击左上角的 go 发送出去,然后在右边接受到请求,同时在右侧显示请求和状态,多作用于的 HTTP 请求的模糊测试。

Decoder

Decoder 模块是一个方便的编码器,故此不再多叙述。

Comparer

Comparer 模块是一个文件比较的功能,也非常简单,请读者自行了解。

到这里就已经结束了 Burp 大部分功能,作用于渗透测试和安全评估中会经常使用的功能简介,接下来我们进入下一次实战练习。

---------------------

Web应用安全测试的更多相关文章

  1. 做web开发和测试,修改hosts指定某个域名访问某个特定的IP后,如何使hosts立即生效的方法

    本文转自SUN'S BLOG,原文地址:http://whosmall.com/post/143 hosts的配置方法: 在windows系统中,找到C:\windows\system32\drive ...

  2. Huxley 是一个用于Web应用 UI 测试的工具

    Huxley 是一个用于Web应用 UI 测试的工具,由  Pete Hunt 和 Maykel Loomans 用 Python 开发. UI 测试比较令人头疼. UI测试不好写,而且很容易失效: ...

  3. Web网站压力测试工具

    使用Microsoft Web Application Stress Tool对web进行压力测试 不错关于压力测试博客: http://blog.sina.com.cn/s/blog_5155e8d ...

  4. Web服务器压力测试一例

    近期部门新上线一个服务,我们使用ab和locust分别测试 目前项目属于demo阶段,对访问量的支持不要求太高,我们暂且设定在500请求,20并发 工具介绍 ab ab全称为:Apache HTTP ...

  5. Selenium也是一个用于Web应用程序测试的工具

    Selenium也是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Firefox.Mozilla Suite ...

  6. ref:Web Service 渗透测试从入门到精通

    ref:https://www.anquanke.com/post/id/85910 Web Service 渗透测试从入门到精通 发布时间:2017-04-18 14:26:54 译文声明:本文是翻 ...

  7. Web应用扫描测试工具Vega

    Web应用扫描测试工具Vega   Vega是Kali Linux提供的图形化的Web应用扫描和测试平台工具.该工具提供代理和扫描两种模式.在代理模式中,安全人员可以分析Web应用的会话信息.通过工具 ...

  8. Web应用渗透测试框架Arachni

    Web应用渗透测试框架Arachni   Arachni是一款Ruby语言编写的Web应用渗透测试框架.当用户指定目标后,该框架可以自动扫描网站页面,对页面中的链接.表单.Cookie.HTTP He ...

  9. 三种web性能压力测试工具

    三种web性能压力测试工具http_load webbench ab小结 题记:压力和性能测试工具很多,下文讨论的是我觉得比较容易上手,用的比较多的三种 http_load 下载地址:http://w ...

  10. Web进行压力测试的小工具

    在Linux下对Web进行压力测试的小工具有很多,比较出名的有AB.虽然AB可以运行在windows下,但对于想简单界面操作的朋友有点不太习惯.其实vs.net也提供压力测试功能但显然显得太重了,在测 ...

随机推荐

  1. Java IO流读取文件

    使用指定编码读取文件 public static String toString(File file, String charset){ StringBuilder result = new Stri ...

  2. C# int数据类型呵呵

    int16=short; int32=int; int64=long; Int16 值类型表示值介于 -32768 到 +32767 之间的有符号整数. Int32 值类型表示值介于 -2,147,4 ...

  3. 使用ML.NET和Azure Function进行机器学习 - 第1部分

    介绍 一提到机器学习,总是让人望而生畏.幸运的是,Azure正在想方设法让开发人员更容易进入机器学习.ML.NET是Microsoft Research专为.NET开发人员开发的机器学习框架,因此您可 ...

  4. Android--Tween补间动画

    前言 Android除了支持逐帧动画之外,也提供了对补间动画的支持,补间动画就是指开发人员只需要指定动画的开始.动画结束的"关键帧",而动画变化的"中间帧"由系 ...

  5. nodejs接收get参数和post参数

    get请求用query //http://localhost:3000?a=3&b=4&c=5 router.get('/', function (req, res, next) { ...

  6. leetcode — largest-rectangle-in-histogram

    import java.util.Stack; /** * * Source : https://oj.leetcode.com/problems/largest-rectangle-in-histo ...

  7. Servlet主要相关类核心类 容器调用的过程浅析 servlet解读 怎么调用 Servlet是什么 工作机制

      WEB简介   Web项目 是 B/S结构 浏览器/服务器模式的 浏览器发起请求,服务器作出响应   请求的发起和响应使用HTTP协议进行通讯 所谓协议也就是一种固定格式   而Socket是应用 ...

  8. k8s架构分析(二)--技术流ken

    master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...

  9. 跨站脚本攻击xss学习

    0.认识跨站脚本 举一个跨站脚本的简单例子. 假设一个页面将用户输入的参数直接显示到页面之中.(比如有如下代码) 在实际的浏览器中,在param中提交的参数正常会展示到页面之中.比如输入下面的URL: ...

  10. 第36章 扩展授权 - Identity Server 4 中文文档(v1.0.0)

    OAuth 2.0为令牌端点定义了标准授权类型,例如password,authorization_code和refresh_token.扩展授权是一种添加对非标准令牌颁发方案(如令牌转换,委派或自定义 ...