A recently addressed remote code execution (RCE) flaw in the Concrete5 CMS exposed numerous websites to attacks.
Concrete5 is an open-source content management system (CMS) designed for ease of use, for users with a minimum of technical skills. It allows users to edit site content directly from the page.
The CMS is currently used by many high-profile organizations worldwide, including BASF, GlobalSign, and the U.S. Army.
The vulnerability was discovered by researchers from Edgescan, it could be exploited by an attacker to inject a reverse shellcode into vulnerable web servers allowing him to take full control of them.
The vulnerability affects the Concrete5 version 8.5.2.
The experts pointed out that the flaw could have been exploited to add PHP extension in the list of allowed extensions and then upload the file.
The attacker needs administrative permissions to access the ‘Allow File types’ feature and include the PHP file type in the list of allowed extensions.
“During the assessment of the Concrete5’s version 8.5.2, it was noted that it was possible to modify site configuration to upload the PHP file and execute arbitrary commands.”reads the post published by EdgeScan.
“By default, file types such as PHP, HTML and other dangerous file extensions are not allowed, but it was possible to include PHP extension in the legal file list and then upload the file”
Then the attacker can upload potentially malicious code onto the server and then execute arbitrary commands.
A step by step procedure to reproduce to exploit the flaw was published on HackerOne.
Information on how to reproduce the attack has been disclosed on HackerOne.
“The attacker needs the appropriate permissions (Admin role) in order to edit and allow other file types (file extension). If the file type such as PHP is added then the user will be able to upload PHP shell to access underline server system and gain full server/system control. It was possible to upload Reverse shell and gain the full system shall.”reads the post published on HackerOne.
“Reverse shell is a mechanism that allow attacker to have the server shell by exploiting the web server to trigger a connection back. The attacker would be able to take full control over the web server (system).” continues EdgeScan. “By executing arbitrary commands on the server, an attacker could compromise the integrity, availability and confidentiality. And pivot onto other servers on the internal network.”
The vulnerability was reported via the HackerOne platform in January 2020, but it was fixed in June with the release of the Concrete5 version 8.5.4.
EdgeScan experts also provided a list of recommendations to keep the CMS secure.
“Crucially important to keep your installed scripts and CMS platforms up to date. Create a regular schedule to update or patch your CMS, and all installed plugins and themes. Ensure all components are up-to-date,” Edgescan concludes. “At a minimum weekly update is equally important. Regularly backup the CMS and its underlying database.”
(SecurityAffairs – hacking, CMS)