CVE-2025-11346

6.3 MEDIUM

📋 TL;DR

This CVE describes a remote deserialization vulnerability in ILIAS learning management systems. Attackers can exploit the Base64 Decoding Handler's unserialize function by manipulating the f_settings parameter to execute arbitrary code. All ILIAS installations up to versions 8.23, 9.13, and 10.1 are affected.

💻 Affected Systems

Products:
  • ILIAS Learning Management System
Versions: Up to 8.23, 9.13, and 10.1
Operating Systems: All platforms running ILIAS
Default Config Vulnerable: ⚠️ Yes
Notes: All ILIAS installations with affected versions are vulnerable by default.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise, data theft, and lateral movement within the network.

🟠

Likely Case

Remote code execution allowing attackers to gain unauthorized access, modify content, or disrupt the learning management system.

🟢

If Mitigated

Limited impact with proper network segmentation and application firewalls blocking malicious payloads.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The vulnerability is remotely exploitable without authentication and has public technical details available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 8.24, 9.14, and 10.2

Vendor Advisory: https://wid.cert-bund.de/portal/wid/securityadvisory?name=WID-SEC-2025-2113

Restart Required: Yes

Instructions:

1. Backup your ILIAS installation and database. 2. Download the patched version from the official ILIAS repository. 3. Replace the affected files with the patched versions. 4. Restart the web server service. 5. Verify the update was successful.

🔧 Temporary Workarounds

Input Validation Filter

all

Implement strict input validation for the f_settings parameter to block malicious payloads.

# Add input validation in the affected PHP files
# Example: if (!preg_match('/^[a-zA-Z0-9\/+=]+$/', $f_settings)) { die('Invalid input'); }

Web Application Firewall Rule

all

Configure WAF to block requests containing serialized PHP objects in the f_settings parameter.

# ModSecurity rule example: SecRule ARGS:f_settings "@rx (O:\d+:|C:\d+:|a:\d+:)" "id:1001,phase:2,deny,status:403,msg:'PHP deserialization attempt'

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate ILIAS servers from critical systems.
  • Deploy a web application firewall with rules specifically targeting PHP deserialization attacks.

🔍 How to Verify

Check if Vulnerable:

Check the ILIAS version in the administration panel or by examining the version.php file in the installation directory.

Check Version:

grep -r "\$ilias_version" /path/to/ilias/version.php

Verify Fix Applied:

Verify the version number shows 8.24, 9.14, or 10.2 or higher in the administration interface.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to ILIAS endpoints with base64-encoded f_settings parameters
  • PHP error logs showing unserialize() warnings or errors

Network Indicators:

  • HTTP requests containing serialized PHP object patterns in parameters
  • Unexpected outbound connections from ILIAS servers

SIEM Query:

source="web_logs" AND uri="*ilias*" AND (param="f_settings" OR body="O:*" OR body="C:*")

🔗 References

📤 Share & Export