CVE-2025-40908
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
CVE-2025-40908- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-552
- Updated
- 2026-11-02
EUVDEUVD-2025-16577
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
EUVD-2025-16577- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-jh9m-3m95-c6hp
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
GHSA-jh9m-3m95-c6hp- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-552
- Updated
- 2026-11-02
NVD
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
CVE-2025-40908- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-552
- Updated
- 2026-11-02
OSV
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
CVE-2025-40908- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-552
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2025-40908
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
DEBIAN-CVE-2025-40908- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
Show 19 moreShow less
OSVOESA-2025-1591
9.1
perl-YAML-LibYAML security update
Security Fix(es):
A vulnerability was found in TINITA YAML-LibYAML up to 0.902.x on Perl. It has been classified as problematic.CWE is classifying the issue as CWE-552. The product makes files or directories accessible to unauthorized actors, even though they should not be.This is going to have an impact on confidentiality.Upgrading to version 0.903.0 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.(CVE-2025-40908)
- Record
OESA-2025-1591- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2025:9329
7.7
Red Hat Security Advisory: perl-YAML-LibYAML security update
- Record
RHSA-2025:9329- CVSS 3.1
- 7.7 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2025:9330
7.7
Red Hat Security Advisory: perl-YAML-LibYAML security update
- Record
RHSA-2025:9330- CVSS 3.1
- 7.7 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2025:9338
7.7
Red Hat Security Advisory: perl-YAML-LibYAML security update
- Record
RHSA-2025:9338- CVSS 3.1
- 7.7 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRLSA-2025:9329
7.7
Important: perl-YAML-LibYAML security update
Kirill Siminov's "libyaml" is arguably the best YAML implementation. The C library is written precisely to the YAML 1.1 specification. It was originally bound to Python and was later bound to Ruby.
Security Fix(es):
- yaml-libyaml: LibYAML Perl File Modification Vulnerability (CVE-2025-40908)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
RLSA-2025:9329- CVSS 3.1
- 7.7 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRLSA-2025:9330
7.7
Important: perl-YAML-LibYAML security update
Kirill Siminov's "libyaml" is arguably the best YAML implementation. The C library is written precisely to the YAML 1.1 specification. It was originally bound to Python and was later bound to Ruby.
Security Fix(es):
- yaml-libyaml: LibYAML Perl File Modification Vulnerability (CVE-2025-40908)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
RLSA-2025:9330- CVSS 3.1
- 7.7 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2025-40908
9.1
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
UBUNTU-CVE-2025-40908- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVALSA-2025:9329 No score
Important: perl-YAML-LibYAML security update
Kirill Siminov's "libyaml" is arguably the best YAML implementation. The C library is written precisely to the YAML 1.1 specification. It was originally bound to Python and was later bound to Ruby.
Security Fix(es):
- yaml-libyaml: LibYAML Perl File Modification Vulnerability (CVE-2025-40908)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
ALSA-2025:9329- Updated
- 2026-11-02
OSVALSA-2025:9330 No score
Important: perl-YAML-LibYAML security update
Kirill Siminov's "libyaml" is arguably the best YAML implementation. The C library is written precisely to the YAML 1.1 specification. It was originally bound to Python and was later bound to Ruby.
Security Fix(es):
- yaml-libyaml: LibYAML Perl File Modification Vulnerability (CVE-2025-40908)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
ALSA-2025:9330- Updated
- 2026-11-02
OSVAZL-62242 No score
CVE-2025-40908 affecting package perl-YAML-LibYAML for versions less than 0.902.0-2
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
AZL-62242- Updated
- 2026-11-02
OSVAZL-62279 No score
CVE-2025-40908 affecting package perl-YAML-LibYAML 0.81-3
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
- Record
AZL-62279- Updated
- 2026-11-02
OSVMGASA-2025-0275 No score
Updated perl-YAML-LibYAML packages fix security vulnerability
YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified. (CVE-2025-40908)
- Record
MGASA-2025-0275- Updated
- 2026-11-02
OSVopenSUSE-SU-2025:15261-1 No score
perl-YAML-LibYAML-0.904.0-2.1 on GA media
These are all security issues fixed in the perl-YAML-LibYAML-0.904.0-2.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2025:15261-1- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-11-CVE-2025-40908 No score
CVE-2025-40908 in libyaml-libyaml-perl - Patched by Root
Root has patched CVE-2025-40908 in the libyaml-libyaml-perl package for Root:Debian:11. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-11-CVE-2025-40908- Updated
- 2026-11-02
OSVSUSE-RU-2025:03081-1 No score
Recommended update for perl-YAML-LibYAML
This update for perl-YAML-LibYAML fixes the following issues:
- Updated to 0.904.0
- Dependency submission for the openQA stack
- Record
SUSE-RU-2025:03081-1- Updated
- 2026-11-02
OSVSUSE-SU-2025:01885-1 No score
Security update for perl-YAML-LibYAML
This update for perl-YAML-LibYAML fixes the following issues:
- CVE-2025-40908: YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified (bsc#1243902)
- Record
SUSE-SU-2025:01885-1- Updated
- 2026-11-02
OSVSUSE-SU-2025:01885-2 No score
Security update for perl-YAML-LibYAML
This update for perl-YAML-LibYAML fixes the following issues:
- CVE-2025-40908: YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified (bsc#1243902)
- Record
SUSE-SU-2025:01885-2- Updated
- 2026-11-02
OSVSUSE-SU-2025:01886-1 No score
Security update for perl-YAML-LibYAML
This update for perl-YAML-LibYAML fixes the following issues:
- CVE-2025-40908: YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified (bsc#1243902)
- Record
SUSE-SU-2025:01886-1- Updated
- 2026-11-02
OSVUSN-7632-1 No score
libyaml-libyaml-perl vulnerability
It was discovered that YAML-LibYAML incorrectly handled certain file names. An attacker could possibly use this issue to overwrite arbitrary files.
- Record
USN-7632-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
perl-YAML-LibYAMLAlmaLinux:8 |
before 1:0.70-2.el8_10 | 1:0.70-2.el8_10 |
perl-YAML-LibYAMLAlmaLinux:9 |
before 1:0.82-6.1.el9_6 | 1:0.82-6.1.el9_6 |
perl-YAML-LibYAMLAzure Linux:3 |
before 0.902.0-2 | 0.902.0-2 |
perl-YAML-LibYAMLAzure Linux:2 |
through 0.81-3 | None known |
libyaml-libyaml-perlDebian:12 |
before 0.86+ds-1+deb12u1, plus listed versions 0.86+ds-1 |
0.86+ds-1+deb12u1 |
libyaml-libyaml-perlDebian:13 |
before 0.903.0+ds-1 | 0.903.0+ds-1 |
libyaml-libyaml-perlDebian:14 |
before 0.903.0+ds-1 | 0.903.0+ds-1 |
perl-YAML-LibYAMLMageia:9 |
before 0.860.0-1.1.mga9 | 0.860.0-1.1.mga9 |
perl-YAML-LibYAMLopenEuler:22.03-LTS-SP4 |
before 0.83-2.oe2203sp4 | 0.83-2.oe2203sp4 |
perl-YAML-LibYAMLopenEuler:24.03-LTS |
before 0.88-2.oe2403sp1 | 0.88-2.oe2403sp1 |
Show 29 moreShow less
| Package | Affected | Fixed |
|---|---|---|
perl-YAML-LibYAMLopenEuler:24.03-LTS-SP1 |
before 0.88-2.oe2403sp1 | 0.88-2.oe2403sp1 |
perl-YAML-LibYAMLopenEuler:20.03-LTS-SP4 |
before 0.74-3.oe2003sp4 | 0.74-3.oe2003sp4 |
perl-YAML-LibYAMLopenEuler:22.03-LTS-SP3 |
before 0.83-2.oe2203sp3 | 0.83-2.oe2203sp3 |
perl-YAML-LibYAMLRed Hat:enterprise_linux:8::crb |
before 1:0.70-2.el8_10 | 1:0.70-2.el8_10 |
perl-YAML-LibYAML-debuginfoRed Hat:enterprise_linux:8::crb |
before 1:0.70-2.el8_10 | 1:0.70-2.el8_10 |
perl-YAML-LibYAML-debugsourceRed Hat:enterprise_linux:8::crb |
before 1:0.70-2.el8_10 | 1:0.70-2.el8_10 |
perl-YAML-LibYAMLRed Hat:enterprise_linux:9::crb |
before 1:0.82-6.1.el9_6 | 1:0.82-6.1.el9_6 |
perl-YAML-LibYAML-debuginfoRed Hat:enterprise_linux:9::crb |
before 1:0.82-6.1.el9_6 | 1:0.82-6.1.el9_6 |
perl-YAML-LibYAML-debugsourceRed Hat:enterprise_linux:9::crb |
before 1:0.82-6.1.el9_6 | 1:0.82-6.1.el9_6 |
perl-YAML-LibYAMLRed Hat:rhel_eus:9.4::crb |
before 1:0.82-6.el9_4.1 | 1:0.82-6.el9_4.1 |
perl-YAML-LibYAML-debuginfoRed Hat:rhel_eus:9.4::crb |
before 1:0.82-6.el9_4.1 | 1:0.82-6.el9_4.1 |
perl-YAML-LibYAML-debugsourceRed Hat:rhel_eus:9.4::crb |
before 1:0.82-6.el9_4.1 | 1:0.82-6.el9_4.1 |
perl-YAML-LibYAMLRocky Linux:8 |
before 1:0.70-2.el8_10 | 1:0.70-2.el8_10 |
perl-YAML-LibYAMLRocky Linux:9 |
before 1:0.82-6.1.el9_6 | 1:0.82-6.1.el9_6 |
libyaml-libyaml-perlRoot:Debian:11 |
before 0.82+repack-1.root.io.1 | 0.82+repack-1.root.io.10.82+repack-1.root.io.20.82+repack-1.root.io.30.82+repack-1.root.io.50.82+repack-1.root.io.40.82+repack-1.aikido.60.82+repack-1.aikido.70.82+repack-1.aikido.8 |
rootio-libyaml-libyaml-perlRoot:Debian:11 |
before 0.82+repack-1.root.io.1 | 0.82+repack-1.root.io.10.82+repack-1.root.io.20.82+repack-1.root.io.30.82+repack-1.root.io.50.82+repack-1.root.io.40.82+repack-1.aikido.60.82+repack-1.aikido.70.82+repack-1.aikido.8 |
perl-YAML-LibYAMLSUSE:Linux Enterprise Module for Development Tools 15 SP6 |
before 0.904.0-150000.3.16.1 | 0.904.0-150000.3.16.1 |
perl-YAML-LibYAMLSUSE:Linux Enterprise Module for Development Tools 15 SP7 |
before 0.904.0-150000.3.16.1 | 0.904.0-150000.3.16.1 |
perl-YAML-LibYAMLopenSUSE:Leap 15.6 |
before 0.904.0-150000.3.16.1 | 0.904.0-150000.3.16.1 |
perl-YAML-LibYAMLSUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 |
before 0.38-11.3.1 | 0.38-11.3.1 |
perl-YAML-LibYAMLSUSE:Linux Enterprise Server 12 SP5-LTSS |
before 0.38-11.3.1 | 0.38-11.3.1 |
perl-YAML-LibYAMLSUSE:Linux Enterprise Module for Development Tools 15 SP6 |
before 0.890.0-150000.3.11.1 | 0.890.0-150000.3.11.1 |
perl-YAML-LibYAMLopenSUSE:Leap 15.6 |
before 0.890.0-150000.3.11.1 | 0.890.0-150000.3.11.1 |
libyaml-libyaml-perlUbuntu:16.04:LTS |
All versions, plus listed versions 0.41-60.41-6build1 |
None known |
libyaml-libyaml-perlUbuntu:18.04:LTS |
All versions, plus listed versions 0.63-2build10.69+repack-1 |
None known |
libyaml-libyaml-perlUbuntu:20.04:LTS |
All versions, plus listed versions 0.80+repack-10.80+repack-1build10.80+repack-20.81+repack-1 |
None known |
libyaml-libyaml-perlUbuntu:22.04:LTS |
before 0.83+ds-1ubuntu0.22.04.1, plus listed versions 0.82+repack-1build10.82+repack-1build20.83+ds-10.83+ds-1build1 |
0.83+ds-1ubuntu0.22.04.1 |
libyaml-libyaml-perlUbuntu:24.04:LTS |
before 0.89+ds-1ubuntu0.24.04.1, plus listed versions 0.86+ds-10.89+ds-10.89+ds-1build10.89+ds-1build2 |
0.89+ds-1ubuntu0.24.04.1 |
perl-YAML-LibYAMLopenSUSE:Tumbleweed |
before 0.904.0-2.1 | 0.904.0-2.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-40908 is a critical vulnerability (CVSS 9.1) in Ingydotnet Yaml-libyaml, published June 1, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.47%, the 41st percentile. Fixed in perl-YAML-LibYAML 1:0.70-2.el8_10.
References
github.com/ingydotnet/yaml-libyaml-pm/issues/120
github.com/ingydotnet/yaml-libyaml-pm/pull/121
github.com/ingydotnet/yaml-libyaml-pm/pull/122
nvd.nist.gov/vuln/detail/CVE-2025-40908
github.com/advisories/GHSA-jh9m-3m95-c6hp
access.redhat.com/errata/RHSA-2025:9329
Show 31 moreShow less
access.redhat.com/security/cve/CVE-2025-40908
bugzilla.redhat.com/2369630
errata.almalinux.org/8/ALSA-2025-9329.html
access.redhat.com/errata/RHSA-2025:9330
errata.almalinux.org/9/ALSA-2025-9330.html
cpan.org/modules
github.com/CVEProject/cvelistV5/tree/main/cves/2025/40xxx/CVE-2025-40908.json
github.com/ingydotnet/yaml-libyaml-pm
security-tracker.debian.org/tracker/CVE-2025-40908
advisories.mageia.org/MGASA-2025-0275.html
bugs.mageia.org/show_bug.cgi?id=34448
lists.opensuse.org/archives/list/[email protected]/message/HKC72252CNE2PZENAI7UN24YB5X2Z5EK
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2025-1591
access.redhat.com/security/updates/classification
bugzilla.redhat.com/show_bug.cgi?id=2369630
security.access.redhat.com/data/csaf/v2/advisories/2025/rhsa-2025_9329.json
cve.org/CVERecord?id=CVE-2025-40908
security.access.redhat.com/data/csaf/v2/advisories/2025/rhsa-2025_9330.json
access.redhat.com/errata/RHSA-2025:9338
security.access.redhat.com/data/csaf/v2/advisories/2025/rhsa-2025_9338.json
errata.rockylinux.org/RLSA-2025:9329
errata.rockylinux.org/RLSA-2025:9330
suse.com/support/update/announcement/-2025-3081/suse-ru-202503081-1
suse.com/security/cve/CVE-2025-40908
suse.com/support/update/announcement/2025/suse-su-202501885-1
bugzilla.suse.com/1243902
suse.com/support/update/announcement/2025/suse-su-202501885-2
suse.com/support/update/announcement/2025/suse-su-202501886-1
ubuntu.com/security/CVE-2025-40908
lists.security.metacpan.org/cve-announce/msg/30071726
ubuntu.com/security/notices/USN-7632-1