От автоматизации к эксплуатации: злоумышленники используют Selenium Grid для криптомайнинга и проксиджекинга

information security

Эксперты кибербезопасности из Cado Security Labs (теперь в составе Darktrace) обнаружили две новые кампании, в которых злоумышленники эксплуатируют неправильно настроенные экземпляры Selenium Grid для организации криптомайнинга и проксиджекинга (proxyjacking). Атаки демонстрируют, насколько критически важно для пользователей Selenium Grid включать аутентификацию, которая по умолчанию отключена.

Описание

Selenium - это проект с открытым исходным кодом, состоящий из различных компонентов для автоматизации и тестирования браузеров. Selenium Grid - это сервер, который позволяет запускать тестовые сценарии параллельно в разных браузерах и их версиях. Инструмент используют тысячи организаций по всему миру, включая крупные корпорации, стартапы и сообщество open-source. Гибкость и интеграция в CI/CD-процессы делают его популярным выбором для тестирования веб-приложений на различных платформах. Однако конфигурация по умолчанию не предусматривает аутентификацию, что делает систему уязвимой для злоупотреблений.

Ранее в этом году исследователи из Wiz опубликовали данные о кампании криптомайнинга под названием SeleniumGreed, которая как раз эксплуатировала подобные ошибки в настройке. Это побудило Cado Security Labs развернуть специальную ловушку (honeypot) для мониторинга новых атак на Selenium Grid.

В первой из обнаруженных атак злоумышленник использовал конфигурацию «goog:chromeOptions», чтобы внедрить скрипт на Python в кодировке Base64 в качестве аргумента. В конфигурации WebDriver в качестве исполняемого файла был указан Python3, что позволило выполнить внедрённый скрипт. Этот скрипт отключает ведение истории команд оболочки, загружает с удалённого сервера другой скрипт с именем «y», выполняет его и затем удаляет, чтобы скрыть следы своего присутствия.

Скрипт «y» оказался реверс-шеллом GSocket - инструментом для создания зашифрованных TCP-соединений, который часто используется злоумышленниками для установки каналов управления (command-and-control, C2). Затем с сервера злоумышленников загружается второй скрипт - «pl». Он проверяет архитектуру системы, останавливает контейнеры Docker с именами «watchtower» и «traffmonitizer», задаёт пути установки и, в зависимости от архитектуры, загружает полезные нагрузки IPRoyal Pawn и EarnFM. Эти сервисы позволяют пользователям продавать пропускную способность своего интернет-канала, превращая его в резидентский прокси. Такой вид кибератаки называется проксиджекинг: злоумышленник незаконно использует чужое интернет-подключение, чтобы продавать IP-адрес жертвы и получать доход.

Внутри скрипта «pl» также содержится закодированный скрипт «tm», который проверяет права root, операционную систему, статус IPv4 и архитектуру системы, устанавливает токен TraffMonetizer, при необходимости устанавливает Docker, загружает образы TraffMonetizer и WatchTower из реестра Docker и удаляет старый контейнер TraffMonetizer.

Во второй кампании злоумышленник использовал схожую тактику: передавал закодированный скрипт на Python через конфигурацию «goog:chromeOptions». После декодирования обнаружился скрипт на Bash, который проверяет разрядность системы, подготавливает окружение, манипулирует переменными и файлами конфигурации, а также загружает ELF-бинар «checklist.php» с удалённого сервера. После выполнения полезной нагрузки скрипт проводит очистку, удаляя временные файлы и каталоги.

Загруженный бинарный файл «checklist.php» был упакован с помощью UPX - распространённого упаковщика, - но его заголовок был удалён, чтобы затруднить анализ. Исследователи вручную распаковали его с помощью отладчика GDB. Распакованный файл оказался написан на Golang - языке, который становится всё популярнее у создателей вредоносного ПО. Бинарник лишён символов отладки, что усложняет анализ.

При запуске бинарный файл пытается использовать уязвимость PwnKit (CVE-2021-4034) для повышения привилегий до root. Устанавливаются соединения с Tor-узлами, которые, вероятно, используются для управления через алгоритм генерации доменов (DGA). IP-адрес жертвы определяется с помощью сервиса iPify. Затем бинарник устанавливает криптомайнер «perfcc» и файл с именем «top», а также настраивает задание cron для обеспечения устойчивости. Дополнительно создаются два каталога в /tmp/ для хранения файлов и копий бинарников.

Файл «top» представляет собой скомпилированный с помощью Shell Script Compiler (SHC) ELF-бинар. SHC компилирует Bash-скрипты в бинарный файл с содержимым, зашифрованным по алгоритму ARC4, что значительно затрудняет обнаружение и анализ. Скрипт проверяет наличие определённых переменных окружения, выполняет очистку и в конечном итоге запускает команду «top» для отображения процессов системы.

Это не первый случай, когда Selenium Grid становится мишенью для киберпреступников, но данная кампания наглядно демонстрирует новый вариант атаки на неправильно настроенные экземпляры. Аналогичные атаки ранее были замечены и в других уязвимых сервисах, например, в GitLab, как в кампании LABRAT, обнаруженной Sysdig в прошлом году.

Поскольку множество организаций полагаются на Selenium Grid для тестирования веб-браузеров, эта кампания в очередной раз подчёркивает, как ошибки в конфигурации могут быть использованы злоумышленниками. Пользователям настоятельно рекомендуется настроить аутентификацию, которая отключена по умолчанию. Кроме того, организациям следует рассмотреть возможность сотрудничества с экспертами в области цифровой криминалистики и реагирования на инциденты (DFIR), чтобы оперативно реагировать на угрозы, минимизируя возможный ущерб и простои.

Индикаторы компрометации

IPv4

  • 129.13.131.140
  • 146.70.120.58
  • 154.213.187.153
  • 173.212.220.247
  • 193.168.143.199
  • 198.211.126.180
  • 199.58.81.140
  • 212.47.244.38
  • 50.7.74.173
  • 54.187.140.5
  • 95.216.88.55

Domains

  • www.fkxwama7ebnluzontqx2lq.com
  • www.kdzdpvltoaqw.com
  • www.os7mj54hx4pwvwobohhh6.com
  • www.xt3tiue7xxeahd5lbz.com

URLs

  • http://173.212.220.247/burjdubai/.jblae/pl
  • http://173.212.220.247/burjdubai/.jblae/y

SHA256

  • 22e4a57ac560ebe1eff8957906589f4dd5934ee555ebcc0f7ba613b07fad2c13
  • 31ee4c9984f3c21a8144ce88980254722fd16a0724afb16408e1b6940fd599da
  • 44e83f84a5d5219e2f7c3cf1e4f02489cae81361227f46946abe4b8d8245b879
  • 95aa55faacc54532fdf4421d0c29ab62e082a60896d9fddc9821162c16811144
  • 96969a8a68dadb82dd3312eee666223663ccb1c1f6d776392078e9d7237c45f2

Yara

Комментарии: 0