====================================================================== Secunia Research 30/03/2011 - RunCMS Multiple SQL Injection Vulnerabilities - ====================================================================== Table of Contents Affected Software...................................................1 Severity............................................................2 Vendor's Description of Software....................................3 Description of Vulnerability........................................4 Solution............................................................5 Time Table..........................................................6 Credits.............................................................7 References..........................................................8 About Secunia.......................................................9 Verification.......................................................10 ====================================================================== 1) Affected Software * RunCMS version 2.2.2 NOTE: Other versions may also be affected. ====================================================================== 2) Severity Rating: Less Critical Impact: Manipulation of data Where: From remote ====================================================================== 3) Vendor's Description of Software "Reliable - Unique - Nocost" Product Link: http://www.runcms.org/ ====================================================================== 4) Description of Vulnerability Secunia Research has discovered multiple vulnerabilities in RunCMS, which can be exploited by malicious users to conduct SQL injection attacks. 1) Input passed via the "topic_id" parameter to modules/forum/post.php (when "forum", "pid", and "is_reply" are set) is not properly sanitised before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Sucessful exploitation of this vulnerability reqires that the "Forum" module is enabled and "Can Reply" permissions. 2) Input passed via the "forum" parameter to modules/forum/search.php (when "term" and "addtemrms" are set) is not properly sanitised before being used in SQL queries. This can be exploited to maipulate SQL queries by injecting arbitrary SQL code. 3) Input passed via the "forum" parameter to modules/forum/post.php (when "message" and "post_id" are set) is not properly sanitised in the "is_moderator()" function in modules/forum/functions.php before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Sucessful exploitation of this vulnerability requires permissions to post in a forum. 4) Input passed e.g. via the "FORumLastVisit" cookie parameter to modules/forum/index.php is not properly sanitised in the "getNewTopics()" function in modules/forum/class/class.forumtable.php before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. 5) Input passed via the "sort" and "by" parameters to e.g. modules/pm/index.php and modules/pm/pmsend.php is not properly sanitised in the "getAllPM()" function in modules/pm/class/pm.class.php before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Sucessful exploitation of this vulnerability requires "Module Access" rights for "Private Pm". 6) Input passed via the "bid" parameter to modules/banners/index.php (when "op" is set to "click") 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 of this vulnerability requires that the "Banners" module is enabled and requires permissions to access the module. 7) Input passed via the "bid" and "cid" parameters to modules/banners/index.php (when "op" is set to "EmailStats" or "Change") 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 of this vulnerability requires that the "Banners" module is enabled and requires permissions to access the module. 8) Input passed via the "url" parameter to modules/banners/index.php (when "op" is set to "Change" and "bid" and "cid" are set) 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 of this vulnerability requires that the "Banners" module is enabled, requires permissions to access the module, and requires that "magic_quotes_gpc" is disabled. 9) Input passed via the "orderby" parameter to modules/links/viewcat.php (when the "cid" parameter is set) 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 of this vulnerability requires "Module Access" rights for "Links" module. 10) Input passed e.g. via the "key" parameter to modules/galleri/carte.php (when the "op" is set to "actv") is not properly sanitised in the "countAllMail()" function in modules/galleri/class/gall_mail.php before being used SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Successful exploitation of this vulnerability requires "Module Access" rights for "Galleri" module. 11) Input passed via e.g. the "orderby" parameter to modules/galleri/index.php (when "op" is set to "top_ten") is not properly sanitised in the "getAllImg()" in modules/galleri/class/ gall_img.php before being used in SQL queries. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code. Successful exploitation of this vulnerability requires that the Galleri module is enabled and permissions to access the module. ====================================================================== 5) Solution A fix is not currently available. ====================================================================== 6) Time Table 15/03/2011 - Vendor notified. 24/03/2011 - Vendor notified (2nd attempt). 30/03/2011 - Public disclosure. ====================================================================== 7) Credits Discovered by Secunia Research. ====================================================================== 8) References The Common Vulnerabilities and Exposures (CVE) project has not currently assigned a CVE identifier for the vulnerabilities. ====================================================================== 9) About Secunia Secunia offers vulnerability management solutions to corporate customers with verified and reliable vulnerability intelligence relevant to their specific system configuration: https://www.flexera.com/advisories/business_solutions/ Secunia also provides a publicly accessible and comprehensive advisory database as a service to the security community and private individuals, who are interested in or concerned about IT-security.advisories/ Secunia believes that it is important to support the community and to do active vulnerability research in order to aid improving the security and reliability of software in general: https://www.flexera.com/about-us/secunia-research/advisories/ Secunia regularly hires new skilled team members. Check the URL below to see currently vacant positions: https://www.flexera.com/corporate/jobs/ Secunia offers a FREE mailing list called Secunia Security Advisories: https://www.flexera.com/advisories/mailing_lists/ ====================================================================== 10) Verification Please verify this advisory by visiting the Secunia website: https://www.flexera.com/about-us/secunia-research/advisories/sr-2011-28.html Complete list of vulnerability reports published by Secunia Research: https://www.flexera.com/about-us/secunia-research/advisories/ =====================================================================