Joomla Virtuemart 2.0.22a SQL Injection

2013-08-23T00:00:00
ID PACKETSTORM:122925
Type packetstorm
Reporter Matias Fontanini
Modified 2013-08-23T00:00:00

Description

                                        
                                            `------------------------------------------------------------  
Joomla! VirtueMart component <= 2.0.22a - SQL Injection  
------------------------------------------------------------  
  
== Description ==  
- Software link: http://www.virtuemart.net/  
- Affected versions: All versions between 2.0.8 and 2.0.22a are vulnerable.  
- Vulnerability discovered by: Matias Fontanini  
  
== Vulnerability ==  
The vulnerability is located in the "user" controller, "removeAddressST"   
task. The "virtuemart_userinfo_id" parameter is not properly sanitized   
before being used in the "DELETE" query performed in it, allowing the   
execution of arbitrary SQL queries.  
  
In order to exploit the vulnerability, an attacker must be authenticated   
as a customer in the application. However, since the system allows free   
account registration, this is not a problem.  
  
== Proof of concept ==  
The following example URL uses the MySQL "sleep" function through the   
injection:  
  
http://example.com/index.php?option=com_virtuemart&view=user&task=removeAddressST&virtuemart_userinfo_id=16%22%20and%20sleep(10)%20and%20%22%22%3D%22  
  
== Solution ==  
Upgrade the product to the 2.0.22b version.  
  
== Report timeline ==  
[2013-08-15] Vulnerability reported to vendor.  
[2013-08-16] Developers answered back.  
[2013-08-22] VirtueMart 2.0.22b was released, which fixes the the   
reported issue.  
[2013-08-22] Public disclosure.  
`