Apache Struts Multiple Security Bypass and Cross Site Scripting Vulnerabilities


Description   Multiple vulnerabilities have been identified in Apache Struts, which may be exploited by attackers to bypass security restrictions, execute arbitrary scripting code, or cause a denial of service.
The first issue is due to an error when handling a request with a "org.apache.struts.taglib.html.Constants.CANCEL" parameter, which could be exploited by attackers to cause the action to be canceled without being detected from applications that do not use the "isCancelled" check.
The second flaw is due to an error in BeanUtils that does not properly handle a "multipart/form-data" encoded form with a parameter name that references the public "getMultipartRequestHandler()" method, which could be exploited by attackers to cause a denial of service or gain access to elements in the "CommonsMultipartRequestHandler" implementation and BeanUtils.
The third vulnerability is due to input validation errors in "LookupDispatchAction" when handling a parameter name that does not correspond to an entry in the "lookupMap", which could be exploited by attackers to cause arbitrary scripting code to be executed by the user's browser in the security context of an affected Web site.
     
Vulnerable Products   Vulnerable Software:
Apache Struts versions prior to 1.2.9
     
Solution   Upgrade to Apache Struts version 1.2.9 : http://struts.apache.org/
     
CVE   CVE-2006-1548
CVE-2006-1547
CVE-2006-1546
     
References   http://struts.apache.org/struts-doc-1.2.9/userGuide/release-notes.html
http://issues.apache.org/bugzilla/show_bug.cgi?id=38374
http://issues.apache.org/bugzilla/show_bug.cgi?id=38534
http://issues.apache.org/bugzilla/show_bug.cgi?id=38749
     
Vulnerability Manager Detection   No
     
IPS Protection  
ASQ Engine alarm Available Since
XSS - Prevention - GET : suspicious 'iframe' tag found in URL
3.2.0
XSS - Prevention - POST : suspicious tag with event found in data
3.2.0
XSS - Prevention - GET : suspicious tag with event found in URL
3.2.0
XSS - Prevention - GET : javascript code in flash clickTAG parameter
3.2.0
XSS - Prevention - POST : suspicious 'object' tag found in data
3.2.0
XSS - Prevention - GET : suspicious 'applet' tag found in URL
3.2.0
XSS - Prevention - POST : suspicious 'applet' tag found in data
3.2.0
XSS - Prevention - POST : 'location' javascript object found in data
3.2.0
XSS - Phishing : suspicious 'div' tag found in URL
3.2.0
XSS - Prevention - GET : suspicious 'style' attribute found in URL
3.2.0
XSS - Prevention - POST : javascript code found in data
3.2.0
XSS - Prevention - POST : suspicious 'iframe' tag found in data
3.2.0
XSS - Prevention - POST : code allowing cookie access found in data
3.2.0
XSS - Phishing : suspicious 'a' tag found in URL
3.2.0
XSS - Prevention - GET : cookie access attempt using script language found in URL
3.2.0
XSS - Prevention - GET : suspicious 'embed' tag found in URL
3.2.0
XSS - Prevention - GET : suspicious 'object' tag found in URL
3.2.0
XSS - Phishing : suspicious 'form' tag found in URL
3.2.0
XSS - Prevention - POST : suspicious 'embed' tag found in data
3.2.0
XSS - Prevention - POST : suspicious 'style' tag found in data
3.2.0
XSS - Prevention - GET : javascript code found in URL
3.2.0
XSS - Prevention - GET : 'script' tag in flash clickTAG parameter
3.2.0
XSS - Prevention - POST : suspicious 'div' tag found in data
3.2.0
XSS - Prevention - GET : evasion attempt using tag characters encoding in URL
3.2.0
XSS - Prevention - GET : suspicious 'style' tag found in URL
3.2.0
XSS - Phishing : suspicious 'link' tag found in URL
3.2.0
XSS - Prevention - GET : 'script' tag found in URL
3.2.0
XSS - Prevention - POST : 'script' tag found in data
3.2.0
XSS - Prevention - POST : suspicious 'style' attribute found in data
3.2.0
XSS - Prevention - GET : 'location' javascript object found in URL
3.2.0
XSS - Prevention - GET : suspicious 'div' tag found in URL
3.2.0
     


 
 
 
 
 Risk level 
Moderate 

 Vulnerability First Public Report Date 
2006-04-03 

 Target Type 
Server 

 Possible exploit 
Local & Remote