
CVE catalog
CVE-2019-25777
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
- Severity
- Critical · CVSS 9.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Published
- Updated
- Source
- [NVD] · [CVE record]
- EPSS
- 0.35% · Oct 25, 2026
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.
Vulnerable and fixed packages
Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.
| Distribution | Package | Release | Version | Status |
|---|---|---|---|---|
| Debian | libyaml-perl | sid | 1.321-1 | fixed |
| Debian | libyaml-perl | forky | 1.321-1 | fixed |
| Debian | libyaml-perl | trixie | 1.31-1 | fixed |
| Debian | libyaml-perl | bookworm | 1.30-2 | fixed |
| Ubuntu | libyaml-perl | noble | 1.31-1ubuntu0.24.04.1 | fixed |
Fixed-version evidence
| Distribution | Package | Type | Release | Fixed version | Urgency | Origin | Bugs |
|---|---|---|---|---|---|---|---|
| Debian | libyaml-perl | source | sid | 1.29-1 | not yet assigned | Not reported | Not reported |
| Debian | libyaml-perl | source | forky | 1.29-1 | not yet assigned | Not reported | Not reported |
| Debian | libyaml-perl | source | trixie | 1.29-1 | not yet assigned | Not reported | Not reported |
| Debian | libyaml-perl | source | bookworm | 1.29-1 | not yet assigned | Not reported | Not reported |
| Ubuntu | libyaml-perl | deb | noble | 1.31-1ubuntu0.24.04.1 | Not reported | Not reported | Not reported |
OpenFactory catalog packages
[Debian 12 (Bookworm)]
- [libyaml-perl]Fixed
Details (2)
1.30-2· all · bookwormFixed · Fixed:
1.29-1nvd · libyaml-perl · debian · bookworm; nvd · libyaml-perl · debian · 12
1.30-2· all · bookwormFixed · Fixed:
1.29-1nvd · libyaml-perl · debian · bookworm; nvd · libyaml-perl · debian · 12
[Debian 13 (Trixie)]
- [libyaml-perl]Fixed
Details (2)
1.31-1· all · trixieFixed · Fixed:
1.29-1nvd · libyaml-perl · debian · 13
1.31-1· all · trixieFixed · Fixed:
1.29-1nvd · libyaml-perl · debian · 13
Observed:
References
- [https://ftp.suse.com/pub/projects/security/]
- [https://nvd.nist.gov/vuln/detail/CVE-2019-25777]
- [https://osv.dev/vulnerability/DEBIAN-CVE-2019-25777]
- [https://security-tracker.debian.org/tracker/CVE-2019-25777]
- [https://security.access.redhat.com/data/csaf/v2/vex/2019/cve-2019-25777.json]
- [https://ubuntu.com/security/notices/USN-8925-1]
[Debian Security Tracker] · [FIRST EPSS] · [National Vulnerability Database (NVD)] · [OSV Package Vulnerability Database] · [Red Hat security advisories and VEX] · [SUSE security advisories and VEX] · [Ubuntu Security Notices (USN)]