Заметки на полях: Расшифровываем пароли 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/
В условиях повсеместного удаленного доступа очень важно обечпечить безопасность сетевых устройств. Сегодня рассмотрим устройства на базе 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, указывающий на соответствующий файл.
В новых версиях браузера 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, указывающий на соответствующий файл.
GitHub
GitHub - mis-team/dpapick
Contribute to mis-team/dpapick development by creating an account on GitHub.
В современном мире становится недостаточно иметь только веб сайт с продуктом - чаще всего приходится ещё делать мобильное приложение, которое даёт возможность охватить бОльшую аудиторию клиентов. Уже даже небольшой салон красоты имеет в своем арсенале мобильное приложение.
Однако, обычно, такие приложения пишутся на коленке и являются совершенно не защищёнными. Есть примеры, когда компания имела хорошо защищённый периметр, но абсолютно не обфусцированное приложение, из которого были получены данные для ее взлома.
Сегодня мы делимся с вами наглядными cheet sheets по тестированию мобильных приложений от компании randorisec. Надеемся, что вам они пригодятся
Однако, обычно, такие приложения пишутся на коленке и являются совершенно не защищёнными. Есть примеры, когда компания имела хорошо защищённый периметр, но абсолютно не обфусцированное приложение, из которого были получены данные для ее взлома.
Сегодня мы делимся с вами наглядными 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.
Если пара дефолтных логинов и паролей найдена - вы это увидите.
При исследовании внешнего периметра компании Заказчика очень хочется найти какое-нибудь устройство, у которого не поменяны дефолтные пароли и начать развиваться уже во внутренней сети. А наличие таких устройств вполне возможно - на периметре можно найти сетевые устройства, камеры, веб-сервера и т.д.
Хорошо, если периметр небольшой - пробежаться по веб-сервисам вручную большой проблемы не составит. А что делать если сеть компании большая и перебор вручную - это огромная трата времени, да и душевного равновесия?
В свое время 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
Сегодня делимся с вами советами по получению информации, атаке и закреплению в AD.
Нет чего-то супер нового и инновационного, но когда собрано все в одном месте - это очень удобно. И будет очень полезно тем, кто только вступает на путь познания AD.
https://github.com/buftas/Active-Directory-Exploitation-Cheat-Sheet
GitHub
GitHub - S1ckB0y1337/Active-Directory-Exploitation-Cheat-Sheet: A cheat sheet that contains common enumeration and attack methods…
A cheat sheet that contains common enumeration and attack methods for Windows Active Directory. - S1ckB0y1337/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 и имитирующий взломанную систему, его плюс - отдельные плагины, которые можно подключать по мере необходимости для тренировок
Сегодня делимся с вами инструментами, которые помогают 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 и имитирующий взломанную систему, его плюс - отдельные плагины, которые можно подключать по мере необходимости для тренировок
GitHub
GitHub - NextronSystems/APTSimulator: A toolset to make a system look as if it was the victim of an APT attack
A toolset to make a system look as if it was the victim of an APT attack - NextronSystems/APTSimulator
Заметки на полях: 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/
Буквально в этот вторник вышел патч от 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
Использование 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
GitHub
GitHub - bohops/WSMan-WinRM: A collection of proof-of-concept source code and noscripts for executing remote commands over WinRM…
A collection of proof-of-concept source code and noscripts for executing remote commands over WinRM using the WSMan.Automation COM object - bohops/WSMan-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
Все мы знаем, что некоторые бинарные файлы или скрипты, которые официально используются в ОС 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
YouTube
Track 1 01 LOLBins Nothing to LOL about Oddvar Moe
These are the videos from Derbycon 2018:
http://www.irongeek.com/i.php?page=videos/derbycon8/mainlist
Patreon:
https://www.patreon.com/irongeek
http://www.irongeek.com/i.php?page=videos/derbycon8/mainlist
Patreon:
https://www.patreon.com/irongeek
Каждый пентестер или 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 тулзы
Со вчерашнего дня все обсуждают новую найденную "фишечку" в 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
Рекомендуем!
При анализе сетевого взаимодействия часто используются такие программы как 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
Современные компании все чаще переводят свою инфраструктуру в облако - это гораздо удобнее, дешевле и безопаснее. Основные облачные провайдеры - Amazon, Azure и Google Cloud.
Пентестерам и RedTeam специалистам приходится придумывать различные методы и инструменты для исследования облачной инфраструктуры.
Сегодня делимся с вами очень хорошей подборкой инструментов для пентеста облачной инфраструктуры: https://github.com/dafthack/CloudPentestCheatsheets
GitHub
GitHub - dafthack/CloudPentestCheatsheets: This repository contains a collection of cheatsheets I have put together for tools related…
This repository contains a collection of cheatsheets I have put together for tools related to pentesting organizations that leverage cloud providers. - 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, что затруднит некоторым сзи детектирование запуска исполняемого файла😉
Представим ситуацию, что нам необходимо запустить какой-то исполняемый файл (например, 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
Лето 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
Ищем недостатки и уязвимости в Active Directory
Обеспечить безопасность AD - задача непростая. Особенно в больших компаниях с филиалами в разных городах. Поэтому при проведении аудитов, необходимо проверять не встречаются ли в AD компании следующие уязвимости или недостатки:
1. Отсутствие парольной политики в домене
В 2020 году это кажется нереальным. Как у уважающей себя компании может отсутствовать парольная политика??? В мире ИБ существует неразрешимый спор о парольных политиках: кто-то считает, что пароли должны быть огромные, сложные и меняться каждую неделю, а кто-то считает, что такого рода требования бессмысленны и пользователь будет чувствовать себя комфортнее, если не усложнять ему жизнь. Поэтому возникают ситуации, когда компания просто отказывается от парольных политик. Однако отказ от парольной политики влечет за собой сразу 100% существование пункта 2 из нашего списка.
2. Наличие слабых паролей у учетных записей в домене
Наличие словарных паролей или (при отсутствии парольной политики) пустые пароли, а также пароли, состоящие из одной буквы или цифры и т.д.
3. Наличие в домене "мертвых душ"
Очень часто аккаунты, созданные для тестирования, какие-то временные учетные записи, учетки уволенных сотрудников не блокируются, а остаются активными в домене, хотя ими никто не пользуется. А для злоумышленника они являются лакомыми кусочками, потому что очень часто тестовым учетным записям выдают более высокие права, чем обычным пользователям домена.
4. Не истекающие пароли у привилегированных учетных записей
Особенно если это учетная запись какого-то начальника, которому надо что-то смотреть раз в полгода (но надо же! Поэтому ему выдают повышенные права) и которого бесит постоянная смена пароля (и ему ставят, чтобы пароль не истекал). А пароль там обычно - либо 4 цифры, либо 6 (как дата рождения).
5. Хранение учетных данных в папках SYSVOL
Иногда администраторы для запуска приложения на клиентских компьютерах (сразу, при входе в систему), который требует прав администратора - хранят пароли в папке sysvol, к которой может получить доступ любой пользователь, прошедший аутентификацию
6. Отсутствие реакции со стороны средств защиты на DCSync, запуск mimikatz или PSexec
Средства защиты должны быть грамотно настроены, чтобы реагировать на стандартные атаки и утилиты, которые используют злоумышленники. Если кто не знает про DCSync - можно почитать тут (https://attack.stealthbits.com/privilege-escalation-using-mimikatz-dcsync)
7. Большое количество учетных записей в привилегированных группах (domain admins, enterprise admins)
Чем больше учетных записей, тем их сложнее контролировать - тем больше шансов у злоумышленника найти лазейку
8. Наличие "теневых доменных администраторов"
Иногда пользователю не выдают высокие привилегии, однако дают права на совершение каких-то привилегированных действий. Например, возможность сменить пароль другим пользователям или обновление любых атрибутов объекта. О таких пользователях забывают сразу, а с их помощью можно совершить большое количество противоправных действий в домене. Подробнее можно почитать тут (https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/abusing-active-directory-acls-aces)
9. Возможность проведения атаки Kerberoasting
Наличие "слабых" паролей у сервисных учетных записей позволяет злоумышленнику провести атаку kerberoasting и расшифровать пароли. Подробнее можно почитать тут (https://attack.stealthbits.com/cracking-kerberos-tgs-tickets-using-kerberoasting/)
Мы рассказали вам о наиболее часто встречающихся проблемах, которые есть у 98% компаний и которые стоит проверять как при проведении аудита, так и при проведении RedTeam кампании.
Обеспечить безопасность AD - задача непростая. Особенно в больших компаниях с филиалами в разных городах. Поэтому при проведении аудитов, необходимо проверять не встречаются ли в AD компании следующие уязвимости или недостатки:
1. Отсутствие парольной политики в домене
В 2020 году это кажется нереальным. Как у уважающей себя компании может отсутствовать парольная политика??? В мире ИБ существует неразрешимый спор о парольных политиках: кто-то считает, что пароли должны быть огромные, сложные и меняться каждую неделю, а кто-то считает, что такого рода требования бессмысленны и пользователь будет чувствовать себя комфортнее, если не усложнять ему жизнь. Поэтому возникают ситуации, когда компания просто отказывается от парольных политик. Однако отказ от парольной политики влечет за собой сразу 100% существование пункта 2 из нашего списка.
2. Наличие слабых паролей у учетных записей в домене
Наличие словарных паролей или (при отсутствии парольной политики) пустые пароли, а также пароли, состоящие из одной буквы или цифры и т.д.
3. Наличие в домене "мертвых душ"
Очень часто аккаунты, созданные для тестирования, какие-то временные учетные записи, учетки уволенных сотрудников не блокируются, а остаются активными в домене, хотя ими никто не пользуется. А для злоумышленника они являются лакомыми кусочками, потому что очень часто тестовым учетным записям выдают более высокие права, чем обычным пользователям домена.
4. Не истекающие пароли у привилегированных учетных записей
Особенно если это учетная запись какого-то начальника, которому надо что-то смотреть раз в полгода (но надо же! Поэтому ему выдают повышенные права) и которого бесит постоянная смена пароля (и ему ставят, чтобы пароль не истекал). А пароль там обычно - либо 4 цифры, либо 6 (как дата рождения).
5. Хранение учетных данных в папках SYSVOL
Иногда администраторы для запуска приложения на клиентских компьютерах (сразу, при входе в систему), который требует прав администратора - хранят пароли в папке sysvol, к которой может получить доступ любой пользователь, прошедший аутентификацию
6. Отсутствие реакции со стороны средств защиты на DCSync, запуск mimikatz или PSexec
Средства защиты должны быть грамотно настроены, чтобы реагировать на стандартные атаки и утилиты, которые используют злоумышленники. Если кто не знает про DCSync - можно почитать тут (https://attack.stealthbits.com/privilege-escalation-using-mimikatz-dcsync)
7. Большое количество учетных записей в привилегированных группах (domain admins, enterprise admins)
Чем больше учетных записей, тем их сложнее контролировать - тем больше шансов у злоумышленника найти лазейку
8. Наличие "теневых доменных администраторов"
Иногда пользователю не выдают высокие привилегии, однако дают права на совершение каких-то привилегированных действий. Например, возможность сменить пароль другим пользователям или обновление любых атрибутов объекта. О таких пользователях забывают сразу, а с их помощью можно совершить большое количество противоправных действий в домене. Подробнее можно почитать тут (https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/abusing-active-directory-acls-aces)
9. Возможность проведения атаки Kerberoasting
Наличие "слабых" паролей у сервисных учетных записей позволяет злоумышленнику провести атаку kerberoasting и расшифровать пароли. Подробнее можно почитать тут (https://attack.stealthbits.com/cracking-kerberos-tgs-tickets-using-kerberoasting/)
Мы рассказали вам о наиболее часто встречающихся проблемах, которые есть у 98% компаний и которые стоит проверять как при проведении аудита, так и при проведении RedTeam кампании.
Заметки на полях: безусловный доступ
Не так давно мы рассказывали вам про условный доступ (https://news.1rj.ru/str/mis_team/141), который используют многие компании для повышения уровня безопасности в AzureAD или Office365.
Однако есть одна фишка - параметры безопасности по умолчанию и условный доступ не работают вместе!
В параметрах безопасности по умолчанию в AzureAD MFA является обязательным. И организации, у которых нет премиум аккаунта, используют параметры безопасности по умолчанию. А те организации, у которых есть премиум аккаунт - должны использовать только условный доступ и тут его надо настроить очень грамотно и не рассчитывать на то, что в параметрах безопасности по умолчанию есть второй фактор.
На картинке приведен пример неправильно настроенного условного доступа у заказчика. При смене user-agent на мобильный второй фактор не запрашивается. Да, для сотрудников заказчика это удобно. Но это также удобно и для злоумышленника.
Поэтому советуем всем при проведении RedTeam кампаний и столкновении со вторым фактором - проверять различные user-agent’ы - велик шанс того, что администратор настроил не совсем корректно политику условного доступа😉
Не так давно мы рассказывали вам про условный доступ (https://news.1rj.ru/str/mis_team/141), который используют многие компании для повышения уровня безопасности в AzureAD или Office365.
Однако есть одна фишка - параметры безопасности по умолчанию и условный доступ не работают вместе!
В параметрах безопасности по умолчанию в AzureAD MFA является обязательным. И организации, у которых нет премиум аккаунта, используют параметры безопасности по умолчанию. А те организации, у которых есть премиум аккаунт - должны использовать только условный доступ и тут его надо настроить очень грамотно и не рассчитывать на то, что в параметрах безопасности по умолчанию есть второй фактор.
На картинке приведен пример неправильно настроенного условного доступа у заказчика. При смене user-agent на мобильный второй фактор не запрашивается. Да, для сотрудников заказчика это удобно. Но это также удобно и для злоумышленника.
Поэтому советуем всем при проведении RedTeam кампаний и столкновении со вторым фактором - проверять различные user-agent’ы - велик шанс того, что администратор настроил не совсем корректно политику условного доступа😉