Webmin - Web интерфейс для администрирования Linux систем. CGI сценарий, который обрабатывает запросы remote_foreign_require и remote_foreign_call от других Webmin серверов, содержит неадекватные проверки разрешения. Доступ к CGI определяется значением 'rpc' в /usr/libexec/webmin/defaultacl.
Это значение может быть '1' или '2'. Если установлен '2', только пользователю 'admin' или root, или разрешен доступ. Иначе доступ разрешен любому пользователю. Пользователь, способный обратится к этому CGI, может вызвать любую из следующих функций:
1) 'quit' - обрывает текущую сессию..
2) 'require' - вынуждает текущий RPC сеанс загружать библиотеку/модуль.
3) 'call' - выполняет Perl или Webmin функцию.
4) 'eval' - Оценивает Perl код (выполняет его).
5) 'ping' - отвечает с ответом "OK".
6) 'check' - проверяет, поддерживается ли некоторая библиотека/модуль.
7) 'config' - отображает текущую конфигурацию RPC.
8) 'write' - записывает файл.
9) 'read' - читает файл и возвращайте данные, которые он содержит.
Используя 'read' и 'write', атакующий может читать или записывать любой файл, присутствующий в системе. Используя функцию 'eval', можно выполнить произвольный код с root привилегиями.
Уязвимость обнаружена в 0.921 и более ранних версиях.