URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 111061
[ Назад ]

Исходное сообщение
"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."

Отправлено opennews , 24-Апр-17 10:40 
В почтовом web-клиенте Squirrelmail выявлена (http://seclists.org/fulldisclosure/2017/Apr/81) критическая уязвимость (https://legalhackers.com/advisories/SquirrelMail-Exploit-Rem...) (CVE-2017-7692 (https://security-tracker.debian.org/tracker/CVE-2017-7692)), позволяющая выполнить код на сервере через отправку через web-интерфейс специально оформленного письма. Проблема проявляется в последнем выпуске Squirrelmail 1.4.22 (https://squirrelmail.org). Так как проект Squirrelmail уже много лет не обновлялся и разработчики не ответили на уведомление о проблеме, исследователи безопасности самостоятельно подготовили патч (http://www.openwall.com/lists/oss-security/2017/04/19/6). Уязвимость пока остаётся неисправленной в пакете squirrelmail, поставляемом в репозиториях Debian (https://security-tracker.debian.org/tracker/CVE-2017-7692) и Ubuntu (https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2...).

Уязвимость связана с отсутствием должных проверок аргументов, передаваемых при вызове утилиты sendmail через PHP-функцию popen(). В частности, для чистки опасных символов перед вызовом popen использовалась функция escapeshellcmd(), которая не экранирует пробелы и символы табуляции. Так как sendmail вызывается с опцией "-f$envelopefrom", манипулируя с адресом отправителя атакующий может передать произвольный набор аргументов, в том числе использовать опцию "-C" для инициирования обработки подставного файла конфигурации sendmail.cf.


Через переопределение в файле конфигурации sendmail.cf агента доставки можно выполнить  в системе любой код с правами web-приложения (обычно, www-data). Так как Squirrelmail сохраняет вложения к письмам по известному пути (/var/local/squirrelmail/attach/{mgid}, то атакующий может сослаться на файл во вложении, например, отправив сообщение с полем "Return-Path: aaa@....com -OQueueDirectory=/tmp  -C /var/local/squirrelmail/attach/lF51mGPJwdqzV3LEDlCdSVNpohzgF7sD".


URL: http://seclists.org/fulldisclosure/2017/Apr/81
Новость: http://www.opennet.ru/opennews/art.shtml?num=46435


Содержание

Сообщения в этом обсуждении
"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено Аноним , 24-Апр-17 10:40 
>. Так как проект Squirrelmail уже много лет не обновлялся и разработчики не ответили на уведомление о проблеме
>пых

Никто не удивлен и почти всем плевать.


"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено vantoo , 24-Апр-17 12:08 
roundcube - наше все!

"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено dev , 24-Апр-17 12:56 
RainLoop

"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено xm , 24-Апр-17 15:11 
У него с лицензией всё не гладко.

"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено Andrew Kolchoogin , 27-Апр-17 16:20 
А что не так?

"Уязвимость в Squirrelmail, позволяющая удалённо выполнить ко..."
Отправлено Другой , 05-Май-17 20:21 
Обычная паника. Слишком много предварительных условий. Смахивает на "Шеф! Все пропало!"

1 "выполнить код на сервере через отправку через web-интерфейс специально оформленного письма". Для отправки через web-интерфейс нужно, как минимум, иметь аккаунт.

2 "при вызове утилиты sendmail". Веб-сервер должен жить в чруте. Ну нету там sendmail. Отправка осуществляется по SMTP на 127.0.0.1:25

3 "через PHP-функцию popen()". В нормальной конфигурации в php.ini должно быть:
disable_functions = popen,system,exec,proc_open,shell_exec и т.д.

4 "по известному пути (/var/local/squirrelmail/attach/". Интересно, кому этот путь известен? А у меня в чруте этот путь совсем другой.