CVE-2021-41817: Вразливість Regular Expression Denial of Service методів парсингу Date
Опублікував mame 15-11-2021
Переклав: Andrii Furmanets
Ми випустили версії date gem 3.2.1, 3.1.2, 3.0.2 та 2.0.1, які включають виправлення безпеки для вразливості regular expression denial of service (ReDoS) у методах парсингу date. Зловмисник може використати цю вразливість для ефективної DoS атаки. Цій вразливості присвоєно ідентифікатор CVE CVE-2021-41817.
Деталі
Методи парсингу Date, включаючи Date.parse, використовують Regexps внутрішньо, деякі з яких вразливі до regular expression denial of service. Додатки та бібліотеки, які застосовують такі методи до ненадійного вводу, можуть бути зачеплені.
Виправлення обмежує довжину вводу до 128 байтів за замовчуванням замість зміни regexps. Це тому, що Date gem використовує багато Regexps і можливо, що все ще є невиявлені вразливі Regexps. Для сумісності дозволено видалити обмеження, явно передавши ключове слово limit як nil, наприклад Date.parse(str, limit: nil), але зауважте, що парсинг може зайняти багато часу.
Будь ласка, оновіть date gem до версії 3.2.1, 3.1.2, 3.0.2 та 2.0.1, або пізнішої. Ви можете використати gem update date для оновлення. Якщо ви використовуєте bundler, будь ласка, додайте gem "date", ">= 3.2.1" до вашого Gemfile.
Альтернативно, ви можете оновити Ruby до 3.0.3, 2.7.5, 2.6.9 або пізнішої.
Зачеплені версії
- date gem 2.0.0 або раніше (які є включеними версіями з серією Ruby 2.6 до Ruby 2.6.9)
- date gem 3.0.1 або раніше (які є включеними версіями з серією Ruby 2.7 до Ruby 2.7.5)
- date gem 3.1.1 або раніше (які є включеними версіями з серією Ruby 3.0 до Ruby 3.0.3)
- date gem 3.2.0 або раніше
Подяка
Дякую svalkanov за виявлення цієї проблеми.
Історія
- Спочатку опубліковано 2021-11-15 08:00:00 (UTC)
- Згадка про нові випуски Ruby 2021-11-24 13:20:00 (UTC)
Останні новини
Вийшов Ruby 4.0.5
Вийшов Ruby 4.0.5.
Опублікував k0kubun 20-05-2026
Вийшов Ruby 4.0.4
Вийшов Ruby 4.0.4.
Опублікував k0kubun 11-05-2026
Вийшов Ruby 4.0.3
Вийшов Ruby 4.0.3.
Опублікував k0kubun 21-04-2026
Вийшов Ruby 3.2.11
Вийшов Ruby 3.2.11. Цей реліз містить оновлення gem zlib, яке усуває CVE-2026-27820.
Опублікував hsbt 27-03-2026