SuiteCRM <= 7.11.11 Second-Order PHP Object Injection Vulnerabilities

https://suitecrm.com

• Affected Versions:

Version 7.11.11 and prior versions.

• Vulnerabilities Description:

  1. The vulnerability exists because the EmailsControllerActionGetFromFields::getEmailSignatures() method is using the unserialize() PHP function with the account_signatures user preference, and such a value can be arbitrarily manipulated by evil users through the EmailUIAjax interface. This can be exploited to inject arbitrary PHP objects into the application scope, allowing an attacker to perform a variety of attacks, such as executing arbitrary PHP code.

  2. The vulnerability exists because the EmailsControllerActionGetFromFields::handleActionGetFromFields() method is using the unserialize() PHP function with the showFolders user preference, and such a value can be arbitrarily manipulated by evil users through the EmailUIAjax interface. This can be exploited to inject arbitrary PHP objects into the application scope, allowing an attacker to perform a variety of attacks, such as executing arbitrary PHP code.

• Solution:

Update to version 7.11.12, 7.10.24, or later.

• Disclosure Timeline:

[19/09/2019] – Vendor notified

[20/09/2019] – Vendor acknowledgement

[12/11/2019] – Vendor contacted again asking for updates, no response

[20/01/2020] – Vendor notified about public disclosure intention, no response

[07/02/2020] – CVE number assigned

[12/02/2020] – Public disclosure

[14/02/2020] – Versions 7.11.12 and 7.10.24 released

• CVE Reference:

The Common Vulnerabilities and Exposures project (cve.mitre.org) has assigned the name CVE-2020-8800 to these vulnerabilities.

• Credits:

Vulnerabilities discovered by Egidio Romano.