Multiple vulnerabilities in ZENphoto



Advisory ID: HTB23070
Product: ZENphoto
Vendor: www.zenphoto.org
Vulnerable Version: 1.4.2 and probably prior
Tested Version: 1.4.2
Vendor Notification: 18 January 2012
Vendor Patch: 19 January 2012
Public Disclosure: 8 February 2012
Vulnerability Type: PHP Code Execution, SQL Injection, XSS
Solution Status: Fixed by Vendor
Risk Level: High
Credit: High-Tech Bridge SA Security Research Lab ( https://www.htbridge.ch/advisory/ )

-----------------------------------------------------------------------------------------------

Advisory Details:

High-Tech Bridge SA Security Research Lab has discovered multiple vulnerabilities in ZENphoto, which can be exploited to perform arbitrary PHP code execution, sql injection and cross site scripting attacks.

1) Arbitrary PHP Code Execution in ZENphoto: CVE-2012-0993

Input passed via "viewer_size_image_saved" COOKIE parameter is not properly sanitised before being used in an "eval()" call.
This can be exploited to execute arbitrary PHP code.

The following PoC is available:


GET /[album_name]/[image.jpg].php HTTP/1.1
Cookie: viewer_size_image_saved=phpinfo()


Successful exploitation of this vulnerability requires that "viewer_size_image" plugin is enabled (disabled by default).

2) SQL Injection in ZENphoto: CVE-2012-0994

Input passed via the "sortableList" POST parameter to /zp-core/admin-albumsort.php is not properly sanitised before being used in a SQL query.
This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.


<form action="http://[host]/zp-core/admin-albumsort.php?page=edit&album=1&saved&tab=sort"; method="post">
<input type="hidden" name="XSRFToken" value="[XSRFToken]">
<input type="hidden" name="sortableList" value="id[]=3&id[]=2 OR 1=(select min(@a:=1)from (select 1 union select 2)k group by (select concat(@@version,0x0,@a:=(@a-1)%2)))">
<input type="submit" id="btn">
</form>


Successful exploitation of this vulnerability requires the attacker to be logged-in and have access to "Manage Albums" function.

3) Multiple XSS in ZENphoto: CVE-2012-0995

3.1 Input passed via the "msg" GET parameters to /zp-core/admin.php is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC is available:

http://[host]/zp-core/admin.php?action=external&error&msg=%3Cscript%3Ealert%28document.cookie%29%3C/script%3E

This vulnerability can be used against any logged-in user.

3.2 Input appended to the URL is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC is available:

http://[host]/1/xxx%3Cimg+src=x+onerror=alert%28document.cookie%29%3E/

3.3 Input appended to the URL after /zp-core/admin.php is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC is available:

http://[host]/zp-core/admin.php?a=&quot;&gt;&lt;script&gt;alert%28document.cookie%29&lt;/script&gt;

3.4 Input passed via the "album" GET parameters to /zp-core/admin-edit.php is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC is available:

http://[host]/zp-core/admin-edit.php?page=edit&album=%22%3E%3Cscript%3Ealert%28document.cookie%29%3C/script%3E&uploaded&subpage=1&tab=imageinfo&albumimagesort=id_desc

This vulnerability can be used against any user with "Manage all albums" privilege.

-----------------------------------------------------------------------------------------------

Solution:

Upgrade to Zenphoto 1.4.2.1

More information:
http://www.zenphoto.org/news/zenphoto-1.4.2.1

-----------------------------------------------------------------------------------------------

References:

[1] High-Tech Bridge Advisory HTB23070 - https://www.htbridge.ch/advisory/HTB23070 - Multiple vulnerabilities in ZENphoto.
[2] ZENphoto - http://www.zenphoto.org/ - Zenphoto is a standalone CMS for multimedia focused websites.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.

-----------------------------------------------------------------------------------------------

Disclaimer: The information provided in this Advisory is provided "as is" and without any warranty of any kind. Details of this Advisory may be updated in order to provide as accurate information as possible. The latest version of the Advisory is available on web page [1] in the References.



Relevant Pages

  • Multiple vulnerabilities in osCmax
    ... Vulnerability Type: ... This can be exploited to execute arbitrary HTML and script code in user's browser session in context of affected website. ... The following PoC demonstrates the vulnerability: ... Successful exploitation of this vulnerability requires that "register_globals" is enabled. ...
    (Bugtraq)
  • Multiple vulnerabilities in Traq
    ... Vulnerability ID: HTB23046 ... This can be exploited to execute arbitrary HTML and script code in a administrator browser session in context of affected website. ... The following PoC code is available: ... Successful exploitation of the vulnerabilities requires that "register_globals" is enabled. ...
    (Bugtraq)
  • Multiple vulnerabilities in PHPShop CMS Free
    ... Vulnerability ID: HTB23058 ... This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of an affected site. ... The following PoC code is available: ... Successful exploitation of this vulnerability requires that attacker have access to admin panel. ...
    (Bugtraq)
  • RE: [fw-wiz] Vulnerability Response (was: BGP TCP RST Attacks)
    ... There are a bunch of different vulnerability "classes". ... you know about the exploitation process the less surprising this becomes. ... shouldn't patch _all_ vulnerabilities which are rated by the vendor as ... whoever issued the advisory into giving more details. ...
    (Firewall-Wizards)
  • [Full-disclosure] LutelWall <= 0.97 insecure temporary file creation
    ... The vulnerability is caused due to temporary file being created insecurely. ... The exploitation require that the root try to update the software. ... Vendor notified: 2005-05-22 ...
    (Full-Disclosure)