Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend crafted request to LTI entry point
-
DeliveryStore serialized gadget in session row
-
ExploitPOST to unauthenticated shib_logout.php
-
Executionunserialize() instantiates gadget across session rows
-
PersistDestructor writes JSON file below web root
-
ImpactRequest dropped file for RCE as web server user
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the ILIAS instance expose the Shibboleth back-channel logout endpoint components/ILIAS/AuthShibboleth/resources/shib_logout.php, which is reachable on an ilInitialisation authentication-exempt path in affected versions, and that the attacker be able to place a serialized object into a row of the usr_session table - achievable unauthenticated via the LTI authentication entry point, which stores request parameters into the session on another auth-exempt path. Per the CVSS vector (AV:N/AC:L/AT:N/PR:N/UI:N) there is no authentication or user interaction requirement and the attack works against affected default deployments where these endpoints are present. Limiting factors: the target must be running a vulnerable pre-9.22 / pre-10.10 / pre-11.3 build with the logout-notification code present; a successful file-write-to-RCE outcome depends on the web server user having write access to a location below the web root and the bundled destructor gadget being loadable, and any front-end restriction of the shib_logout.php path or removal of the LTI path defeats the chain. |
| Impact | This is a genuine high-priority issue rather than an inflated CVSS number. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H) describes network, low-complexity, unauthenticated exploitation with high confidentiality, integrity and availability impact, and the technical description corroborates every metric: the vulnerable endpoint is explicitly on an authentication-exempt path and the object-seeding LTI path is likewise unauthenticated, so PR:N is credible rather than optimistic. The end state is a file write below the web root that yields code execution as the web server user, which supports the high triple impact. There is no CISA KEV listing and no confirmed public POC, so this is not yet known to be actively exploited; however, the combination of unauthenticated RCE, a self-contained gadget bundled with the product, and a public VulnCheck advisory plus a patch commit that clearly localizes the vulnerable code substantially lowers the barrier to weaponization. Given ILIAS's footprint in the education sector, any operator running an affected version should treat patching as urgent, even a mid-sized university or municipal IT team should prioritize this over most other backlog items. No EPSS score was supplied, so probabilistic exploitation likelihood cannot be quantified here. |
| Exploit ScenarioDerived | An anonymous attacker first sends a request to the LTI authentication entry point with crafted parameters, causing ILIAS to store an attacker-supplied serialized gadget object into a live row of the usr_session table without any login. The attacker then issues an unauthenticated POST to shib_logout.php, whose logout-notification handler reads every live session row and unserialize()s the attacker's blob; the gadget's destructor writes attacker-controlled JSON content to a chosen path below the web root, and the attacker requests that dropped file to execute code as the web server user. No public POC is confirmed at time of analysis, and the low attack complexity and network attack vector make the chain straightforward to script once the gadget path is known. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 26, 2026
Unauthenticated PHP object injection in the ILIAS e-learning platform allows remote attackers to achieve code execution as the web server user via the Shibboleth back-channel logout endpoint (shib_logout.php). The endpoint runs on an authentication-exempt path and passes every live session row's stored data through a hand-rolled parser that calls unserialize() with no class allowlist, so an attacker who first seeds a serialized object into a session row (via the equally unauthenticated LTI entry point) triggers a destructor-based POP chain that writes attacker-controlled JSON to an attacker-chosen path below the web root. No public exploit has been identified at time of analysis, but the flaw is unauthenticated and network-reachable, and the vendor CVSS 4.0 base score is 9.3 (Critical).
RemediationAI
Upgrade to a fixed release: ILIAS 9.22, 10.10, or 11.3, matching your major branch (Vendor-released patch: 9.22 / 10.10 / 11.3). These releases delete the shib_logout.php logout-notification handler that performed the unsafe unserialize, as shown in the fix commit https://github.com/ILIAS-eLearning/ILIAS/commit/f36934a6f937d0fe837ca6e642986458b4069a95; see also the VulnCheck advisory at https://www.vulncheck.com/advisories/ilias-before-9.22-10.10-and-11.3-unauthenticated-php-object-injection-via-shibboleth-logout-endpoint. If you cannot patch immediately, the highest-value compensating control is to block or remove access to components/ILIAS/AuthShibboleth/resources/shib_logout.php at the web server or reverse proxy (return 403 for that path), which neutralizes the deserialization trigger; the trade-off is that legitimate Shibboleth back-channel logout notifications stop working, though ILIAS's own patch notes indicate this channel was effectively being removed anyway. As a secondary control, restrict or disable the LTI authentication entry point if your deployment does not use LTI, to close the unauthenticated path that seeds serialized objects into session rows; the side effect is loss of LTI consumer functionality. Ensure the web server user has no write permissions to directories under the web root wherever operationally feasible to blunt the file-write-to-webshell primitive.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
ILIAS is a widely used open-source Learning Management System written in PHP. The root cause is CWE-502 (Deserialization of Untrusted Data): components/ILIAS/AuthShibboleth/resources/shib_logout.php implements a Shibboleth SP logout-notification handler that queries the usr_session table (SELECT session_id, data FROM usr_session WHERE expires > NOW()) and feeds each row's serialized 'data' blob to a custom unserializesession() routine, which ultimately invokes PHP unserialize() without any allowed_classes restriction. Because ilInitialisation exempts this endpoint from authentication (and initializes ILIAS in a SOAP context for the SoapServer LogoutNotification service), an anonymous request forces instantiation of arbitrary application classes and firing of their __destruct() methods. The affected product per CPE is cpe:2.3:a:ilias-elearning_e.v.:ilias, and the exploit leverages a gadget already bundled with the application whose destructor writes a JSON-encoded structure to a filename taken from one of its own properties - a classic property-oriented programming (POP) file-write primitive.
Know when Ilias gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Endpoint is authentication-exempt and network-reachable with the seeding path also unauthenticated, so AV:N/AC:L/PR:N/UI:N; destructor file-write yields code execution as the web server user, giving C:H/I:H/A:H with no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
ILIAS deserialises stored session data for an unauthenticated caller. The Shibboleth back-channel endpoint at components/ILIAS/AuthShibboleth/resources/shib_logout.php runs in a context that ilInitialisation exempts from authentication, and its logout-notification handler locates the session to terminate by reading every live row of the session table and passing each row's stored data to a hand-written parser that calls unserialize without restricting which classes may be constructed. Any serialised object present in any session row is therefore instantiated on behalf of an anonymous request, and object destructors run when those objects are discarded. A serialised object can be placed into a session row without logging in, because the LTI authentication entry point stores request parameters into the session and is reachable on a path the same initialisation code exempts from authentication. A class bundled with the application writes a JSON-encoded structure to a file named by one of its own properties when it is destroyed, which places attacker-controlled content at an attacker-chosen path below the web root and results in code execution as the web server user. Versions 9.22, 10.10 and 11.3 remove the endpoint's logout-notification implementation.
Articles & Coverage 1
Latest POC
1 public PoC link from exploitdb
Sign in to open the public PoC links collected for this CVE.
Executive ViewAI
The ILIAS e-learning platform in your environment is vulnerable to remote takeover by unauthenticated attackers, exposing all student records and institutional data stored within. This represents a critical threat to operational continuity and data protection for any organization running ILIAS. A vendor patch is available and must be deployed immediately to prevent compromise.
Apply vendor patch.
Threat Model
4 threats: Elevation of Privilege, Tampering, Information Disclosure and 1 more
6-step attack chain with trust boundaries and controls
Full threat model - attack chain, trust boundaries, controls per stage and evidence - is part of the Pro and Business plans.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
ILIAS 7.25 (2023-09-12) allows any authenticated user to execute arbitrary operating system commands remotely, when a hi
ILIAS before 7.16 allows OS Command Injection. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitabl
Remote Code Execution can occur via the external news feed in ILIAS 6.4 because of incorrect parameter sanitization for
The Learning Module in ILIAS 7.25 (2023-09-12 release) allows an attacker (with basic user privileges) to achieve a high
ILIAS 4.4.1 allows remote attackers to execute arbitrary PHP code via an e-mail attachment that leads to creation of a .
Unrestricted file upload vulnerability in ilias.php in ILIAS 4.4.1 allows remote authenticated users to execute arbitrar
ILIAS 7 before 7.30 and ILIAS 8 before 8.11 as well as ILIAS 9.0 allow remote authenticated attackers with administrativ
A Stored Cross-site Scripting (XSS) vulnerability in the "Import of user role and title of user role" feature in ILIAS 7
ILIAS (2013-09-12 release) contains a medium-criticality Directory Traversal local file inclusion vulnerability in the S
ILIAS before 7.16 allows External Control of File Name or Path. Rated medium severity (CVSS 6.5), this vulnerability is
ILIAS before 7.16 has an Open Redirect. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no
ILIAS before 5.1.26, 5.2.x before 5.2.15, and 5.3.x before 5.3.4, due to inconsistencies in parameter handling, is vulne
EUVD-2026-66602
GHSA-6h76-35rh-gxm9
NVD
CVE.org
EPSS
Exploit-DB
VulDB