Переповнення купи при парсингу екранування URI YAML (CVE-2014-2525)

Опублікував hone and zzak 29-03-2014
Переклав: Andrii Furmanets

Є переповнення при парсингу екранування URI YAML в Ruby. Цій вразливості присвоєно ідентифікатор CVE CVE-2014-2525.

Деталі

Кожного разу, коли парситься рядок у YAML з тегами, спеціально сконструйований рядок може спричинити переповнення купи, яке може призвести до виконання довільного коду.

Наприклад:

YAML.load <code_from_unknown_source>

Зачеплені версії

Ruby 1.9.3-p0 та вище включають psych як парсер YAML за замовчуванням. Будь-які версії psych, пов’язані з libyaml <= 0.1.5, зачеплені.

І, ці версії Ruby включають зачеплену версію libyaml:

  • Ruby 2.0.0-p451 та раніше,
  • Ruby 2.1.0 та Ruby 2.1.1.

Ви можете перевірити версію libyaml, використовуючи:

$ ruby -rpsych -e 'p Psych.libyaml_version'
[0, 1, 5]

Рішення

Користувачам, які встановлюють libyaml у систему, рекомендується оновити libyaml до 0.1.6. При перекомпіляції Ruby, вкажіть на ново оновлений libyaml:

$ ./configure --with-yaml-dir=/path/to/libyaml

Користувачі без системного libyaml покладаються на вбудований libyaml і їм рекомендується оновити psych до 2.0.5, який включає libyaml 0.1.6:

$ gem install psych

або оновіть ваш Ruby до 2.0.0-p481, 2.1.2 або новішої.

Історія

  • Спочатку опубліковано 2014-03-29 01:49:25 UTC
  • Оновлення опубліковано 2014-03-29 09:37:00 UTC
  • Оновлення опубліковано 2014-05-09 03:00:00 UTC

Останні новини

Вийшов Ruby 3.2.11

Вийшов Ruby 3.2.11. Цей реліз містить оновлення gem zlib, яке усуває CVE-2026-27820.

Опублікував hsbt 27-03-2026

Вийшов Ruby 3.3.11

Вийшов Ruby 3.3.11. Цей реліз містить оновлення gem zlib, яке усуває CVE-2026-27820, а також кілька виправлень помилок.

Опублікував hsbt 26-03-2026

Більше новин...