- PVSM.RU - https://www.pvsm.ru -

GHOST — уязвимость gethostbyname() в glibc

Специалисты Qualys сообщили о наличии уязвимости в gethostbyname() и gethostbyname2() в GNU
C Library (glibc), которая, как минимум в одном случае, способна привести к удаленному выполнению кода. Уязвимость позволяет перезаписать до 4 байт на 32-битных системах и до 8 байт на 64-битных системах в куче числами (0…9), точкой (.) и NULL-символом (0x00).

Уязвимость появилась в версии glibc-2.2 от 10 ноября 2000 года и была закрыта в версии 21 мая 2013 года с glibc-2.18, поэтому уязвимы только LTS-дистрибутивы Linux: Debian 7, Red Hat Enterprise Linux 6 и 7, CentOS 6 и 7, Ubuntu 12.04.

Уязвимым является код, который отвечает за получение hostname. Для перезаписи кучи, имя хоста должно удовлетворять следующим условиям:

  • Содержать в себе только цифры и точку
  • Первый символ должен быть цифрой
  • Последний символ не должен быть точкой
  • Быть достаточно длинным, чтобы переполнить буфер (>1КБ)


Следует заметить, что опасность эксплуатации значительно снижается из-за двух факторов: вызов gethostbyname() является устревшим из-за отсутствия поддержки IPv6, поэтому ПО чаще использует getaddrinfo(), чем его; вызов inet_aton() перед gethostbyname() предотвращает уязвимость.
Несмотря на эти два фактора, ребятам из Qualys удалось осуществить удаленное выполнение кода в exim4, перезаписав размер выделенного буфера и использовав встроенный в exim4 вызов $run{}. Обещают в скором времени выложить эксплоит для metasploit.

В других реализациях libc (uclibc, musl) уязвимость отсутствует.

CVE-2015-0235 [1]
Страница на qualys.com [2]
Подробное описание в рассылке oss-security [3]

Автор: ValdikSS

Источник [4]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/80856

Ссылки в тексте:

[1] CVE-2015-0235: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-0235

[2] Страница на qualys.com: https://community.qualys.com/blogs/laws-of-vulnerabilities/2015/01/27/the-ghost-vulnerability

[3] Подробное описание в рассылке oss-security: http://www.openwall.com/lists/oss-security/2015/01/27/9

[4] Источник: http://habrahabr.ru/post/249007/