Protection Mechanism Failure Affecting rubygem-psych package, versions <0:5.1.2-6.module+el9.7.0+40188+314ad260


Severity

Recommended
high

Based on Rocky Linux security rating.

Threat Intelligence

EPSS
0.11% (29th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-ROCKY9-RUBYGEMPSYCH-16770000
  • published20 May 2026
  • disclosed24 Apr 2026

Introduced: 24 Apr 2026

NewCVE-2026-41316  (opens in a new tab)
CWE-693  (opens in a new tab)

How to fix?

Upgrade Rocky-Linux:9 rubygem-psych to version 0:5.1.2-6.module+el9.7.0+40188+314ad260 or higher.
This issue was patched in RLSA-2026:18030.

NVD Description

Note: Versions mentioned in the description apply only to the upstream rubygem-psych package and not the rubygem-psych package as distributed by Rocky-Linux. See How to fix? for Rocky-Linux:9 relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1