MCPcopy Create free account
hub / github.com/bit4woo/ReSign / processHttpMessage

Method processHttpMessage

src/burp/BurpExtender.java:118–151  ·  view source on GitHub ↗
(int toolFlag,boolean messageIsRequest,IHttpRequestResponse messageInfo)

Source from the content-addressed store, hash-verified

116 }
117
118 @Override
119 public void processHttpMessage(int toolFlag,boolean messageIsRequest,IHttpRequestResponse messageInfo)
120 {
121 if (toolFlag == (toolFlag&checkEnabledFor())){ //不同的toolflag代表了不同的burp组件 https://portswigger.net/burp/extender/api/constant-values.html#burp.IBurpExtenderCallbacks
122 if (messageIsRequest){ //对请求包进行处理
123 stdout.println("Origin Request:");
124 stdout.println(new String(messageInfo.getRequest()));
125 stdout.println("\r\n");
126 IRequestInfo analyzeRequest = helpers.analyzeRequest(messageInfo); //对消息体进行解析
127 byte getSignParaType = getSignParaType(analyzeRequest);
128
129 //*******************recalculate sign**************************//
130 if (getHost(analyzeRequest).equals(getHostFromUI()) && getSignParaType !=-1){//检查图形面板上的各种参数,都齐备了才进行。
131 byte[] new_Request = messageInfo.getRequest();
132 String str = combineString(getUpdatedParaBaseOnTable(analyzeRequest),getOnlyValueConfig(),getParaConnector());
133 //stdout.println("Combined String:"+str);
134 String newSign = calcSign(str);
135 //stdout.println("New Sign:"+newSign); //输出到extender的UI窗口,可以让使用者有一些判断
136 //更新参数
137 IParameter newPara = helpers.buildParameter(signPara, newSign, getSignParaType); //构造新的参数,如果参数是PARAM_JSON类型,这个方法是不适用的
138 new_Request = helpers.updateParameter(new_Request, newPara); //构造新的请求包,这里是方法一updateParameter
139 messageInfo.setRequest(new_Request);//设置最终新的请求包
140 stdout.println("Changed Request:");
141 stdout.println(new String(messageInfo.getRequest()));
142 stdout.print("\r\n");
143 //to verify the updated result
144// for (IParameter para : helpers.analyzeRequest(messageInfo).getParameters()){
145// stdout.println(para.getValue());
146// }
147
148 }
149 }
150 }
151 }
152
153
154 public void CGUI() {

Callers

nothing calls this directly

Calls 14

checkEnabledForMethod · 0.95
getSignParaTypeMethod · 0.95
getHostMethod · 0.95
getHostFromUIMethod · 0.95
combineStringMethod · 0.95
getOnlyValueConfigMethod · 0.95
getParaConnectorMethod · 0.95
calcSignMethod · 0.95
analyzeRequestMethod · 0.80
buildParameterMethod · 0.80
updateParameterMethod · 0.80

Tested by

no test coverage detected