CVE-2023-36487

9.8 CRITICAL

📋 TL;DR

CVE-2023-36487 is a critical authentication bypass vulnerability in ILIAS learning management system that allows remote attackers to take over user accounts via the password reset function. Attackers can reset passwords for arbitrary accounts without authorization. This affects all ILIAS installations with vulnerable versions exposed to network access.

💻 Affected Systems

Products:
  • ILIAS Learning Management System
Versions: 7.0_beta1 through 7.20 and 8.0_beta1 through 8.1
Operating Systems: All platforms running ILIAS
Default Config Vulnerable: ⚠️ Yes
Notes: All installations with affected versions are vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete compromise of all user accounts including administrators, leading to data theft, privilege escalation, and full system control.

🟠

Likely Case

Account takeover of regular users leading to unauthorized access to courses, personal data, and potentially lateral movement within the system.

🟢

If Mitigated

Limited impact with proper network segmentation and monitoring, but still potential for individual account compromise.

🌐 Internet-Facing: HIGH - Remote attackers can exploit this without authentication from anywhere on the internet.
🏢 Internal Only: HIGH - Even internally, any user could potentially compromise other accounts.

🎯 Exploit Status

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

The vulnerability is in the password reset mechanism which is typically exposed and easy to target.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: ILIAS 7.21 and 8.2

Vendor Advisory: https://docu.ilias.de/ilias.php?ref_id=1719&obj_id=141694&obj_type=PageObject&cmd=layout&cmdClass=illmpresentationgui&cmdNode=13g&baseClass=ilLMPresentationGUI

Restart Required: No

Instructions:

1. Backup your ILIAS installation and database. 2. Download the patched version (7.21 or 8.2). 3. Follow the ILIAS upgrade documentation. 4. Verify the password reset functionality works correctly after upgrade.

🔧 Temporary Workarounds

Disable password reset functionality

all

Temporarily disable the password reset feature to prevent exploitation while planning upgrade.

# Modify ILIAS configuration to disable password reset - consult ILIAS documentation for specific method

Implement rate limiting on password reset endpoint

linux

Add web application firewall rules to limit requests to password reset functionality.

# Example for Apache mod_sec: SecRule REQUEST_URI "@contains /ilias.php?cmdClass=ilpasswordresetgui" "id:1001,phase:2,deny,status:403"

🧯 If You Can't Patch

  • Implement network-level restrictions to limit access to ILIAS to trusted IP addresses only
  • Enable detailed logging for all password reset attempts and monitor for suspicious activity

🔍 How to Verify

Check if Vulnerable:

Check ILIAS version in administration panel or by examining the installation files. Versions 7.0_beta1-7.20 or 8.0_beta1-8.1 are vulnerable.

Check Version:

# Check ILIAS version via web interface: Admin > System > Version Information or check includes/ilias_version.php

Verify Fix Applied:

After upgrading to 7.21 or 8.2, test password reset functionality to ensure it requires proper authentication and verification.

📡 Detection & Monitoring

Log Indicators:

  • Multiple failed password reset attempts from single IP
  • Successful password resets for multiple accounts from same source
  • Password reset requests without proper session tokens

Network Indicators:

  • Unusual patterns of POST requests to password reset endpoints
  • High volume of requests to /ilias.php with password reset parameters

SIEM Query:

source="web_access.log" AND (uri="*ilpasswordresetgui*" OR uri="*password*reset*") AND status=200 | stats count by src_ip

🔗 References

📤 Share & Export