CVE-2025-66306

4.3 MEDIUM

📋 TL;DR

Grav CMS versions before 1.8.0-beta.27 contain an IDOR vulnerability in the admin panel that allows low-privilege users to access sensitive information from other user accounts, including admin email addresses. This affects all Grav CMS installations with the admin panel enabled and multiple user accounts. While direct account takeover isn't possible, the exposed information increases risks of phishing, credential stuffing, and social engineering attacks.

💻 Affected Systems

Products:
  • Grav CMS
Versions: All versions prior to 1.8.0-beta.27
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires admin panel to be enabled and multiple user accounts configured. Single-user installations are not affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers obtain admin email addresses and metadata, enabling targeted phishing campaigns that could lead to credential theft and eventual admin account compromise through social engineering.

🟠

Likely Case

Low-privilege users access other users' email addresses and metadata, potentially enabling targeted phishing against administrators or other users.

🟢

If Mitigated

With proper access controls and monitoring, impact is limited to information disclosure without direct system compromise.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated low-privilege user access. The vulnerability is in the admin panel API endpoints that handle user data requests.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.8.0-beta.27

Vendor Advisory: https://github.com/getgrav/grav/security/advisories/GHSA-4cwq-j7jv-qmwg

Restart Required: No

Instructions:

1. Backup your Grav installation. 2. Update Grav to version 1.8.0-beta.27 or later via GPM: 'bin/gpm selfupgrade'. 3. Clear cache: 'bin/grav clear-cache'. 4. Verify the update completed successfully.

🔧 Temporary Workarounds

Restrict Admin Panel Access

all

Limit admin panel access to trusted IP addresses only

Configure web server (Apache/Nginx) to restrict access to /admin path

Disable Unnecessary User Accounts

all

Remove or disable low-privilege user accounts that don't require admin panel access

Edit user accounts in /user/accounts/ directory or via admin panel

🧯 If You Can't Patch

  • Implement strict access controls to limit which users can access the admin panel
  • Monitor admin panel access logs for unusual user ID parameter patterns

🔍 How to Verify

Check if Vulnerable:

Check Grav version: 'bin/grav version'. If version is earlier than 1.8.0-beta.27, system is vulnerable.

Check Version:

bin/grav version

Verify Fix Applied:

After updating, verify version is 1.8.0-beta.27 or later: 'bin/grav version'

📡 Detection & Monitoring

Log Indicators:

  • Unusual user ID parameter patterns in admin panel API requests
  • Multiple failed authorization attempts followed by successful user data access

Network Indicators:

  • Repeated requests to admin panel user endpoints with different ID parameters

SIEM Query:

source="grav-admin" AND (uri_path="/admin/api/users/*" OR uri_path CONTAINS "/admin/") AND (http_method="GET" OR http_method="POST") | stats count by src_ip, user_id

🔗 References

📤 Share & Export