Applicure DotDefender Persistent XSS
Posted on 28 June 2010
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'><html><head><meta http-equiv='Content-Type' content='text/html; charset=windows-1251'><title>Applicure DotDefender Persistent XSS</title><link rel='shortcut icon' href='/favicon.ico' type='image/x-icon'><link rel='alternate' type='application/rss+xml' title='Inj3ct0r RSS' href='/rss'></head><body><pre>==================================== Applicure DotDefender Persistent XSS ==================================== Affected Versions: version 4.0 Fixed versions: 4.01-3 (and later) Description: Applicure dotDefender is a Web Application Firewall that can be installed on Windows and Linux servers. From their website (applicure.com): "dotDefender is the market-leading software Web Application Firewall (WAF). dotDefender boasts enterprise-class security, advanced integration capabilities, easy maintenance and low total cost of ownership (TCO). dotDefender is the perfect choice for protecting your website and web applications today. " Credits: These vulnerabilities were discovered during WAF testing by Sandro Gauci of EnableSecurity. We contacted AppliCure on May 17, 2010 about this vulnerability. They were already working on a fix. ____________________________________________________________________________ Technical details: The log viewer facility in dotDefender does not properly htmlencode user supplied input. This leads to a cross site scripting vulnerability when the log viewer displays HTTP headers. ____________________________________________________________________________ Demo: One may use curl and insert headers containing html tags using the --header switch. Example: curl "http://website.org/c?a=<script>" --header "<script>alert(1)</script>: aa" When the administrator views the log viewer page, his/her web browser will execute the attacker's javascript. The following demo shows how an attacker can switch off dotDefender in order to bypass any "protection" offered by the WAF: http://vimeo.com/12132622 Timeline: May 17, 2010: Initial contact Jun 01, 2010: Release of this advisory # <a href='http://inj3ct0r.com/'>Inj3ct0r.com</a> [2010-06-28]</pre><script type='text/javascript'>var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));</script><script type='text/javascript'>try{var pageTracker = _gat._getTracker("UA-12725838-1");pageTracker._setDomainName("none");pageTracker._setAllowLinker(true);pageTracker._trackPageview();}catch(err){}</script></body></html>