В библиотеке glibc обнаружена критическая уязвимость

В библиотеке glibc обнаружена критическая уязвимость

Эксплуатация уязвимости позволяет вызвать переполнение стекового буфера и скомпрометировать систему.

Исследователи Google совместно с инженерами Red Hat обнаружили опасную уязвимость в библиотеке glibc, позволяющую удаленному пользователю выполнить произвольный код на целевой системе. Как сообщается в блоге компании, злоумышленник может вызвать переполнение стекового буфера и скомпрометировать систему.

Уязвимость CVE-2015-7547 обнаружил анонимный инженер Google. По словам специалиста, при подключении к определенному хосту происходило аварийное завершение работы клиента SSH. После проведенного расследования специалисты обнаружили ошибку в библиотеке glibc, использующейся в данном клиенте.

Клиентский механизм разрешения DNS подвержен уязвимости переполнения стекового буфера при использовании функции getaddrinfo(). Удаленный пользователь может выполнить произвольный код с помощью специально сформированного ответа UDP или TCP. Следующий за данным ответом запрос вызовет переполнение стекового буфера. Для успешной эксплуатации уязвимости также необходимо обойти ограничения ASLR.

Техническая информация

glibc резервирует 2048 байтов в стеке с помощью функции alloca() для DNS-ответа на _nss_dns_gethostbyname4_r() для хранения ответов на DNS-запрос.

Проблема присутствует в функциях send_dg() и send_vc(). Если размер ответа превышает 2048 байт, из динамической памяти выделяется новый буфер и происходит обновление информации об указателе буфера, новом размере буфера и размере ответа.

В некоторых случаях может произойти несоответствие между стековым буфером и новым размещением динамической памяти. В результате стековый буфер будет использоваться для хранения DNS-запроса, даже если размер данного запроса больше стекового буфера. Подобное поведение приведет к переполнению буфера.

Уязвимость затрагивает все версии glibc, начиная с 2.9. Для устранения ошибки необходимо установить обновление, доступное в репозитории исходного кода Sourceware.

Тени в интернете всегда следят за вами

Станьте невидимкой – подключайтесь к нашему каналу.