CVE-2021-40889

9.8 CRITICAL

📋 TL;DR

CMSUno 1.7.2 contains a PHP code execution vulnerability that allows attackers to inject malicious PHP code into the password.php file. This enables remote code execution on affected web servers. Any organization running vulnerable CMSUno versions is at risk.

💻 Affected Systems

Products:
  • CMSUno
Versions: Version 1.7.2 specifically
Operating Systems: Any OS running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: Affects the default installation of CMSUno 1.7.2. No special configuration required.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete server compromise allowing attackers to execute arbitrary commands, steal data, install backdoors, or pivot to other systems.

🟠

Likely Case

Webshell deployment leading to data theft, defacement, or use as part of a botnet.

🟢

If Mitigated

Limited impact if proper input validation and file permission controls are implemented.

🌐 Internet-Facing: HIGH - Web applications are typically internet-facing and this vulnerability requires no authentication.
🏢 Internal Only: MEDIUM - Internal applications could still be exploited by internal threats or compromised accounts.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

The vulnerability is well-documented in public GitHub issues with technical details that could be weaponized.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 1.7.2

Vendor Advisory: https://github.com/boiteasite/cmsuno/issues/19

Restart Required: No

Instructions:

1. Upgrade CMSUno to the latest version. 2. Replace the vulnerable uno/central.php file with the patched version. 3. Remove any existing password.php files that may contain malicious code.

🔧 Temporary Workarounds

Restrict file permissions

linux

Set strict file permissions on password.php to prevent writing

chmod 444 /path/to/uno/password.php

Input validation filter

all

Add input validation to prevent PHP code injection

🧯 If You Can't Patch

  • Implement WAF rules to block suspicious PHP code patterns in POST requests
  • Monitor and restrict access to the uno/central.php endpoint

🔍 How to Verify

Check if Vulnerable:

Check if CMSUno version is 1.7.2 by examining the version file or checking the uno/central.php file for the vulnerable sauvePass action.

Check Version:

cat /path/to/cmsuno/version.txt

Verify Fix Applied:

Verify the version is updated beyond 1.7.2 and check that password.php file contains only expected username data, not executable PHP code.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to uno/central.php with sauvePass parameter
  • File modifications to password.php with PHP code patterns

Network Indicators:

  • HTTP requests containing PHP code snippets in POST data
  • Traffic to uno/central.php with suspicious payloads

SIEM Query:

source="web_logs" AND uri="/uno/central.php" AND method="POST" AND (data CONTAINS "<?php" OR data CONTAINS "eval(" OR data CONTAINS "system(")

🔗 References

📤 Share & Export