Advisory Details

June 25th, 2020

(0Day) CentOS Web Panel ajax_dashboard service_stop Command Injection Remote Code Execution Vulnerability

ZDI-20-756
ZDI-CAN-9726

CVE ID CVE-2020-15609
CVSS SCORE 9.8, AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
AFFECTED VENDORS CentOS Web Panel
AFFECTED PRODUCTS CentOS Web Panel
VULNERABILITY DETAILS

This vulnerability allows remote attackers to execute arbitrary code on affected installations of CentOS Web Panel. Authentication is not required to exploit this vulnerability.

The specific flaw exists within ajax_dashboard.php. When parsing the service_stop parameter, the process does not properly validate a user-supplied string before using it to execute a system call. An attacker can leverage this vulnerability to execute code in the context of root.

ADDITIONAL DETAILS

This vulnerability is being disclosed publicly without a patch in accordance with the ZDI 120 day deadline.

01/23/20 – ZDI reported the vulnerabilities to the vendor
04/30/20 – ZDI requested a status update
05/20/20 – ZDI requested a status update
05/28/20 – ZDI requested a status update
06/12/20 - ZDI notified the vendor of the intention to publish these reports as 0-day advisories on 06/25/2020

-- Mitigation:
Given the nature of the vulnerability, the only salient mitigation strategy is to restrict interaction with the service to trusted machines. Only the clients and servers that have a legitimate procedural relationship with the service should be permitted to communicate with it. This could be accomplished in a number of ways, most notably with firewall rules/whitelisting.


DISCLOSURE TIMELINE
  • 2020-01-28 - Vulnerability reported to vendor
  • 2020-06-25 - Coordinated public release of advisory
CREDIT @PaulosYibelo & CasperTea
BACK TO ADVISORIES