返回请求头的第一行即【GET /xxx/xxx HTTP/1.1】这种 函数主要就是接收原来的请求头,然后切割第一行的数据,加工拼接上相关的payload @param iHttpRequestResponse @return
(IHttpRequestResponse iHttpRequestResponse)
| 160 | * @return |
| 161 | */ |
| 162 | public List<String> bulidUrl(IHttpRequestResponse iHttpRequestResponse) { |
| 163 | try { |
| 164 | String url = String.valueOf(helpers.analyzeRequest(iHttpRequestResponse).getUrl()); |
| 165 | if (url.contains(".js") || url.contains(".png") || url.contains(".jpg") || url.contains(".css") || url.contains(".woff") || url.contains(".ico")) { |
| 166 | return null; |
| 167 | } |
| 168 | String index = (String) ui.scanIndexBox.getSelectedItem(); |
| 169 | List<String > childrenPaths = getUrlChildren(url, Integer.valueOf(index)); |
| 170 | List<String > result = new ArrayList<>(); |
| 171 | |
| 172 | for (int i = 0; i<childrenPaths.size(); i++) { |
| 173 | for (String payload : pathTableMode.getPathData()) { |
| 174 | result.add(i, childrenPaths.get(i) + payload + " HTTP/1.1"); |
| 175 | } |
| 176 | } |
| 177 | return result; |
| 178 | } catch (Exception e) { |
| 179 | stdout.println(e); |
| 180 | return null; |
| 181 | } |
| 182 | } |
| 183 | |
| 184 | /** |
| 185 | * 判断此次请求是否符合结果 |
no test coverage detected