CVE-2026-24421

6.5 MEDIUM

📋 TL;DR

This vulnerability in phpMyFAQ allows any authenticated user, regardless of permissions, to trigger configuration backups and retrieve the backup file path. Attackers can access sensitive configuration data that should be restricted to administrators. All phpMyFAQ installations running versions 4.0.16 or below are affected.

💻 Affected Systems

Products:
  • phpMyFAQ
Versions: 4.0.16 and below
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: All installations with authenticated users are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers obtain configuration backups containing database credentials, API keys, and other sensitive data, leading to full system compromise through credential reuse or direct database access.

🟠

Likely Case

Authenticated non-admin users access configuration backups containing sensitive application settings and database credentials, potentially enabling further attacks.

🟢

If Mitigated

Only authorized administrators can access backup functionality, preventing unauthorized data exposure.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but no special permissions. Simple HTTP requests to the vulnerable endpoint are sufficient.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.0.17

Vendor Advisory: https://github.com/thorsten/phpMyFAQ/security/advisories/GHSA-wm8h-26fv-mg7g

Restart Required: No

Instructions:

1. Backup your current installation. 2. Download phpMyFAQ 4.0.17 or newer. 3. Replace all files except config/database.php and attachments. 4. Verify the update completed successfully.

🔧 Temporary Workarounds

Block vulnerable endpoint

all

Use web server configuration to block access to /api/setup/backup endpoint

# For Apache: add to .htaccess
RewriteRule ^api/setup/backup - [F,L]
# For Nginx: add to server block
location ~ ^/api/setup/backup { deny all; }

Restrict user permissions

all

Review and minimize authenticated user accounts, ensure only trusted users have access

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate phpMyFAQ from sensitive systems
  • Monitor access logs for requests to /api/setup/backup and alert on any non-admin access

🔍 How to Verify

Check if Vulnerable:

Check if authenticated non-admin user can access /api/setup/backup endpoint and receive backup file path

Check Version:

Check phpMyFAQ admin dashboard or examine version.php file

Verify Fix Applied:

Verify that only admin users can access /api/setup/backup endpoint after update

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests to /api/setup/backup from non-admin user accounts
  • Successful backup file generation triggered by non-admin users

Network Indicators:

  • HTTP POST/GET requests to vulnerable endpoint from unauthorized IPs

SIEM Query:

source="web_server_logs" AND (uri_path="/api/setup/backup" AND user_role!="admin")

🔗 References

📤 Share & Export