На сайтах с устаревшей CMS Magento проснулся цепкий веб-скиммер

На сайтах с устаревшей CMS Magento проснулся цепкий веб-скиммер

На сайтах с устаревшей CMS Magento проснулся цепкий веб-скиммер

В канун Черной пятницы в 50 крупных магазинах, построенных на платформе Magento, заработал новый зловред, ворующий платежные данные. Избавиться от этого веб-скиммера непросто: взломщики оставили на сайтах бэкдоры и добавили механизм, обеспечивающий повторное инфицирование в случае обнаружения и удаления вредоносного кода.

По свидетельству Sansec, злоумышленники начали готовиться к новой кампании еще в апреле и хорошо позаботились о скрытности операций. Разбор текущих атак показал, что все скомпрометированные сайты используют Magento ветки 2.2, снятой с поддержки в декабре 2019 года. Пользователей еще тогда призывали произвести апгрейд, однако многие этого до сих пор не сделали.

Взлом сайтов в данном случае осуществляется посредством эксплуатации уязвимостей, пропатченных разработчиком в марте прошлого года. Ход атаки при этом выглядит следующим образом:

  1. Получение URL консоли администратора через эксплойт уязвимости раскрытия информации.
  2. Перехват сессионного ключа залогинившегося администратора посредством SQL-инъекции.
  3. Вход в админ-панель и создание пригодного для эксплуатации шаблона email с целью загрузки и исполнения вредоносного PHP-кода.
  4. Установка бэкдора.
  5. Установка веб-скиммера.

При этом внедрять код стилера на забэкдоренный сайт злоумышленники не торопятся.

Веб-скиммер в данном случае разделен на две части — клиентскую и серверную. На стороне клиента вредоносный код внедряется в какой-нибудь статичный JavaScript-файл (например, require.js); в этом виде он может показывать поддельную форму оплаты покупки — для каждого магазина свою. Вводимые покупателем данные скрипт отсылает на сервер для проверки, и такое действие подозрений не вызывает: оно обычно при проведении платежных транзакций.

За сбор и сохранение краденой информации отвечает вторая половина стилера — добавленный на бэкенд-сервер код PHP. Оператор в этом случае получает ворованные данные через запрос HTTP POST.

Бэкдор, установленный посредством PHP-инъекции (PHP Object Injection, POI), злоумышленники активируют вызовом функции сравнения товаров — Product Compare. Один из таких вредоносных объектов вполне тривиален, и его легко обнаружить. Второй более опасен: он добавляет на сервер функцию десериализации PHP — она по стандарту не рекомендуется к использованию, так как позволяет захватить контроль над сервером посредством POI-атаки. К счастью, вызов этой функции всегда можно отследить по журналу событий.

Одновременно на сервере в фоновом режиме запускается сторожевой процесс, отвечающий за сохранность бэкдора. Этот сторож маскируется под легитимные системные процессы — dnsadmin dormant, sshd [net], php-fpm: pool www. Если бэкдор нашли и вычистили, зловредный процесс за пару дней установит новую копию (она вшита в код). Более того, он откатит временные метки всех файлов законного пользователя, чтобы возврат вредоносного кода остался незамеченным.

Присутствие зловредной службы, со слов экспертов, можно обнаружить на TCP-порту 9000 — по всей видимости, это резервный канал связи, по которому операторы могут подавать команды. Наличие стороннего сторожа также выявит поиск по списку запущенных процессов с помощью утилиты командной строки (sudo grep -l Magento.Catalog /proc/*/exe).

К сожалению, операторы зловреда предусмотрели и такой сценарий. Они дополнительно устанавливают на сервер PHP-код, способный на лету воровать пароли администратора и отсылать их на сторонний коллектор. Если доступ к взломанному серверу потерян и сторожевой процесс прибит, у злоумышленников останутся ключи, с помощью которых можно будет вернуть утраченные позиции.

Подпишитесь на новости

Только 11% компаний полностью готовы к новым требованиям по защите КИИ

Только 11% компаний полностью готовы к новым требованиям по защите КИИ — такие результаты показал опрос зрителей эфира AM Live. В эфире AM Live «Безопасность КИИ» эксперты обсудили защиту критической информационной инфраструктуры.

Участники разобрали переход от процессного подхода к типовым отраслевым объектам, новые требования с 1 марта 2027 года — расчёт показателей защищённости раз в полгода и уровня зрелости раз в три года, — а также практические проблемы: совместимость при импортозамещении, контроль подрядчиков, удалённый доступ и готовность к инцидентам. 

Опрос зрителей показал, что только 11% организаций уже выполнили все требования, которые нужно учесть перед 1 марта. Ещё 34% пока разбираются, что именно менять, а 12% заявили, что не являются субъектами КИИ. Алексей Орехов посоветовал не откладывать подготовку:

«Не стоит планировать, что вы 28 февраля досчитаете, а 1 марта у вас будут результаты. Начните заранее — это делается в первую очередь для себя».

Юрий Подгорбунский добавил, что показатель защищённости (КЗИ) на 90% коррелирует с мерами 239-го приказа: «Если система построена правильно, единицу получить несложно». Сергей Сайганов напомнил: если свидетельства по запросу регулятора не предоставлены в течение 30 дней, показатель обнуляется.

Среди главных препятствий для реальной защищённости 53% зрителей назвали проблемы совместимости при замене ПО и оборудования. Константин Закатов пояснил:

«Приобретать стоит то оборудование, которое заранее имеет сертификаты совместимости или заявленную совместимость с тем, что используется на объекте».

Александр Суховей отметил, что даже публичные заявления вендоров о совместимости не гарантируют результата:

«Привозим на стенд, ставим — не работает. Нужно пилотировать конкретные железки и софт, а не сферического коня в вакууме».

Также среди помех называли нехватку бюджета и специалистов.

Отдельный вопрос касался того, как компании проверяют работоспособность защиты. 50% проводили технические проверки защищённости, 36% — аудит, а вот учения по реагированию — только 9%. Лев Палей назвал эту цифру больным местом. Денис Поладьев согласился:

«Отработка реагирования должна быть штатной ситуацией. Для этого она должна быть частью домашних процессов, а не отдельным мероприятием безопасника».

Алексей Панюхин добавил, что перед проверками важно проверять версии средств защиты, сроки сертификатов, логи и действия пользователей.

В ходе дискуссии спикеры также отметили, что при построении защиты важно выходить за рамки значимых объектов.

«Смотреть на ИБ не только в разрезе значимых объектов, а на всю инфраструктуру — границы размываются», — сказал Алексей Орехов.

Александр Суховей призвал начинать с полной инвентаризации:

«Сначала нужно снять туман войны и понять, что вы вообще категорируете».

Денис Поладьев рекомендовал строить сквозные процессы ИБ вместе с ИТ и заказывать комплексный пентест, а Алексей Панюхин — максимально использовать встроенные механизмы защиты и при внедрении систем сразу учитывать требования ИБ.

Участники эфира сошлись во мнении, что подготовку к новым требованиям нельзя откладывать на последний момент, а реальная защищённость КИИ зависит не только от документов, но и от практических проверок, киберучений, совместимости решений и плотного взаимодействия ИБ с ИТ и бизнесом.

RSS: Новости на портале Anti-Malware.ru