CVE-2026-33532 in yamlthông tin

Tóm tắt

Bởi VulDB • 17/06/2026

`yaml` là một trình phân tích cú pháp (parser) và bộ tuần tự hóa (serialiser) YAML cho JavaScript. Việc phân tích tài liệu YAML bằng cách sử dụng phiên bản của `yaml` trên nhánh 1.x trước 1.10.3 hoặc trên nhánh 2.x trước 2.8.3 có thể gây ra lỗi RangeError do tràn ngăn xếp (stack overflow). Giai đoạn giải quyết/thành phần hóa node (node resolution/composition) thực hiện các lệnh gọi hàm đệ quy mà không giới hạn độ sâu. Một kẻ tấn công có khả năng cung cấp dữ liệu YAML để phân tích cú pháp có thể kích hoạt `RangeError: Maximum call stack size exceeded` với một payload nhỏ (~2–10 KB). Lỗi RangeError này không phải là YAMLParseError, do đó các ứng dụng chỉ bắt lỗi đặc thù của YAML sẽ gặp phải loại ngoại lệ không mong đợi. Tùy thuộc vào cách xử lý ngoại lệ của ứng dụng chủ (host application), điều này có thể khiến yêu cầu thất bại hoặc chấm dứt tiến trình Node.js. Các chuỗi luồng (flow sequences) cho phép lồng nhau sâu với số byte tối thiểu (2 byte mỗi cấp: một `[` và một `]`). Trên ngăn xếp mặc định của Node.js, khoảng 1.000–5.000 mức độ lồng nhau (đầu vào 2–10 KB) sẽ làm cạn kiệt ngăn xếp lệnh gọi. Ngưỡng chính xác phụ thuộc vào môi trường (phiên bản Node.js, kích thước ngăn xếp, độ sâu ngăn xếp lệnh gọi tại thời điểm khởi tạo). Lưu ý: Trình phân tích cú pháp `Parser` của thư viện (giai đoạn CST) sử dụng phương pháp lặp dựa trên ngăn xếp và không bị ảnh hưởng. Chỉ có giai đoạn compose/resolve thực hiện đệ quy bằng cách sử dụng ngăn xếp lệnh gọi thực tế. Cả ba API phân tích cú pháp công khai đều bị ảnh hưởng: `YAML.parse()`, `YAML.parseDocument()` và `YAML.parseAllDocuments()`. Các phiên bản 1.10.3 và 2.8.3 chứa bản vá lỗi.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

chịu trách nhiệm

GitHub M

Đặt trước

20/03/2026

Tiết lộ

26/03/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00470

KEV

không

Các hoạt động

rất thấp

Nguồn

Want to know what is going to be exploited?

We predict KEV entries!