Closed ody5sey closed 1 year ago
Hi
Could you provide some more details on how Burp is breaking?
When you say this doesn't happen with the old API, could you please provide some more information?
Additionally, you don't need to try and find the Burp frame in the same way any more - you can just use api.userInterface().swingUtils().suiteFrame()
In new api, browser will refresh, burp frame will not response, only kill from Windows OS taskmanager
Hi
Are you using Windows 10 or 11? I've tried replicating this on MacOS, but have not experienced any issues when using your provided code.
Win11
I've not been able to replicate this behavior on Windows 11.
Could you drop us an email at support@portsigger.net with a screen recording of the issue and the JAR file for your extension? I can also send you a copy of the JAR we've built so you can see if that continues to have the same issue.
I have found when using your extension that the frames created by your extension stay at the front of the screen and won't go behind other applications that have the focus.
import burp.api.montoya.http.handler.*; import burp.api.montoya.ui.UserInterface; import burp.api.montoya.ui.editor.HttpRequestEditor; import burp.api.montoya.ui.editor.HttpResponseEditor;
import javax.swing.; import java.awt.;
public class RepeaterTest implements BurpExtension, HttpHandler { /**
@param api The API implementation to access the functionality of Burp Suite. */ public static MontoyaApi montoyaApi;
@Override public void initialize(MontoyaApi api) {
}
/**
@return An instance of {@link RequestToBeSentAction}. */ @Override public RequestToBeSentAction handleHttpRequestToBeSent(HttpRequestToBeSent requestToBeSent) { return null; }
/**
@return An instance of {@link ResponseReceivedAction}. */ @Override public ResponseReceivedAction handleHttpResponseReceived(HttpResponseReceived responseReceived) { JDialog dialog = new JDialog(getBurpFrame(), "Visual");
}
private Frame getBurpFrame() { for (Frame f : Frame.getFrames()) { if (f.isVisible() && f.getTitle().startsWith(("Burp Suite"))) { return f; } } return null; }
} `