đ Contexte
PubliĂ© le 29 juillet 2026 par Alfredo Pesoli sur le blog de Bynario (bynar.io), cet article prĂ©sente une analyse technique dĂ©taillĂ©e d’une vulnĂ©rabilitĂ© dĂ©couverte dans le service Screen Sharing de macOS, affectant les systĂšmes Ă©quipĂ©s de puces Apple Silicon (M4 et M5), testĂ©s sous macOS 26.5.2 avec SIP activĂ©.
đ Nature de la vulnĂ©rabilitĂ©
La vulnĂ©rabilitĂ© CVE-2026-43760 est une faille logique d’autorisation (confused deputy) dans le service screensharingd et ses helpers SSFileCopySender et SSFileCopyReceiver. Elle n’implique aucune corruption mĂ©moire, buffer overflow, use-after-free, ROP chain ou bypass de PAC/MIE.
Le problĂšme rĂ©side dans la coexistence de deux chemins d’authentification dans Screen Sharing :
- Chemin natif Apple : rĂ©sout un utilisateur macOS avec UID/GID propres â les helpers s’exĂ©cutent sous l’identitĂ© de l’utilisateur authentifiĂ©.
- Chemin VNC legacy (RFB security type 2) : authentifie uniquement par mot de passe VNC, sans identitĂ© macOS â les helpers conservent les droits root (uid=0, gid=80).
â ïž Deux primitives exploitables
| Direction | Helper | Impact |
|---|---|---|
| Mac â Viewer | SSFileCopySender |
Lecture de fichiers protégés en tant que root (ex: /etc/sudoers) |
| Viewer â Mac | SSFileCopyReceiver |
Création de fichiers arbitraires en tant que root avec mode contrÎlé |
Bug #1 : Via StartFileSend, un viewer VNC peut demander l’envoi de n’importe quel fichier protĂ©gĂ© (ex: /etc/sudoers), qui est lu et transmis par le helper tournant en uid=0.
Bug #2 : Via StartFileReceive, un viewer VNC peut créer un fichier arbitraire avec destination, nom, mode et contenu entiÚrement contrÎlés, exécuté en uid=0.
đ„ ChaĂźne d’exploitation vers RCE root
- Authentification VNC (mot de passe VNC connu)
- Envoi d’un fichier via
SSFileCopyReceiververs/private/etc/sudoers.d/99-screensharing-filecopy-proof(owner: root:wheel, mode: 0440) - La rĂšgle sudoers valide permet Ă un utilisateur non-admin d’exĂ©cuter
sudo -n /bin/bashâ shell root - DĂ©monstration end-to-end : Ă©criture d’un script callback + ouverture de Terminal via la session Screen Sharing GUI â shell root interactif distant
- Variante : placement d’un LaunchAgent pour dĂ©clenchement au prochain login utilisateur
đĄïž Conditions prĂ©alables
- Screen Sharing ou Remote Management activé
- Option “VNC viewers may control screen with password” configurĂ©e
- Connaissance du mot de passe VNC
đ Scoring CVSS
- Apple : CVSS 3.1 base score 5.5 â description : “An app may be able to access user-sensitive data”
- Bynario (conservateur) : 8.0 High â
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H - Bynario (session active) : 8.8 High â
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
đ§ Correctifs
- Corrigé dans macOS Tahoe 26.6 (27 juillet 2026) et macOS Sonoma 14.8.8
- Mitigation immĂ©diate : dĂ©sactiver “VNC viewers may control screen with password”
đ€ MĂ©thode de dĂ©couverte
La vulnĂ©rabilitĂ© a Ă©tĂ© dĂ©couverte via un workflow automatisĂ© utilisant GPT-5.5 pour la dĂ©couverte et la validation diffĂ©rentielle (signal sĂ©mantique : mĂȘme opĂ©ration â uid=502 sous auth native, uid=0 sous VNC legacy), via l’outil Bynario Atlas.
đ Type d’article
Analyse technique approfondie et publication de recherche en vulnérabilité, visant à documenter une faille logique originale dans macOS, contester le scoring officiel Apple, et promouvoir la plateforme de découverte automatisée Bynario Atlas.
đ§ TTPs et IOCs dĂ©tectĂ©s
TTP
- T1021.005 â Remote Services: VNC (Lateral Movement)
- T1548.003 â Abuse Elevation Control Mechanism: Sudo and Sudo Caching (Privilege Escalation)
- T1083 â File and Directory Discovery (Discovery)
- T1005 â Data from Local System (Collection)
- T1222 â File and Directory Permissions Modification (Defense Evasion)
- T1543.001 â Create or Modify System Process: Launch Agent (Persistence)
- T1059.004 â Command and Scripting Interpreter: Unix Shell (Execution)
IOC
- CVEs :
CVE-2026-43760â NVD · CIRCL - Fichiers :
99-screensharing-filecopy-proof - Chemins :
/private/etc/sudoers.d/99-screensharing-filecopy-proof - Chemins :
/private/tmp/screensharing-filecopy-root-callback - Chemins :
/etc/sudoers
â ïž Ă propos de ces IOC â ils sont extraits automatiquement de l’article original le 19 aoĂ»t 2026 et n’ont pas fait l’objet d’une vĂ©rification externe. Un indicateur peut avoir Ă©tĂ© rĂ©attribuĂ© depuis : une IP de C2 peut redevenir un service lĂ©gitime, un domaine sinkholĂ© peut changer de propriĂ©taire. Aucune garantie d’exactitude ni d’actualitĂ© â contrĂŽlez leur validitĂ© avant tout usage opĂ©rationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.
đĄ Indice de vĂ©rification factuelle : 55/100 (moyenne)
- ⏠bynar.io â source non rĂ©fĂ©rencĂ©e (0pts)
- â 16631 chars â texte complet (fulltext extrait) (15pts)
- â 5 IOCs (IPs/domaines/CVEs) (10pts)
- ⏠pas d’IOC vĂ©rifiĂ© (0pts)
- â 7 TTPs MITRE identifiĂ©es (15pts)
- â date extraite du HTML source (10pts)
- ⏠aucun acteur de menace nommé (0pts)
- â 1/1 CVE(s) confirmĂ©e(s) (CIRCL) (5pts)
đ Source originale : https://bynar.io/blog/a-root-remote-command-execution-on-macos-with-m5-in-2026