macOS Red Teaming
Зловживання MDM
JAMF Pro:
jamf checkJSSConnection
Kandji
Якщо ви змогли скомпрометувати адміністративні облікові дані для доступу до платформи управління, ви можете потенційно скомпрометувати всі комп'ютери, розповсюджуючи своє шкідливе ПЗ на машинах.
Для червоного командування в середовищах MacOS високо рекомендується мати розуміння того, як працюють MDM:
pagemacOS MDMВикористання MDM як C2
MDM матиме дозвіл на встановлення, запит або видалення профілів, встановлення додатків, створення локальних облікових записів адміністратора, встановлення пароля для прошивки, зміну ключа FileVault...
Для запуску власного MDM вам потрібно ваш CSR підписаний вендором, який ви можете спробувати отримати за допомогою https://mdmcert.download/. І для запуску власного MDM для пристроїв Apple ви можете використовувати MicroMDM.
Однак, для встановлення додатка на зареєстрований пристрій, вам все ще потрібно, щоб його підписав рахунок розробника... однак, під час реєстрації в MDM пристрій додає сертифікат SSL MDM як довірений ЦС, тому ви тепер можете підписувати все.
Для реєстрації пристрою в MDM вам потрібно встановити файл mobileconfig
як root, який може бути доставлений через файл pkg (ви можете стиснути його в zip, і коли завантажуєте з safari, він буде розпакований).
Агент Mythic Orthrus використовує цей метод.
Зловживання JAMF PRO
JAMF може виконувати власні скрипти (скрипти, розроблені системним адміністратором), нативні навантаження (створення локальних облікових записів, встановлення пароля EFI, моніторинг файлів/процесів...) та MDM (конфігурація пристроїв, сертифікати пристроїв...).
Самозареєстрація JAMF
Перейдіть на сторінку, таку як https://<company-name>.jamfcloud.com/enroll/
, щоб перевірити, чи вони мають ввімкнену самозареєстрацію. Якщо вони мають, це може запитати облікові дані для доступу.
Ви можете використовувати скрипт JamfSniper.py для виконання атаки зі спробою пароля.
Більше того, після знаходження відповідних облікових даних ви можете спробувати перебрати інші імена користувачів за наступною формою:
Аутентифікація пристрою JAMF
jamf
бінарний файл містив секрет для відкриття keychain, який на момент відкриття був розповсюджений серед всіх і був: jk23ucnq91jfu9aj
.
Більше того, jamf зберігається як LaunchDaemon в /Library/LaunchAgents/com.jamf.management.agent.plist
Захоплення пристрою JAMF
URL JSS (Jamf Software Server), який використовуватиме jamf
, розташований в /Library/Preferences/com.jamfsoftware.jamf.plist
.
Цей файл в основному містить URL:
Підробка JAMF
Для підробки комунікації між пристроєм та JMF вам потрібно:
UUID пристрою:
ioreg -d2 -c IOPlatformExpertDevice | awk -F" '/IOPlatformUUID/{print $(NF-1)}'
Ключ JAMF з:
/Library/Application\ Support/Jamf/JAMF.keychain
, який містить сертифікат пристрою
З цією інформацією створіть віртуальну машину з викраденим апаратним UUID та з вимкненим SIP, скиньте ключ JAMF, підключіться до агента Jamf та вкрадіть його інформацію.
Викрадення секретів
Ви також можете моніторити розташування /Library/Application Support/Jamf/tmp/
для власних сценаріїв, які адміністратори можуть хотіти виконати через Jamf, оскільки вони розміщуються тут, виконуються та видаляються. Ці сценарії можуть містити облікові дані.
Однак облікові дані можуть передаватися через ці сценарії як параметри, тому вам потрібно буде моніторити ps aux | grep -i jamf
(навіть не бути root).
Сценарій JamfExplorer.py може слухати нові файли, які додаються та нові аргументи процесу.
Віддалений доступ до macOS
Також про "спеціальні" мережеві протоколи MacOS:
pagemacOS Network Services & ProtocolsActive Directory
У деяких випадках ви знайдете, що комп'ютер MacOS підключений до AD. У цьому сценарії вам слід спробувати перелічити активний каталог, як ви звикли. Знайдіть допомогу на наступних сторінках:
page389, 636, 3268, 3269 - Pentesting LDAPpageActive Directory Methodologypage88tcp/udp - Pentesting KerberosДеякі локальні інструменти MacOS, які також можуть вам допомогти, - це dscl
:
Також є деякі інструменти, підготовлені для MacOS для автоматичного переліку AD та гри з kerberos:
Machound: MacHound - це розширення для інструменту аудитування Bloodhound, яке дозволяє збирати та вживати взаємовідносини Active Directory на хостах MacOS.
Bifrost: Bifrost - це проект на Objective-C, призначений для взаємодії з API Heimdal krb5 на macOS. Метою проекту є покращення тестування безпеки навколо Kerberos на пристроях macOS за допомогою вбудованих API без потреби в будь-якому іншому фреймворку або пакетах на цільовому пристрої.
Orchard: Інструмент JavaScript для автоматизації (JXA) для переліку Active Directory.
Користувачі
Три типи користувачів MacOS:
Локальні користувачі — Керуються локальним сервісом OpenDirectory, вони не пов'язані з Active Directory.
Мережеві користувачі — Волатильні користувачі Active Directory, які потребують підключення до сервера DC для аутентифікації.
Мобільні користувачі — Користувачі Active Directory з локальним резервним копіюванням своїх облікових даних та файлів.
Локальна інформація про користувачів та групи зберігається в папці /var/db/dslocal/nodes/Default. Наприклад, інформація про користувача з ім'ям mark зберігається в /var/db/dslocal/nodes/Default/users/mark.plist, а інформація про групу admin знаходиться в /var/db/dslocal/nodes/Default/groups/admin.plist.
Крім використання ребер HasSession та AdminTo, MacHound додає три нові ребра до бази даних Bloodhound:
CanSSH - сутність, якій дозволено SSH на хост
CanVNC - сутність, якій дозволено VNC на хост
CanAE - сутність, якій дозволено виконувати скрипти AppleEvent на хості
Додаткова інформація за посиланням https://its-a-feature.github.io/posts/2018/01/Active-Directory-Discovery-with-a-Mac/
Доступ до Ключового сховища
Ключове сховище, ймовірно, містить чутливу інформацію, яка, якщо доступна без виклику запиту, може допомогти в проведенні червоного командного вправи:
pagemacOS KeychainЗовнішні сервіси
Червоний командний редагування MacOS відрізняється від звичайного червоного командного редагування Windows, оскільки зазвичай MacOS інтегрований з кількома зовнішніми платформами безпосередньо. Звичайна конфігурація MacOS передбачає доступ до комп'ютера за допомогою синхронізованих облікових даних OneLogin та доступ до кількох зовнішніх сервісів (наприклад, github, aws...) через OneLogin.
Різноманітні техніки червоного командного редагування
Safari
Коли файл завантажується в Safari, якщо це "безпечний" файл, він буде автоматично відкритий. Так, наприклад, якщо ви завантажуєте zip, він буде автоматично розпакований:
Посилання
Last updated