All Classes and Interfaces
Class
Description
Base class for implementing Scalpel editors
It handles all the Python stuff and only leaves the content setter/getter, modification checker and selection parts abstract
That way, if you wish to implement you own editor, you only have to add logic specific to it (get/set, selected data, has content been modified by user ?)
Provides utilities to get default commands.
Scalpel configuration.
Global configuration.
Burp tab handling Scalpel configuration
IntelliJ's GUI designer is needed to edit most components.
Contains constants used by the extension.
Enum used by editors to identify themselves
Interface declaring all the necessary methods to implement a Scalpel editor
If you wish to implement your own type of editor, you should use the AbstractEditor class as a base.
Utilities to perform IO utilities conveniently
Color palette for the embedded terminal
Contains colors for both light and dark theme
Utilities to initialize Java Embedded Python (jep)
Utility class for Python scripts.
Provides methods for unpacking the Scalpel resources.
Optional-style class for handling python task results
A completed python task can have multiple outcomes:
- The task completes successfully and returns a value
- The task completes successfully but returns no value
- The task throws an exception
Result allows us to handle returned values and errors uniformly to handle them when needed.
The main class of the extension.
Provides a new ScalpelProvidedEditor object for editing HTTP requests or responses.
Provides an UI text editor component for editing HTTP requests or responses.
This stores all the informations required to create a tab.
A tab can be associated with at most two hooks
(e.g req_edit_in and req_edit_out)
This stores the informations related to only one hook and is later merged with the second hook information into a HookTabInfo
Responds to requested Python tasks from multiple threads through a task queue handled in a single sepearate thread.
Hexadecimal editor implementation for a Scalpel editor
Users can press their keyboard's INSER key to enter insertion mode
(which is impossible in Burp's native hex editor)
Handles HTTP requests and responses.
Provides methods for logging messages to the Burp Suite output and standard streams.
Log levels used to filtrate logs by weight
Useful for debugging.
Provides an UI text editor component for editing HTTP requests or responses.
Provides methods for constructing the Burp Suite UI.
Manage Python virtual environments.
Provides a blocking wait dialog GUI popup.
A workspace is a folder containing a venv and the associated scripts.