Исправленная в Java, .NET и PHP ошибка десериализации теперь обнаружена в Ruby
В 2015 году в Java была обнаружена так называемая «ошибка десериализации», вызвавшая хаос во всей экосистеме и получившая название Java Apocalypse. Двумя годами позднее она была обнаружена в .NET и PHP, а на прошлой неделе исследователи австралийской компании Elttam также выявили несколько уязвимых приложений, написанных на Ruby.
Уязвимость связана с тем, как Ruby обрабатывает процессы сериализации и десериализации. Сериализация представляет собой процесс преобразования объекта в поток байтов для сохранения или передачи в память, а противоположный процесс называется десериализация. Обе операции поддерживаются практически всеми языками программирования (названия процессов могут отличаться, но принцип остается тот же самый).
Обнаруженная несколько лет назад уязвимость позволяет использовать процессы сериализации и десериализации с целью заставить приложение запускать вредоносные команды, в особенности когда пользователь вводит данные непосредственно в сериализатор без предварительной проверки.
В свое время Apache, Cisco, Red Hat, VMWare, IBM, Intel, Adobe, HP, Jenkins и SolarWinds выпустили соответствующие уведомления и обновления безопасности, исправляющие уязвимость Java Apocalypse. В 2017 году проблема была обнаружена в.NET и PHP, а теперь настал черед Ruby. Проблема затрагивает версии от 2.0 до 2.5.
Читайте также
- Ошибка в API Facebook предоставляла доступ к фото 6,8 млн пользователей
- Одного ноутбука оказалось достаточно для компрометации всей корпоративной сети
- Депутаты Госдумы разработали план по обеспечению работы Рунета на случай отключения от Сети
- Морские суда часто подвергаются кибератакам
- 25 декабря состоится встреча сообщества специалистов по кибербезопасности АСУ ТП / RUSCADASEC
- Уязвимость в приложении Logitech позволяла удаленно инициировать нажатие клавиш