# CVE-2017-20285: libyaml-perl: YAML versions before 1.30 for Perl allow a loaded document to trigger the DESTROY method of arbitrary classes

CVE-2017-20285 is fixed in 2 products on 1 platform, first by DEBIAN-CVE-2017-20285, released October 5, 2026. It is not reported as exploited. Patch Radar priority: Urgent.

- Web page: https://patchblox.com/security/cve/CVE-2017-20285
- Priority: Urgent
- CVSS: 9.1 (critical)
- EPSS: 0.0034
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: Oct 5, 2026

## Description

YAML versions before 1.30 for Perl allow a loaded document to trigger the DESTROY method of arbitrary classes.  A perl/hash:Class tag blesses a hash into the class it names. The document supplies the object's fields, and Perl calls DESTROY when it goes out of scope.  What DESTROY does depends on the classes the process has loaded. With File::Temp::Dir from core Perl, it can delete a directory tree the document names.

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | libyaml-perl Debian 12.15 (bookworm) | 1.30-1 | [DEBIAN-CVE-2017-20285](https://patchblox.com/security/data/fix/linux/debian-cve-2017-20285.md) | Oct 5, 2026 |
| Linux | libyaml-perl Debian 13.5 (trixie) | 1.30-1 | [DEBIAN-CVE-2017-20285](https://patchblox.com/security/data/fix/linux/debian-cve-2017-20285.md) | Oct 5, 2026 |
| Linux | libyaml-perl Debian 14 | 1.30-1 | [DEBIAN-CVE-2017-20285](https://patchblox.com/security/data/fix/linux/debian-cve-2017-20285.md) | Oct 5, 2026 |
| Linux | libyaml-perl Ubuntu 18.04.6 LTS (bionic) | 1.24-1ubuntu0.1~esm1 | [libyaml-perl 1.24-1ubuntu0.1~esm1](https://patchblox.com/security/data/fix/linux/ubuntu-bionic-libyaml-perl-1.24-1ubuntu0.1-esm1.md) | Oct 16, 2026 |
| Linux | perl-YAML RHEL 8 | 0:1.24-4.module+el8.10.0+25073+d1062575 | [RHSA-2026:93471](https://patchblox.com/security/data/fix/linux/rhsa-2026-93471.md) | Nov 3, 2026 |
| Linux | perl-YAML almalinux 8 | 1.24-4.module_el8.10.0+4341+ab0ec422 | [ALSA-2026:93471](https://patchblox.com/security/data/fix/linux/alsa-2026-93471.md) | Nov 7, 2026 |
| Linux | perl-YAML ol 8 | 0:1.24-4.module+el8.10.0+91104+f3b3492f | [ELSA-2026-93471](https://patchblox.com/security/data/fix/linux/elsa-2026-93471.md) | Nov 7, 2026 |
| Linux | perl-YAML rocky 8 | 0:1.24-4.module+el8.10.0+40403+bd06a93a | [RLSA-2026:93471](https://patchblox.com/security/data/fix/linux/rlsa-2026-93471.md) | Nov 7, 2026 |

---

Data as of 2026-11-08T13:06:02Z UTC. Source: Patchblox Patch Radar (https://patchblox.com/security/patch-radar). Patchblox finds out-of-date software on Windows, macOS and Linux and updates it through release rings: https://patchblox.com/demo

Free to use with attribution: show "Data: Patchblox Patch Radar" with a link to https://patchblox.com/security/patch-radar. Terms, including what needs a written agreement: https://patchblox.com/security/patch-radar/use-the-data

Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.
