CVE-2024-47758

8.8 HIGH

📋 TL;DR

This vulnerability in GLPI allows authenticated users to take control of other user accounts with equal or lower privilege levels via API exploitation. It affects GLPI installations from version 9.3.0 up to but not including 10.0.17. Any organization using vulnerable GLPI versions with authenticated users is at risk.

💻 Affected Systems

Products:
  • GLPI
Versions: 9.3.0 to 10.0.16 inclusive
Operating Systems: All platforms running GLPI
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated user access; affects all GLPI installations within version range regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An authenticated attacker could escalate privileges to administrative level, compromise all user accounts, exfiltrate sensitive IT asset data, and potentially pivot to other systems.

🟠

Likely Case

Malicious insider or compromised user account takes over other user accounts, leading to unauthorized access to IT asset management data and potential privilege escalation.

🟢

If Mitigated

With proper access controls and monitoring, impact is limited to unauthorized access within the same privilege level, with detection of suspicious account activity.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

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

Exploitation requires authenticated access but appears straightforward based on advisory description.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 10.0.17

Vendor Advisory: https://github.com/glpi-project/glpi/security/advisories/GHSA-3r4x-6pmx-phwr

Restart Required: No

Instructions:

1. Backup your GLPI database and files. 2. Download GLPI 10.0.17 from official repository. 3. Follow GLPI upgrade documentation for your version. 4. Verify upgrade completed successfully.

🔧 Temporary Workarounds

Restrict API Access

all

Temporarily disable or restrict API access for non-administrative users

# Modify GLPI configuration to restrict API endpoints
# Review and update .htaccess or web server configuration

Network Segmentation

linux

Restrict access to GLPI instance to trusted networks only

# Configure firewall rules to limit GLPI access
iptables -A INPUT -p tcp --dport 80 -s trusted_network -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -s trusted_network -j ACCEPT

🧯 If You Can't Patch

  • Implement strict access controls and monitor for unusual account activity
  • Disable API functionality for all non-essential users

🔍 How to Verify

Check if Vulnerable:

Check GLPI version via web interface or by examining version files in installation directory

Check Version:

grep -r 'define.*GLPI_VERSION' /path/to/glpi/install/ 2>/dev/null || cat /path/to/glpi/inc/define.php | grep GLPI_VERSION

Verify Fix Applied:

Verify version is 10.0.17 or later and test API functionality with non-admin users

📡 Detection & Monitoring

Log Indicators:

  • Unusual API calls from non-admin users
  • Multiple failed login attempts followed by successful login from different IP
  • User privilege changes via API

Network Indicators:

  • Unusual API request patterns
  • Multiple account takeover attempts from single source

SIEM Query:

source="glpi_logs" AND (event="api_call" AND user!="admin" AND action="user_modify") OR (event="login" AND result="success" AND ip_changed=true)

🔗 References

📤 Share & Export