CVE-2026-41316
HighCVSS 8.1Exploitation Probability (EPSS)
Elevated risk64th percentile - higher than 64% of all known CVEs
Summary
A vulnerability in the ERB templating library for Ruby allows bypassing deserialization protection. Although `ERB#result` and `ERB#run` were hardened against code execution after object reconstruction via `Marshal.load`, three other public methods (`def_method`, `def_module`, `def_class`) lack the same guard. An attacker can use `ERB#def_module` to achieve arbitrary code execution.
Risk Assessment
The risk is remote code execution (RCE) in Ruby applications using the ERB library if an attacker can supply untrusted data for deserialization. This could lead to full compromise of the server or application.
Recommendation
Immediately upgrade the ERB library to version 4.0.3.1, 4.0.4.1, 6.0.1.1, or 6.0.4 (depending on the branch in use). If upgrading is not possible, avoid deserializing untrusted data with `Marshal.load`.
Related vulnerabilities
- CVE-2026-87719Critical
GitLab EE versions from 18.3 before 19.1.8, 19.2 before 19.2.6, and 19.3 before 19.3.2 contain a vulnerability that, under certain conditions, allows an authenticated user with Duo Chat access to obtain Advanced Search instance configurations and sensitive credentials. Exploitation uses a specially crafted GraphQL subscription argument to bypass serialization and perform server object lookup.
- CVE-2026-85706CriticalActively exploited
GitLab CE/EE versions from 18.7 before 19.1.8, 19.2 before 19.2.6, and 19.3 before 19.3.2 contain a vulnerability in the repository commits API caused by improper path confinement and missing authentication enforcement. Under certain conditions, an unauthenticated user could read arbitrary files from the GitLab server.
- CVE-2026-90456Critical
An example environment-configuration file for a bundled inventory-management component ships with a fixed, publicly-known administrative password. A deployment that copies this example file into active configuration without running the setup routine that regenerates credentials will expose that component's administrative interface to anyone aware of the default value.
- CVE-2026-53952Critical
GetSimple CMS (v3.4.0a and below) and GetSimple CMS CE (v3.3.22 and below) contain a logic flaw allowing unauthenticated attackers to create a new administrator account. The automated control that deletes admin/setup.php after installation is neutralized by a self-exclusion bug, leaving the setup script accessible. As of publication, no patched versions are available.
- CVE-2026-79395Critical
The WS-Security (wsse:UsernameToken) verification routine in the Sofia IPC daemon in Xiongmai IP Camera XM530 firmware HMT.CM2005-v220608.1837 and earlier has an improper authentication vulnerability. A remote attacker can bypass authentication and execute privileged ONVIF actions (PTZ control, stream URL retrieval, system reboot) via a crafted SOAP request supplying the admin username with any arbitrary password when the account's stored password is empty.
- CVE-2026-62105Critical
Unauthenticated PHP Object Injection in ThemeREX Addons versions below 2.45.0.
- CVE-2026-62103Critical
Unauthenticated PHP Object Injection in Everest Forms versions 3.6.0 and below.
- CVE-2026-54072Critical
In Authorizer prior to version 2.2.1, the /authorize endpoint accepts any redirect_uri without validating it against AllowedOrigins. With response_type=token or response_type=id_token, the server appends access_token, id_token, and refresh_token as query parameters and issues a 302 redirect to the attacker-supplied URL. An unauthenticated attacker can obtain the client_id from the public /graphql endpoint.
- CVE-2026-82617Critical
The built-in name-finder patterns EMAIL and URL in Apache OpenNLP contain ambiguous nested quantifiers, enabling a ReDoS attack. A crafted input can trigger super-linear backtracking or unbounded matcher recursion, leading to CPU exhaustion or StackOverflowError. The issue affects versions 2.0.0 through 2.5.11 and 3.0.0-M1 through 3.0.0-M5.
- CVE-2026-72710Critical
SPIP before 4.4.18 contains a remote code execution vulnerability in the editer_objet action where the arg parameter resolves SQL table names without enforcing an editable columns allowlist. Attackers with a valid nonce can inject attacker-controlled rows into the spip_jobs table, and by supplying arg=job/0 with crafted fonction and args values, these are later unserialized and executed when the cron job queue is drained.
Original NVD description (English source)
ERB is a templating system for Ruby. Ruby 2.7.0 (before ERB 2.2.0 was published on rubygems.org) introduced an `@_init` instance variable guard in `ERB#result` and `ERB#run` to prevent code execution when an ERB object is reconstructed via `Marshal.load` (deserialization). However, three other public methods that also evaluate `@src` via `eval()` were not given the same guard: `ERB#def_method`, `ERB#def_module`, and `ERB#def_class`. An attacker who can trigger `Marshal.load` on untrusted data in a Ruby application that has `erb` loaded can use `ERB#def_module` (zero-arg, default parameters) as a code execution sink, bypassing the `@_init` protection entirely. ERB 4.0.3.1, 4.0.4.1, 6.0.1.1, and 6.0.4 patch the issue.

