CVE-2023-3172

7.2 HIGH

📋 TL;DR

This CVE describes a path traversal vulnerability in the Froxlor server management panel that allows attackers to access files outside the intended directory. It affects all Froxlor installations prior to version 2.0.20. Attackers could potentially read sensitive system files or configuration data.

💻 Affected Systems

Products:
  • froxlor/froxlor
Versions: All versions prior to 2.0.20
Operating Systems: Linux, Unix-based systems
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all Froxlor installations regardless of configuration. The vulnerability is in the core application code.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise through reading sensitive configuration files, SSH keys, or database credentials leading to lateral movement.

🟠

Likely Case

Unauthorized reading of sensitive Froxlor configuration files, potentially exposing database credentials and other secrets.

🟢

If Mitigated

Limited impact with proper file permissions and network segmentation preventing access to critical system files.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authentication to Froxlor panel. The vulnerability is well-documented in the referenced commits and bounty reports.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.0.20

Vendor Advisory: https://github.com/froxlor/froxlor/commit/da810ea95393dfaec68a70e30b7c887c50563a7e

Restart Required: No

Instructions:

1. Backup your Froxlor installation and database. 2. Update Froxlor to version 2.0.20 or later via package manager or manual update. 3. Verify the update completed successfully.

🔧 Temporary Workarounds

Restrict File Permissions

linux

Set strict file permissions on sensitive directories to limit what can be accessed even if path traversal succeeds.

chmod 600 /etc/froxlor/*.conf
chmod 700 /var/lib/froxlor/

Network Segmentation

linux

Restrict Froxlor panel access to trusted IP addresses only using firewall rules.

iptables -A INPUT -p tcp --dport 80 -s TRUSTED_IP -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -s TRUSTED_IP -j ACCEPT

🧯 If You Can't Patch

  • Implement strict network access controls to limit Froxlor panel access to trusted users only
  • Monitor Froxlor access logs for suspicious file access patterns and implement file integrity monitoring

🔍 How to Verify

Check if Vulnerable:

Check Froxlor version via admin panel or by examining the installed package version. If version is below 2.0.20, the system is vulnerable.

Check Version:

php /var/www/froxlor/scripts/froxlor_master_cronjob.php --version

Verify Fix Applied:

Verify Froxlor version is 2.0.20 or higher. Test path traversal attempts should be blocked with proper error messages.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file access patterns in Froxlor logs
  • Multiple failed path traversal attempts
  • Access to files outside Froxlor directory structure

Network Indicators:

  • Unusual HTTP requests with directory traversal sequences (../, ..\) to Froxlor endpoints

SIEM Query:

source="froxlor_access.log" AND (uri="*../*" OR uri="*..\\*")

🔗 References

📤 Share & Export