mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-25 00:11:52 +08:00
test: add probe no magic prefix
This commit is contained in:
@@ -49,6 +49,34 @@ public class ProbeAssertion {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SneakyThrows
|
||||||
|
public static void responseBytecodeWithoutPrefixIsOk(String url, String server, int targetJreVersion) {
|
||||||
|
ProbeConfig probeConfig = ProbeConfig.builder()
|
||||||
|
.probeMethod(ProbeMethod.ResponseBody)
|
||||||
|
.probeContent(ProbeContent.Bytecode)
|
||||||
|
.targetJreVersion(targetJreVersion)
|
||||||
|
.debug(true)
|
||||||
|
.shrink(true)
|
||||||
|
.build();
|
||||||
|
String reqParamName = "payload";
|
||||||
|
ResponseBodyConfig responseBodyConfig = ResponseBodyConfig.builder()
|
||||||
|
.server(server)
|
||||||
|
.reqParamName(reqParamName)
|
||||||
|
.build();
|
||||||
|
ProbeShellResult probeResult = ProbeShellGenerator.generate(probeConfig, responseBodyConfig);
|
||||||
|
RequestBody requestBody = new FormBody.Builder()
|
||||||
|
.add("data", probeResult.getShellBytesBase64Str())
|
||||||
|
.add(reqParamName, DetectionTool.getServerDetection().replace("yv66vgAAAD", ""))
|
||||||
|
.build();
|
||||||
|
Request request = new Request.Builder()
|
||||||
|
.header("Content-Type", "application/x-www-form-urlencoded")
|
||||||
|
.url(url + "/b64").post(requestBody)
|
||||||
|
.build();
|
||||||
|
try (Response response = new OkHttpClient().newCall(request).execute()) {
|
||||||
|
assertEquals(server, response.body().string());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@SneakyThrows
|
@SneakyThrows
|
||||||
public static void responseCommandIsOk(String url, String server, int targetJreVersion) {
|
public static void responseCommandIsOk(String url, String server, int targetJreVersion) {
|
||||||
ProbeConfig probeConfig = ProbeConfig.builder()
|
ProbeConfig probeConfig = ProbeConfig.builder()
|
||||||
|
|||||||
+1
-1
@@ -69,6 +69,6 @@ public class Tomcat8ContainerTest {
|
|||||||
void testBytecodeReqParamResponseBody() {
|
void testBytecodeReqParamResponseBody() {
|
||||||
String url = getUrl(container);
|
String url = getUrl(container);
|
||||||
ProbeAssertion.responseBytecodeIsOk(url, Server.Tomcat, Opcodes.V1_8);
|
ProbeAssertion.responseBytecodeIsOk(url, Server.Tomcat, Opcodes.V1_8);
|
||||||
|
ProbeAssertion.responseBytecodeWithoutPrefixIsOk(url, Server.Tomcat, Opcodes.V1_8);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user