(IHttpService httpService, byte[] request)
| 14 | private final HashMap<String, HashMap<String, String>> cookies = new HashMap<>(); |
| 15 | |
| 16 | public static byte[] getRequest(IHttpService httpService, byte[] request) { |
| 17 | IExtensionHelpers helpers = BurpExtender.getHelpers(); |
| 18 | |
| 19 | byte[] newRequest; |
| 20 | |
| 21 | IRequestInfo requestInfo = helpers.analyzeRequest(httpService, request); |
| 22 | List<String> headers = requestInfo.getHeaders(); |
| 23 | List<String> newHeaders = new ArrayList<>(); |
| 24 | |
| 25 | newHeaders.add(headers.get(0)); |
| 26 | newHeaders.addAll(headers.subList(1, headers.size()).stream().filter( |
| 27 | header -> !"cookie".equalsIgnoreCase(header.split(":", 2)[0]) |
| 28 | ).collect(Collectors.toList())); // 删掉 Cookie |
| 29 | |
| 30 | if (BurpExtender.getConfigPanel().getIncludeCookie()) { |
| 31 | String cookieHeader = BurpExtender.getCookieManager().getCookieHeader(requestInfo.getUrl()); |
| 32 | if (cookieHeader != null) { |
| 33 | newHeaders.add(cookieHeader); |
| 34 | } |
| 35 | |
| 36 | newRequest = helpers.buildHttpMessage(newHeaders, CommonUtils.getHttpRequestBody(request)); |
| 37 | } else { |
| 38 | newRequest = helpers.buildHttpMessage(newHeaders, CommonUtils.getHttpRequestBody(request)); |
| 39 | } |
| 40 | return newRequest; |
| 41 | } |
| 42 | |
| 43 | public static IHttpRequestResponse makeHttpRequest(IHttpService httpService, byte[] request) { |
| 44 | byte[] newRequest = CookieManager.getRequest(httpService, request); |
no test coverage detected