mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-22 23:11:52 +08:00
refactor: remove codec dependency
This commit is contained in:
@@ -49,7 +49,7 @@ class GeneratorMainTest {
|
||||
if (generateResult != null) {
|
||||
Files.write(Paths.get(generateResult.getInjectorClassName() + ".class"), generateResult.getInjectorBytes(), StandardOpenOption.CREATE_NEW);
|
||||
Files.write(Paths.get(generateResult.getShellClassName() + ".class"), generateResult.getShellBytes(), StandardOpenOption.CREATE_NEW);
|
||||
// System.out.println(Base64.encodeBase64String(generateResult.getInjectorBytes()));
|
||||
// System.out.println(Base64.getEncoder().encodeToString(generateResult.getInjectorBytes()));
|
||||
// System.out.println(Packers.ScriptEngine.getInstance().pack(generateResult));
|
||||
// Files.write(Path.of("target.jar"), Packer.INSTANCE.AgentJar.getPacker().packBytes(generateResult));
|
||||
}
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@ import com.reajason.javaweb.memshell.utils.CommonUtil;
|
||||
import lombok.SneakyThrows;
|
||||
import net.bytebuddy.ByteBuddy;
|
||||
import net.bytebuddy.jar.asm.ClassReader;
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
import java.util.Base64;;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
@@ -24,7 +24,7 @@ class CustomShellGeneratorTest {
|
||||
.subclass(Object.class)
|
||||
.name(CommonUtil.generateShellClassName()).make().getBytes();
|
||||
String className = CommonUtil.generateShellClassName();
|
||||
byte[] bytes1 = new CustomShellGenerator(ShellConfig.builder().build(), CustomConfig.builder().shellClassName(className).shellClassBase64(Base64.encodeBase64String(bytes)).build()).getBytes();
|
||||
byte[] bytes1 = new CustomShellGenerator(ShellConfig.builder().build(), CustomConfig.builder().shellClassName(className).shellClassBase64(Base64.getEncoder().encodeToString(bytes)).build()).getBytes();
|
||||
|
||||
ClassReader classReader = new ClassReader(bytes1);
|
||||
assertEquals(className, classReader.getClassName().replace("/", "."));
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -4,7 +4,7 @@ import com.reajason.javaweb.memshell.config.GenerateResult;
|
||||
import com.reajason.javaweb.memshell.packer.base64.GzipBase64Packer;
|
||||
import com.reajason.javaweb.memshell.utils.CommonUtil;
|
||||
import lombok.SneakyThrows;
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
import java.util.Base64;;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
@@ -21,6 +21,6 @@ class GzipBase64Test {
|
||||
GenerateResult generateResult = new GenerateResult();
|
||||
generateResult.setInjectorBytes("hello world".getBytes());
|
||||
String pack = new GzipBase64Packer().pack(generateResult);
|
||||
assertEquals("hello world", new String(CommonUtil.gzipDecompress(Base64.decodeBase64(pack))));
|
||||
assertEquals("hello world", new String(CommonUtil.gzipDecompress(Base64.getDecoder().decode(pack))));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user