Code Monkey home page Code Monkey logo

burp-send-to's Introduction

Burp-Send-To-Extension

Adds a customizable "Send to..."-context-menu to your BurpSuite.

Burp-Send-To-Extension Tab

Configuration

After loading the extension the "Send to"-Tab contains all necessary options to configure the "Send to"-context-menu.

New context-menu-entries can be added using the "Add"-button. Each entry consists of following fields:

  • Name: the name of the context-menu-entry.
  • Command: the command to be executed. You can use following placeholders:
    • %H: will be replaced with the host
    • %P: will be replaced with the port
    • %T: will be replaced with the protocol
    • %U: will be replaced with the url
    • %A: will be replaced with the url path
    • %Q: will be replaced with the url query
    • %C: will be replaced with the cookies
    • %L: will be replaced with the HTTP-content-length
    • %M: will be replaced with the HTTP-method
    • %O: will be replaced with the HTTP-status-code
    • %S: will be replaced with the selected text
    • %F: will be replaced with the path to a temporary file containing the selected text
    • %R: will be replaced with the path to a temporary file containing the content of the focused request/response
    • %E: will be replaced with the path to a temporary file containing the header of the focused request/response
    • %B: will be replaced with the path to a temporary file containing the body of the focused request/response
  • Group: the name of the sub-menu in which this entry will be shown. Can be left blank.
  • Run in terminal: defines whether a terminal-window should appear in which the configured command is executed. By default "xterm" is used as terminal-emulator. You can change the terminal-emulator in the "Miscellaneous Options" to your liking.
  • Show preview: gives you the chance to preview and change the command before executing it.
  • Output should replace selection: will replace the selection with the output of the to be executed command.

Burp-Send-To-Extension Add-/Edit-Dialog

In addition it is possible to customize how placeholders behave when multiple HTTP messages are selected by clicking the "Advanced"-button. By default each selected HTTP message forms a separate command. However, it is also possible to join all values of a specific placeholder using a custom separator, or to store all values of a specific placeholder within a file.

Burp-Send-To-Extension Advanced-Dialog

After creating new context-menu-entries using the "Add"-button they can be edited or deleted again using the "Edit"- and "Remove"-button. In addition the order in which they appear in the context-menu can be altered using the "Up"- and "Down"-button.

Burp-Send-To-Extension Tab

Terminal Options

The "Terminal Options" allow to configure the graphical terminal to use. In addition it is possible to specify how multiple commands should be run in terminal. Multiple commands can either be run sequential in a single terminal or in parallel in separate terminals. While it's possible to choose a default behaviour, the exact behaviour can also be selected via a dialog, everytime a send-to context menu entry is selected. However, if you prefer one behaviour all the time, this dialog can also be disabled.

Context-Menu

The "Send to..." context-menu contains all entries which were added in the "Send to"-Tab. In addition you can add new entries via the "Custom command..."-context-menu-entry.

Request Field

Burp-Send-To-Extension Context-Menu

Proxy History

Burp-Send-To-Extension Context-Menu

Save and load options

Usually the options of the "Send to"-Tab are saved automatically. However, if you switch computers you may save and load your current options. This can be done by clicking on the gear-symbol in the upper-left corner of the "Send to"-Tab and select the appropriate context-menu-entry.

Burp-Send-To-Extension Options

Security Notes

Executing commands based on untrusted input always introduces the risk of command injection. This is especially true when using the %S placeholder. Thus it is recommended to always activate the Show preview option when using the %S placeholder and closely analyse commands in the preview window prior to execution.

Burp-Send-To-Extension Options

Build

This project was built using IntelliJ and Gradle. When you make changes to the source (and especially the GUI) you should apply following settings within Intellij to make sure that everything builds successfully:

  • File -> Settings -> Editor -> GUI Designer -> Generate GUI into: Java source
  • File -> Settings -> Build, Execution, Deployment -> Compiler -> Build project automatically
  • File -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Build and run using: IntelliJ IDEA

When the GUI is not updated correctly you may rebuild the project manually:

  • Build -> Rebuild Project

After that you can execute the "fatJar"-task within the "build.gradle"-file. This will produce a jar in the "build/libs/" directory called "burp-send-to-extension-{version}.jar".

burp-send-to's People

Contributors

bytebutcher avatar pajswigger avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.