Go to file
2023-05-30 11:35:09 -04:00
doc Initial commit 2023-05-30 11:35:09 -04:00
java/burp Initial commit 2023-05-30 11:35:09 -04:00
resources Initial commit 2023-05-30 11:35:09 -04:00
src/burp_clj_montoya Initial commit 2023-05-30 11:35:09 -04:00
test/burp_clj_montoya Initial commit 2023-05-30 11:35:09 -04:00
.gitignore Initial commit 2023-05-30 11:35:09 -04:00
build.clj Initial commit 2023-05-30 11:35:09 -04:00
deps.edn Initial commit 2023-05-30 11:35:09 -04:00
LICENSE Initial commit 2023-05-30 11:35:09 -04:00
README.md Initial commit 2023-05-30 11:35:09 -04:00

subgraph/burp-clj-montoya

burp-blj-montoya is a WIP bridge between Clojure and the new Burp Suite Pro Montoya API. The aim is to make Burp programmable and extendable at runtime without having to reload or package extensions.

Installation

Download from https://git.subgraph.com/mckinney/burp-clj-montoya

Usage

Run the project's tests (they'll fail until you edit them):

$ clojure -T:build test

Build an uberjar to be imported into Burp Suite:

    $ clojure -T:build ci

This will produce an updated pom.xml file with synchronized dependencies inside the META-INF directory inside target/classes and the uberjar in target. You can update the version (and SCM tag) information in generated pom.xml by updating build.clj.

If you don't want the pom.xml file in your project, you can remove it. The ci task will still generate a minimal pom.xml as part of the uber task, unless you remove version from build.clj.

Start Burp with clojure.jar imported so it can be used with our uberjar:

$ java -cp clojure.jar -jar -Xmx8g burpsuite_pro_v2023.2.3.jar

After loading the extension from the target directory in Burp, it will start a REPL on port 6969 that can be accessed from any REPL client (such as Emacs + Cider).

Special thanks

https://github.com/ntestoc3/ for laying the groundwork.