Burp Suite Scanner 使用指南:爬虫与漏洞检测全流程剖析

[复制链接]
发表于 2025-7-17 15:18:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
前言

在 Web 渗出测试中,Burp Suite 不但是一款功能强大的抓包工具,还内置了全面的漏洞扫描模块 —— Burp Scanner。它通过内置的爬虫(Crawler)主动构建网站结构,并联合被动与主动扫描器(Scanner)对目标举行漏洞检测,是执行高效 Web 安全测试的重要利器。
目标范围(Scope)

Burp 的全部扫描操作都基于「范围控制」,即 Target → Scope 设置。只有被包罗在范围内的目标,才会被爬虫或扫描器处理。
我们有两种方法将某个地点参加Scope
法一:在HTTP History中选中请求右键点击,选择 Add to scope

法二:全部经过 Burp Proxy 的 HTTP/HTTPS 请求,其对应的目标(域名+路径)都会主动出如今 Target → Site Map 里,这是 Burp 的核心功能之一。我们可以在Target → Site Map选中请求右键,然后选择Add to scope

如果扫描某些项目可能存在伤害,或者可能会像注销功能一样结束会话,我们可能还需要将其从范围中排除。要从范围中排除某个项目,我们可以右键单击任何范围内的项目,然后选择Remove from scope。
末了,我们可以转到 Target>Scope setting 查看Scope的详细信息。在这里,我们还可以添加/删除其他项目,并使用高级范围控制来指定要包罗/排除的正则表达式模式。

爬虫(Crawl)

一旦我们准备好Scope,我们就可以转到Dashboard选项卡并单击New Scan来配置我们的扫描,它将主动填充我们的Scope内的项目:
我们看到 Burp 提供了两个扫描选项:Crawl and Audit和Crawl。

  • Crawl(网络爬虫)会通过访问网站页面中的任何链接、表单以及检查网站发出的任何请求来导航网站,从而构建网站的综合舆图。终极,Burp 扫描器会向我们呈现目标舆图,将全部可公开访问的数据集中显示,这将是本节的重点。
  • 如果我们选择Crawl and Audit,Burp 会在爬虫程序运行后运行扫描器,即实现爬虫、被动扫描、主动扫描的全过程,我们后面再介绍。
留意:爬取扫描仅跟踪并映射我们指定的页面及其上找到的任何页面中的链接。它不会像 dirbuster 或 ffuf 那样执行含糊测试扫描来识别从未被引用的页面。您可以使用 Burp Intruder 或 Content Discovery 来完成此操作,然后根据需要将其添加到范围中。

让我们选择Crawl,然后转到Scan configuration选项卡来配置我们的扫描。在这里,我们可以选择单击New“构建自界说配置”,这将允许我们设置诸如抓取速率或限制之类的配置
为了简单起见,我们将单击按钮Select from library,这将为我们提供一些可供选择的预设配置(或我们之前界说的自界说配置):

继续到Application login选项卡。在此选项卡中,我们可以添加一组凭据,供 Burp 尝试在其找到的任何登录表单/字段中举行登录。我们还可以通过在预配置的欣赏器中执行手动登录来记录一组步调,以便 Burp 知道要执行哪些步调才气得到登录会话。
如果我们使用经过身份验证的用户运行扫描,这一点至关重要,这将使我们能够覆盖 Burp 可能无法访问的 Web 应用程序部分。由于我们没有任何凭据,因此我们将它留空。

如许,我们就可以点击Ok按钮开始抓取扫描了。扫描开始后,我们可以在Dashboard以下选项卡中看到扫描进度Tasks:

末了,扫描完成后,我们将在任务信息中看到Crawl Finished,然后返回 Target>Site map 查看更新后的站点舆图:

被动扫描器(Passive Scanner)

如今站点舆图已完全构建,我们可以选择扫描此目标以查找潜在漏洞。
与主动扫描不同,被动扫描不会发送任何新请求,而是分析目标/范围内已访问页面的来源,然后尝试识别potential漏洞。这对于快速分析特定目标非常有用,例如缺少 HTML 标签或潜在的基于 DOM 的 XSS 漏洞。然而,由于不发送任何请求来测试和验证这些漏洞,被动扫描只能提供潜在漏洞的列表。不过,Burp 被动扫描器会Confidence为每个已识别的漏洞提供相应的级别,这也有助于确定潜在漏洞的优先级。
让我们先尝试仅执行被动扫描。为此,我们可以再次在 Target>Site map 中选择目标,或在 Burp 代理历史记录(HTTP history)中选择请求,然后右键单击它并选择Passively scan this target

被动扫描将开始运行,其任务也可以在Dashboard选项卡中看到。扫描完成后,我们可以点击View Details查看已识别的漏洞。

或者,我们可以在Dashboard选项卡的窗格Issue activity中查看全部已识别的题目。如我们所见,它显示了潜在漏洞的列表、其严峻程度及其置信度。通常,我们希望查找具有High严峻程度和Certain置信度的漏洞。但是,对于非常敏感的 Web 应用程序,我们应该包罗全部级别的严峻程度和置信度,并特别关注High严峻程度和Confident/Firm置信度。

主动扫描仪(Active Scanner)

主动漏洞扫描器是 Burp Scanner 最强大的部分。主动扫描比被动扫描更全面:

  • 它起首运行爬网程序和 Web 含糊测试器(如 dirbuster/ffuf)来识别全部可能的页面
  • 它对全部已识别的页面运行被动扫描
  • 它检查被动扫描中识别出的每个漏洞,并发送请求来验证它们
  • 它执行 JavaScript 分析来识别进一步的潜在漏洞
  • 它含糊各种已识别的插入点和参数,以寻找常见漏洞,如 XSS、命令注入、SQL 注入和其他常见的 Web 漏洞
启动主动扫描器有两种方式

  • 法一:我们可以像启动被动扫描一样,在 Target>Site map 或在 Burp 代理历史记录(HTTP history)中选择请求,然后右键单击它并选择Do active scan
  • 法二:我们可以使用Dashboard选项卡中的New Scan按钮对Scope运行扫描,这将允许我们配置主动扫描。这次,我们将选择Crawl and Audit选项,它将执行上述全部操作以及我们迄今为止讨论的全部内容。
在Scan configuration选项卡,我们可以设置爬虫配置(如前所述)和审计配置。审计配置使我们能够选择要扫描的漏洞范例(默认为全部),扫描器将尝试在其中插入其有效载荷,别的另有许多其他有用的配置。同样,我们可以使用Select from library按钮选择配置预设。对于我们的测试,由于我们关注的是可能允许我们控制后端服务器的漏洞,因此我们将选择此Audit checks - critical issues only选项。
末了,我们可以在Application login选项卡添加登录详细信息,就像我们之前在爬虫配置中看到的那样。
扫描完成后,我们可以在选项卡Issue activity中的窗格中查看Dashboard并过滤迄今为止已识别的全部题目。从结果上方的过滤器中,选择High并Certain查看过滤后的结果:

Burp 成功识别出一个 操作系统命令注入(OS Command Injection) 漏洞,并将其标志为 High 级别的严峻性与 Firm 的置信度,表明该漏洞极有可能真实存在且具有较大危害。我们可以点击该条目,查看详细的说明,包罗 Burp 发送的具体请求、服务器的响应内容,以及该漏洞的利用方式和影响范围。别的,“Path to issue” 功能还展示了从起始页面逐步访问至该漏洞页面的路径,资助我们理解漏洞的触发流程与上下文位置。

报告导出

末了,全部扫描完成后,我们可从前去 Target>Site map,右键单击目标,然后选择 Issue>Report issues for this host。系统将提示我们选择报告的导出范例以及要包罗在报告中的信息。导出报告后,我们可以在任何 Web 欣赏器中打开它来查看其详细信息。
Burp 的报告按照漏洞的严峻性和可信度举行分类,还包罗每个漏洞的详细描述、利用方式(PoC)以及修复建议,非常适合作为渗出测试过程中对外输出的参考材料。
参考资料与靶场

HTB Academy Burp Scanner
HTB Academy ZAP Scanner
宇宙安全声明

本博客所提供的内容仅供学习与交流,旨在进步网络安全技术程度,谨遵守国家相关法律法规,请勿用于违法用途,博主不对任何人因使用博客中提到的技术或工具而产生的任何结果负责。如果您对文章内容有疑问,可以留言私信。
本文同步更新于我的 GitHub Page,如有错误接待指正,也接待 Star 支持持续优化内容。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表