| Summary: | [Webapp][Security] Cross site scripting vulnerabilities in confirm.jsp and deferredView.jsp | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Bill Pugh <pugh> | ||||
| Component: | User Assistance | Assignee: | platform-ua-inbox <platform-ua-inbox> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P2 | CC: | benysh, bokowski, cgold, jzhenbo, kleind, maguirem, zhouyiy | ||||
| Version: | 3.4 | ||||||
| Target Milestone: | 3.4 M7 | ||||||
| Hardware: | PC | ||||||
| OS: | Mac OS X - Carbon (unsup.) | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Bill Pugh
Created attachment 93307 [details]
Patch
I agree that request parameters need to be handled carefully. I can't see any way to exploit either of these two files in their current form but this seems to be more by accident than by design. I have reviewed all of the calls to getParameter() in the jsp files and cleaned up the code in a few places to prevent any possibility of arbitary strings being inserted into the jsps via rogue parameters.
Fixed in HEAD. Thanks for alerting us to this. I had to back out part of the fix because UrlUtil.JavaScriptEncode was over escaping the characters. This was not a problem on Firefox but on IE it caused a script error in the show all topics confirm dialog which prevented the OK and cancel buttons from working. I have fixed this by recoding confirmShowAll.jsp to include confirm.jsp and remove the unused jsp file askShowAll.jsp so that parameters do not need to be passed around. Hi Chris, can you paste the patch again? I'm preparing a fix for 3.0.1 and need your help. Thanks. It's been a while since I looked at this but based on the comments it looks as though I submitted a patch but then had to make an additional change due to a problem with that patch. Creating an updated patch is not so easy at this stage - here is what I think you need to do to fix 3.0.1. Apply the fix to deferredView.jsp contained in the patch. Copy confirmShowAll.jsp to your 3.0.1 workspace. Delete confirm.jsp from your workspace. Check that the show all command still works correctly. |