macOS Security & Privilege Escalation

Reading time: 4 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks

Basic MacOS

Якщо ви не знайомі з macOS, вам слід почати вивчати основи macOS:

  • Спеціальні macOS файли та дозволи:

macOS Files, Folders, Binaries & Memory

  • Загальні macOS користувачі

macOS Users & External Accounts

  • AppleFS

macOS AppleFS

  • архітектура ядра

macOS Kernel & System Extensions

  • Загальні macOS nетеві сервіси та протоколи

macOS Network Services & Protocols

MacOS MDM

В компаніях macOS системи, ймовірно, будуть керуватися за допомогою MDM. Тому з точки зору атакуючого цікаво знати, як це працює:

macOS MDM

MacOS - Інспекція, налагодження та фуззинг

macOS Apps - Inspecting, debugging and Fuzzing

MacOS Security Protections

macOS Security Protections

Attack Surface

File Permissions

Якщо процес, що працює як root, записує файл, який може контролюватися користувачем, користувач може зловживати цим для ескалації привілеїв.
Це може статися в наступних ситуаціях:

  • Файл, що використовується, вже створений користувачем (належить користувачу)
  • Файл, що використовується, доступний для запису користувачем через групу
  • Файл, що використовується, знаходиться в каталозі, що належить користувачу (користувач може створити файл)
  • Файл, що використовується, знаходиться в каталозі, що належить root, але користувач має доступ на запис через групу (користувач може створити файл)

Можливість створити файл, який буде використовуватися root, дозволяє користувачу використовувати його вміст або навіть створювати символічні/жорсткі посилання на інше місце.

Для таких вразливостей не забудьте перевірити вразливі .pkg інсталятори:

macOS Installers Abuse

File Extension & URL scheme app handlers

Дивні програми, зареєстровані за розширеннями файлів, можуть бути зловживані, і різні програми можуть бути зареєстровані для відкриття конкретних протоколів

macOS File Extension & URL scheme app handlers

macOS TCC / SIP Privilege Escalation

У macOS додатки та бінарні файли можуть мати дозволи на доступ до папок або налаштувань, які роблять їх більш привілейованими, ніж інші.

Тому атакуючий, який хоче успішно скомпрометувати машину macOS, повинен ескалувати свої привілеї TCC (або навіть обійти SIP, залежно від його потреб).

Ці привілеї зазвичай надаються у формі прав з якими підписаний додаток, або додаток може запитати деякі доступи, і після схвалення їх користувачем вони можуть бути знайдені в базах даних TCC. Інший спосіб, яким процес може отримати ці привілеї, - це бути дитиною процесу з цими привілеями, оскільки вони зазвичай успадковуються.

Слідуйте цим посиланням, щоб знайти різні способи ескалації привілеїв у TCC, обійти TCC і як у минулому SIP було обійдено.

macOS Traditional Privilege Escalation

Звичайно, з точки зору червоних команд, вам також слід бути зацікавленим в ескалації до root. Перевірте наступний пост для деяких підказок:

macOS Privilege Escalation

macOS Compliance

References

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks