Cam Morris created WW-3873:
------------------------------

             Summary: file tag leaks server path information
                 Key: WW-3873
                 URL: https://issues.apache.org/jira/browse/WW-3873
             Project: Struts 2
          Issue Type: Bug
    Affects Versions: 2.3.4.1, 2.3.4
         Environment: Linux, weblogic 10-12, tomcat 7
            Reporter: Cam Morris
            Priority: Minor


After a fileupload action, if the result jsp contains a <s:file> tag the value 
attribute is filled in with the server path where the file was saved.  This 
discloses file system information about the server.

To duplicate: 
1) setup the struts2_showcase sample app
2) change struts-fileupload.xml from this
{code}
        <action name="doUpload" 
class="org.apache.struts2.showcase.fileupload.FileUploadAction" method="upload">
                <result name="input">upload.jsp</result>
                        <result>upload-success.jsp</result>
                </action>
{code}
 to this
{code}
        <action name="doUpload" 
class="org.apache.struts2.showcase.fileupload.FileUploadAction" method="upload">
                <result name="input">upload.jsp</result>
                        <result>upload.jsp</result>
                </action>
{code}

3. Deploy & Upload file using the url struts2-showcase/fileupload/upload.action
4. View source, in the input tag generated by the s:file tag you'll see the 
full path to the file that was uploaded.
{code}
<input type="file" name="upload" 
value="/home/cmorris/Workspace/struts2-examples/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/work/Catalina/localhost/struts2-showcase/upload__1bd5a0ad_13997105f96__8000_00000002.tmp"
 id="doUpload_upload"/>
{code}
                
Workaround:
A workaround is simple, just add an empty value attribute to the file tag:
{code}
<s:file name="upload" label="File" value=""/>
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to