• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Qbot и Zerologon ведут к полной компрометации домена

вавилонец

CPU register
Пользователь
Регистрация
17.06.2021
Сообщения
1 116
Реакции
1 265
В ходе этого вторжения (ноябрь 2021 г.) злоумышленник впервые закрепился в среде с помощью Qbot (также известного как Quakbot/Qakbot) .
Вскоре после выполнения полезной нагрузки Qbot вредоносное ПО установило соединение C2 и сохраняло устойчивость на плацдарме. Успешная эксплуатация Zerologon (CVE-2020-1472) позволила злоумышленникам получить права администратора домена. Этот уровень доступа был использован для развертывания дополнительных маяков Cobalt Strike и, следовательно, переключения на другие важные узлы в сети. Затем злоумышленник извлек конфиденциальные документы из среды, после чего был изгнан из сети.


Резюме


Злоумышленники получили первоначальный доступ к рабочей станции Windows, запустив вредоносную DLL. Первая активность QBot была замечена через 5 минут после выполнения DLL. Различные команды автоматического обнаружения использовались для сопоставления топологии сети, получения информации о членах локальной группы и составления списка доступных файловых ресурсов/привилегий зараженного пользователя.
После первого этапа обнаружения Qbot сбросил еще одну вредоносную DLL и создал запланированную задачу для обеспечения устойчивости. Основная цель запланированной задачи состояла в том, чтобы запускать маяк PowerShell Cobalt Strike (с кодировкой base64) каждые 30 минут.
Как только субъекты угрозы установили постоянство, они продолжили перечисление среды, сопоставив среду Active Directory с помощью таких инструментов, как Nltest, net и ADFind.
После идентификации одного из контроллеров домена злоумышленники приступили к эксплуатации уязвимости ZeroLogon. Используемый исполняемый файл поразительно похож на тот, который использовался в предыдущем случае From Zero to Domain Admin , на основе аргументов командной строки и общего выполнения эксплойта. Исполняемый файл с именем cool.exe сбрасывает пароль контроллера домена на пустую строку, извлекает хэш пароля администратора домена и устанавливает службу на контроллере домена для сброса пароля контроллера домена, чтобы не прерывать операции Active Directory.
Затем хэш администратора домена был использован на плацдарме посредством атаки с передачей хеша . Получив привилегии администратора домена, они приступили к развертыванию маяков Cobalt Strike на файловом сервере и другом контроллере домена, что позволило им перейти на эти серверы.
Наконец, документы были украдены и эксфильтрированы через зашифрованный канал C2 Cobalt Strike (HTTPS) .

TimeLine


Qbot-and-Zerologon-Lead-To-Full-Domain-Compromise.png



Начальный доступ


Злоумышленник получил первоначальный доступ через выполнение вредоносной DLL. Традиционно Qbot доставляется по электронной почте с использованием вредоносных документов, которые затем загружают вредоносную DLL. Однако в данном случае выполнение запускалось непосредственно из библиотеки qbot, найденной здесь .

Цепочка выполнения для этой инфекции QBot:



qbot_chain.png




Исполнение


Анализ QBot PowerShell


Мы проанализировали путь реестра и связанные с ним ключи, которые были запрошены запланированной задачей. HKCU:\SOFTWARE\Pvoeooxfи обнаружил, что были созданы три ключа, содержащие значения в кодировке base64. Расшифровка значений привела к:

1. Копия QBot DLL
2. Строка IP-адресов QBot C2, разделенных точкой с запятой.
3. Замаскированный сценарий PowerShell, на который ссылается запланированная задача.




Сценарий PowerShell (запущенный запланированной задачей) запускает цепочку событий, показанную ниже:





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





В зависимости от результата он либо: (1) извлекает полезную нагрузку Qbot в кодировке base64 из реестра Windows, декодирует ее, сохраняет в файловой системе и выполняет.





ИЛИ (2) Получите полезную нагрузку QBot удаленно, используя один из активных IP-адресов C2, используя Invoke-WebRequestМодуль PowerShell:





Сценарий PS содержит встроенную логику для выполнения различных типов полезной нагрузки, включая пакетные файлы и файлы Visual Basic.





Закодированная DLL QBot, которая хранилась в реестре, была удалена в каталоге %APPDATA%\Roaming\Microsoft\Fdopitcu. Неподписанная DLL с дескриптором Cancel Autoplay 2был выполнен с использованием regsvr32.exe








При выполнении этой DLL второго этапа в HKCU\Software\Microsoft\Yerqbqokc. Кроме того, был запущен и внедрен новый экземпляр explorer.exe (32-разрядная версия).




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



Persistence

Запланированная задача/задание — Запланированное задание на плацдарме


Запланированная задача, созданная Qbot, была настроена на запуск каждые 30 минут и выполняет полезную нагрузку в кодировке base64, хранящуюся в реестре Windows.


Код:
schtasks.exe /Create /F /TN "{97F2F70B-10D1-4447-A2F3-9B070C86E261}" /TR "cmd /c start /min \"\" powershell.exe -Command IEX([System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String((Get-ItemProperty -Path HKCU:\SOFTWARE\Pvoeooxf).yzbbvhhdypa))) " /SC MINUTE /MO 30

1653803706889.png


Код:
LogName: Microsoft-Windows-TaskScheduler/Operational
EventCode: 106
Message: Task scheduler Task Registered

Повышение привилегий


Через тридцать минут после получения первоначального доступа злоумышленники запустили исполняемый файл на плацдарме для использования CVE-2020-1472, Zerologon.


Исполняемый файл был назван «cool.exe»:

C:\Windows\system32\cmd.exe /C cool.exe [IP-АДРЕС DC] [ИМЯ ДОМЕНА] Администратор -c "taskkill /f /im explorer.exe"




Через три миллисекунды после Zerologon появилось событие 4742 «Учетная запись компьютера была изменена» на целевом контроллере домена.
Как поясняется в подробном блоге CrowdStrike , CVE ZeroLogon опирается на алгоритм AES-CFB8, используемый с нулевым IV:

«Чтобы безопасно использовать AES-CFB8, необходимо сгенерировать случайный вектор инициализации (IV) для каждого открытого текста, который будет зашифрован с использованием одного и того же ключа. Однако функция ComputeNetlogonCredential устанавливает для IV фиксированное значение 16 нулевых байтов. Это приводит к криптографической ошибке, из-за которой шифрование 8 байтов нулей может привести к зашифрованному тексту нулей с вероятностью 1 из 256. Другая проблема реализации, допускающая эту атаку, заключается в том, что незашифрованные сеансы Netlogon не отклоняются серверами (по умолчанию ). Сочетание этих двух недостатков может позволить злоумышленнику полностью скомпрометировать аутентификацию и, таким образом, выдать себя за сервер по своему выбору».

Как мы видим на сетевых захватах, была проведена атака грубой силы, чтобы подменить идентификатор контроллера домена:





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




После успешной аутентификации был установлен пароль DC:




Поле PasswordLastSet равно полю TimeCreated, что означает успешное обновление пароля контроллера домена. Мы также можем видеть, что SubjectUserName является АНОНИМНЫМ ВХОДОМ.


Было выполнено подключение с плацдарма к контроллеру домена с использованием учетной записи DC. После аутентификации на контроллере домена с помощью учетной записи контроллера домена злоумышленники сбросили хэш администратора домена, а затем сбросили пароль контроллера домена, чтобы взломать домен Active Directory.



Оболочка проводника также была перезапущена злоумышленником:



Уклонение от защиты

После выполнения исходной DLL QBot использует очистку процесса для запуска приостановленного экземпляра explorer.exe (32-разрядная версия), а затем внедряет себя в этот процесс.




Внедренный процесс explorer.exe использовался для порождения и внедрения в дополнительные экземпляры explorer.exe (32-разрядная версия). Пример события можно увидеть ниже. Источник PID 10492, принадлежащий QBot, внедрил DLL в PID 4072, который, как мы обнаружили, был частью связи Cobalt Strike C2.




Over-Pass-the-Hash от Beachhead

Злоумышленник получил хеш-значение NTLM учетной записи администратора с помощью эксплойта Zerologon и использовал передачу хэша для запроса TGT от контроллера домена. Мы уже видели использование over-pass-the-hash несколько раз. Например, наше руководство Cobalt Strike Defender более подробно описывает обнаружение этой техники.





Вскоре после этого был запрошен TGT для учетной записи администратора:




Разведка

QBot изначально запускает ряд процессов для сбора информации о уязвимой системе. Это часть запроса бота «SYSTEM INFO», как описано в недавней статье от SecureList .


8734-23.png


Позже через маяк Cobalt Strike было выполнено больше команд обнаружения, которые собирали информацию о среде Active Directory.





ADFind (переименованный в find.exe), используемый для перечисления компьютеров
C:\redacted\find.exe -f objectcategory=computer -csv name cn OperatingSystem dNSHostName

8734-25.png


На контроллере домена злоумышленники собирали информацию об установленном защитном ПО через WMI:



Код:
C:\Windows\system32\cmd.exe /C wmic /namespace:\\root\SecurityCenter2 PATH AntiSpywareProduct GET /value
C:\Windows\system32\cmd.exe /C wmic /namespace:\\root\SecurityCenter2 PATH AntiVirusProduct GET /value
C:\Windows\system32\cmd.exe /C wmic /namespace:\\root\SecurityCenter2 PATH FirewallProduct GET /value

Пинг использовался для проверки того, что компьютеры подключены к сети.

Код:
ping -n 1 [REDACTED]

Боковое перемещение


Благодаря созданию служб Windows маяки Cobalt Strike (функция psexec_psh) были развернуты на нескольких хостах в среде.

Код:
EventCode: 7045
Service File Name: %COMSPEC% /b /c start /b /min powershell -nop -w hidden -encodedcommand <redacted>
User: NT AUTHORITY\SYSTEM
ParentImage: C:\Windows\System32\services.exe
ParentCommandLine: C:\Windows\system32\services.exe

На первом контроллере домена был установлен сервис Cobalt Strike:

1653804419263.png


Log Source: Microsoft-Windows-Service Control Manager Event ID:7045

Несколько сервисов были установлены Cobalt Strike среде, вот несколько примеров:

Код:
HKLM\System\CurrentControlSet\Services\3141131\ImagePath
HKLM\System\CurrentControlSet\Services\af5ff02\ImagePath
HKLM\System\CurrentControlSet\Services\c46234f\ImagePath

Cobalt Strike сначала вызывает OpenSCManagerW для удаленного создания сервиса, а затем запускает его с помощью StartServiceA :





RDP/интерактивные входы в систему


Были выполнены различные команды для включения службы RDP на разных хостах:


Увеличьте максимально допустимое количество подключений RDP, в данном случае произвольно большое число.

Код:
REG  ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /t REG_DWORD /v "MaxInstanceCount" /d 0xffffffff /f

Убедитесь, что прослушиватель RDP включен.

Код:
REG  ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /t REG_DWORD /v "fEnableWinStation" /d 1 /f

Убедиться, что пользователю разрешен доступ по RDP к терминальному серверу.

Код:
REG  ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "TSUserEnabled" /d 0 /f

Убедитесь, что сервер терминалов включен.

Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "TSEnabled" /d 1 /f

Убедиться, что службы терминалов установлены в режим удаленного администрирования.

Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "TSAppCompat" /d 0 /f

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

Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "IdleWinStationPoolCount" /d 1 /f

Включает рекламу терминального сервера.
Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "TSAdvertise" /d 1 /f


Убедиться, что терминальный сервер настроен на разрешение подключений.
Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "AllowTSConnections" /d 1 /f


Убедитесь, что терминальный сервер настроен на одновременные сеансы.
Код:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core" /t REG_DWORD /v "EnableConcurrentSessions" /d 1 /f


Проверяет, разрешено ли несколько сеансов.
Код:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /t REG_DWORD /v "fSingleSessionPerUser" /d 0 /f

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

Код:
sc config termservice start= auto
net  start termservice /y

Затем злоумышленник установил интерактивные административные сеансы RDP и переключился на разные узлы в сети.




Код:
LogName=Security
EventCode=4624
Logon Type=10 (Remote Interactive Logon - RDP)

Именованный канал (SMB)​


Полезная нагрузка в кодировке base64 может быть декодирована с помощью ЭТОГО( твит @0xtornado ), который представляет маяк SMB, создающий именованный канал «dce_3d».





Код:
LogName=Microsoft-Windows-System/Operational
EventCode=17
TaskCategory=Pipe Created (rule: PipeEvent)

Командование и контроль


Детали QBot — 24.229.150.54 // 41.228.22.180​

24.229.150[.]54:995 / avlhestito[.]us
Код:
Certificate: 25:a6:ef:79:48:98:54:ee:bb:a6:bd:10:ee:c1:f2:0a:00:ad:ac:ce
Not Before  2021/11/15 09:24:49 UTC 
Not After  2022/11/15 13:18:32 UTC 
Issuer Org  Rsc Inpye LLC. 
Subject Common  avlhestito[.]us
Public Algorithm  rsaEncryption
JA3: c35a61411ee5bdf666b4d64b05c29e64
JA3s: 7c02dbae662670040c7af9bd15fb7e2f

41.228.22[.]180:443 / xrhm[.]info

Код:
Certificate:    96:39:a9:52:e9:9a:1e:29:c5:dc:b3:72:01:29:74:c4:87:db:15:d7
Not     Before:  2021/11/12 04:34:10 UTC 
Not After:      2022/11/12 10:08:57 UTC 
Issuer Org:  Bqatra Bamito Inc. 
Subject Common:  xrhm[.]info
Public Algorithm:  rsaEncryption
JA3:  c35a61411ee5bdf666b4d64b05c29e64
JA3s: 7c02dbae662670040c7af9bd15fb7e2f

Вот информация о начальном доступе к DLL (Qbot) от Tria.ge.





Детали Cobalt Strike – 5.255.98[.]144


Этот сервер Cobalt Strike был добавлен в список наших угроз 16 ноября 2021 г.


5 255.98.144:8888 / 5 255.98.144:443 / 5 255.98.144:8080 / dxabt[.]com

Код:
Certificate: [25:fe:be:6d:0e:8d:48:5a:94:cf:46:84:d7:7e:ff:bf:47:aa:04:5c ]
Not Before: 2021/11/07 03:00:53 UTC      
Not After: 2022/02/05 03:00:52 UTC      
Issuer Org: Let's Encrypt      
Subject Common: dxabt[.]com [dxabt[.]com,ns1.dxabt[.]com,ns2.dxabt[.]com,ns3.dxabt[.]com,ns4.dxabt[.]com
Public Algorithm: rsaEncryption
JA3: 0eecb7b1551fba4ec03851810d31743f
JA3s: ae4edc6faf64d08308082ad26be60767

Config:

Код:
{
    "x64": {
        "uri_queried": "/tRPG",
        "sha256": "dec25fc2fe7e76fe191fbfdf48588c4325f52bfe2769fbc88a5614541c1075eb",
        "config": {
            "HTTP Method Path 2": "/faq",
            "Jitter": 79,
            "C2 Server": "dxabt[.]com,/case",
            "Spawn To x86": "%windir%\\syswow64\\runonce.exe",
            "Method 1": "GET",
            "C2 Host Header": "",
            "Method 2": "POST",
            "Watermark": 426352781,
            "Spawn To x64": "%windir%\\sysnative\\runonce.exe",
            "Beacon Type": "8 (HTTPS)",
            "Port": 443,
            "Polling": 53988
        },
        "time": 1637416040175.3,
        "md5": "30cc71d5b5d7778774c54486558690d3",
        "sha1": "5f36c6cffdbae0d631c8889b4d9bad1248f899b3"
    },
    "x86": {
        "uri_queried": "/Mr0m",
        "sha256": "a992d57b2f6164e599952ea3c245962824ad17166684ed45e987efe80ebe611f",
        "config": {
            "HTTP Method Path 2": "/faq",
            "Jitter": 79,
            "C2 Server": "dxabt[.]com,/case",
            "Spawn To x86": "%windir%\\syswow64\\runonce.exe",
            "Method 1": "GET",
            "C2 Host Header": "",
            "Method 2": "POST",
            "Watermark": 426352781,
            "Spawn To x64": "%windir%\\sysnative\\runonce.exe",
            "Beacon Type": "8 (HTTPS)",
            "Port": 443,
            "Polling": 53988
        },
        "time": 1637416038974.9,
        "md5": "c1fd49c043894c1dff8bc02b17f8942c",
        "sha1": "e915f74be310b1687db6b290af2f78583a981512"
    }
}

Эксфильтрация​


Пока злоумышленники были активны в среде, мы получили 3 разных оповещения о том, что кто-то открыл канареечные документы с IP-адреса 91.193.182[.]165. Эти предупреждения сообщают нам, что данные действительно были удалены из среды.





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




В 17:35 UTC маяк Cobalt Strike Beacon был развернут на файловом сервере.

По количеству подключений к C2 с файлового сервера в минуту можно сделать вывод, что эксфильтрация производилась между 17:52 UTC и 18:00 UTC.




Всплеск трафика от файлового сервера к серверу управления и контроля Cobalt Strike.

IOCs

Сеть​

Код:
QBOT
24.229.150[.]54:995  - avlhestito[.]us
41.228.22[.]180:443 - xrhm[.]info 

Cobalt Strike
5.255.98[.]144:8888 / dxabt[.]com
5.255.98[.]144:443 / dxabt[.]com
5.255.98[.]144:8080 / dxabt[.]com

Файл​

Код:
Intial Exec Qbot DLL
MD5:53510e20efb161d5b71c4ce2800c1a8d
SHA1:2268178851d0d0debb9ab457d73af8a5e50af168
SHA2:e2bc969424adc97345ac81194d316f58da38621aad3ca7ae27e40a8fae582987

QBot DLL (extracted from registry):
MD5:312e52b4109741893f17bc524084100f
SHA1:7ca650945223eab088f43fd472e3592be2ed9d32
SHA2:4d3b10b338912e7e1cbade226a1e344b2b4aebc1aa2297ce495e27b2b0b5c92b

cool.exe
MD5:59E7F22D2C290336826700F05531BD30
SHA1:3B2A0D2CB8993764A042E8E6A89CBBF8A29D47D1
SHA256:F63E17FF2D3CFE75CF3BB9CF644A2A00E50AAFFE45C1ADF2DE02D5BD0AE35B0

Обнаружения​


Сеть​


Код:
ET POLICY Powershell Activity Over SMB - Likely Lateral Movement
ET POLICY Command Shell Activity Using Comspec Environmental Variable Over SMB - Very Likely Lateral Movement
ET RPC DCERPC SVCCTL - Remote Service Control Manager Access
ET CNC Feodo Tracker Reported CnC Server group 15
ET CNC Feodo Tracker Reported CnC Server group 16

The following rules may cause performance issues (and are disabled by default) according to @ET_Labs
ET EXPLOIT Possible Zerologon NetrServerReqChallenge with 0x00 Client Challenge (CVE-2020-1472) - 2030870
ET EXPLOIT Possible Zerologon NetrServerAuthenticate with 0x00 Client Credentials (CVE-2020-1472) 2030871
ET EXPLOIT [401TRG] Possible Zerologon (CVE-2020-1472) UUID flowbit set - 2030888
ET EXPLOIT [401TRG] Possible Zerologon (CVE-2020-1472) M2 - 2030889


Код:
2035258 - ET EXPLOIT Zerologon Phase 2/3 - NetrServerAuthenticate2 Request with 0x00 Client Challenge and Sign and Seal Disabled (CVE-2020-1472) M1
2035259 - ET EXPLOIT Zerologon Phase 2/3 - NetrServerAuthenticate2 Request with 0x00 Client Challenge and Sign and Seal Disabled (CVE-2020-1472) M2
2035260 - ET EXPLOIT Zerologon Phase 2/3 - NetrServerAuthenticate3 Request with 0x00 Client Challenge and Sign and Seal Disabled (CVE-2020-1472) M1
2035261 - ET EXPLOIT Zerologon Phase 2/3 - NetrServerAuthenticate3 Request with 0x00 Client Challenge and Sign and Seal Disabled (CVE-2020-1472) M2
2035262 - ET EXPLOIT Zerologon Phase 3/3 - Malicious NetrServerPasswordSet2 (CVE-2020-1472)
2035263 - ET EXPLOIT Zerologon Phase 3/3 - NetrLogonSamLogonWithFlags Request with 0x00 Client Credentials (CVE-2020-1472)

Sigma

Код:
title: Scheduled task executing powershell encoded payload from registry
status: Experimental
description: Detects the creation of a schtask that executes a base64 encoded payload stored in the Windows Registry using PowerShell.
author: @Kostastsale, @TheDFIRReport
references: 
  - https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/
date: 2022/02/12
logsource:
  product: windows
  category: process_creation
detection:
  selection1:
    Image|endswith: '\schtasks.exe'
    CommandLine|contains|all:
      - '/Create'
      - '/SC'
  selection2:
    CommandLine|contains|all:
      - 'FromBase64String'
      - 'powershell'
      - 'Get-ItemProperty'
      - 'HKCU:'
  condition: selection1 and selection2
falsepositives:
  - Uknown
level: high
tags:
  - attack.execution
  - attack.persistence
  - attack.t1053.005
  - attack.t1059.001

Код:
title: Execution of ZeroLogon PoC executable
status: Experimental
description: Detects the execution of the commonly used ZeroLogon PoC executable.
author: @Kostastsale, @TheDFIRReport
references:
  - https://thedfirreport.com/2021/11/01/from-zero-to-domain-admin/
  - https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/
date: 2022/02/12
logsource:
  product: windows
  category: process_creation
detection:
  selection1:
    ParentImage|endswith:
      - '\cmd.exe'
    Image|endswith:
      - '\cool.exe'
      - '\zero.exe'
    CommandLine|contains|all:
      - 'Administrator'
      - '-c'
  selection2:
    CommandLine|contains|all:
      - 'taskkill'
      - '/f'
      - '/im'
  selection3:
    CommandLine|contains:
      - 'powershell'
  condition: selection1 and (selection2 or selection3)
falsepositives:
  - Uknown
level: high
tags:
  - attack.execution
  - attack.lateral_movement
  - attack.T1210


Код:
title:  Enabling RDP service via reg.exe command execution
status: Experimental
description: Detects the execution of reg.exe and subsequent command line arguments for enabling RDP service on the host
author: @Kostastsale, @TheDFIRReport
references:
  - https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/
date: 2022/02/12
logsource:
  product: windows
  category: process_creation
detection:
  selection1:
    Image|endswith:
      - '\reg.exe'
    CommandLine|contains|all:
      - 'add'
      - 'HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server'
      - 'REG_DWORD'
  Winstations1:
    CommandLine|contains:
      - 'WinStations\RDP-Tcp'
  Winstations2:
    CommandLine|contains:
      - 'MaxInstanceCount'
      - 'fEnableWinStation'
  selection2:
    CommandLine|contains|all:
      - 'Licensing Core'
      - 'EnableConcurrentSessions'
  selection3:
    CommandLine|contains:
      - 'TSUserEnabled'
      - 'TSEnabled'
      - 'TSAppCompat'
      - 'IdleWinStationPoolCount'
      - 'TSAdvertise'
      - 'AllowTSConnections'
      - 'fSingleSessionPerUser'
  condition: selection1 and ((Winstations1 and Winstations2) or (selection2 or selection3))
falsepositives:
  - Uknown
level: high
tags:
  - attack.defense_evasion
  - attack.lateral_movement
  - attack.t1021.001
  - attack.t1112


Yara

Код:
/*
   YARA Rule Set
   Author: The DFIR Report
   Date: 2022-02-20
   Identifier: Case 8734
   Reference: https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/
*/


/* Rule Set ----------------------------------------------------------------- */


import "pe"


rule qbot_8734_payload_dll {
   meta:
      description = "files - file e2bc969424adc97345ac81194d316f58da38621aad3ca7ae27e40a8fae582987"
      author = "The DFIR Report"
      reference = "https://thedfirreport.com"
      date = "2022-02-20"
      hash1 = "e2bc969424adc97345ac81194d316f58da38621aad3ca7ae27e40a8fae582987"
   strings:
      $s1 = "Terfrtghygine.dll" fullword ascii
      $s2 = "Winamp can read extended metadata for titles. Choose when this happens:" fullword wide /* Goodware String - occured 1 times */
      $s3 = "Read metadata when file(s) are loaded into Winamp" fullword wide /* Goodware String - occured 1 times */
      $s4 = "Use advanced title formatting when possible" fullword wide /* Goodware String - occured 1 times */
      $s5 = "PQVW=!?" fullword ascii
      $s6 = "Show underscores in titles as spaces" fullword wide /* Goodware String - occured 1 times */
      $s7 = "Advanced title display format :" fullword wide /* Goodware String - occured 1 times */
      $s8 = "CreatePaint" fullword ascii
      $s9 = "PQRVW=2\"" fullword ascii
      $s10 = "Advanced Title Formatting" fullword wide /* Goodware String - occured 1 times */
      $s11 = "Read metadata when file(s) are played or viewed in the playlist editor" fullword wide /* Goodware String - occured 1 times */
      $s12 = "Show '%20's in titles as spaces" fullword wide /* Goodware String - occured 1 times */
      $s13 = "Example : \"%artist% - %title%\"" fullword wide /* Goodware String - occured 1 times */
      $s14 = "PQRVW=g" fullword ascii
      $s15 = "PQRW=e!" fullword ascii
      $s16 = "ATF Help" fullword wide /* Goodware String - occured 1 times */
      $s17 = "(this can be slow if a large number of files are added at once)" fullword wide /* Goodware String - occured 1 times */
      $s18 = "PQRVW=$" fullword ascii
      $s19 = "Metadata Reading" fullword wide /* Goodware String - occured 1 times */
      $s20 = "Other field names: %artist%, %album%, %title%, %track%, %year%, %genre%, %comment%, %filename%, %disc%, %rating%, ..." fullword wide /* Goodware String - occured 1 times */
   condition:
      uint16(0) == 0x5a4d and filesize < 2000KB and
      ( pe.imphash() == "aa8a9db10fba890f8ef9edac427eab82" and pe.exports("CreatePaint") or 8 of them )
}


rule qbot_dll_8734 {
   meta:
      description = "files - qbot.dll"
      author = "TheDFIRReport"
      reference = "QBOT_DLL"
      date = "2021-12-04"
      hash1 = "4d3b10b338912e7e1cbade226a1e344b2b4aebc1aa2297ce495e27b2b0b5c92b"
   strings:
      $s1 = "Execute not supported: %sfField '%s' is not the correct type of calculated field to be used in an aggregate, use an internalcalc" wide
      $s2 = "IDAPI32.DLL" fullword ascii
      $s3 = "ResetUsageDataActnExecute" fullword ascii
      $s4 = "idapi32.DLL" fullword ascii
      $s5 = "ShowHintsActnExecute" fullword ascii
      $s6 = "OnExecute@iG" fullword ascii
      $s7 = "OnExecutexnD" fullword ascii
      $s8 = "ShowShortCutsInTipsActnExecute" fullword ascii
      $s9 = "ResetActnExecute " fullword ascii
      $s10 = "RecentlyUsedActnExecute" fullword ascii
      $s11 = "LargeIconsActnExecute" fullword ascii
      $s12 = "ResetActnExecute" fullword ascii
      $s13 = "OnExecute<" fullword ascii
      $s14 = "TLOGINDIALOG" fullword wide
      $s15 = "%s%s:\"%s\";" fullword ascii
      $s16 = ":\":&:7:?:C:\\:" fullword ascii /* hex encoded string '|' */
      $s17 = "LoginPrompt" fullword ascii
      $s18 = "TLoginDialog" fullword ascii
      $s19 = "OnLogin" fullword ascii
      $s20 = "Database Login" fullword ascii
   condition:
      uint16(0) == 0x5a4d and filesize < 3000KB and
      8 of the

MITRE

  • Exploitation for Privilege Escalation – T1068
  • Service Execution – T1569.002
  • Network Share Discovery – T1135
  • Pass the Hash – T1550.002
  • PowerShell – T1059.001
  • Windows Command Shell – T1059.003
  • Network Share Discovery – T1135
  • Obfuscated Files or Information – T1027
  • Scheduled Task – T1053.005
  • Process Injection – T1055
  • Remote System Discovery – T1018
  • Obfuscated Files or Information – T1027
  • Domain Trust Discovery – T1482
  • Domain Groups – T1069.002
  • System Owner/User Discovery – T1033
  • Network Share Discovery – T1135
  • Remote Services – T1021
  • Local Account – T1087.001
  • Security Software Discovery – T1518.001



MITRE_Qbot-and-Zerologon-Lead-To-Full-Domain-Compromise.png





Перевод вот ЭТОЙ статьи.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх