[ 
https://issues.apache.org/jira/browse/WW-4507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15217656#comment-15217656
 ] 

Rene Gielen commented on WW-4507:
---------------------------------

[~taromaru] I'm not sure if my analysis above is completely wrong. However, 
this is an interesting finding and I see your point.

Historically we had many issues with solely relying on "standard" encoding 
querying functions like response.getCharacterEncoding(). That's why the 
struts.i18n.encoding property was introduced (originally even in webwork). With 
its help we force a user configurable encoding.

Users are responsible for configuring consistent encoding, that is having page 
encoding match their Struts 2 setup. The best solution to your point is IMO to 
use consistent encoding both in page encoding, connector setup and 
struts.i18n.encoding. Besides that, we recommend to use UTF-8 only. See also 
https://struts.apache.org/docs/s2-028.html

This particular issue WW-4507 deals with a platform problem. After talking to 
the Tomcat guys, we agreed to add additional safety by using their encoding 
logic where applies to framework calls. But we also said: this is a platform 
issue, please move to a supported JRE. There is a reason why the old decoding 
rule was ditched, so we can only encourage our users to move to a modern and 
less buggy environment. 

If you feel like the Include component should use response.getCharacterEncoding 
rather than struts.i18n.encoding, you are invited to open a new issue to let us 
discuss this, along with possible implications.

> Struts 2 XSS vulnerability with <s:textfield>
> ---------------------------------------------
>
>                 Key: WW-4507
>                 URL: https://issues.apache.org/jira/browse/WW-4507
>             Project: Struts 2
>          Issue Type: Bug
>    Affects Versions: 2.3.16.3
>         Environment: Operating System:  Windows 7.  Application Server:  
> JBoss-4.2.1.GA.  Java: jdk1.5.0.11.  Developloment Framework:  Struts 
> 2.3.16.3.  Browser:  FireFox 38.0.1
>            Reporter: brian neisen
>            Assignee: Rene Gielen
>              Labels: struts2, vulnerability, xss
>             Fix For: 2.3.28, 2.5
>
>
> WhiteHat Security (whitehatsec.com) has found an xss vulnerability with the 
> <s:textfield> tag.   When loading a url in a browser with some param name, in 
> this case "myinput", and the jsp being loaded has the tag <s:textfield 
> name="myinput" id="myinput"></s:textfield>, an alert message is popped open 
> in the browser- which is WhiteHat's method of showing the vulnerability.  
> Example url is: 
> [http://localhost:8080/sample.action?myinput=%fc%80%80%80%80%a2%fc%80%80%80%80%bE%FC%80%80%80%80%BC%FC%80%80%80%81%B7%FC%80%80%80%81%A8%FC%80%80%80%81%B3%FC%80%80%80%81%A3%FC%80%80%80%81%A8%FC%80%80%80%81%A5%FC%80%80%80%81%A3%FC%80%80%80%81%AB%FC%80%80%80%80%BE%fc%80%80%80%80%bCscript%fc%80%80%80%80%bEalert%fc%80%80%80%80%a81%fc%80%80%80%80%a9%fc%80%80%80%80%bC%fc%80%80%80%80%aFscript%fc%80%80%80%80%bE]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to