stihl не предоставил(а) никакой дополнительной информации.
Сегодня мы шаг за шагом пройдем процесс анализа инцидента: по собранным артефактам узнаем подробности о подозрительной активности, а затем изучим код вредоноса по изменениям на GitHub. Особое внимание уделим практическому применению методологии MITRE ATT&CK и использованию OSINT-методов для детального исследования инцидента.
Мы будем проходить лабораторную работу Для просмотра ссылки Войдиили Зарегистрируйся из раздела Sherlocks на площадке Hack The Box.
Вот как звучит предложенный автором лабы сценарий:
В корневой папке есть каталог User_Files, который содержит архив с интересным названием hidden-user-home-dir.tar.gz. В нем — каталоги home/ и root/.
Для просмотра ссылки Войдиили Зарегистрируйся
В домашней директории находим папку пользователя johnspire, который предположительно был скомпрометирован. Просмотрим историю команд, чтобы убедиться в этом.
Для просмотра ссылки Войдиили Зарегистрируйся
Видим, что под учеткой выполнялась подозрительная активность, в том числе сканирование сети, просмотр /etc/passwd, запуск MSF. Примечателен запуск Git и использование скрипта enum.sh. Посмотрим на GitHub засветившийся репозиторий autoenum.
Для просмотра ссылки Войдиили Зарегистрируйся
В README написано NA (not available), что подразумевает отсутствие каких‑либо сведений. Разберем подробнее запускавшийся на хосте enum.sh.
Для просмотра ссылки Войдиили Зарегистрируйся
C сайта скачивается ZIP-архив с достаточно тривиальным паролем, тоже состоящим из двух по отдельности кодированных Base64 частей.
Для просмотра ссылки Войдиили Зарегистрируйся
Не было ли у этого скрипта более ранних версий? Чтобы это узнать, переходим в раздел Activity на странице репозитория.
Для просмотра ссылки Войдиили Зарегистрируйся
Здесь отображены все изменения, внесенные в проект (плюсом отмечены новые строчки кода, минусом — удаленные): какой пользователь вносил эти изменения и когда. Например, в коммите с SHA 7d20...5f видим удаленные комментарии к частям вредоносной функции.
Для просмотра ссылки Войдиили Зарегистрируйся
Чтобы уточнить временную метку, воспользуемся командой git log --pretty=oneline. Она используется в Git для отображения истории коммитов в укороченном формате, где каждый коммит представлен одной строкой. Это удобно для быстрого просмотра истории изменений.
Для просмотра ссылки Войдиили Зарегистрируйся
Команда git show в Git используется для отображения подробной информации о конкретном объекте в репозитории, в том числе его временной метки. Чаще всего она применяется для просмотра данных о коммитах, но также показывает информацию о тегах, деревьях (tree) и файлах (blob).
Для просмотра ссылки Войдиили Зарегистрируйся
Из интересного в этом кейсе видим смену ссылки на Dropbox в коммите с SHA 5d88...7b.
Для просмотра ссылки Войдиили Зарегистрируйся
GitHub, как одна из крупнейших платформ для совместной разработки, часто становится инструментом для распространения вредоносного кода. Злоумышленники могут использовать репозитории для хранения и распространения вредоносных скриптов, эксплоитов или фишинговых инструментов. История активности таких репозиториев — ценный источник информации.
Каждый коммит в Git содержит информацию о внесенных изменениях, авторе и времени. Используя команду git log, получим полную историю коммитов репозитория. Это позволяет:
Также злоумышленники могут использовать ветки и теги для организации своей работы. Например:
Для просмотра ссылки Войдиили Зарегистрируйся
Это, согласно MITRE, относится к подтехнике закрепления в системе T1053.003.
Давай разберем, что за файл blob был доставлен, распакован и закреплен в системе. В каталогах его не найти, поэтому воспользуемся артефактами из триажа. В папке Misc есть документ exec-perm-files.txt, в котором отображены все файлы с правами на выполнение и их хеш‑суммами.
Для просмотра ссылки Войдиили Зарегистрируйся
Заливаем хеш на VirusTotal и видим, что образец действительно вредоносен. Перейдем на вкладку Behavior, чтобы уточнить его вид и предназначение.
Для просмотра ссылки Войдиили Зарегистрируйся
Согласно MITRE, основное воздействие blob связано с техникой T1496, а исходя из строки reference cryptocurrency strings, можем заключить, что это майнер криптовалюты.
Исследование истории изменений в GitHub-репозитории позволило выявить эволюцию вредоносного скрипта enum.sh и определить точные временные метки внесения критических изменений.
Использование специализированных инструментов Git и анализ поведения файла blob помогли классифицировать атаку по техникам MITRE T1053.003 и T1496.
Мы будем проходить лабораторную работу Для просмотра ссылки Войди
Вот как звучит предложенный автором лабы сценарий:
Цель расследования — проверить, как произошла компрометация, используя предоставленные данные.Служба внутренней безопасности компании Forela провела тестирование на проникновение в ее сеть. В результате тестирования было обнаружено, что один из узлов, возможно, был взломан.
Поиск аномальной активности
Распакуем и прошерстим файлы из задания. Нет ли среди них папок с подозрительными названиями? Особое внимание уделяем каталогам пользователя.В корневой папке есть каталог User_Files, который содержит архив с интересным названием hidden-user-home-dir.tar.gz. В нем — каталоги home/ и root/.
Для просмотра ссылки Войди
В домашней директории находим папку пользователя johnspire, который предположительно был скомпрометирован. Просмотрим историю команд, чтобы убедиться в этом.
Для просмотра ссылки Войди
Видим, что под учеткой выполнялась подозрительная активность, в том числе сканирование сети, просмотр /etc/passwd, запуск MSF. Примечателен запуск Git и использование скрипта enum.sh. Посмотрим на GitHub засветившийся репозиторий autoenum.
Для просмотра ссылки Войди
В README написано NA (not available), что подразумевает отсутствие каких‑либо сведений. Разберем подробнее запускавшийся на хосте enum.sh.
Для просмотра ссылки Войди
Анализ enum.sh
Внимание привлекает функция do_wget_and_run(), которая и является вредоносной. В ней содержится ссылка на Dropbox, составляемая из двух переменных:
Код:
f1="https://www.dropbox.com/scl/fi/uw8oxug0jydibnorjvyl2"
f2="/blob.zip?rlkey=zmbys0idnbab9qnl45xhqn257&st=v22geon6&dl=1"
C сайта скачивается ZIP-архив с достаточно тривиальным паролем, тоже состоящим из двух по отдельности кодированных Base64 частей.
Для просмотра ссылки Войди
Не было ли у этого скрипта более ранних версий? Чтобы это узнать, переходим в раздел Activity на странице репозитория.
Для просмотра ссылки Войди
Здесь отображены все изменения, внесенные в проект (плюсом отмечены новые строчки кода, минусом — удаленные): какой пользователь вносил эти изменения и когда. Например, в коммите с SHA 7d20...5f видим удаленные комментарии к частям вредоносной функции.
Для просмотра ссылки Войди
Чтобы уточнить временную метку, воспользуемся командой git log --pretty=oneline. Она используется в Git для отображения истории коммитов в укороченном формате, где каждый коммит представлен одной строкой. Это удобно для быстрого просмотра истории изменений.
Для просмотра ссылки Войди
Команда git show в Git используется для отображения подробной информации о конкретном объекте в репозитории, в том числе его временной метки. Чаще всего она применяется для просмотра данных о коммитах, но также показывает информацию о тегах, деревьях (tree) и файлах (blob).
Для просмотра ссылки Войди
Из интересного в этом кейсе видим смену ссылки на Dropbox в коммите с SHA 5d88...7b.
Для просмотра ссылки Войди
GitHub, как одна из крупнейших платформ для совместной разработки, часто становится инструментом для распространения вредоносного кода. Злоумышленники могут использовать репозитории для хранения и распространения вредоносных скриптов, эксплоитов или фишинговых инструментов. История активности таких репозиториев — ценный источник информации.
Каждый коммит в Git содержит информацию о внесенных изменениях, авторе и времени. Используя команду git log, получим полную историю коммитов репозитория. Это позволяет:
- Определить этапы разработки вредоносного кода: например, когда были добавлены ключевые функции или исправлены уязвимости.
- Выявить подозрительные паттерны: например, массовое удаление файлов или добавление зашифрованных данных.
- Связать коммиты с реальными инцидентами, сравнивая даты коммитов с временем атак или утечек данных.
Также злоумышленники могут использовать ветки и теги для организации своей работы. Например:
- Ветки для тестирования. Вредоносный код может разрабатываться в отдельных ветках, а затем сливаться в основную.
- Теги для версификации. Теги могут указывать на версии вредоносного ПО, что помогает отследить его эволюцию. Используя команды git branch -a и git tag, получим список всех веток и тегов, а затем изучим их содержимое.
- GitHub API. Для автоматизации сбора данных о репозитории, включая коммиты, проблемы и пул‑реквесты.
- Инструменты статического анализа кода. Например, Bandit для Python или Semgrep для поиска уязвимостей.
- OSINT-инструменты. Для поиска связей между авторами репозитория и другими аккаунтами в сети.
Закрепление через Cron
Снова обратим внимание на enum.sh. В той же вредоносной функции есть действия по закреплению с помощью Cron.Для просмотра ссылки Войди
Это, согласно MITRE, относится к подтехнике закрепления в системе T1053.003.
Классификация
Техника MITRE T1053.003, известная как Cron, относится к использованию планировщика задач Cron в Unix-подобных системах для выполнения команд или скриптов по расписанию. Злоумышленники могут использовать эту технику для выполнения вредоносного кода с определенной периодичностью или для закрепления в системе после компрометации.Давай разберем, что за файл blob был доставлен, распакован и закреплен в системе. В каталогах его не найти, поэтому воспользуемся артефактами из триажа. В папке Misc есть документ exec-perm-files.txt, в котором отображены все файлы с правами на выполнение и их хеш‑суммами.
Для просмотра ссылки Войди
Заливаем хеш на VirusTotal и видим, что образец действительно вредоносен. Перейдем на вкладку Behavior, чтобы уточнить его вид и предназначение.
Для просмотра ссылки Войди
Согласно MITRE, основное воздействие blob связано с техникой T1496, а исходя из строки reference cryptocurrency strings, можем заключить, что это майнер криптовалюты.
Классификация
Техника T1496 (Resource Hijacking) описывает захват злоумышленниками системных или сетевых ресурсов для выполнения вредоносных задач, таких как майнинг криптовалюты, проведение DDoS-атак или выполнение сложных вычислений, что приводит к несанкционированному использованию CPU, GPU или пропускной способности сети, снижению производительности системы и увеличению энергопотребления.Выводы
В ходе анализа мы проследили полную цепочку атаки: от начального доступа через учетную запись пользователя johnspire до закрепления в системе с помощью планировщика cron и установки майнера криптовалюты.Исследование истории изменений в GitHub-репозитории позволило выявить эволюцию вредоносного скрипта enum.sh и определить точные временные метки внесения критических изменений.
Использование специализированных инструментов Git и анализ поведения файла blob помогли классифицировать атаку по техникам MITRE T1053.003 и T1496.