SugarCRM list privilege restriction bypass
RedTeam Pentesting discovered a vulnerability in SugarCRM that allows logged in users to bypass restrictions of their list privilege, allowing to list all entries.
Product: SugarCRM Community Edition
Affected Versions: <= 6.1.1
Fixed Versions: >= 6.1.3
Vulnerability Type: privilege restriction bypass
Security Risk: medium
Vendor URL: http://www.sugarcrm.com/crm/
Vendor Status: fixed version released
Advisory URL: http://www.redteam-pentesting.de/advisories/rt-sa-2011-002
Advisory Status: published
CVE URL: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-0745
SugarCRM is a customer relation management system written in PHP. There is a free version, Sugar Community Edition, and two commercial versions, Sugar Professional and Sugar Enterprise.
SugarCRM supports defining so-called roles, that have a given set of privileges for each object type, such as customers (called "accounts"), calls and opportunities. A role can then be assigned to users, to which the defined privileges apply.
These privileges, among others, include View, Edit, Delete and List. The List privilege controls to what extent a list of existing objects can be accessed. It may be set to All, Owner or None. When set to Owner, users to which this applies can only see the objects they own, such as customers assigned to them.
When trying to create, for example, a new customer, SugarCRM performs a duplicate check and warns the user, if a customer using the same name already exists. The warning page includes a listing of the conflicting entries, regardless of their owner. Furthermore, when reloading the page at this point, it shows a complete list of all customers, even if the user's List privilege is limited to Owner. Directly accessing the URL of this page works in the same way. This likewise applies to contact entries, too.
Proof of Concept
The following URL displays a list of all customers ("accounts"):
The following URL displays a list of all contacts:
Upgrade to SugarCRM 6.1.3.
This vulnerability enables logged-in users to see the names of customers and contact persons, they are not allowed to see. They however are not able to otherwise access customer or contact person entries, such as viewing their details. Thus the risk of this vulnerability is estimated as medium.
The risk in a particular case varies depending on the actual confidentiality of customer relationships.
2010-09-14 Vulnerability identified
2011-01-28 CVE number requested
2011-02-02 CVE number assigned
2011-02-09 Vendor notified
2011-02-09 Vendor confirmed the vulnerability
2011-03-10 Vendor releases fix
2011-03-15 Advisory released
RedTeam Pentesting GmbH
RedTeam Pentesting offers individual penetration tests, short pentests, performed by a team of specialised IT-security experts. Hereby, security weaknesses in company networks or products are uncovered and can be fixed immediately.
As there are only few experts in this field, RedTeam Pentesting wants to share its knowledge and enhance the public knowledge with research in security-related areas. The results are made available as public security advisories.
More information about RedTeam Pentesting can be found at http://www.redteam-pentesting.de.