При проведении тестов на проникновение мы часто встречаемся с пренебрежением и халатным отношением к сайту компании. Для многих руководителей сайт является галочкой в репутационом портфолио. По мнению руководства и системных администраторов, сайт не приносит дохода и его взлом не несет больших репутационных рисков для компании, что является фатальной ошибкой. Самым ценным активом для любой компании является доступ во внутреннюю (локальную) сеть, в которой хранится вся ИТ инфраструктура предприятия.
Цель статьи - развеять миф о необязательности проверки сайта компании на уязвимости и показать, как взлом заброшенного сайта может дать билет злоумышленнику в локальную сеть.
Чем крупнее компания, тем больше у нее компьютерная локальная сеть и тем сложнее управлять ею. С целью облегчения работы по управлению системные администраторы настраивают корпоративную сеть на основе распространенного решения Active Directory (служба активного каталога). Это решение, действительно, упрощает управление ЛВС, но при этом несет в себе большие риски. Ключевым понятием в Active Directory является домен и контроллер домена.
1. Получение доступа к админке Bitrix
В качестве имени домена локальной сети, как правило, используется уже зарегистрированный домен сайта, почты и т.п. Возьмем для примера доменное имя target.ru. Зачастую в директории клиентского сайта доступна папка .git (рис. 1), которая отвечает за контроль версий исходного кода.
Наличие папки .git позволяет восстановить исходный код всего проекта, к примеру, с помощью инструмента GitDumper (рис 2).
В файлах проекта может находиться всё, что угодно: от скрытых файлов конфигураций до случайно оставленных резервных копий баз данных. Именно с резервной копией бд мы и столкнулись (рис 3).
Далее хеши паролей необходимо сбрутить. Например, через hashcat. С помощью найденных ранее имени пользователя и пароля был получен доступ к панели администратора Bitrix с максимальными правами (рис 4).
2. Исполнение команд на сервере
Встроенный функционал Bitrix позволяет внедрять пользовательский PHP код, который может привести к получению удаленного доступа к веб серверу (рис 5) и заливки web-shell (оболочки для выполнения команд).
3. Описание функционала AD, WPAD и autodiscover
Проверить наличие утечки можно проанализировав логи веб сервера. Если в файлах журнала имеются запросы следующего вида: /wpad.dat, /autodiscover.xml, /autodiscover/autodiscover.xml (рис 6.), то с большой долей вероятности у вас имеется уязвимость "утечка домена"- пользователи из внутренней сети пытаются получить файлы конфигураций из внешней.
Служба активного каталога обладает довольно широким функционалом по созданию групповых политик, управлению доступом и предоставлению доступа к различным сервисам. Контроллер домена в службе активного каталога представляет из себя DNS и DHCP сервер.
DHCP сервер предоставляет файл конфигураций wpad.dat (автоматическая настройка прокси сервера) и autodiscover (автоматическая настройка почтового сервера). Конечно, возможность использования автоматических настроек используется в системах по-умолчанию. При некорректной настройке доменных записей и фаерволла происходит "утечка домена". Почтовый клиент или браузер посылают запросы в глобальную сеть на домен target.ru по протоколу HTTP(S) с целью получить конфигурационные данные. Этим и может воспользоваться злоумышленник.
4. Перехват трафика через модификацию wpad.dat и использование mitmproxy
Сам по себе файл wpad.dat представляет из себя инструкцию для браузера на языке JavaScript, которая регламентирует доступы к ресурсам через прокси сервер на основании доменного имени или регулярного выражения. Клиентский браузер будет строго следовать полученным настройкам и все запросы полетят через указанный прокси сервер.
Злоумышленник, контроллируя содержимое файла wpad.dat, может установить адрес внешнего mitmproxy сервера для модификации или пассивного прослушивания всего исходящего из корпоративной сети трафика. К пример, перехват данных аутентификации hh.ru (рис 7) или чтение корпоративной почты (рис 8).
Далее, контроллируя весь трафик, существует возможность подмены исполняемых файлов (exe) и офисных документов (docx) на зловредные с содержанием исполняемого кода с целью заражения корпоративной сети предприятия.
5. Итоги и рекомендации
Халатность разработчиков и системных администраторов target.ru привела к компрометации корпоративной переписки. Настоящий злоумышленник заразил бы корпоративную сеть вредоносным ПО с дальнешейшим извлечением финансовой выгоды.
Легко сказать, что разработчики и администраторы обязаны защищать те или иные корпоративные ресурсы. Однако у этих специалистов совершенно другие функциональные обязанности и компетенции. Системный администратор - не специалист по информационной безопасности. Та же история с разработчиками.
Информационная безопасность - это комплекс мер, это процесс, это культура.
Так что же можно было сделать для предотвращения этой утечки?
Обязательно регулярно проводить внешние и внутренние пентесты. Тестирование на проникновение является необходимой мерой для предотвращения утечек;
Автонастройка системного прокси через WPAD используется по-умолчанию в WIN10. Необходимо отключать этот функционал, если он не нужен;
Необходимо запретить клиентам внутренней сети ходить на внешние ресурсы. Меньше прав - меньше проблем;
Необходимо контролировать целостность корпоративных ресурсов, а также наблюдать за логами доступа;
Необходимо настроить DHCP/DNS так, чтобы домен target.ru определялся, как ресурс во внутренней сети, а не во внешней.