В первой части нашей серии статей об угрозах IIS рассматривается вредоносное расширение IIS, которое перехватывает транзакции сервера для кражи информации о кредитных картах.
Исследователи ESET обнаружили и проанализировали ранее незадокументированный троян, который крадет платежную информацию у клиентов веб-сайтов электронной коммерции. Троянец, который мы назвали IIStealer, детектируется решениями безопасности ESET как Win64/BadIIS.
Этот пост в блоге является первым выпуском в нашей серии, в которой исследователи ESET рассматривают угрозы веб-сервера IIS под микроскопом. в двух других частях обсуждается вредоносное ПО IIS, используемое для cyberespionage и SEO мошенничество, Соответственно. Полное руководство по обнаружению, анализу и удалению вредоносных программ IIS см. в нашем официальном документе Анатомия собственных вредоносных программ IIS, где IIStealer представлен как одно из изученных семейств (группа 5).
Обзор атаки
IIStealer реализован как вредоносное расширение для Информационные услуги Интернет (IIS), программное обеспечение веб-сервера Microsoft. Являясь частью сервера, IIStealer может получить доступ ко всем сетевым коммуникациям, проходящим через сервер, и похитить интересующие злоумышленников данные — в данном случае платежную информацию из транзакций электронной коммерции.
Как показано на рис. 1, IIStealer перехватывает обычный трафик между скомпрометированным сервером и его клиентами (продавцом и покупателями), направляя HTTP-запросы POST на определенные пути URI:
Всякий раз, когда законный посетитель веб-сайта делает запрос на эти страницы оформления заказа (1), IIStealer записывает тело HTTP-запроса в файл журнала (2), никоим образом не вмешиваясь в HTTP-ответ, генерируемый компонентами законного веб-сайта ( 3).
Затем злоумышленники могут эксфильтровать собранные данные, отправив специальный HTTP-запрос к скомпрометированному серверу IIS: как только IIStealer обнаружит запрос, сделанный на определенный URI (/privacy.aspx) с паролем злоумышленника, включенным в X-IIS-данные заголовок (4), он встраивает собранные данные в ответ HTTP на этот запрос (5,6).
Благодаря этим возможностям IIStealer может красть информацию о кредитных картах, отправляемую на веб-сайты электронной коммерции, которые не используют сторонние платежные шлюзы. Обратите внимание, что SSL/TLS и зашифрованные каналы связи не защищают эти транзакции от IIStealer, поскольку вредоносное ПО может получить доступ ко всем данным, обрабатываемым сервером, где информация о кредитной карте обрабатывается в незашифрованном состоянии.
Образцы этого вредоносного ПО, которые мы проанализировали, похоже, предназначены для конкретных веб-сайтов электронной коммерции (с жестко заданными URI страницы оформления заказа). Согласно нашей телеметрии, целью было небольшое количество серверов IIS в США в период с сентября 2020 г. по январь 2021 г., но на это, вероятно, повлияла наша ограниченная видимость серверов IIS — администраторы по-прежнему часто не используют какое-либо программное обеспечение безопасности на эти серверы.
Технический анализ
IIStealer реализован как вредоносный собственный модуль IIS — DLL C++, помещенная в
Поскольку это модуль IIS, IIStealer автоматически загружается рабочим процессом IIS (w3wp.exe), который обрабатывает запросы, отправляемые на веб-сервер IIS, — так IIStealer обеспечивает постоянство и как он может влиять на обработку входящих запросов.
У нас нет информации о том, как распространяется вредоносное ПО, но мы знаем, что требуются административные привилегии установить его как собственный модуль IIS, что сужает количество кандидатов для первоначальной компрометации. Вероятными причинами являются недостатки конфигурации или уязвимость в веб-приложении или самом сервере.
Что касается технических характеристик, IIStealer реализует базовый класс, унаследованный от CHttpМодуль (класс модуля) и переопределяет CHttpModule:: Онпостбегинрекуест метод с его вредоносным кодом. Как и все собственные модули IIS, IIStealer экспортирует функцию с именем Зарегистрироваться (см. рис. 3), где он создает экземпляр класса модуля и регистрирует его методы для событий сервера — точнее, он регистрирует для RQ_BEGIN_REQUEST уведомление после события который генерируется каждый раз, когда сервер начинает обрабатывать входящий HTTP-запрос. В результате Онпостбегинрекуест метод вызывается при каждом новом запросе, что позволяет IIStealer влиять на обработку запроса.
В Онпостбегинрекуест обработчик, IIStealer фильтрует входящие HTTP-запросы по URI запроса. Все POST-запросы к /checkout/checkout.aspx or /checkout/Payment.aspx регистрируются вместе со своими полными HTTP-телами в файле с именем C:WindowsTempcache.txt. Эти запросы делаются законными посетителями взломанных веб-сайтов электронной коммерции и могут содержать конфиденциальную информацию, такую как личные данные и номера кредитных карт.
Собранные данные могут быть удалены с помощью специально созданного HTTP-запроса от злоумышленника. Этот запрос должен иметь X-IIS-данные Заголовок HTTP содержит жестко заданный 32-байтовый буквенно-цифровой пароль (который мы решили не раскрывать) и должен быть отправлен по URL-адресу, указанному в образце вредоносного ПО:
- /privacy.aspx
- /checkout/Payment.aspx
Как только вредоносный модуль обнаруживает такой запрос, он использует IHttpResponse:: Очистить метод для удаления любого ответа HTTP, подготовленного сервером IIS, и копирует незашифрованное содержимое файла журнала в тело ответа HTTP, используя IHttpResponse::WriteEntityChunks Функция API, как показано на рисунке 4.
Это позволяет операторам IIStealer получать доступ к собранным данным и извлекать их, просто отправляя специальный запрос на скомпрометированный сервер IIS — вредоносной программе не нужно реализовывать дополнительные каналы C&C или встраивать в свою конфигурацию какие-либо домены C&C-сервера.
риска
IIStealer — это угроза на стороне сервера, которая подслушивает сообщения между скомпрометированным веб-сайтом электронной коммерции и его клиентами с целью кражи конфиденциальной платежной информации, но, конечно, вредоносные модули IIS также могут использовать учетные данные и другую информацию. Несмотря на то, что SSL/TLS жизненно важен для защиты передачи данных между клиентом и сервером, он не предотвращает этот сценарий атаки, поскольку IIStealer является частью сервера. Это должно беспокоить все серьезные веб-порталы, которые хотят защитить данные своих посетителей, включая аутентификационную и платежную информацию.
Лучший способ защитить сервер IIS от IIStealer и других угроз:
- Используйте специальные учетные записи с надежными уникальными паролями для администрирования сервера IIS.
- Регулярно обновляйте свою ОС и тщательно продумывайте, какие службы доступны в Интернете, чтобы снизить риск эксплуатации сервера.
- Устанавливайте собственные модули IIS только из надежных источников.
- Рассмотрите возможность использования брандмауэра веб-приложений и/или решения для обеспечения безопасности конечных точек на вашем сервере IIS.
- Регулярно проверяйте файл конфигурации % windir% system32inetsrvconfigApplicationHost.config, А также %windir%system32inetsrv и %windir%SysWOW64inetsrv папки, чтобы убедиться, что все установленные собственные модули являются законными (подписанными доверенным поставщиком или установленными специально).
Для веб-разработчиков: даже если вы не контролируете сервер IIS, на котором размещена ваша веб-служба, вы все равно можете предпринять шаги, чтобы уменьшить влияние на пользователей вашей веб-службы в случае компрометации, особенно:
- Не отправляйте сам пароль на сервер (даже через SSL/TLS); использовать такой протокол, как Безопасный удаленный пароль (SRP) для аутентификации пользователей без необходимости передачи на сервер незашифрованного пароля или данных, которые можно было бы использовать для повторной аутентификации. Инфостилеры IIS — хороший пример того, почему хеширование на стороне сервера недостаточно хорошо.
- Избегайте ненужной отправки конфиденциальной информации из веб-приложения; использовать платежные шлюзы.
- Если вы обнаружите успешную компрометацию: уведомите все стороны, участвующие в любом нарушении безопасности, чтобы они могли быстро принять меры.
Для потребителей: с точки зрения посетителя невозможно узнать, скомпрометирован ли сервер IIS, но эти советы помогут вам снизить риск:
- Будьте осторожны при вводе номера кредитной карты. Рассмотрите возможность использования платежных шлюзов доверенных сторонних поставщиков на веб-сайтах электронной коммерции, репутация которых вам неизвестна: с платежными шлюзами такие веб-сайты не будут обрабатывать конфиденциальную платежную информацию.
- Следите за своей кредитной выпиской на предмет небольших или необычных платежей: часто небольшие суммы обрабатываются для проверки действительности карт.
- Если вы заметили что-то необычное, немедленно сообщите об этом в свой банк.
Дополнительные технические сведения о вредоносных программах, индикаторах компрометации и правилах YARA можно найти в нашей всеобъемлющей технический документИ на GitHub. По любым вопросам или для отправки образцов материалов, относящихся к теме, свяжитесь с нами по адресу: угрозаintel@eset.com.
Индикаторы компрометации (IoCs)
Имена обнаружений ESET
Win64/BadIIS.F
Win64/BadIIS.O
SHA-1
706EAB59C20FCC9FBC82C41BF955B5C49C644B38
7A2FA07A7DC05D50FE8E201A750A3DC7F22D6549
A1C5E7424E7C4C4C9902A5A1D97F708C6BB2F53A
Имена файлов и пути
реж.dll
isapicache___.dll
isapicache_.dll_
C:WindowsTempcache.txt
Индикаторы сети
Целевые URI
/checkout/checkout.aspx
/checkout/Payment.aspx
/privacy.aspx
Заголовок HTTP
X-IIS-данные
Техники MITER ATT & CK
Примечание: эта таблица была построена с использованием версия 9 каркаса MITER ATT & CK.
тактика | ID | Имя | Описание |
---|---|---|---|
Развитие ресурсов | T1587.001 | Возможности развития: вредоносное ПО | IIStealer — это специально разработанное семейство вредоносных программ. |
Типы | T1569.002 | Системные услуги: выполнение услуг | Сервер IIS (и, соответственно, IIStealer) сохраняется как служба Windows. |
Настойчивость | T1546 | Выполнение по событию | IIStealer загружается рабочим процессом IIS (w3wp.exe), когда сервер IIS получает входящий HTTP-запрос. |
Уклонение от защиты | T1036.005 | Маскарадинг: Соответствие законному имени или местоположению | IIStealer был развернут под именем реж.dll, в попытке имитировать законный модуль Microsoft IIS, называемый dirlist.dll. |
T1027 | Замаскированные файлы или информация | IIStealer использует стекирование строк, чтобы избежать обнаружения на основе строк. | |
Доступ к учетным данным | T1056 | Захват ввода | IIStealer перехватывает сетевой трафик между сервером IIS и его клиентами для сбора конфиденциальной информации, такой как данные кредитной карты. |
Транспортировка | T1119 | Автоматизированный сбор | IIStealer автоматически собирает информацию из входящих HTTP-запросов, например данные кредитной карты. |
T1074.001 | Постановка данных: постановка локальных данных | IIStealer использует локальный файл для хранения собранной информации. | |
Управление и контроль | T1071.001 | Протокол прикладного уровня: веб-протоколы | Злоумышленники отправляют HTTP-запросы на скомпрометированный сервер IIS для управления IIStealer. |
эксфильтрации | T1041 | Эксфильтрация через канал C2 | IIStealer использует свой C&C-канал для эксфильтрации собранных данных: HTTP-запросы отправляются злоумышленником на скомпрометированный сервер IIS. |
- 2020
- 2021
- доступ
- Действие
- дополнительный
- Все
- анатомия
- API
- Применение
- Аутентификация
- Банка
- ЛУЧШЕЕ
- тело
- нарушение
- случаев
- каналы
- Оформить заказ
- клиентов
- код
- Общий
- Связь
- Связь
- Потребители
- содержание
- Полномочия
- кредит
- кредитная карта
- Клиенты
- данным
- обнаружение
- застройщиков
- открытый
- доменов
- упал
- электронная коммерция
- Конечная точка
- Защита конечных точек
- События
- Izvoz,en
- Глаза
- семей
- семья
- СПЕЦЦЕНА
- фигура
- фильтры
- Во-первых,
- Рамки
- полный
- функция
- хорошо
- группы
- инструкция
- Хеширования
- Как
- How To
- HTTPS
- определения
- Влияние
- В том числе
- информация
- интерес
- Интернет
- вовлеченный
- IT
- Ограниченный
- локальным
- Создание
- вредоносных программ
- Совпадение
- Microsoft
- сеть
- сетевой трафик
- номера
- Другое
- бумага & картон
- Пароль
- пароли
- Патчи
- оплата
- платежи
- настойчивость
- перспектива
- для защиты
- уменьшить
- ресурс
- ответ
- Снижение
- условиями,
- безопасность
- Программное обеспечение безопасности
- Серии
- Услуги
- набор
- небольшой
- So
- Software
- Решения
- Спотовая торговля
- распространение
- Этап
- Область
- заявление
- успешный
- цель
- Технический
- тестXNUMX
- угрозы
- время
- Советы
- трафик
- Сделки
- троянец
- URI
- us
- США
- пользователей
- видимость
- уязвимость
- Web
- веб-разработчики
- веб-сервер
- Вебсайт
- веб-сайты
- технический документ
- Википедия.
- окна