Advanced Burp Suite: automation and extension development
You configure the Burp scanner and Collaborator in your own lab, write Bambdas and BChecks, and build an extension your team can use with the Montoya API.
Level 301 · 15 lessons · 13 practice labs
Lessons
Pro features
- Scanner configuration: scan settings and resource pools
- Collaborator: observing out-of-band interactions in your own lab
- Triaging scanner findings: confidence and evidence
- Short task: run a targeted scan on the lab app and confirm the findings
Customisation
- Bambdas: filtering HTTP history with code
- BChecks: writing your own scan check
- Custom session tokens and complex authentication
- Organizer and team workflow: notes, statuses and handover
- Short task: write a BCheck for a flaw specific to the lab app
Extensions with the Montoya API
- The Montoya API: setting up a Java extension project
- An HTTP handler: signing requests automatically
- Adding a custom tab and context menu
- A passive check: flagging internal leaks in responses
- Testing, packaging and sharing the extension with your team
- Capstone: write a Burp extension for an API that uses signed requests and test with it
Practice labs
- A targeted scan: one endpoint: Scan one endpoint of the lab app with selected checks and confirm the result by hand.
- Triage scanner findings by confidence: Triage scan results by confidence and evidence and close two false positives with reasons.
- Observe out-of-band interaction in the lab: Observe the DNS and HTTP interaction a blind flaw produces with the lab's private interaction server and find its source.
- A gentle scan with resource pools: Configure a scan that does not strain the lab app with resource pools and scan settings and measure server load.
- Filter history with a Bambda: Write a Bambda that finds responses in HTTP history that return JSON and contain a token.
- An app-specific BCheck: Write a BCheck that catches a known debug header in the lab app and apply it to the whole site.
- A session in an app with complex login: Build a configuration that keeps the session alive for a lab app with multi-step login and custom tokens.
- A handover note with Organizer: Arrange an unfinished test in Organizer with statuses and notes so another tester can take it over.
- A first Montoya extension: a context menu: Write and load an extension that adds a context menu item turning the selected request into a curl command.
- A passive check: internal IP leaks: Write a passive check that flags internal IP addresses in responses and try it on lab traffic.
- A handler that signs requests automatically: Write an HTTP handler for the lab API that needs HMAC signatures so each request is signed before it is sent.
- Test and package the extension: Add unit tests for your extension, package it and prepare an install note for the team.
- Test the signed API with your extension: Run authorisation tests on the lab API with your signing extension on, close the flaw you find and retest.
About this course
You configure the Burp scanner and Collaborator in your own lab, write Bambdas and BChecks, and build an extension your team can use with the Montoya API.
What you will learn
- Pro features
- Customisation
- Extensions with the Montoya API
Prerequisites
You should be comfortable with the level 101 and 201 topics of the same path.
Lab environment
Lessons run on your own Kali Linux desktop in the browser, with the tools ready in their windowed interfaces. Nothing to install; a computer screen is recommended.
Frequently asked questions
- Is this course right for my level?
- The course is at level 301; it assumes you know the topics of the lower-level courses.
- Is there anything to install?
- No. Every lesson runs in your own lab environment that opens in the browser.
- How do lessons work?
- Each lesson has 8 to 10 steps and a short quiz. Early steps show the command to type, later steps give less help; if two attempts fail, the solution opens.
- Can I try it for free?
- Yes. The first three lessons of every course are free.