CVE-2014-9130
NoneCVSS
—
EPSS
13.2%
Published
Dec 8, 2014
CISA due date
—
Cloudanix analysis
A problem in a common data-reading library lets attackers remotely shut down programs that use it by feeding them oddly formatted information.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The vulnerability allows remote attackers to trigger an assertion failure and crash in the YAML scanner when processing specially crafted input containing line-wrapping constructs, resulting in denial of service.
Why it matters to the business
Applications or services relying on the affected YAML parsing library can be disrupted by remote unauthenticated attackers, leading to unplanned downtime and degraded availability for users or dependent systems.
How an attack unfolds
An attacker identifies a target that accepts YAML input processed by the vulnerable LibYAML version, crafts a payload that exercises the line-wrapping code path in scanner.c, and submits it over the network to induce an immediate crash without requiring authentication.
How to fix it
Upgrade affected components to versions that incorporate corrected LibYAML handling; for GitLab (Bitnami) deployments apply the update to version 13.9.7 or later. Where direct library updates are unavailable, implement input validation or sandboxing around YAML parsing routines.
How to confirm the fix worked
Confirm the installed LibYAML or dependent package version is newer than 0.1.6, re-test parsing of previously crashing line-wrapped YAML samples to verify they no longer trigger assertions, and monitor application stability under load with crafted inputs.
Typical attack path
- Locate a network-accessible service or API endpoint that ingests YAML data using the vulnerable parser
- Generate a minimal YAML document containing line-wrapping sequences known to trigger the assertion
- Transmit the crafted payload to the target endpoint
- Observe service crash or restart, confirming denial of service
How to detect it
Review application and system logs for sudden process terminations or assertion failures originating from YAML parsing code paths; correlate with inbound requests containing YAML content around the time of crashes.
- assertion failure.*scanner.c
- yaml.*line-wrapping
- LibYAML.*crash
What your security team should do
- Prioritize patching GitLab (Bitnami) instances to 13.9.7 within standard change windows given public exploit availability
- Inventory all applications using YAML-LibYAML or LibYAML 0.1.5/0.1.6 and schedule upgrades
- Add YAML parser crash detection to monitoring to accelerate response to similar issues
The record
scanner.c in LibYAML 0.1.5 and 0.1.6, as used in the YAML-LibYAML (aka YAML-XS) module for Perl, allows context-dependent attackers to cause a denial of service (assertion failure and crash) via vectors involving line-wrapping.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.4 | yaml | 0 | 0.1.6-r1 |
| Debian:11 | libyaml | 0 | 0.1.6-3 |
| Debian:11 | libyaml-libyaml-perl | 0 | 0.41-6 |
| Debian:11 | pyyaml | 0 | 3.11-2 |
| Debian:12 | libyaml | 0 | 0.1.6-3 |
| Debian:12 | libyaml-libyaml-perl | 0 | 0.41-6 |
| Debian:12 | pyyaml | 0 | 3.11-2 |
| Debian:13 | libyaml | 0 | 0.1.6-3 |
| Debian:13 | libyaml-libyaml-perl | 0 | 0.41-6 |
| Debian:13 | pyyaml | 0 | 3.11-2 |
| Debian:6.0 | libyaml | 0 | 0.1.3-1+deb6u5 |
| Debian:6.0 | libyaml-libyaml-perl | 0 | 0.33-1+squeeze4 |
| Debian:6.0 | pyyaml | 0 | 3.09-5+deb6u1 |
| Debian:7 | libyaml | 0 | 0.1.4-2+deb7u5 |
| Debian:7 | libyaml-libyaml-perl | 0 | 0.38-3+deb7u3 |
| Debian:7 | pyyaml | 0 | 3.10-4+deb7u1 |
| Mageia:4 | perl-YAML-LibYAML | 0 | 0.410.0-2.3.mga4 |
| Mageia:4 | python-yaml | 0 | 3.10-5.1.mga4 |
| Mageia:4 | yaml | 0 | 0.1.6-1.1.mga4 |
| Red Hat:enterprise_linux:6::client | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::client | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::client | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::computenode | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::computenode | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::computenode | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::server | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::server | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::server | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::workstation | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::workstation | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:6::workstation | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:enterprise_linux:7::client | libyaml | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::client | libyaml-debuginfo | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::client | libyaml-devel | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::computenode | libyaml | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::computenode | libyaml-debuginfo | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::computenode | libyaml-devel | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::server | libyaml | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::server | libyaml-debuginfo | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::server | libyaml-devel | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::workstation | libyaml | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::workstation | libyaml-debuginfo | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:enterprise_linux:7::workstation | libyaml-devel | 0 | 0:0.1.4-11.el7_0 |
| Red Hat:openstack:4::el6 | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:openstack:4::el6 | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:openstack:4::el6 | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:openstack:5::el6 | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:openstack:5::el6 | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:openstack:5::el6 | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:rhel_software_collections:1::el6 | libyaml | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:rhel_software_collections:1::el6 | libyaml-debuginfo | 0 | 0:0.1.3-4.el6_6 |
| Red Hat:rhel_software_collections:1::el6 | libyaml-devel | 0 | 0:0.1.3-4.el6_6 |
| SUSE:Cloud Compute Node for SUSE Linux Enterprise 12 5 | python-PyYAML | 0 | 3.10-15.1 |
| SUSE:Enterprise Storage 1.0 | python-PyYAML | 0 | 3.10-15.1 |
| SUSE:Linux Enterprise Desktop 12 | perl-YAML-LibYAML | 0 | 0.38-10.1 |
| SUSE:Linux Enterprise High Availability Extension 12 | python-PyYAML | 0 | 3.10-15.1 |
| SUSE:Linux Enterprise Module for Public Cloud 12 | python-PyYAML | 0 | 3.10-15.1 |
| SUSE:Linux Enterprise Server 12 | perl-YAML-LibYAML | 0 | 0.38-10.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | perl-YAML-LibYAML | 0 | 0.38-10.1 |
| Ubuntu:14.04:LTS | libyaml | 0 | 0.1.4-3ubuntu3.1 |
| Ubuntu:14.04:LTS | libyaml-libyaml-perl | 0 | 0.41-5ubuntu0.14.04.1 |
| Ubuntu:14.04:LTS | pyyaml | 0 | 3.10-4ubuntu0.1 |
| openSUSE:Tumbleweed | libyaml | 0 | 0.1.6-4.8 |
| openSUSE:Tumbleweed | perl-YAML-LibYAML | 0 | 0.59-2.11 |
Related vulnerabilities
- CVE-2026-113786 pypdf is a free and open-source pure-python PDF library. CWE-20
- CVE-2026-112081 A vulnerability was determined in hankcs HanLP up to 2.1.0-beta.64. CWE-20
- CVE-2026-111869 A vulnerability was identified in makeplane plane up to 1.4.2. CWE-20
- CVE-2026-100347 kin-openapi is a Go project for handling OpenAPI files. CWE-20
- CVE-2026-99999 In the Linux kernel, the following vulnerability has been resolved: ipv4: validate… CWE-20
- CVE-2026-107726 Hazelcast is a unified real-time data platform combining stream processing with a fast… CWE-20
- CVE-2026-105757 vLLM is an inference and serving engine for large language models. CWE-20
- CVE-2026-105756 vLLM is an inference and serving engine for large language models. CWE-20