[MIS]ter & [MIS]sis Team – Telegram
[MIS]ter & [MIS]sis Team
1.06K subscribers
18 photos
162 links
ИБ глазами RedTeam

НепроИБэ свою ИБ

https://github.com/mis-team

https://www.m13.su/it-security
Download Telegram
​​​​Забираем ажурный токен доступа

Рассмотрим пример, когда мы получили доступ к рабочей станции пользователя, который является администратором Azure. Для более быстрой и комфортной работы администраторы используют Powershell Az для администрирования Azure  со своей рабочей станции.

Особенность использования командлетов PowerShell Az состоит в том, что они сохраняют токены доступа в папке .Azure в профиле пользователя. Это не секрет. И ходят слухи, что таких токенов недостаточно - можно использовать только файл со специально сохраненными пользователем токенами доступа. Наши эксперименты показали, что достаточно использовать только файлы из указанной выше папки для получения доступа к аккаунту

Итак, для того, чтобы забрать у пользователя токен доступа нужно сделать следующее:

1. Найти папку Azure в профиле пользователя (обычно путь следующий: C:\Users\user\.Azure\)

2. Скопировать на свой компьютер в такую же папку в профиле своего пользователя (для этого у вас должен быть установлен командлет Powershell AZ (Install-Module Az -AllowClobber))

3. В файле AzureRmContextSettings.json меняем путь на своего пользователя

4. Токен доступа хранится в файле TokenCache.dat (вы должны увидеть значения в base64), а остальная информация по доступу в AzureRmContext.json

5. Теперь нам необходимо все сохраненное в файлах как-то использовать. Командой Get-AzContext -ListAvailable проверяем, что у нас нет никакого доступа

6. командой Import-AzContext -Path C:\Users\user\.Azure\AzureRmContext.json импортируем содержимое файла

7. После импорта видим, что появляется доступ к AzureCloud

8. Для проверки доступа выполняем команду Get-AzVM -Status для получения информации о виртуальных машинах в Azure

9.Для проверки можем выполнить команду Disconnect-AzAccount и выполнить команду Get-AzVM -Status - результат должен быть отрицательным
Заметки на полях: LAPS

Что такое LAPS? LAPS (Local administrator password solution) - официальная утилита от Microsoft, которая позволяет управлять паролями локальных администраторов на компьютерах домена.

Зачем это нужно? Проблема многих компаний - одинаковые пароли локального администратора на всех (либо части) доменных машинах (серверах и компьютерах). LAPS позволяет решить этот вопрос и установить на каждую машину уникальные случайно сгенерированный пароль локального администратора, который автоматически меняется раз в определенное время. Это позволяет усложнить горизонтальное перемещение злоумышленника по машинам домена.

Есть ли какие-то особенности в настройке? Конечно есть. Любые утилиты надо применять с умом, иначе вы своими руками создадите ещё одно уязвимое место, которым злоумышленник с радостью воспользуется.
Очень часто встречается проблема с неправильным делегированием, которая позволяет злоумышленнику получить доступ ко всем паролям LAPS.

Рекомендации

1. При развертывании LAPS необходимо убедиться, что все доменные машины добавлены в LAPS.

2. Необходимо постоянно мониторить группы AD, которые имеют доступ к чтению паролей LAPS

3. Проверьте, что не настроено делегирование в тех OU, где хранятся пароли LAPS

4. Проверьте правильность настройки групповых политик

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

Делимся с вами полезной статьей о том как настроить LAPS

https://getshitsecured.com/2020/03/20/stop-being-lazy-and-deploy-laps/
​​​​Заметки на полях: Расшифровываем пароли Cisco

В условиях повсеместного удаленного доступа очень важно обечпечить безопасность сетевых устройств. Сегодня рассмотрим устройства на базе Cisco IOS.

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

У Cisco существует несколько типов паролей:

Type 0: пароль, который хранится как plaintext

Type 7: использует шифр Vigenere, который не является надежным и взламывается с помощью онлайн сервисов, которые очень просто найти

Type 4: использует SHA256 без соли

Type 5: использует MD5

Type 8: использует алгоритм PBKDF2 и 10-символьную соль (80 бит)

Type 9: испрльзует алгоритм SCRYPT, 80-битную соль и 16384 итерации

Расшифровываются все типы паролей, причем используя всем доступные инструменты - HashCat и John The Ripper

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

Более подробную информацию по расшифровке можно посмотреть здесь: https://www.infosecmatter.com/cisco-password-cracking-and-decrypting-guide/
Заметки на полях: Расшифровываем пароли и куки в новых версиях Chrome

В новых версиях браузера Chrome изменился алгоритм шифрования паролей и cookies. Теперь в качестве алгоритма шифрования для паролей и кук используется AES GCM, а ключ шифрования опять же шифруется через DPAPI и сохраняется в файле "local state" в профиле пользователя.

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

Но тем не менее - теперь для расшифровки паролей и cookies из браузера Chrome нам необходимо забирать еще и файл "%appdata%\local\google\chrome\User Data\local state".

Для того чтобы можно было оперативно расшифровывать пароли и куки от новых браузеров мы внесли изменения в соответствующий модуль dpapick. (https://github.com/mis-team/dpapick). В модуле добавился параметр --lstate, указывающий на соответствующий файл.
В современном мире становится недостаточно иметь только веб сайт с продуктом - чаще всего приходится ещё делать мобильное приложение, которое даёт возможность охватить бОльшую аудиторию клиентов. Уже даже небольшой салон красоты имеет в своем арсенале мобильное приложение.

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

Сегодня мы делимся с вами наглядными cheet sheets по тестированию мобильных приложений от компании randorisec. Надеемся, что вам они пригодятся
​​Заметки на полях: проверяем дефолтные пароли

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

Хорошо, если периметр небольшой - пробежаться по веб-сервисам вручную большой проблемы не составит. А что делать если сеть компании большая и перебор вручную - это огромная трата времени, да и душевного равновесия?

В свое время nmap также озаботился этим вопросом и включили в набор своих скриптов проверку дефолтных паролей (скрипт  http-default-accounts.nse). Однако скрипт проверяет только стандартные веб порты (80, 433), а многие устройства находятся как раз на нестандартных портах. Можно, конечно, открыть скрипт, поменять там порт и запустить проверку, но делать это для каждого порта вручную - немного утомительно.

Да и не нужно. Сообщество давно задумалось над этим вопросом, немного доработало nmap'овский скрипт и выпустило новый простенький скрипт Default HTTP Login Hunter (https://github.com/InfosecMatter/default-http-login-hunter). Его прелесть заключается в том, что можно проверять как отдельный IP, так и передать на проверку все интересующие нас IP-адреса с портами, которые у нас появились после этапа сканирования сети.

На картинке показано, как выглядит файл (urls.txt) и как отрабатывает тулза со списком и отдельным IP.

Если пара дефолтных логинов и паролей найдена - вы это увидите.
Cheat Sheets: Active Directory Exploitation

Сегодня делимся с вами советами по получению информации, атаке и закреплению в AD.

Нет чего-то супер нового и инновационного, но когда собрано все в одном месте - это очень удобно. И будет очень полезно тем, кто только вступает на путь познания AD.

https://github.com/buftas/Active-Directory-Exploitation-Cheat-Sheet
Инструменты для моделирования TTP (tactics, techniques and procedures)

Сегодня делимся с вами инструментами, которые помогают BlueTeam тренироваться в выявлении угроз и реагировании на них.

1) https://github.com/NextronSystems/APTSimulator - старенький, давно не обновлявшийся набор скриптов под Windows, эмулирующих взломанную систему - подойдет в качестве элементарной проверки для BlueTeam и средств защиты, которые должны будут на все это среагировать моментально

2) https://www.bt3.no/ - Blue Team Training Toolkit - тоже старенький инструмент, но очень полезный для новичков - позволяет имитировать заражение вредоносным ПО, изучать особенности поведения малвари, а также смотреть как такое заражение отражается в сетевом трафике

3) https://docs.microsoft.com/en-us/microsoft-365/security/office-365-security/attack-simulator?view=o365-worldwide - эмулятор фишинговых атак и подбора пароля к учетным записям от Microsoft. Доступен только если у вас в компании ATP Plan 2 или Office 365 корпоративный E5

4) https://github.com/redcanaryco/atomic-red-team - Atomic Red Team - незыблемая классика - набор тестов, эмулирующих действия RedTeam команды

5) https://github.com/mitre/caldera - Caldera - большой фреймворк, построенный на базе MITRE ATT&CK и имитирующий взломанную систему, его плюс - отдельные плагины, которые можно подключать по мере необходимости для тренировок
Заметки на полях: PrintDemon

Буквально в этот вторник вышел патч от Microsoft, который закрыл очень интересную уязвимость - повышение привилегий в системе через службу диспетчера очереди печати (CVE-2020-1048). Данной уязвимости подвержены все версии ОС Windows - от самых старых до самых современных.

Для успешной атаки достаточно:

1. Быть залогиненым под непривилегированным пользователем в системе

2. выполнить в PowerShell одну единственную команду

Add-PrinterPort -Name C:\windows\system32\ualapi.dll

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

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

Подробности про уязвимость можно почитать в длинном посте о всех подробностях обнаружения уязвимости, ее эксплуатации и исправлении:

https://windows-internals.com/printdemon-cve-2020-1048/
Заметки на полях: WinRM

Использование WinRM (Windows Remote Management) для закрепления в сети Заказчика стало своеобразной классикой для пентестера или RedTeam специалиста. Еще несколько лет назад можно было спокойно использовать связку Powershell и WinRM для удаленного выполнения команд. Однако время идет, средства защиты меняются, и было бы наивно думать, что такой популярный метод не будет детектироваться. Естественно, сейчас использовать WinRM через Invoke-WmiMethod - это подписать себе смертный приговор и выдать BlueTeam свое местоположение.

Однако есть вариант: использовать вместо Invoke-WmiMethod командлет Invoke-WSManAction

Invoke-WSManAction -Action "Create" -ResourceURI "http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process" -ValueSet @{commandline="<cmd>"} -ComputerName <host>

Конечно, все можно задетектировать. Однако использование такого командлета на данный момент более безопасно для RedTeam, чем использование Invoke-WmiMethod

Делимся с вами полезными ссылками:

https://github.com/bohops/WSMan-WinRM - проект на гитхабе

https://bohops.com/2020/05/12/ws-management-com-another-approach-for-winrm-lateral-movement/ - подробная статья о всем механизме работы WinRM
Заметки на полях: LOLBAS

Все мы знаем, что некоторые бинарные файлы или скрипты, которые официально используются в ОС Windows, имеют не только заявленный функционал, но иногда и совершенно неожиданный. Например, пентестеры используют wmic.exe для запуска своих файлов, чтобы обойти средства защиты. И таких примеров очень много.

Сегодня мы решили поделиться с вами шикарным проектом LOLBAS (Living Off The Land Binaries and Script), который описывает скрытые возможности официальных бинарных файлов, скриптов и библиотек, рассказывает, как их можно использовать, чтобы облегчить себе жизнь при проведении пентеста или RedTeam кампании.

Да, многие техники имеют уже свой код на mitre (например, использование rundll32.exe для запуска произвольных файлов - https://attack.mitre.org/techniques/T1085/), но некоторые до сих пор используют и очень полезно о них узнать.

https://lolbas-project.github.io/ - официальный репозиторий проекта, собраны бинарные файлы под ОС Windows

https://gtfobins.github.io/ - аналог lolbas для двоичных файлов в Unix

https://www.youtube.com/watch?v=NiYTdmZ8GR4 - запись доклада с Derbycon 2018, где потрясающий Oddvar Moe презентует проект LOLBAS
Каждый пентестер или RedTeam специалист должен уметь работать с командной строкой Windows. Сегодня делимся с вами шпаргалкой от SANS institute. В ней представлены команды для ОС Windows, которые вам точно пригодятся в работе
​​Рубрика "фишечки" от Microsoft: Cmd hijack

Со вчерашнего дня все обсуждают новую найденную "фишечку" в cmd.exe

Если вы еще не слышали - мы делимся с вами статьей по этому поводу - https://hackingiscool.pl/cmdhijack-command-argument-confusion-with-path-traversal-in-cmd-exe/

Что произошло: исследователь Julian Horoszkiewicz проводил исследование и наткнулся на интересную особенность в поведении cmd.exe - можно "обмануть" командную строку и запустить вместо ожидаемой программы другую. Пример представлен на скриншоте - вместо ожидаемого ping.exe мы запускаем calc.exe

Почему это возможно: найденная особенность не является уязвимостью - такого рода обработка относительных путей нужна для нормальной работы cmd.exe и запуска определенных программ. Это "фишечка", которая будет продолжать работать.

Чем грозит: говорят, что запуск исполняемых файлов таким образом помогает обойти некоторые DFIR тулзы
​​Заметки на полях: забираем NTLM хеши

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

Иногда из дампа можно вытащить имена пользователей, пароли, хеши.

Сегодня делимся с вами инструментом, который позволяет достать из дампа NTLM хеши - https://github.com/mlgualtieri/NTLMRawUnHide

Поддерживаются различные форматы: .pcap, .pcapng, .cap, .etl

Рекомендуем!
Cheat Sheets: Cloud Pentest

Современные компании все чаще переводят свою инфраструктуру в облако - это гораздо удобнее, дешевле и безопаснее. Основные облачные провайдеры - Amazon, Azure и Google Cloud.

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

Сегодня делимся с вами очень хорошей подборкой инструментов для пентеста облачной инфраструктуры: https://github.com/dafthack/CloudPentestCheatsheets
​​​​Заметки на полях: RedTeam Tip

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

Казалось бы все просто: набираем команду cmd.exe /c "c:\windows\system32\calc.exe" и все будет хорошо.

Оказалось не все так радужно (см часть рисунка под цифрой 1) - запуск из-под непривилегированного пользователя невозможен.

Но есть другой способ. Через explorer.exe можно запустить cmd.exe и уже из нового окна запустить calc.exe изначально планируемой командой (см часть рисунка под цифрой 2). И исполняемый файл запустится без каких-либо вопросов. Таким образом можно обойти запрет на запуск исполняемого файла через cmd.exe под непривилегированным пользователем.

На самом деле запустить calc.exe можно и напрямую через explorer.exe командой explorer.exe /root,"c:\windows\system32\calc.exe"

В этом случае родительским процессом будет explorer.exe, что затруднит некоторым сзи детектирование запуска исполняемого файла😉
Жаркие летние твои… уязвимости

Лето 2020 года богато на публикацию критических уязвимостей (видимо приближается пандемия в мире ИБ). Пентестер, а тем более RedTeam специалист, должен проверять наличие таких уязвимостей в инфраструктуре заказчика, даже если РоС не опубликован. К сожалению, не все компании обновляются оперативно, а наличие уязвимостей такого рода делает инфраструктуру компании беззащитной перед злоумышленником. Делимся с вами небольшим обзором горячих уязвимостей и рекомендуем проверять их наличие в первую очередь.

Патчи выпущены на все описанные уязвимости. Проверьте, что они установлены (или не установлены)!

1. F5 BIG-IP

TMUI RCE vulnerability CVE-2020-5902

Уязвимость в пользовательском интерфейсе управления трафиком (Traffic Management User Interface) позволяет злоумышленникам, не прошедшим проверку подлинности, выполнять произвольные системные команды, создавать или удалять файлы, отключать службы и (или) выполнять произвольный Java код

CVSSv2: 10
CVSSv3: 9.8

Подробности об уязвимости: https://support.f5.com/csp/article/K52145254

РоС: https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/linux/http/f5_bigip_tmui_rce.rb

2. Citrix

5 уязвимостей разного уровня критичности

Подробности об уязвимостях: https://support.citrix.com/article/CTX276688

PoC: проверенных нет, но есть хорошее техническое описание всех уязвимостей: https://blog.unauthorizedaccess.nl/2020/07/07/adventures-in-citrix-security-research.html

Одна из наиболее интересных уязвимостей - CVE-2020-8193

Обход аутентификации в Citrix ADC, Citrix Gateway, Citrix SDWAN WAN-OP

CVSSv2: 5
CVSSv3: 6.5

PoC: https://github.com/jas502n/CVE-2020-8193 (не проверен)

3. Palo Alto

PAN-OS: Authentication Bypass in SAML Authentication

В PAN-OS неправильная проверка подписей в SAML аутентификации позволяет злоумышленнику, не прошедшему проверку подлинности в сети, получить доступ к защищенным ресурсам

CVSSv2: 9.8
CVSSv3: 10

Подробности об уязвимости: https://security.paloaltonetworks.com/CVE-2020-2021

PoC: в открытом доступе нет

4. Windows DNS Server

CVE-2020-1350
Уязвимость, про которую говорят все!

Удаленное выполнение кода на DNS серверах злоумышленником, не прошедшим проверку подлинности

CVSSv2: 10
CVSSv3: 10

Подробности об уязвимости: https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-1350

PoC: Будьте аккуратны с фейковыми PoC!
https://github.com/ZephrFish/CVE-2020-1350 - распространяемый PoC является фейковым

5. Bitrix

Bitrix SSRF CVE-2020-13484

Все версии Bitrix до 20.0.975 позволяют произвести подделку запросов на стороне сервера к внешним IP-адресам + уязвимость позволяет обходить ограничения и генерировать запросы к внутренней инфраструктуре

CVSSv2: 7.5
CVSSv3: 9.8

PoC: https://gist.github.com/mariuszpoplwski/f261a4bc06adde5c78760559db9d63bd