Исследователи в области кибербезопасности сегодня разоблачили сложный многофункциональный P2P ботнет на базе GoLang активно атакующий SSH-серверы с января 2020 года.
«Модульный многопоточный и бесфайловый ботнет «FritzFrog» на сегодняшний день взломал более 500 серверов, заразив известные университеты США и Европы, а также железнодорожную компанию», - говорится в докладе компании Guardicore Labs.
«Благодаря децентрализованной инфраструктуре, управление ботнетом распределено между всеми узлами», - сообщил Офир Харпаз из Guardicore. «В сети нет единой точки отказа, узлы постоянно общаются друг с другом, чтобы поддерживать сеть живой, устойчивой и обновленной».
В дополнение к написанной с нуля реализации пропиетарного протокола P2P, обмен данными осуществляется по зашифрованному каналу, при этом вредоносная программа способна создать бэкдор, который обеспечивает злоумышленникам непрерывный доступ к системам жертв.
Бесфайловый P2P-ботнет
Хотя ботнеты на базе GoLang наблюдались и раньше, например Gandalf и GoBrut, «FritzFrog», похоже, имеет некоторое сходство с Rakos, другим бэкдором Linux на базе Golang, который ранее был замечен при попытках взлома учетных записей SSH через перебор паролей.
Но уникальность «FritzFrog» заключается в том, что он не имеет файлов, то есть собирается и выполняется в памяти, более агрессивен в проведении bruteforce-атак, и крайне эффективен, так как равномерно распределяет цели внутри ботнета.
Как только целевая машина идентифицирована, вредоносная программа выполняет ряд задач связанных с взломом SSH-логина, заражением машины вредоносным ПО и, при успешном взломе, добавляет жертву в P2P-сеть.
Чтобы остаться незамеченным, вредонос запускается как ifconfig и NGINX, начинает прослушивать порт 1234 для получения дальнейших команд, в том числе и для синхронизации жертвы с базой данных сетевых узлов и целей для брутфорса.
Сами команды передаются через серию прокси, которые предназначены для предотвращения обнаружения. Атакующий узел в ботнете сначала фиксируется на определенной жертве по SSH, а затем использует утилиту NETCAT для установления соединения с удаленным сервером.
Более того, обмен файлами между узлами в стиле BitTorrent осуществляется с использованием сегментированного подхода к передаче файлов для отправки блоков данных.
«Когда узел A хочет получить файл от узла B, он может запросить какими блоками владеет узел B с помощью команды getblobstats, - сообщил Харпаз. - Тогда узел A может получить определённый блок по его хэшу, либо по команде P2P getbin, либо по HTTP с URL 'https://node_IP:1234/blob_hash'. Когда у узла A есть все нужные блоки, он собирает файл с помощью специального модуля под названием Assemble и запускает его».
Помимо шифрования и кодирования ответов вредоносная программа запускает отдельный процесс под названием "libexec" для майнинга крипто-валюты Monero и оставляет бэкдор для последующего доступа к системе, добавляя открытый ключ атакующего в файл «authorized_keys». Так злоумышленники могут в дальнейшем аутентифицироваться в системе жертвы без необходимости снова полагаться на пароль.
13 000 атак с января
По данным исследователей, серия атак началась 9 января, с момента первого появления количество атак достигло 13 000 с применением 20 различных версий «FritzFrog».
Помимо образовательных учреждений, «FritzFrog» атаковал миллионы IP-адресов государственных организаций, медицинских центров, банков и телекоммуникационных компаний.
Лаборатория Guardicore Labs предоставила скрипт для выявления заражения «FritzFrog» и некоторых других признаков компрометации системы.
«Слабые пароли являются основной причиной успеха атак «FritzFrog», - заключил Харпаз. «Мы рекомендуем выбирать надежные пароли и использовать аутентификацию по открытому ключу, что гораздо безопаснее. Маршрутизаторы и IoT-устройства часто подвергаются SSH-атакам и поэтому уязвимы для «FritzFrog». Подумайте об изменении своего SSH-порта или полном отключении SSH-доступа к ним, если сервис активно не используется».
Перевод сделан со статьи https://thehackernews.com/