############################################################# # # COMPASS SECURITY ADVISORY # https://www.compass-security.com/research/advisories/ # ############################################################# # # Product: Helix ALM [1] # Vendor: Perforce # CSNC ID: CSNC-2021-005 # CVE ID: CVE-2021-28973 # Subject: XML External Entity Resolution (XXE) # Risk: High # Effect: Remotely exploitable # Author: Emanuele Barbeno # Date: 07.04.2021 # ############################################################# Introduction ------------ Helix ALM, formerly called TestTrack, is application lifecycle management (ALM) software developed by Perforce. The software allows developers to manage requirements, defects, issues and testing during software development. The XML Import functionality of the Administration console accepts XML input data which is parsed by insecurely configured software components, which can be abused for XML External Entity Attacks. [2] Affected -------- Vulnerable: * 2020.3.1 Not vulnerable: * 2021.1.0 No other version was tested, but it is believed for the older versions to be vulnerable as well. Technical Description --------------------- The following XML file can be used to retrieve to retrieve the content of the win.ini file ``` ]> &xxe; false All folder permissions Program Review Public /Public/Product APS Product ``` Then login to the administration console, click on the 'XML Import' item in the left menu and click on the 'Browse' button. Select the XML file containing the XML content showed before and click on the 'Validate' button. The content of the C:\Windows\win.ini file on the server is shown in the error message. Workaround / Fix ---------------- The vulnerability is a result of a weakly configured/parameterized XML parser. [3] The parser needs to be hardened by updating Helix ALM to the newer version or by changing settings in the configuration in the code. It must not allow the use of inline DTDs and external entities. Timeline -------- 2021-03-07: Discovery by Emanuele Barbeno 2021-03-07: Initial vendor notification 2021-03-08: Initial vendor response 2021-03-22: Assigned CVE-2021-28973 2021-04-01: Release of fixed Version / Patch 2021-04-07: Coordinated public disclosure date References ---------- [1] https://www.perforce.com/products/helix-alm [2] https://owasp.org/www-project-top-ten/2017/A4_2017-XML_External_Entities_(XXE).html [3] https://cheatsheetseries.owasp.org/cheatsheets/XML_External_Entity_Prevention_Cheat_Sheet.html