Author: lukaszlenart
Date: Wed Mar  2 21:01:01 2011
New Revision: 1076372

URL: http://svn.apache.org/viewvc?rev=1076372&view=rev
Log:
Solves WW-3579 - escapes actionName and methodName to prevent XSS vulnerability

Modified:
    
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java

Modified: 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java?rev=1076372&r1=1076371&r2=1076372&view=diff
==============================================================================
--- 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java
 (original)
+++ 
struts/struts2/trunk/xwork-core/src/main/java/com/opensymphony/xwork2/DefaultActionProxy.java
 Wed Mar  2 21:01:01 2011
@@ -23,12 +23,12 @@ import com.opensymphony.xwork2.util.Loca
 import com.opensymphony.xwork2.util.logging.Logger;
 import com.opensymphony.xwork2.util.logging.LoggerFactory;
 import com.opensymphony.xwork2.util.profiling.UtilTimerStack;
+import org.apache.commons.lang.StringEscapeUtils;
+import org.apache.commons.lang.StringUtils;
 
 import java.io.Serializable;
 import java.util.Locale;
 
-import org.apache.commons.lang.StringUtils;
-
 
 /**
  * The Default ActionProxy implementation
@@ -74,10 +74,10 @@ public class DefaultActionProxy implemen
                        LOG.debug("Creating an DefaultActionProxy for namespace 
" + namespace + " and action name " + actionName);
                }
 
-               this.actionName = actionName;
-               this.namespace = namespace;
-               this.executeResult = executeResult;
-        this.method = methodName;
+        this.actionName = StringEscapeUtils.escapeHtml(actionName);
+        this.namespace = namespace;
+        this.executeResult = executeResult;
+        this.method = 
StringEscapeUtils.escapeJavaScript(StringEscapeUtils.escapeHtml(methodName));
     }
     
     @Inject


Reply via email to