用于捕获、修改和转发HTTp数据包的Burp扩展
我正在尝试编写一个简单的burp扩展来捕获HTTP数据包,修改它并将其转发到服务器。我需要做一些安全测试。我从一个代码开始打印收到的数据包。附加下面的代码,这是我从各种打嗝教程得到的。我将Eclipse代理配置为localhost,然后运行此代码。代码运行良好,Burp正确打开并截获数据包,但我在IDE控制台上看不到任何内容。请帮帮我,因为我对打嗝还很陌生,无法从网上的帮助中了解太多用于捕获、修改和转发HTTp数据包的Burp扩展,http,proxy,burp,Http,Proxy,Burp,我正在尝试编写一个简单的burp扩展来捕获HTTP数据包,修改它并将其转发到服务器。我需要做一些安全测试。我从一个代码开始打印收到的数据包。附加下面的代码,这是我从各种打嗝教程得到的。我将Eclipse代理配置为localhost,然后运行此代码。代码运行良好,Burp正确打开并截获数据包,但我在IDE控制台上看不到任何内容。请帮帮我,因为我对打嗝还很陌生,无法从网上的帮助中了解太多 package burp; public class BurpExtender2 implements IBu
package burp;
public class BurpExtender2 implements IBurpExtender, IHttpListener, IProxyListener
{
private IBurpExtenderCallbacks callbacks;
public void registerExtenderCallbacks(IBurpExtenderCallbacks callbacks)
{
helpers = callbacks.getHelpers();
callbacks.registerHttpListener(this);
}
public void processHttpMessage(int toolFlag, boolean messageIsRequest, IHttpRequestResponse messageInfo)
{
System.out.println(
(messageIsRequest ? "HTTP request to " : "HTTP response from ") +
messageInfo.getHttpService() +
" [" + callbacks.getToolName(toolFlag) + "]");
}
public void processProxyMessage(boolean messageIsRequest, IInterceptedProxyMessage message)
{
System.out.println(message);
}
}
我只是想知道如何在我的代码中获取被截获的数据包,然后转发它。我想知道为什么您要编写一个Burp扩展来捕获数据包。你不会用嗅探器吗 无论如何,多亏了你的代码,我才能够开始编写扩展。下面是我对您的方法processHttpMessage的发现 “[”+回调。getToolName(toolFlag)+“]” 这里有些东西有问题,可能在打嗝套房(1.5.16);即使使用硬编码的int,我也无法让getToolName打印任何内容,而且无法在Burp上设置调试器,所以我放弃了 System.out.println( (messageIsRequest?“HTTP请求至”:“HTTP响应自”)+ messageInfo.getHttpService()) System.out.println(“[callbacks.getToolName(toolsflag)]=”; System.out.println(callbacks.getToolName(toolsflag))
无论如何,这将打印到控制台,但您将看不到toolFlag的任何值。我的错误:iHttpService对象应该打印服务而不引发异常。现在我不确定你的问题在哪里。