Security Lab

Проблемы с внешними переменными в BestWWWD

Дата публикации:02.10.2001
Дата изменения:17.10.2006
Всего просмотров:1434
Опасность:
Наличие исправления:
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации:
Воздействие:
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты:
Описание: BestWWWD - WWW сервер, основанный на сервере NCSA, разработанный BEST Internet (http://www.best.com). Система Server Side Includes (SSI), обеспечивает механизм интерактивных функциональных возможностей в реальном масштабе времени без программирования. Доступно множество команд SSI, включая echo, include, fsize, flastmod, exec, config, odbc, email, if, goto, label и break.

   Уязвимость в BestWWWD существует в пути, которым сервер обрабатывает SSI. SSI может показывать SERVER_SOFTWARE, REMOTE_ADDR, QUERY_STRING и другие переменные среды, но по умолчанию в BestWWWD они не анализируются на наличие специальных HTML символов типа < and >. Одна из переменных, которая наиболее часто присутствует в web-страницах и может легко управляться - HTTP_USER_AGENT. Эту переменную сервер получает от клиента при подключении и обычно она содержит версию программы и комментарии, например: Mozilla/4.04 (X11; I; SunOS 5.4 sun4m) Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)

   Нападавший мог использовать команду SSI exec cmd=, которая выполняет указанные команды, использующие Bourne Shell /bin/sh. Поэтому, нападающий может подключиться к .shtml странице, которая использует user agent (много владельцев сайтов любят показывать посетителям информацию о них) и посылать серверу HTTP запрос подобно следующему: GET /index.shtml HTTP/1.1 Host: www.vulnerable-host.com User-Agent:

   Или, если web-страница отображает другие переменные среды, типа QUERY_STRING, HTTP_ACCEPT, HTTP_ACCEPT_LANGUAGE и т.д, то уязвимость тоже срабатывает. Очевидно метод, которым эта уязвимость эксплуатируется, может позволять выполнение произвольных команд с привилегиями "nobody".