Ошибка в библиотке libc привела к уязвимости большинства FTP-серверов
Проблема возникла из-за того, что переменная GLOB_LIMIT, которую добавили в 2001 году для ограничения объёма памяти функцией glob() c целью защиты от аналогичной уязвимости, не эффективна. Проверка на совпадение (globbing) вызывает функцию glob(), чтобы сравнить список файлов с шаблоном и вернуть на выход список совпадающих файлов. В виду того, что GLOB_LIMIT не действует в ситуациях когда в пути фигурирует несуществующий путь, данная проблема теоретически позволяет исчерпать доступную процессу память, используя определённый шаблон ("*/../*/../*строка" или "{..,..,..}/*/{..,..,..}/*строка"), и, в зависимости от операционной системы и мощности оборудования, может привести к полной остановке работы или неожиданному завершению работы FTP/SFTP сервиса.
Уязвимость на данный момент подтверждена в следующих продуктах: OpenBSD 4.7, NetBSD 5.0.2, FreeBSD 7.3 / 8.1, Oracle Sun Solaris 10 и GNU Libc (glibc), поставляемой в Linux. Для демонстрации проблемы выпущен эксплоит. Разработчики NetBSD уже закрыли эту проблему, другие компании пока даже не заявляют о её существовании: Slackware, Gentoo, Mandriva, openSUSE, CentOS, Fedora, RHEL, Debian, Ubuntu, FreeBSD, OpenBSD. Vsftpd проблеме не подвержен.
Источник: http://www.opennet.ru/opennews/art.shtml?num=28210
|
0 | Tweet | Нравится |
|