Burp Suite User Forum

Create new post

API extensions

Rogan | Last updated: Oct 06, 2017 01:34PM UTC

Hi, I wrote an extension some time ago, but abandoned it due to missing API functionality. In particular, I needed the following: Ways to save extension state along with the rest of the saved state. While I could ask users to save it to a separate file, and load it again later, that seems likely to result in corruption and inconsistent state. Ways to obtain a listing (and contents) of ALL requests/responses that Burp knows about, from all tools and extensions. While it is possible to be informed of requests/responses as they are being made/received, it is not possible to retrieve this information when the state is reloaded. My extension makes use of information from every request/response, and needs to be able to reconstruct this state when a session is reloaded.

PortSwigger Agent | Last updated: Oct 06, 2017 01:52PM UTC

Hi Rogan, Thanks for getting in touch. Your first request is a very good idea. There is limited functionality already - callbacks.saveExtensionSetting - but it's not quite the same. A lot of extension authors have requested this, so when we get to the API redesign, it will be near the top of the list. Your second request is more problematic. It is part of Burp's design that tools like Scanner and Content Discovery make many requests - but only a tiny fraction of these generate interesting results, so we throw most data away. As you mentioned, IHttpListener can capture all these, and there are extensions like Flow and Logger++ that record everything. There have been suggestions to make Flow/Logger++ core features. Alternatively, if when we implement your first request, you could write a persistent version of Flow/Logger++ that did what you need. We're happy to get more API requests, users our the best source of ideas.

You must be an existing, logged-in customer to reply to a thread. Please email us for additional support.