avatar
PurpleBear
@purple_medved
05.04.2024 12:31
REDIScovering HeadCrab - A Technical Analysis of a Novel Malware and the Mind Behind It

Так звучит название отличного доклада про анализ малвари HeadCrab от Aqua Security на BlackHat EU 2023. Содержание представляет собой детальное исследование HeadCrab, который использовался для атак на сервера Redis c целью майнинга криптовалюты.

🔴 Initial Assess
В качестве вектора для получения первоначального доступа злоумышленники использовали технику SLAVEOF/REPLICAOF из доклада крутого ресерчера Павла Топоркова aka Paul Axe на ZeroNights 2018❤️ Редис имеет функциональность, которая заключается в создании копии данных на другом сервере, с помощью redis-cli replicaof <master_host> <master_port>. Так злодей, который получил доступ к серверу без protected mode, с помощью подбора слабых учетных данных, имеет возможность подключить его как slave (стало не политкорректно с версии Redis 5.0) т.е replica к своему мастер-серверу и получить таким образом возможность RCE
🔴 Exploitation
Далее на атакуемый сервер устанавливается Redis модуль - Loader.so в версии HeadCrab2.0, который загружает основную малварь HeadCrab.so в memfd (Memory File Descriptor) т.е в RAM, не оставляю следов на диске
🔴 C2/Defense Evasion
Загруженный основной модуль перезаписывает дефолтные команды Redis overwrite_command ("replicaof", qword_245788, 0LL, 0LL, invalid_command_err_3) чтобы затруднить идентификацию и избавиться от конкурентов
🔴 Post Exploitation
Далее устанавливается XMRig для майнинга криптовалюты Monero
🔴 Persistence/Defense Evasion
☑️ Создаются переменные окружения для перетирания shell history - HISTFILE=/dev/null
☑️ Удаление логов, при этом интересно, что логи не просто сносятся, а изменяется размер файлов - truncate ("/var/log/redis/redis.log", 0LL)
☑️ Сокрытие конфигов в атрибутах, вместо создания файлов на диске - return setxattr(path, "trusted.cfg", v5, 0x18uLL, 0)
☑️ Исполнение Lua скриптов в памяти
☑️ Использование ld.so как LOTL лоадер
☑️ Использование Files Timestomping, для затруднения расследования инцидента
☑️ Использование inotify для затруднения расследования инцидента (inotify для "proc/%d/stat", например для top просто отключает майнер, а "dev/pts/%s" для pty сессий ssh)
🔴 Credential Access/Defense Evasion
Далее таким же образом загружается малварь ice9j для сбора кредов во время аутентификации для SSHd, FTPd, Maild и SQLd (предположительно в разработке) с использованием различных техник от ptrace до манипуляций с /proc/$pid/mem
Использование anti-debugging техник и fanotify для затруднения расследования инцидента

Интересный факт, что исследователи общались с автором малвари, который(ая) представился ice9 по электронной почте, который охотно взаимодействовал и даже поблагодарил ресерчеров за проявленный интерес "Thanks, you are the first one who wrote to this email"🤪

PS: Желаю всем удачного окончания недели и отличных выходных!
YouTube
REDIScovering HeadCrab - A Technical Analysis of a Novel Malware and the Mind Behind It
Join us on a thrilling journey as we unveil the story of HeadCrab - a highly elusive and sophisticated malware. HeadCrab is a creation of an advanced threat actor who utilized custom-made Redis Modules and API usage to build a full-scale malicious framework. We found the malware to be highly advanced, deploying several highly technical novel techniques which allowed it to infiltrate servers worldwide since 2021... By: Asaf Eitani , Nitzan Yaakov Full Abstract and Presentation Materials: https://www.blackhat.com/eu-23/briefings/schedule/#rediscovering-headcrab---a-technical-analysis-of-a-novel-malware-and-the-mind-behind-it-34310
🔥 6
19 1.4K

Обсуждение 0

Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.

Обсудить в Telegram