【常用工具】BurpSuite扫描

1 BurpSuite扫描功能概述

Burp Scanner主要用于自动检测Web系统的各种漏洞。本节介绍Burp Scanner的基本使用方法, 在实际使用中可能会有所改变,但大体环节如下。

1.1 主动扫描模式

当使用主动扫描模式时, Burp会向应用发送新的请求并通过Payload验证漏洞。这种模式下的操作会产生大量的请求和应答数据,直接影响服务端的性能,通常用于非生产环境。主动扫描适用于以下这两类漏洞。

    客户端的漏洞,如xss 、HTTP头注入、操作重定向。 服务端的漏洞,如SQL注入、命令行注入、文件遍历。

对第一类漏洞, Burp在检测时会提交input域,然后根据应答的数据进行解析。在检测过程中, Burp会对基础的请求信息进行修改,即根据漏洞的特征对参数进行修改,模拟人的行为,以达到检测漏洞的目的;对第二类漏洞,以SQL注入为例,服务端有可能返回数据库错误提示信息,也有可能什么都不反馈。Burp在检测过程中会采用各个技术验证漏洞是否存在,例如诱导时间延迟、强制修改Boolean值、与模糊测试的结果进行比较,以提高漏洞扫描报告的准确性。

1.2 被动扫描模式

当使用被动扫描模式时, Burp不会重新发送新的请求,只是对己经存在的请求和应答进行分析,对服务端的检测来说,这比较安全,通常适用于生产环境的检测。

一般来说,下列漏洞在被动模式中容易被检测出来。

    提交的密码为未加密的明文。 不安全的cookie的属性,例如缺少HttpOnly和安全标志。 cookie的范围缺失。 跨域脚本包含和站点引用泄露。 表单值自动填充,尤其是密码。 SSL保护的内容缓存。 目录列表。 提交密码后应答延迟。 session令牌的不安全传输。 敏感信息泄露,例如内部IP地址、电子邮件地址、堆枝跟踪等信息泄露。 不安全的ViewState 的配置。 错误或不规范的Content-Type指令。

虽然被动扫描模式相比主动模式有很多不足,但同时也具有主动模式不具备的优点。除了对服务端的检测比较安全,当某种业务场景的测试每次都会破坏业务场景的某方面功能时,可以使用被动扫描模式验证是否存在漏洞,以减少测试的风险。

2 BurpSuite扫描实验

2.1 实验及目标

  1. 在win2003中部署WEB服务器,配置IP为10.1.1.3。
  2. 利用BurpSuite访问网站并对请求和响应数据进行抓包。
  3. 利用BurpSuite扫描网站并生成报告。

2.2 数据抓包

  1. 启动BurpSuite,进入代理界面,进入拦截菜单,开启拦截功能,启动自带浏览器。
  2. 输入10.1.1.3,访问win2003中部署的网站。
  3. 点击Forward,发送报文。当发送完请求并接收完响应报文后,可以看到浏览器成功打开网站。
  4. 进入历史截获数据功能栏,可以看到刚刚截获的报文清单。

2.3 网站扫描

  1. 选中历史截获报文清单中目标网站10.1.1.3对应的报文,右键,进入主动扫描。
  2. 进入仪表板(Dashboard)界面,查看扫描进度及结果,左侧是扫描进度以及日志,右上角是扫描结果清单,右下角是每个清单条目的详细情况。

2.4 生成扫描报告

  1. 选中一个扫描结果,右键,点击report issue,生成扫描报告。
  2. 选择报告的形式,点击下一步。
  3. 选中报告内容要包含哪些细节,点击下一步。
  4. 分别选择请求报告和响应报告要包含的内容,分别是不包含请求/响应结果、包括相关摘要、包括完整请求/响应结果。
  5. 选择需要报告需要呈现的漏洞类型。
  6. 选择报告存放路径与格式。
  7. 查看生成的报告。

3 总结

  1. 了解软件的抓包功能和扫描功能。
  2. 了解主动扫描和被动扫描的差异。
  3. 掌握请求报文和响应报文内容。
经验分享 程序员 微信小程序 职场和发展