Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

[R2] Sophos Web Protection Appliance ftp_redirect.php s Parameter Reflected XSS

Medium

Synopsis

While investigating and authoring a plugin for a recently disclosed open redirect weakness (NSWA-989) in Sophos Web Application that was recently patched in version 4.3.0, Tenable discovered that the same script and parameter could be used for a reflected cross-site scripting attack. The offending code can be found in ftp_redirect.php.

The disclosed open redirect is exercised by controlling the $_GET[‘s’] used to create $myself. $myself is then assigned to window.location.href which will trigger the redirect. However, the $_GET[‘s’] can also be used to trigger a reflected XSS. Unfortunately, PHP on the Sophos Web Application server is configured to escape all quotes in $_GET[‘s’]. In theory, this limits the JavaScript that we can use to carry out such an XSS attack. For example, alert(“<3”); becomes alert(\”<3\”); and would fail to execute. In reality, escaping quotes via PHP is a waste of time and it can be bypassed without much effort. We crafted a PoC that will pop up the ASCII heart for Sophos when reporting it. <3

Solution

Sophos has already released Web Protection Appliance 4.3.0 which also fixed this issue, but the XSS was not disclosed.

Sophos reintroduced the vulnerability in 4.3.1.2 and a patch was released in 4.3.2.

Disclosure Timeline

2016-10-17 - Sophos Web Protection Appliance 4.3.0 released
2016-11-08 - Issue discovered
2016-11-10 - Issue reported to Sophos via [email protected]
2016-12-11 - Pinged vendor to confirm they received report
2016-12-12 - Vendor confirms receipt, confirms fixed in 4.3.0.0 as part of NSWA-989
2016-12-12 - Tenable says we will try to confirm (eval copy updates were not working for us previously)
2017-01-09 - Tenable confirms 4.3.0.2 not vulnerable, so 4.3.0.0 fix as vendor notes is correct
2017-05-04 - Tenable notices a regression in 4.3.1.2
2017-05-08 - Issue reported to vendor via [email protected]
2017-05-08 - Vendor acks report
2017-06-05 - Vendor publishes fix in 4.3.2

All information within TRA advisories is provided “as is”, without warranty of any kind, including the implied warranties of merchantability and fitness for a particular purpose, and with no guarantee of completeness, accuracy, or timeliness. Individuals and organizations are responsible for assessing the impact of any actual or potential security vulnerability.

Tenable takes product security very seriously. If you believe you have found a vulnerability in one of our products, we ask that you please work with us to quickly resolve it in order to protect customers. Tenable believes in responding quickly to such reports, maintaining communication with researchers, and providing a solution in short order.

For more details on submitting vulnerability information, please see our Vulnerability Reporting Guidelines page.

If you have questions or corrections about this advisory, please email [email protected]

Try for Free Buy Now

Try Tenable.io Vulnerability Management

FREE FOR 60 DAYS

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Sign up now and run your first scan within 60 seconds.

Buy Tenable.io Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

65 assets

Try Nessus Professional Free

FREE FOR 7 DAYS

Nessus® is the most comprehensive vulnerability scanner on the market today. Nessus Professional will help automate the vulnerability scanning process, save time in your compliance cycles and allow you to engage your IT team.