A proof-of-concept tool for generating payloads that exploit unsafe Java object deserialization.
mvn package -DskipTests 出错了
...
[INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ ysoserial ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 59 source files to /root/ysoserial/target/classes
[WARNING] Unable to autodetect 'javac' path, using 'javac' from the environment.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.846 s
[INFO] Finished at: 2019-10-30T02:03:39-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project ysoserial: Compilation failure -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
Hi guys, I would like to ask some questions. In some clients, I always find flaws in the Java deserialization, but sometimes the environment is very restricted, the client has no DNS, ICMP, HTTP output. What I like to do to explore not so restricted environments is to send a list of payloads [1], with the command nslookup or ping to my domain. In some cases, it works very well. But recently I found two cases in particular:
1º When sending the list of loads to the destination, he returned only the GadgetChain (JRMPClient), how could he have obtained RCE?
2º In this case, it is more restricted, I sent all the payloads and returned absolutely nothing, as the client had no output for ICMP, DNS, HTTP. how can i explore this second case?
[1] I use the script shown in Petre's article(https://securitycafe.ro/2017/11/03/tricking-java-serialization-for-a-treat/)
Hi there everyone, Is there anyone that could help me? I'm working on a Java deserialization PoC. So far, I was able to receive DNS queries from the vulnerable app using the URLDNS gadget. The problem is that I could not find any other useful gadget in order to show more impact. You know...a simple DNS query is not the best thing.
How do you think I should follow up this? I tried to enumerate classes and I found the following ones:
com.fasterxml.jackson.core.Base64Variant
com.google.gson.JsonDeserializer
org.apache.commons.lang.ArrayUtils
org.apache.commons.logging.impl.AvalonLogger
org.apache.commons.logging.impl.NoOpLog
org.apache.log4j.Appender
org.json.CDL
com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl
com.sun.rowset.JdbcRowSetImpl
java.util.logging.FileHandler
java.rmi.server.UnicastRemoteObject
org.apache.tomcat.dbcp.dbcp2.BasicDataSource
com.sun.org.apache.bcel.internal.util.ClassLoader
I tried the most common payloads but I'm not able to run commands other than the URLDNS.
Any suggestion?
It's a JSF web app in which the javax.faces.viewState is base64(gzip) encoded.
ysoserial
is for java apps)
FYI I enabled the discussions feature in the ysoserial github repo so I'd suggest we move most of this dialogue there for better visibility