CVE-2025-40908CWE-552

YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified

Critical · published June 1, 2025

CVSS v3.1
9.1
EPSS
0%
Percentile
38.3
In the wild
Unconfirmed
What it is

🔥 A 2-args open in YAML-LibYAML for Perl makes it ridiculously easy to overwrite existing files — like a guest at a buffet taking liberties with the recipe! Think of it as a restaurant where anyone can sneak into the kitchen and swap out your carefully crafted dishes with their own whims — if the server doesn’t check who’s back there, everything on the menu could change. In the same way, this vulnerability allows attackers to modify files without permission, potentially leading to chaos. An attacker could step right into your system and change crucial files! Imagine losing important configurations or even worse, maliciously altering data that could lead to massive disruptions. The potential for data loss or corruption is absolutely devastating!

Put simply

Think of it as a restaurant where anyone can sneak into the kitchen and swap out your carefully crafted dishes with their own whims — if the server doesn’t check who’s back there, everything on the menu could change. In the same way, this vulnerability allows attackers to modify files without permission, potentially leading to chaos. This flaw allows attackers to use the open function with two arguments in YAML-LibYAML before version 0.903.0, enabling unauthorized modifications of existing files. This lack of proper validation can lead to serious security breaches.

What to do

An attacker could step right into your system and change crucial files! Imagine losing important configurations or even worse, maliciously altering data that could lead to massive disruptions. The potential for data loss or corruption is absolutely devastating! Upgrade YAML-LibYAML to version 0.903.0 or later immediately to close this critical vulnerability. Review your code for any instances of the open function that might be misused and consider implementing stricter file permissions as an extra layer of protection. You’ve got this! With a quick update, you can lock this vulnerability down and keep your system safe. 🛡️

The record
Technical detail
CVSS v3.1
9.1 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
CVSS v4.0
Not supplied
EPSS
0.00452 · 38.3th percentile
Weakness
CWE-552 · Files or Directories Accessible to External Parties
Published
2025-06-01T13:41Z
EPSS history
Timeline
  • 01 JUN 13:41Z
    YAML-LibYAML prior to 0.903.0 for Perl uses 2-args open, allowing existing files to be modified
    cvelistv5