IIStealer: угроза со стороны сервера для транзакций электронной торговли

Исходный узел: 1022037

В первой части нашей серии статей об угрозах 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: /checkout/checkout.aspx or /checkout/Payment.aspx.

Всякий раз, когда законный посетитель веб-сайта делает запрос на эти страницы оформления заказа (1), IIStealer записывает тело HTTP-запроса в файл журнала (2), никоим образом не вмешиваясь в HTTP-ответ, генерируемый компонентами законного веб-сайта ( 3).

Затем злоумышленники могут эксфильтровать собранные данные, отправив специальный HTTP-запрос к скомпрометированному серверу IIS: как только IIStealer обнаружит запрос, сделанный на определенный URI (/privacy.aspx) с паролем злоумышленника, включенным в X-IIS-данные заголовок (4), он встраивает собранные данные в ответ HTTP на этот запрос (5,6).

Рисунок 1. Механизмы сбора и эксфильтрации IIStealer

Рисунок 1. IIStealer: механизмы сбора и эксфильтрации

Благодаря этим возможностям IIStealer может красть информацию о кредитных картах, отправляемую на веб-сайты электронной коммерции, которые не используют сторонние платежные шлюзы. Обратите внимание, что SSL/TLS и зашифрованные каналы связи не защищают эти транзакции от IIStealer, поскольку вредоносное ПО может получить доступ ко всем данным, обрабатываемым сервером, где информация о кредитной карте обрабатывается в незашифрованном состоянии.

Образцы этого вредоносного ПО, которые мы проанализировали, похоже, предназначены для конкретных веб-сайтов электронной коммерции (с жестко заданными URI страницы оформления заказа). Согласно нашей телеметрии, целью было небольшое количество серверов IIS в США в период с сентября 2020 г. по январь 2021 г., но на это, вероятно, повлияла наша ограниченная видимость серверов IIS — администраторы по-прежнему часто не используют какое-либо программное обеспечение безопасности на эти серверы.

Технический анализ

IIStealer реализован как вредоносный собственный модуль IIS — DLL C++, помещенная в %windir%system32inetsrv папку на скомпрометированном сервере IIS и настроить в % windir% system32inetsrvconfigApplicationHost.config файл. В некоторых случаях IIStealer развертывается под именем реж.dll и, как видно на рис. 2, использует поддельный ресурс VERSIONINFO для имитации законного модуля Windows IIS с именем список каталогов.dll.

Рисунок 2. Ресурс IIStealer VERSIONINFO (слева) имитирует законный модуль dirlist.dll (справа)

Рисунок 2. Ресурс IIStealer VERSIONINFO (слева) имитирует законный модуль dirlist.dll (справа)

Поскольку это модуль IIS, IIStealer автоматически загружается рабочим процессом IIS (w3wp.exe), который обрабатывает запросы, отправляемые на веб-сервер IIS, — так IIStealer обеспечивает постоянство и как он может влиять на обработку входящих запросов.

У нас нет информации о том, как распространяется вредоносное ПО, но мы знаем, что требуются административные привилегии установить его как собственный модуль IIS, что сужает количество кандидатов для первоначальной компрометации. Вероятными причинами являются недостатки конфигурации или уязвимость в веб-приложении или самом сервере.

Что касается технических характеристик, IIStealer реализует базовый класс, унаследованный от CHttpМодуль (класс модуля) и переопределяет CHttpModule:: Онпостбегинрекуест метод с его вредоносным кодом. Как и все собственные модули IIS, IIStealer экспортирует функцию с именем Зарегистрироваться (см. рис. 3), где он создает экземпляр класса модуля и регистрирует его методы для событий сервера — точнее, он регистрирует для RQ_BEGIN_REQUEST уведомление после события который генерируется каждый раз, когда сервер начинает обрабатывать входящий HTTP-запрос. В результате Онпостбегинрекуест метод вызывается при каждом новом запросе, что позволяет IIStealer влиять на обработку запроса.

Рисунок 3. Точка входа RegisterModule в IIStealer

Рисунок 3. Точка входа RegisterModule в 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.

Рисунок 4. IIStealer заменяет тело ответа HTTP своими данными

Рисунок 4. IIStealer заменяет тело ответа HTTP своими данными

Это позволяет операторам 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.

Источник: https://www.welivesecurity.com/2021/08/06/iistealer-server-side-threat-ecommerce-transactions/

Отметка времени:

Больше от WeLiveSecurity