Ошибка библиотеки компрессии/декомпрессии данных в оперативной памяти, обнаруженная в программе zlib, делает Linux-компьютеры уязвимыми.
Данная брешь проявляется в любой Linux-программе, использующей для декомпрессии библиотеку zlib, в том числе в ядре операционной системы. Эту библиотеку используют многие не-Linux операционные системы, что делает их также уязвимыми.
Уязвимость приводит к некорректной работе важных функций управления памятью библиотеки компрессии zlib. Используя данную уязвимость, злоумышленник может попытаться нарушить функционирование программ, в которых используется zlib. Также, существует вероятность того, что с помощью этой дыры в системе может быть запущен какой-либо вредоносный код.
Обнаруженная уязвимость заключается в непредсказуемом поведении программ, использующих библиотеку компрессии zlib, когда злонамеренный код пытается освободить память более одного раза. Большинство нормальных программ не предпринимает повторных попыток освобождения памяти, разве что случайно, однако злоумышленник может воспользоваться этим методом, чтобы попытаться заставить операционную систему выполнить код, передающий ему управление компьютером.
Ошибка была обнаружена пользователем Linux Маттиасом Клейзеном (Matthias Clasen). Тестируя библиотеку gdk-pixbuf, он создал файл в формате PNG, вызывающий ошибку в библиотеке libpng. Как выяснилось впоследствии, причина заключалась в библиотеке zlib 1.1.3, которую использует libpng. При определённых условиях zlib может дважды освободить одну и ту же область памяти.
Поскольку дыра обнаружена именно в библиотеке, уязвимыми оказываются любые приложения, которые обращаются к ней, вне зависимости от операционной системы, под которой они работают. Zlib используют многие программы, работающие со сжатыми данными. К библиотеке обращаются графическая оболочка Linux X11, браузеры Netscape, Mozilla и Internet Explorer, многие программы для работы с графикой и прочие. Функции библиотеки используются для сжатия данных, передаваемых по сетям.
Чрезвычайно опасная уязвимость в программе zlib