<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pentagrid AG (Posts about Grouping)</title><link>https://www.pentagrid.ch/</link><description></description><atom:link href="https://www.pentagrid.ch/en/categories/grouping.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2026 Pentagrid AG </copyright><lastBuildDate>Wed, 17 Jun 2026 19:14:51 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Response Overview Burp Extension</title><link>https://www.pentagrid.ch/en/blog/response_overview_burp_extension/</link><dc:creator>Pentagrid AG</dc:creator><description>&lt;p&gt;Today we would like to announce the release of an updated BurpSuite extension in the BApp store.&lt;/p&gt;
&lt;!-- TEASER_END --&gt;
&lt;p&gt;In the last few months we've been busy improving some of our own tools. One of them was the Response Overview (used to be called "Response Clusterer") Burp extension. We did a complete rewrite from Jython to Kotlin. Jython has some huge compatibility issues inside Burp, just to mention some of them:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;p&gt;Extensions break depending on if Jython version 2.7.0 or 2.7.2 is installed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Type issues as Jython needs to convert Java arrays to Python string, which is not trivial in deeply-nested objects.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jython is not available for Python 3, which is okay, but when our extensions grew large, we missed the type hinting feature of Python 3.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cool features of Kotlin such as null-checking or automatically generated getter and setter methods are missing.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The only real downside we see is that Kotlin extensions need to be compiled before they can be used, whereas changing a line in a Python script is much easier.&lt;/p&gt;
&lt;a class="reference external image-reference" href="https://www.pentagrid.ch/images/202201_burp_response_overview.png"&gt;
&lt;img alt="Screenshot of the Response Overview Burp plugin" class="align-center" src="https://www.pentagrid.ch/images/202201_burp_response_overview.thumbnail.png"&gt;
&lt;/a&gt;
&lt;p&gt;This extension groups all response bodies by similarity and shows a summary, one request/response per group. The extension will allow a tester to get an overview of the tested website's responses from all tools (scanner, proxy, etc.). It provides an additional "semi-automated detection method" (compared to the usual detection methods response-based, time-based, interaction-based, etc.).&lt;/p&gt;
&lt;p&gt;The new Response Overview extension has some huge memory, performance and UI improvements. This includes being able to sort the overview table as well as hiding items in it.&lt;/p&gt;
&lt;p&gt;Moreover, according to Portswigger, this was the first Kotlin-only extension that was submitted to the Burp internal BApp store. They changed their build-pipeline to make sure Kotlin extensions can be auto-built in the future when submitted to the BApp store. So if you write an extension in Kotlin, make sure to have a look at our &lt;a class="reference external" href="https://github.com/pentagridsec/PentagridResponseOverview"&gt;Github repository&lt;/a&gt;. Moreover, include the API files found in the &lt;a class="reference external" href="https://github.com/bao7uo/burp-extender-api-kotlin"&gt;burp-extender-api-kotlin Github repository&lt;/a&gt; as we did in the Response Overview extension.&lt;/p&gt;
&lt;p&gt;During the journey of learning Kotlin and writing the extension, we encountered two annoying Kotlin compiler bugs. &lt;a class="reference external" href="https://youtrack.jetbrains.com/issue/KT-6653"&gt;One bug&lt;/a&gt; could be circumvented because Portswigger agreed that Kotlin extension can provide their own API files (see above). The &lt;a class="reference external" href="https://youtrack.jetbrains.com/issue/KT-19861"&gt;other bug&lt;/a&gt; was fixed when a new compiler version came out. We still haven't figured out another Serialization bug we encountered. So if you are a Java/Kotlin wizard, we would also be interested to hear from you why the Java Serialization (or rather the deserialization) of the boolean "hidden" flag in the &lt;a class="reference external" href="https://github.com/pentagridsec/PentagridResponseOverview/blob/main/src/main/kotlin/LogEntry.kt"&gt;LogEntry&lt;/a&gt; class is not working (hidden flag is always false when deserialized).&lt;/p&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://github.com/pentagridsec/PentagridResponseOverview"&gt;Github repository&lt;/a&gt; also features more technical information about the extension. The extension can be found in BApp now and the BApp store listing can be found on the &lt;a class="reference external" href="https://portswigger.net/bappstore/e63f09f290ad4d9ea20031e84767b303"&gt;Portswigger website&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Have fun with the extension and happy bug hunting!&lt;/p&gt;</description><category>API</category><category>Burp</category><category>Extensions</category><category>Grouping</category><category>Overview</category><category>Pentesting</category><category>Portswigger</category><guid>https://www.pentagrid.ch/en/blog/response_overview_burp_extension/</guid><pubDate>Wed, 12 Jan 2022 13:30:00 GMT</pubDate></item></channel></rss>