Lucene search

HistorySep 09, 2013 - 12:00 a.m.

Joomla! VirtueMart component <= 2.0.22a - SQL Injection


Joomla! VirtueMart component <= 2.0.22a - SQL Injection

== Description ==

  • Software link:
  • 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:;view=user&amp;task=removeAddressST&amp;virtuemart_userinfo_id=16&#37;22&#37;20and&#37;20sleep&#40;10&#41;&#37;20and&#37;20&#37;22&#37;22&#37;3D&#37;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.