Критическая уязвимость в конфигурациях Postfix, использующих SASL-библиотеку Cyrus
Разработчики не исключают возможность создания эксплоита, который позволит организовать выполнение кода злоумышленника на почтовом сервере с правами непривилегированного пользователя "postfix". Пользователь postfix ограничен в своих правах и не может влиять на работу рабочих процессов почтового сервера, но теоретически может быть использован для эксплуатации незакрытых системных уязвимостей. Поэтому для усиления защиты рекомендуется активировать в конфигурации функцию дополнительной изоляции рабочих процессов, через их помещение в chroot. В качестве временного решения проблемы, можно запретить использование методов аутентификации, отличных от PLAIN и LOGIN (в конфигурации Cyrus (smtpd.conf) нужно указать "mech_list: PLAIN LOGIN").
Уязвимость присутствует во всех версиях Postfix, выпущенных начиная с 13 марта 2000 года. Уязвимость исправлена в оперативно выпущенных обновлениях 2.5.13, 2.6.10, 2.7.4 и 2.8.3, а также в тестовых сборках Postfix 2.9, выпущенных начиная с 1 мая. Дополнительно подготовлены патчи для всех ранее выпущенных версий Postfix, начиная с релиза Postfix 1.1. Обновления с исправлением уязвимости уже выпущены для FreeBSD, но пока недоступны для Linux-дистрибутивов. Статус выхода исправлений можно отследить на следующих страницах: Slackware, Gentoo, Mandriva, openSUSE, CentOS, Fedora, RHEL, Debian, Ubuntu.
Уязвимость вызвана ошибкой, приводящей к выходу за допустимые границы памяти, в коде разработанного в недрах проекта патча для обеспечения работы SASL на базе библиотеки Cyrus. Ошибка проявляется в случае, если после сбоя аутентификации, в рамках той же сессии осуществлена попытка использования другого метода аутентификации. Проблема связана с тем, что в соответствии с рекомендациями по использованию кода Cyrus SASL, в случае сбоя аутентификации необходимо инициализировать новый обработчик, который следует использовать для обслуживания следующего запроса клиента. В ситуации с Postfix, создание нового обработчика завершалось сбоем и последующие попытки аутентификации приводили к повреждению используемых другими подсистемами областей памяти.
1 S: 220 server.example.com ESMTP 2 C: EHLO client.example.com 3 S: 250-server.example.com 4 S: ...other server output skipped... 5 S: 250-AUTH DIGEST-MD5 LOGIN PLAIN CRAM-MD5 6 S: 250-AUTH=DIGEST-MD5 LOGIN PLAIN CRAM-MD5 7 S: ...other server output skipped... 8 C: AUTH CRAM-MD5 9 S: 334 PDg5ODE0OTI3MS4xMDQyMTg1OUBzZXJ2ZXIuZXhhbXBsZS5jb20+Cg== 10 C: * 11 S: 501 5.7.0 Authentication aborted 12 C: AUTH DIGEST-MD5 13 Connection closed by foreign host.
Источник: http://www.opennet.ru/opennews/art.shtml?num=30495
|
0 | Tweet | Нравится |
|