English
The Internet threat alert status is currently normal. At present, no major epidemics or other serious incidents have been recorded by Kaspersky Lab’s monitoring service. Internet threat level: 1

PHP Volunteer Management Multiple Vulnerabilities


Secunia ID

SA48988

CVE-ID

CVE-2012-6505, CVE-2012-6504

Release Date

27 Apr 2012

Last Change

29 Jan 2013

Criticality

Moderately Critical

Solution Status

Unpatched

Software

PHP Volunteer Management 1.x

Where

From remote

Impact
System access

This covers vulnerabilities where malicious people are able to gain system access and execute arbitrary code with the privileges of a local user.

Cross-Site Scripting

Cross-Site Scripting vulnerabilities allow a third party to manipulate the content or behaviour of a web application in a user's browser, without compromising the underlying system.

Different Cross-Site Scripting related vulnerabilities are also classified under this category, including "script insertion" and "cross-site request forgery".

Cross-Site Scripting vulnerabilities are often used against specific users of a website to steal their credentials or to conduct spoofing attacks.

Manipulation of data

This includes vulnerabilities where a user or a remote attacker can manipulate local data on a system, but not necessarily be able to gain escalated privileges or system access.

The most frequent type of vulnerabilities with this impact are SQL-injection vulnerabilities, where a malicious user or person can manipulate SQL queries.

Description

Multiple vulnerabilities have been discovered in PHP Volunteer Management, which can be exploited by malicious users to conduct SQL injection attacks and compromise a vulnerable system and by malicious people to conduct cross-site scripting and SQL injection attacks.

1) Input passed to the "id" parameter in mods/hours/data/get_hours.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 an affected site.

2) Input passed via the "id" parameter to mods/hours/data/get_hours.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.

3) Input passed via the "id" parameter to mods/messages/data/get_messages.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.

4) An error exists due to the mods/documents/upload_personal_document.php and mods/documents/upload_shared_document.php scripts not verifying uploaded files. This can be exploited to execute arbitrary PHP code by uploading a malicious PHP script.

5) Input passed via the "p" parameter to index.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.

6) Input passed via the "id" parameter to index.php (when "p" is set to "read_message") is not properly sanitised before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.

Successful exploitation of this vulnerability requires "volunteer" privileges.

The vulnerabilities are confirmed in version 1.0.2. Other versions may also be affected.

Solution

Edit the source code to ensure that input is properly sanitised and verified.

Reported by

1, 2) G13
3) eidelweiss
4) Ash00
5, 6) loneferret

Original Advisory

G13:
http://archives.neohapsis.com/archives/bugtraq/2012-04/0206.html

eidelweiss:
http://www.securityfocus.com/archive/1/522522/30/0/threaded

Ash00:
http://www.exploit-db.com/exploits/18941/

loneferret:
http://www.exploit-db.com/exploits/18944/