"BSQ Sitestats is a site stats module that is lightweight on the front end but offers both tabular and graphical summaries of site visitors' sessions on the backend". Secunia Research has discovered some vulnerabilities in the BSQ Sitestats component for Joomla, which can be exploited by malicious people to conduct cross-site scripting and SQL injection attacks, and to compromise a vulnerable system.
Vulnerable Systems:
* BSQ Sitestats (component for Joomla) version 1.x
Immune Systems:
* BSQ Sitestats (component for Joomla) version 2.2.1
The following vulnerabilities have been discovered in BSQ Sitestats:
1) Input passed to the "ip" form field parameter when performing an IP Address Lookup is not properly sanitized before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a logged in administrator's browser session in context of an affected site.
2) Input passed to multiple parameters when importing the ip-to-country.csv file is not properly sanitized before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code when an administrator is tricked into importing a malicious ip-to-country.csv file.
3) Input passed via the "HTTP Referer", the "HTTP User Agent", and the "HTTP Accept Language" Header bsqtemplateinc.php is not properly sanitised before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
Successful exploitation requires that "magic_quotes_gpc" is disabled.
4) Input passed to the "baseDir" parameter in components/com_bsq_sitestats/external/rssfeeds.php is not properly verified before being used to include files. This can be exploited to execute arbitrary PHP code by including files from local or external resources.
Successful exploitation requires that "register_globals" is enabled.
The vulnerabilities have been confirmed in version 1.8.0. Other versions may also be affected.
Solution:
The vulnerabilities have been fixed in version 2.2.1.
Time Table:
14/09/2006 - Vendor notified.
14/09/2006 - Vendor response.
17/09/2006 - Vendor releases fixed version 2.2.1.
29/09/2006 - Public disclosure.