В пакете Webmin (https://github.com/webmin/webmin/), предоставляющем средства для удалённого управления сервером, выявлен (https://groups.google.com/forum/#!msg/virtualmin-announce/hC...) бэкдор (CVE-2019-15107 (https://security-tracker.debian.org/tracker/CVE-2019-15107)), найденный в официальных сборках проекта, распространяемых (https://sourceforge.net/projects/webadmin/files/webmin/) через Sourceforge и рекомендованных (http://webmin.com/download.html) на основном сайте. Бэкдор присутствовал в сборках с 1.882 по 1.921 включительно и позволял удалённо без прохождения аутентификации выполнить произвольные shell-команды в системе с правами root.
Для атаки достаточно наличия открытого сетевого порта с Webmin и активности в web-интерфейсе функции смены устаревшего пароля (по умолчанию включена в сборках 1.890, но в остальных версиях выключена). Проблема устранена (http://webmin.com/security.html) в обновлении (https://groups.google.com/forum/#!msg/virtualmin-announce/hC...) 1.930. В качестве временной меры для блокирования бэкдора достаточно убрать настройку "passwd_mode=" из файла конфигурации /etc/webmin/miniserv.conf. Для тестирования подготовлен прототип эксплоита (https://pentest.com.tr/exploits/DEFCON-Webmin-1920-Unauthent...).
Проблема была обнаружена (https://blog.firosolutions.com/exploits/webmin/) в скрипте password_change.cgi, в котором для проверки введённого в web-форме старого пароля используется (https://github.com/webmin/webmin/blob/e89ffcfa6961274e00e756...) функция unix_crypt, которой передаётся полученный от пользователя пароль без выполнения экранирования спецсимволов. В git-репозитории данная функция является (https://github.com/webmin/webmin/blob/1e2545b06e3ab875bb5e1e...) обвязкой над модулем Crypt::UnixCrypt и не представляет опасности, но в поставляемом на сайте Sourceforge архиве с кодом вызывается код, который напрямую обращается к /etc/shadow, но делает это при помощи shell-конструкции. Для атаки достаточно указать в поле со старым паролем символ "|" и следующий после него код будет выполнен с правами root на сервере.
По заявлению (https://www.reddit.com/r/netsec/comments/crk77z/0day_remote_.../) разработчиков Webmin, вредоносный код был подставлен в результате компрометации инфраструктуры проекта. Подробности пока не сообщаются, поэтому не ясно, ограничился ли взлом захватом управления над учётной записью в Sourceforge или затронул и другие элементы инфраструктуры разработки и сборки. Вредоносный код присутствовал в архивах с марта 2018 года. Проблема также затронула сборки Usermin (https://sourceforge.net/projects/webadmin/files/usermin/). В настоящее время все загрузочные архивы пересобраны из Git.
URL: https://groups.google.com/forum/#!msg/virtualmin-announce/hC...
Новость: https://www.opennet.ru/opennews/art.shtml?num=51315