Une quinzaine de lignes de code envoyées à la carte graphique par une page web, et votre Mac n’affiche plus rien jusqu’au redémarrage forcé. La démonstration est publique depuis hier, et Apple a décidé de ne pas la traiter comme une faille.
La démonstration tient en deux morceaux, tous deux écrits en WebGPU, l’interface standard qui permet à
un site d’exécuter des calculs sur le processeur graphique. Le premier est un shader de calcul
enfermé dans une boucle infinie. Le second attend le résultat du premier. Le GPU se retrouve
occupé à perpétuité, et le processus qui dessine l’interface de macOS, WindowServer, n’obtient
plus jamais son tour.
À l’écran, la souris se fige ou glisse sur une image morte. La machine, elle, n’est pas plantée : une connexion SSH depuis un autre poste continue de répondre normalement. Au bout d’un moment, le chien de garde du système constate que l’affichage ne répond plus et provoque une panique du noyau, donc un redémarrage. L’autre issue est d’appuyer sur le bouton d’alimentation.
Le détail qui compte : les trois navigateurs sont touchés, Chrome, Firefox et Safari, parce que le problème n’est pas dans le navigateur mais dans la façon dont le système arbitre l’accès au GPU. Sur Windows et sur Linux, la même page ne bloque que son onglet.
L’auteur a signalé le problème à Apple, qui a accusé réception le 27 juillet et annoncé un correctif. Le 26 août, la firme est revenue sur sa position : pas d’implication de sécurité, le dossier est reclassé en « amélioration potentielle ». Aucun identifiant CVE n’a été émis, là où un cousin exploitant WebGL en avait reçu un en 2023.
On peut soutenir qu’un site qui vous force à redémarrer ne vole rien. On peut aussi remarquer que la même logique, appliquée à un onglet ouvert pendant que vous travaillez, coûte tout ce qui n’était pas enregistré.