Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.7.1
-
Component/s: Framework
-
Labels:None
-
Environment:All
-
Support Case References:
Description
AppScan identified a "Link Injection" vulnerability that is related to the ICEfaces code library. The detail is provided below :
[2 of 53] Link Injection (facilitates Cross-Site Request Forgery)
Severity: Medium
Test Type: Application
Vulnerable URL: http://edsdev.blueweb.bcbsma.com:81/dmreg/block/send-receive-updates
(Parameter = ice.focus)
Remediation Tasks: Filter out hazardous characters from user input
Variant 1 of 132 [ID=15343]
The following changes were applied to the original request:
? Set parameter 'ice.focus's value to '%22%27%3E%3CIMG+SRC%3D%22%
2FWF_XSRF.html%22%3E'
Validation In Response:
? Fix.start('mainForm:
_id35:0:historyPopup','/dmreg/xmlhttp/blank');Ice.Focus.setFocus('"'><IMG
SRC="/WF_XSRF.html">');//-269488648]]></content></update></updates>
Reasoning:
The test response contained a link to the file "WF_XSRF.html, which proves that the Cross-Site
Request Forgery attempt was successful
[2 of 53] Link Injection (facilitates Cross-Site Request Forgery)
Severity: Medium
Test Type: Application
Vulnerable URL: http://edsdev.blueweb.bcbsma.com:81/dmreg/block/send-receive-updates
(Parameter = ice.focus)
Remediation Tasks: Filter out hazardous characters from user input
Variant 1 of 132 [ID=15343]
The following changes were applied to the original request:
? Set parameter 'ice.focus's value to '%22%27%3E%3CIMG+SRC%3D%22%
2FWF_XSRF.html%22%3E'
Validation In Response:
? Fix.start('mainForm:
_id35:0:historyPopup','/dmreg/xmlhttp/blank');Ice.Focus.setFocus('"'><IMG
SRC="/WF_XSRF.html">');//-269488648]]></content></update></updates>
Reasoning:
The test response contained a link to the file "WF_XSRF.html, which proves that the Cross-Site
Request Forgery attempt was successful
The value of ice.focus is written back to the page, but when it contains quote characters, such as
"'><IMG SRC="% 2FWF_XSRF.html">
the hidden input field is abnormally terminated and arbitrary HTML can be written to the page.
ICEfaces uses double cookie submission, so it is likely that the Cross-Site Request Forgery aspect of this attack is not possible. However, it should also not be possible to corrupt the page, so the rendering of ice.focus should be either filtered (for JSF component id syntax) or escaped.
Similar hidden fields should be investigated.