❌

Vue normale

  • ✇Korben
  • Le Deathray - Le shader WebGPU qui fait redémarrer votre Mac
    Auberon López vient de publier sur son blog un bouton qui freeze complètement les Mac à partir d'un simple clic dans un navigateur. Il a baptisé ça le Deathray (le rayon de la mort quoi...) et c'est un shader WebGPU diffusé via une page web des plus ordinaires, qu'il suffit d'ouvrir d'un simple clic sur un lien. Ce qui arrive ensuite change d'une fois sur l'autre : Vous aurez le doit à la roue multicolore, ou la souris qui se fige, ou encore parfois des saletés magenta sur une pa
     

Le Deathray - Le shader WebGPU qui fait redémarrer votre Mac

11 septembre 2026 à 05:52

Auberon López vient de publier sur son blog un bouton qui freeze complètement les Mac à partir d'un simple clic dans un navigateur. Il a baptisé ça le Deathray (le rayon de la mort quoi...) et c'est un shader WebGPU diffusé via une page web des plus ordinaires, qu'il suffit d'ouvrir d'un simple clic sur un lien.

Ce qui arrive ensuite change d'une fois sur l'autre : Vous aurez le doit à la roue multicolore, ou la souris qui se fige, ou encore parfois des saletés magenta sur une partie de l'écran. Le reste de l'ordinateur, lui, va très bien et vous pouvez vous y connecter en SSH depuis une autre machine sans souci. C'est juste l'affichage qui ne répond plus, et il ne reviendra pas sauf si vous rebootez.

Le fait est que macOS surveille également son WindowServer, le processus qui dessine tout ce que vous voyez. S'il ne répond plus pendant deux minutes, le chien de garde déclenche un kernel panic et la machine redémarre ensuite toute seule. Mais vous pouvez aussi appuyer sur le bouton d'alimentation si vous êtes pressé, mais en croisant les doigts pour que votre navigateur ne rouvre pas l'onglet au redémarrage...

Le truc tient dans un seul fichier HTML, et histoire de vous expliquer un peu plus, un compute shader part dans une boucle écrite sans incrément, donc elle ne se termine jamais, et recopie indéfiniment le même vecteur en mémoire. À côté, le vertex shader qui dessine l'image lit alors cette même zone, et comme le premier ne lâche jamais la main, le second ne peut pas avancer d'un pouce.

Sauf que l'embouteillage ne reste pas cantonné au navigateur. Tous les processus qui veulent le GPU se retrouvent alors à patienter derrière, WindowServer compris, d'où l'écran figé. López dit avoir reproduit la chose dans Chrome, Firefox et Safari, sur des MacBook à puce M tournant sous macOS Tahoe. Après sur les autres systèmes testés, l'onglet rame un bon coup, puis tout rentre dans l'ordre dès qu'on ferme la page.

Mais alors pourquoi eux et pas les autres OS comme Windows ?

Hé bien parce que Windows embarque un mécanisme appelé TDR , qui repère qu'une carte graphique met plus longtemps que prévu à répondre et qui la réinitialise pour éviter que tout le système se bloque. Deux secondes par défaut, et le shader qui déconne se fait éjecter.

Alors que sur Apple Silicon, c'est un coprocesseur maison, l'ASC, qui pilote le GPU avec un firmware Apple et qui s'occupe de tout : énergie, ordonnancement des commandes, préemption des tâches. Asahi Lina , qui a retourné la puce M1 pour écrire un pilote Linux , a d'ailleurs relevé que si ce firmware plante, il n'y a qu'un moyen de s'en sortir. La seule solution c'est de redémarrer complètement la machine.

López a signalé le problème à Apple Security fin juillet. Apple a reproduit le bug, annoncé un correctif et donné un calendrier (confidentiel, donc on ne le connaîtra pas). Puis le 26 août, revirement complet d'Apple qui explique ne voir "aucune implication de sécurité dans ce rapport", lequel n'entraînera donc aucun changement dans ses produits. Le dossier est ensuite parti vers une autre équipe pour d'éventuelles "considérations d'amélioration".

En 2023 pourtant, Ron Masas d'Imperva avait déjà fait planter des Mac, des iPhone et des iPad avec un shader, en WebGL cette fois. Apple avait alors sorti le CVE-2023-40441 , noté 6,5 sur 10, et l'avait bouché en renforçant la validation des entrées pour mieux repérer les boucles folles.

Seulement voilà, sa boucle à lui était énorme mais finie, donc détectable, alors que celle du Deathray tourne pour toujours. Et une boucle infinie, la repérer à coup sûr, c'est le problème de l'arrêt ... donc personne ne sait faire.

López l'écrit d'ailleurs sur son site, les chercheurs en sécurité avec qui la question a été discutée donnent plutôt raison à Apple. Pour la firme, le résultat n'est qu'un plantage, un gel ou une perte de données récupérable, et ça ne constitue pas un réel problème de sécurité. Et sur le principe, ça se défend. Sauf que dans la vraie vie, si vous avez oublié de sauvegarder vos fichiers et que vous cliquez sur ce lien, vous l'avez dans l'os (et pas dans le "MacOS"... roh roh roh).

Donc non, il n'y a rien à installer pour empêcher ça et rien à attendre de Cupertino pour le moment. Voilà, sachez juste que n'importe quel couillon qui aura lu cet article pourra vous envoyer un petit lien par mail, façon rickroll des enfers, ce qui aura pour effet de freezer et faire redémarrer votre Mac.

Désolé !! 🤷‍♂️

Source : le billet d'Auberon López .

  • ✇Korben
  • ReProgman - L'interface de Windows 3.1 sur PC et Mac
    Le développeur Mayuki Sawatari vient de publier ReProgman , un clone du Program Manager de Windows 3.1. Ça ne vous dit rien ? C'est parce que vous êtes des bébés ! En fait, progman.exe, c'est ce truc qui servait d'interface principale à Windows avant que le menu Démarrer ne débarque avec Windows 95. Et aujourd'hui, grâce au taf de Sawatari, ça tourne aussi bien sur Windows 11 que sur macOS. Pour ceux qui ont commencé l'informatique après 1995, faut savoir qu'avant ça, on n'avait p
     

ReProgman - L'interface de Windows 3.1 sur PC et Mac

11 septembre 2026 à 02:15

Le développeur Mayuki Sawatari vient de publier ReProgman , un clone du Program Manager de Windows 3.1.

Ça ne vous dit rien ? C'est parce que vous êtes des bébés !

En fait, progman.exe, c'est ce truc qui servait d'interface principale à Windows avant que le menu Démarrer ne débarque avec Windows 95. Et aujourd'hui, grâce au taf de Sawatari, ça tourne aussi bien sur Windows 11 que sur macOS.

Pour ceux qui ont commencé l'informatique après 1995, faut savoir qu'avant ça, on n'avait pas de bureau, pas de barre des tâches, mais juste une grande fenêtre grise remplie de sous-fenêtres, et dans chaque sous-fenêtre y'avait des icônes de programmes alignées sur une grille. Vous double-cliquiez sur l'une d'elles, le programme se lançait, et voilà, vous aviez fait le tour de Windows !

Le groupe Main ouvert sur Windows 11, et la rangée de groupes réduits en bas de la fenêtre

Regardez bien les icônes sur cette capture : Docker, Edge et Claude rangés dans une ambiance de 1992...

Car ReProgman ne se contente pas de reproduire la déco. Au premier lancement, il scanne votre menu Démarrer (ou vos dossiers Applications si vous êtes sur Mac), transforme chaque dossier en groupe et range le tout dans son propre fichier Groups.ini. Après ça, il n'y retourne plus tout seul, et ce que vous déplacez, renommez ou supprimez dedans ne redescend jamais vers vos vrais raccourcis. Un menu permet quand même de relancer l'import à la main, et il n'ajoute alors que ce qui manque.

Du coup, vous récupérez les gestes de l'époque pour de vrai. Vous attrapez une icône, vous la lâchez dans une autre fenêtre et elle déménage, avec Ctrl enfoncé elle se copie, le menu Window vous range tout ça en cascade ou en mosaïque, et les fenêtres réduites redeviennent des icônes alignées en bas de la fenêtre principale. Même la boîte de dialogue de sortie a été refaite, à ceci près qu'elle annonce la fin de votre session ReProgman et non celle de Windows.

Maintenant, d'où ça sort comme délire ?

Hé bien, l'auteur raconte, dans un message relayé par Tom's Hardware, qu'il a simplement demandé à Claude de lui fabriquer ce clone, et que la première version obtenue en une heure était déjà plutôt correcte, même s'il a ensuite fallu rattraper les imperfections.

Ce qui est intéressant, c'est que dans son dépôt git, on trouve un document de spécification de plusieurs centaines de lignes qui décrit l'interface au pixel près, relevée sur des captures 640x480 du Windows original. Le cadre d'une fenêtre y fait 1 pixel noir, 2 pixels gris et encore 1 pixel noir, et la petite barre du menu système mesure 13 pixels sur la fenêtre principale contre 7 sur une fenêtre enfant. C'est d'ailleurs comme ça qu'on les distinguait à l'époque.... Fallait avoir l'oeil !

Si vous voulez l'essayer, ça se présente sous la forme d'un binaire autonome. Par contre sur Mac, la version distribuée n'est pas notarisée, il faudra donc lui passer un xattr -cr ReProgman.app ou utiliser Sentinel avant qu'elle accepte de démarrer. Ah et le code est sous licence MIT.

Le périmètre annoncé par le projet est d'ailleurs plus étroit qu'il en a l'air, puisque c'est Windows 11 en x64 et en Arm, et macOS uniquement sur Apple Silicon. Donc si vous êtes resté sur Windows 10 parce que vous aimez le risque ou sur un Mac Intel parce que vous aimez prendre votre temps, il n'y a rien pour vous amuser... Il faudra alors retourner du côté de ce musée de vieux systèmes d'exploitation que je vous avais montré, qui lui passe par l'émulation.

Après, je pense pas que vous y ferez votre vie mais ça vous donnera environ 30 secondes de nostalgie avant de refermer la fenêtre. C'est déjà ça de pris...

Source : Tom's Hardware

  • ✇Korben
  • WhatCable - Trouvez le câble qui bride la charge sur votre Mac
    Je ne sais pas vous, mais chez moi, mes câbles USB-C se ressemblent tous. Et dans le tas, j'en ai qui chargent mon MacBook deux fois plus vite que d'autres. Et franchement, en les regardant, je ne peux pas vous dire lesquels sont les plus efficaces. Alors que mon Mac, lui, apparemment, il le sait déjà. En tout cas, c'est ce que j'ai compris en allant lire le site de WhatCable. Ce qu'ils expliquent, c'est qu'à chaque branchement, le contrôleur de port d'un Mac Apple Silicon envoie un message à la
     

WhatCable - Trouvez le câble qui bride la charge sur votre Mac

1 septembre 2026 à 05:24

Je ne sais pas vous, mais chez moi, mes câbles USB-C se ressemblent tous. Et dans le tas, j'en ai qui chargent mon MacBook deux fois plus vite que d'autres. Et franchement, en les regardant, je ne peux pas vous dire lesquels sont les plus efficaces. Alors que mon Mac, lui, apparemment, il le sait déjà.

En tout cas, c'est ce que j'ai compris en allant lire le site de WhatCable. Ce qu'ils expliquent, c'est qu'à chaque branchement, le contrôleur de port d'un Mac Apple Silicon envoie un message à la puce que certains câbles embarquent et récupère sa fiche d'identité : débit annoncé, ampérage, fabricant. De ce que j'ai compris, macOS range la réponse dans le registre IOKit sous forme d'objets bruts, et ne l'affiche nulle part en clair. Snif...

Et c'est cette réponse que WhatCable va chercher, puis traduit. L'app vit dans la barre de menus, vous branchez un câble, et elle vous dit alors instantanément lequel des trois maillons plafonne la charge : Soit le chargeur, soit le câble, soit le Mac lui-même quand sa batterie est presque pleine.

Et vous obtenez le même verdict côté débit.

L'app confronte aussi la fiche du câble à sa spécification USB-PD et lève un carton jaune quand quelque chose cloche. Ça peut être l'identifiant fabricant à zéro, les bits réservés utilisés de travers...etc. Moi, je parle bien ici de contrefaçon de câbles, mais l'app reste très prudente dans sa formulation. Elle signale juste des trucs bizarres, et elle ne dit jamais qu'un câble est une contrefaçon.

Après, la plupart des câbles sous 60 W n'ont aucune puce à interroger, donc il n'y a rien à lire, et certains ne répondent correctement qu'avec un appareil branché à l'autre bout. Sur les ports USB-C en façade d'un Mac mini ou d'un Studio, aucune donnée de câble ne remonte non plus. C'est à cause de l'architecture d'Apple.

Côté matériel, il vous faut donc un Mac Apple Silicon sous macOS 14 minimum, les Mac Intel ne publiant pas ces données du tout. L'app est gratuite et son code est sous licence MIT, sauf le dossier des fonctions Pro où là, faudra débourser environ 10 €.

Si vous avez Homebrew, vous pouvez installer l'app rapidement comme ceci :

brew install --cask darrylmorley/whatcable/whatcable

L'app est même en français si vous avez séché les cours d'anglais. Bref, de quoi trier votre caisse de câbles sans vous planter...

❌