...

/

Extension Example 4: Custom Tab Plugin in Burp- JWT Encode/Decode

Extension Example 4: Custom Tab Plugin in Burp- JWT Encode/Decode

Let's learn how to create a JWT encode and decode plugin with a custom `Tab` in Burp Suite. We will use the UI components discussed in the previous lesson.

Creating a new Tab in Burp

In this chapter, we will create a separate tab plugin. This tab will show up in Burp’s top tab menu, as displayed below.

We will design (not code) the UI of this Tab, but we need to encode the UI behavior through Swing Listener. In the end, we will have a plugin that looks something like this.

To create a new Tab that will be visible in the Burp toolbar, we need to implement both IBurpExtender and ITab. The declaration should look like the example below.

public interface ITab
{
    /**
     * Burp uses this method to obtain the caption that should appear on the
     * custom tab when it is displayed.
     *
     * @return The caption that should appear on the custom tab when it is
     * displayed.
     */
    String getTabCaption();

    /**
     * Burp uses this method to obtain the component that should be used as the
     * contents of the custom tab when it is displayed.
     *
     * @return The component that should be used as the contents of the custom
     * tab when it is displayed.
     */
    Component getUiComponent();
}

The content returned by getUiComponent() is what is rendered under the plugins tab window.

To create the UI for the tab, we will use IntelliJ in built form ...