Description
YAML versions before 1.27_001 for Perl allow a loaded perl/glob document to replace any package variable, which can lead to arbitrary code execution.
A perl/glob document names a package and a symbol, and supplies the value assigned to it. Nothing restricts the name, so the target can be @INC or YAML's own load options.
A perl/glob document that sets $YAML::LoadCode or $YAML::UseCode turns on code loading, which is off by default, for every later Load() in the process. A perl/code document is then passed to a string eval, so an attacker who supplies two documents to separate Load() calls in one process can execute arbitrary Perl code.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| — | YAML | < 1.27_001 | 1.27_001 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | libyaml-perl | 1.29-1 | — |
| Debian 13 | libyaml-perl | 1.29-1 | — |
| Debian 12 | libyaml-perl | 1.29-1 | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 24.04 LTS | libyaml-perl | 1.31-1ubuntu0.24.04.1 | USN-8925-1 |
| Ubuntu 22.04 LTS | libyaml-perl | 1.30-1ubuntu0.22.04.1 | USN-8925-1 |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 26.04 LTS | libyaml-perl | 1.31-1ubuntu0.26.04.1~esm1 | USN-8925-1 |
| Ubuntu Pro 20.04 LTS | libyaml-perl | 1.30-1ubuntu0.20.04.1~esm1 | USN-8925-1 |
| Ubuntu Pro 18.04 LTS | libyaml-perl | 1.24-1ubuntu0.1~esm1 | USN-8925-1 |
| Ubuntu Pro 16.04 LTS | libyaml-perl | 1.15-1ubuntu0.1~esm1 | USN-8925-1 |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 8 | perl-YAML | 1.24-4.module+el8.10.0+25073+d1062575 | RHSA-2026:93471 |
AlmaLinux
Errata ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux 8 | perl-YAML | 1.24-4.module_el8.10.0+4341+ab0ec422 | ALSA-2026:93471 |
Rocky Linux
Errata ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Rocky Linux 8 | perl-YAML | 1.24-4.module+el8.10.0+40403+bd06a93a | RLSA-2026:93471 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | perl-YAML | 1.321.0-2.1 | openSUSE-SU-2026:12368-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2 | perl-YAML | 0.84-5.amzn2.0.2 | ALAS2-2026-4035 |
Oracle Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Oracle Linux 8 | perl-YAML | 1.24-4.module+el8.10.0+91104+33aeb071 | ELSA-2026-93471 |
Advisories 8
- RHSA-2026:93471 Red Hat Security Advisory: perl-YAML:1.24 security update Red Hat Security Advisories (RHSA) · Nov 13, 2026
- WID-SEC-2026-4285 Red Hat Enterprise Linux (perl-yaml, pillow): Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 12, 2026
- ELSA-2026-93471 Important: perl-YAML:1.24 security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Nov 4, 2026
- RLSA-2026:93471 Important: perl-YAML:1.24 security update Rocky Linux Security Advisories · Nov 3, 2026
- ALSA-2026:93471 Important: perl-YAML:1.24 security update AlmaLinux Security Advisories · Nov 3, 2026
- openSUSE-SU-2026:12368-1 perl-YAML-1.321.0-2.1 on GA media SUSE / openSUSE Security Updates · Oct 31, 2026
- ALAS2-2026-4035 Important: perl-YAML security update (Amazon Linux 2) Amazon Linux Security Center (ALAS) · Oct 26, 2026
- USN-8925-1 libyaml-perl vulnerabilities Ubuntu Security Notices (USN) · Oct 14, 2026