Эксперты Palo Alto Networks обнаружили странного криптоджекингового червя Graboid, для распространения которого используются контейнеры Docker Engine (Community Edition).
Через поисковик Shodan исследователи Palo Alto Networks обнаружили более 2000 небезопасных установок Docker Engine (Community Edition), доступных всем желающим через интернет. Именно на них и паразитирует Graboid. Малварь, предназначенная для добычи криповалюты Monero, время от времени подгружает с управляющего сервера список уязвимых хостов (более чем 2000 IP-адресов, что свидетельствует о том, что злоумышленники уже составили перечень возможных целей) и случайным образом выбирает себе цель.
После проникновения в целевую систему, атакующий отдает удаленные команды на загрузку образа Docker «pocosow/centos» из Docker Hub и развертывает его. Этот образ содержит клиент Docker, который используется для связи с другими Docker-хостами. Майнинговая активность осуществляется через отдельный контейнер «gakeaws/nginx», который выдает себя за веб-сервер nginx. Эти контейнеры были загружены тысячи раз: «pocosow/centos» насчитывает более 10 000 загрузок, а «gakeaws/nginx» порядка 6500.
Также «pocosow/centos» используется для загрузки с управляющего сервера четырех скриптов и их выполнения:
- live.sh: передает информацию о доступных процессорах на скомпрометированном хосте;
- worm.sh: загружает список уязвимых хостов, выбирает новые цели и развертывает на них «pocosow / centos»;
- cleanxmr.sh: останавливает майнинг на случайном хосте;
- xmr.sh: выбирает случайный адрес из списка уязвимых хостов и развертывает там контейнер «gakeaws/nginx».
Исследователи пишут, что Graboid получает команды от 15 скомпрометированных хостов, 14 из которых присутствуют в списке уязвимых IP-адресов. На одном из них насчитывается более 50 известных уязвимостей, и эксперты считают, что оператор Graboid скомпрометировал эти хосты специально для контроля своей малвари.
При этом аналитики полагают, что Graboid работает не совсем так, как задумал его автор. Дело в том, что в среднем каждый майнер активен 63% времени, при этом сеанс майнинга составляет всего 250 секунд. Возможными причинами этого странного поведения могут быть как плохой дизайн малвари, так и не слишком эффективные попытки остаться незамеченным. При этом майнер даже не запускается на зараженных хостах сразу после установки.
«Во время каждой итерации Graboid случайным образом выбирает себе три цели. Он устанавливает червя на первую цель, останавливает майнер на второй цели и запускает майнер на третьей цели. В итоге поведение майнера получается беспорядочным», — пишут исследователи Palo Alto Networks.