Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
PentagridResponseOverview — BurpSuite 响应概览扩展 - 通过对响应正文进行分组来发现异常响应 | Kitploit
工具/GitHubGitHub/pentagridsec/pentagridresponseoverview
防御工具Web漏洞扫描器漏洞分析Web代理与拦截信息收集Web安全渗透测试实用工具与框架异常检测

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubpentagridsec/pentagridresponseoverview

PentagridResponseOverview

BurpSuite 响应概览扩展 - 通过对响应正文进行分组来发现异常响应

查看仓库网站
11578个月前尚未审核

PentagridResponseOverview

BurpSuite 响应概览扩展

作者:Tobias "floyd" Ospelt,@floyd_ch,http://www.floyd.ch

Pentagrid AG,https://www.pentagrid.ch

通过对响应正文进行分组来发现异常响应(响应概览)

该扩展会根据相似性对所有响应正文进行分组,并显示一个摘要,每组显示一个请求/响应。该扩展允许测试人员从所有工具(扫描器、代理等)中获取被测网站响应的概览。它提供了一种额外的“半自动化检测方法”(与通常的基于响应、基于时间、基于交互等检测方法相比)。其中包含多种优化,主要是出于性能方面的考虑。“移除参数”功能会在比较之前从响应中移除被反射的请求参数。

战绩展示

到目前为止:

  • 我发现了一个扫描器未能发现的本地文件包含漏洞。
  • 在一个 ClickHouse 大数据 DBMS 中发现了一个 SQL 注入,其响应中包含非常罕见的错误消息。
  • 我的注意力被大量我可能遗漏的有趣功能所吸引。
  • 遗憾的是,目前还没有公开的成果,因为我主要用它来进行渗透测试。你发现了什么吗?请告诉我:tobias at pentagrid dot ch

如何使用此扩展

使用非常简单:

  • 将你测试的网站添加到 scope 中
  • 像平常一样测试 Web 应用程序(代理、扫描器等)。
  • 回到 Overview 标签页,查看所有响应(你可以按列排序)。你注意到所有这些功能了吗?你注意到任何奇怪的错误消息了吗?其中有任何对你来说是新数据吗?
  • 通过右键单击并选择“Hide item(s)”,对你查看过的请求/响应进行 pwn 或隐藏

该扩展会在以下情况下分析 HTTP 响应:

  • 它们位于 scope 中
  • 它们不是无趣的 mime 类型(Burp mime 类型 JPEG、CSS、script、GIF、PNG、image)
  • 它们没有无趣的文件扩展名(js、swf、css、zip、war、jar、doc、docx、xls、xlsx、pdf、exe、dll、png、jpeg、jpg、bmp、tif、tiff、gif、webp、svg、m3u、mp4、m4a、ogg、aac、flac、mp3、wav、avi、mov、mpeg、wmv、webm、woff、woff2、ttf)
  • 它们小于 1 MB
  • 我们尚未显示 1000 个分组

当满足上述过滤条件时,传入的响应正文(来自所有 Burp 工具!)会与我们已创建的所有分组进行比较。一个分组由其第一个成员定义,我们会将其保留在内存中。如果我们正在处理的响应与该第一个成员有 95% 相似,则它属于该分组,并且只会增加“Group Size”计数器。这也意味着我们不会存储该响应。如果该响应与任何分组都不具有 95% 的相似性,则它会形成一个新分组,并且它是该分组的第一个成员。

历史

我于 2010 年向 w3af 项目提出了这种允许你发现异常的响应概览的第一个版本(另见此处讨论:https://github.com/andresriancho/w3af/issues/17345),它是用 Python 编写的。它从未进入 w3af 主线,我不记得原因了。那时我学到了很多关于 Python difflib 的知识,并针对该用例优化了性能。我在 2019 年为 Burp 用 Python 编写了一个类似的扩展,并在为 modzero AG https://github.com/modzero/burp-ResponseClusterer 工作时再次学到了很多关于 Python difflib 的知识。然而,在某个时候我意识到该扩展可能会消耗 Burp 的一些性能,而我起初忽略了这一点。2021 年,该扩展完全失效,因为它无法再与较新的 Jython 版本一起运行;而在重新审视代码时,我意识到我编写了一个内存效率非常低的扩展。所以,这就是现在的情况:这是 2021 年用 Kotlin 编写的新扩展,具有新功能,并再次从 Python 的 difflib 和不同功能中学到了很多。我进行了性能改进,因为我意识到如果我们总是与相同的字符串进行比较(正如 Python 代码中已经实现的那样),某些计算是不必要的。Response Clusterer 已死,Response Overview 万岁。

性能讨论

理论上,默认设置可能会导致 Burp 的性能不那么理想。然而,这种情况极不可能发生。在一项测试中,所有响应都具有最大默认响应大小(约 1MB),并且必须相互比较,使用预计算的 bByteCount 优化(常规情况)时比较耗时最多 30ms,而没有此优化时最多 80ms(每个条目仅发生一次)。乘以最大分组数量(1000),这意味着在最坏情况下,这可能意味着最多 80 秒的处理时间。由于有单独的线程,这还可以承受,因为下一次比较最多只需要 30 秒。但是,哪个 Web 应用程序会有许多约 1MB 的不同响应呢?希望不要太多。另外别忘了,如果响应长度差异超过 2%,由于 veryQuickRatio 优化,相似性匹配几乎不耗时。

未来改进的想法

  • 我们可以自动隐藏分组大小(group size)中前 20% 最常见分组的行。因为这可能只是我们通常看到的常规 HTML 代码或 JSON 响应,非常无趣。但那样我们就会在某种程度上失去该扩展的“概览”特性。所以目前没有这样做。
  • 提供复选框以完全禁用某些返回码的显示
  • 如果你想到任何其他改进,请在 issues 标签页告诉我
下载工具