Facebook Исправлены ошибки «Раскрытие памяти с использованием изображений JPEG» в серверах HHVM


Facebook исправил две уязвимости высокой степени серьезности в своем серверном приложении, которые могли позволить удаленным злоумышленникам несанкционированно получить конфиденциальную информацию или вызвать отказ в обслуживании, просто загрузив вредоносный файл изображения JPEG.

Уязвимости находятся в HHVM (HipHop Virtual Machine) – высокопроизводительная виртуальная машина с открытым исходным кодом, разработанная Facebook для выполнения программ, написанных на языках программирования PHP и Hack.

  

HHVM использует подход компиляции "точно в срок" (JIT) для достижения превосходной производительности вашего кода Hack и PHP при сохранении гибкости разработки, которую обеспечивает язык PHP.

Поскольку уязвимое серверное приложение HHVM является открытым и бесплатным, обе эти проблемы могут также повлиять на другие веб-сайты, использующие HHVM, включая Wikipedia, Box и особенно те, которые позволяют своим пользователям загружать изображения на сервер.

Обе уязвимости, перечисленные ниже, возникают из-за возможного переполнения памяти в расширении GD HHVM при передаче специально созданного недопустимого ввода JPEG, что приводит к чтению за пределами допустимого диапазона – недостатку, который позволяет неправильно сформированной программе читать данные из-за пределов выделенной памяти.

  • CVE-2019-11925: При обработке маркера блока JPEG APP12 в расширении GD возникают недостаточные проблемы с проверкой границ, что позволяет потенциальным злоумышленникам получить доступ к памяти за пределами допустимого преднамеренно созданного недопустимого ввода JPEG.
  • CVE-2019-11926: Недостаточные проблемы проверки границ возникают при обработке маркеров M_SOFx из заголовков JPEG в расширении GD, что позволяет потенциальным злоумышленникам получить доступ к памяти за пределами допустимого преднамеренно созданного недопустимого ввода JPEG.

Обе уязвимости затрагивают все поддерживаемые версии HHVM до 3.30.9, все версии между HHVM 4.0.0 и 4.8.3, все версии между HHVM 4.9.0 и 4.15.2 и версии HHVM с 4.16.0 до 4.16.3, 4.17. .0 до 4.17.2, 4.18.0 до 4.18.1, 4.19.0, 4.20.0 до 4.20.1.

Команда HHVM устранила уязвимости, выпустив версии 4.21.0, 4.20.2, 4.19.1, 4.18.2, 4.17.3, 4.16.4, 4.15.3, 4.8.4 и 3.30.10.

Если ваш веб-сайт или сервер также использует HHVM, настоятельно рекомендуется обновить его до последней версии программного обеспечения.