CVE.futuretools
NVD NIST
CVE-2026-57236

Nokogiri: Possible Use-After-Free when `Nokogiri::XML::Document#encoding=` raises an exception

CVSS 3.1Low
1.7/ 10.0
Опубликовано
Обновлено
В атаках
Не зафиксировано
Публичный PoC
Отсутствует
Анализ подготовлен:CVE Futuretools Threat Intelligence
Верификация: MITRE CVE List · CISA KEV · NIST NVD
ПАТЧ ДОСТУПЕН: ВЕРСИЯ 1.19.4
Обновить Nokogiri до версии 1.19.4 или новее. Сборки на JRuby уязвимости не подвержены.

01 // ТЕХНИЧЕСКАЯ СУТЬ УЯЗВИМОСТИ

Use-after-free в Nokogiri при обработке исключений метода encoding=. Дефект приводит к аварийному завершению процесса или чтению освобожденной памяти.

02 // АНАТОМИЯ АТАКИ И ДЕФЕКТ ЛОГИКИ

Вызов Document#encoding= с некорректным значением (не строка или наличие нулевого байта) освобождает буфер текущей кодировки до генерации исключения без его перезаписи. Объект документа сохраняет висячий указатель на освобожденную область памяти в реализации CRuby (libxml2).

03 // СИСТЕМНЫЕ ПОСЛЕДСТВИЯ

Последующее обращение к Document#encoding приводит к чтению невалидной памяти, падению процесса (Segmentation fault) или утечке байтов кучи в результирующую строку Ruby.

04 // МАТРИЦА ЗАТРОНУТЫХ ПАКЕТОВ

sparklemotionnokogiri
все ранние➔Fix: 1.19.4
——
>= 0➔Fix: 1.19.4

05 // ПЕРВОИСТОЧНИКИ И БЮЛЛЕТЕНИ (1)

06 // ЦИТИРОВАНИЕ ДАННЫХ И ИСТОЧНИК

Для включения аналитической карточки в отчёты по безопасности, матрицы рисков или исследовательские публикации используйте стандартизированный формат цитирования:

Библиографическая ссылка (Plain text)
CVE Futuretools (2026). Анализ уязвимости CVE-2026-57236: Nokogiri: Possible Use-After-Free when `Nokogiri::XML::Document#encoding=` raises an exception. URL: https://cve.futuretools.ru/cve/CVE-2026-57236
BibTeX формат (LaTeX)
@misc{cve_futuretools_cve_2026_57236,
  title = {{CVE-2026-57236: Nokogiri: Possible Use-After-Free when `Nokogiri::XML::Document#encoding=` raises an exception}},
  author = {{CVE Futuretools}},
  year = {2026},
  howpublished = {\url{https://cve.futuretools.ru/cve/CVE-2026-57236}},
  note = {Оперативный инженерный анализ киберугроз}
}