Les gars de chez LLNL (Lawrence Livermore National Laboratory) sont des bons ! De vrais spécialistes en sécurité informatique qui ont pondu un outil à essayer si vous passez vos journées dans les entrailles des binaires.
Ça s'appelle OGhidra , et c'est une extension qui fait le pont entre le célèbre framework de reverse engineering Ghidra et la puissance des modèles de langage (LLM).
Comme ça, plutôt que de vous péter les yeux sur des milliers de lignes de code décompilé, vous pouvez simplement "discuter" avec les fonctions ou les strings extraites. Grâce à une intégration avec Ollama, OGhidra permet d'interroger les représentations du binaire en langage naturel pour identifier des vulnérabilités, renommer intelligemment des fonctions ou expliquer des algorithmes complexes. Attention toutefois, comme avec tout LLM, les résultats doivent être validés manuellement (les hallucinations, ça arrive même aux meilleurs !).
Le gros avantage ici, vous l'aurez compris, c'est la privacy car tout tourne en local sur votre ordi. L'extension utilise des techniques comme le RAG (Retrieval-Augmented Generation) pour garder le contexte de vos sessions et le CAG (Cache-Augmented Generation) pour optimiser les performances. Prévoyez quand même une machine solide car pour faire tourner des modèles comme gemma3 confortablement, 32 Go de RAM (et une bonne dose de VRAM) ne seront pas de trop.
Pour que ça envahisse vos machines de reverse engineer, il vous faudra Ghidra 11.3 minimum et JDK 17. L'installation se fait ensuite en deux temps : d'abord le plugin GhidraMCP à ajouter dans Ghidra, puis le composant Python à récupérer sur GitHub :
git clone https://github.com/LLNL/OGhidra.git
cd OGhidra
pip install -r requirements.txt
Une fois Ollama lancé avec vos modèles préférés, vous allez pouvoir automatiser les tâches les plus reloues. Par exemple grâce aux boutons "Smart Tool" dans l'interface de Ghidra vous allez pouvoir renommer toutes les fonctions d'un coup ou générer un rapport de sécurité (à prendre comme une base de travail, pas comme une vérité absolue, hein ^^).
C'est beau mais ça fait mal quand on pense au temps qu'on a perdu par le passé ! Et si vous kiffez ce genre d'approches, jetez aussi un œil à Cutter qui propose une intégration optionnelle du décompileur de Ghidra, ou encore à DecompAI .
Voilà, j'ai trouvé ça intéressant pour booster Ghidra avec une petite dose d'intelligence locale.
Si vous êtes du genre à avoir passé des heures sur Half-Life 2 à vous en retourner les paupières (et je sais que vous êtes nombreux), oubliez tout ce que vous pensiez savoir sur la stabilité légendaire du Source Engine. Car figurez-vous qu'un bug totalement improbable vient de refaire surface grâce à Tom Forsyth, un ancien de chez Valve, et c'est clairement un truc de fou, vous allez voir...
Tout commence en 2013. À l'époque, Valve bosse sur le portage de HL2 pour le tout premier Oculus Rift (le fameux DK1 qui nous donnait tous envie de vomir au bout de 5 minutes). Pour tester la VR, ils se disent que le mieux, c'est de reprendre un bon vieux classique. Tout se passe bien jusqu'à ce que Tom Forsyth reste bloqué dès l'intro du jeu, juste après la séquence de la canette. Un garde Barney censé vous ouvrir une porte reste planté là, et la porte refuse de bouger. Coincé. Rideau. On ferme.
Le truc qu'il constate alors, c'est qu'en recompilant le code source original de 2004, le bug est là aussi ! Pourtant, personne ne l'avait jamais croisé en neuf ans. Du coup, l'équipe a cru à une sorte de malédiction ou à un bug qui aurait voyagé dans le temps pour infecter l'original. (si si...)
Mais après une journée de spéléologie dans les outils de debug, ils ont fini par trouver le coupable : l'orteil d'un garde PNJ ! Le pauvre couillon était placé un millimètre trop près de la porte et en s'ouvrant, la porte tapait dans son pied, rebondissait et se verrouillait. Imaginez un peu la vie du gars, à se faire matraquer l'orteil depuis +20 ans sans pouvoir crier ou se décaler d'un millimètre... Dur !
Mais alors pourquoi ça marchait en 2004 et plus en 2013 ?
Hé bien la réponse tient en deux mots qui vont rappeler des souvenirs aux plus geeks d'entre vous : ✨ virgule flottante ✨.
Car en 2004, le jeu tournait avec les instructions x87 (80 bits de précision, un beau bordel hérité de l'époque)et en 2013, avec le passage au SSE (32 ou 64 bits), les calculs physiques sont devenus plus "stricts". Dans les deux versions, la porte tape l'orteil mais avec le x87, la micro-rotation infligée au garde suffisait à dégager son pied juste assez pour que la porte passe au millième de seconde suivant. Avec le SSE par contre, le garde pivotait un chouïa moins loin... et paf, collision, porte bloquée !
C'est encore une preuve que même dans un chef-d'œuvre comme Half-Life 2, tout ne tient qu'à un orteil et quelques bits. D'ailleurs, si vous voulez vous replonger dans l'ambiance, sachez que Half-Life a fêté ses 25 ans récemment avec une belle mise à jour, et pour les nostalgiques de la VR qui veulent souffrir avec style, le driver VorpX permet toujours de faire des miracles. Ce serait dommage de passer à côté !
Allez, je vous laisse, je vais vérifier si mon gros orteil ne bloque pas ma porte d'entrée.
OK les amis, là faut qu'on parle de ce qui se passe chez Rockstar. Je pense que vous passez probablement trop de temps à errer dans Los Santos au lieu de bosser, mais ce qui vient de tomber est bien plus inquiétant qu'un braquage de banque qui foire. En effet, d'après une enquête de Variety , Rockstar vient de supprimer des missions créées par des joueurs qui recréaient l'assassinat réel de Charlie Kirk, un fasciste américain tué en septembre dernier.
Le truc, c'est que ce n'est pas juste une petite polémique politique de plus. C'est LE SIGNE que Rockstar Games est en train de réaliser, un peu tard, qu'ils ne contrôlent plus leur propre bébé. Car même si les outils de création existent depuis 2013, une nouvelle fonctionnalité lancée en décembre dernier a visiblement boosté la créativité macabre de certains. Désormais, des joueurs s'improvisent game designer pour injecter des événements du monde réel directement dans le jeu sandbox de Rockstar.
Et là, c'est le drame ! Pour essayer de colmater les brèches, ils ont même dû repenser leur vieux "filtre de grossièretés" interne qui n'est plus juste là pour empêcher les gamins d'écrire des insultes dans le chat, mais pour modérer et bloquer massivement des noms de personnalités ou des événements sensibles. En gros, Rockstar est passé du statut de créateur de mondes virtuels à celui de modérateur de plateforme, un peu comme s'ils géraient un réseau social géant, mais avec des flingues et des bagnoles.
Certains se demandent si l'acquisition de Cfx.re (l'équipe derrière FiveM) en 2023 par Rockstar n'était pas justement un moyen de préparer le terrain avec des technos de contrôle plus musclées. Mais peu importe, car le vrai problème ici est structurel. GTA est devenu une plateforme UGC massive (User Generated Content) et quand on voit à quel point ils galèrent déjà, on peut légitimement se demander comment ils vont gérer le futur multi de GTA 6, prévu pour novembre 2026 ?
Sérieux, je m'inquiète car imaginez l'échelle du prochain titre avec des outils encore plus poussés... Ça va être un combat permanent pour supprimer les contenus problématiques. On est trèèèès loin de l'époque où on s'amusait simplement à regarder Los Santos sous l'eau grâce à un mod. Ici, Rockstar découvre à ses dépends que la liberté offerte aux joueurs est en train de se transformer en leur pire cauchemar de modération.
Allez, bon courage Rockstar, parce que là, vous allez en avoir besoin.
Il y a des combats comme cela auxquels pas grand monde ne pense et qui pourtant sont très importants. Je parle évidemment de la lutte contre le chaos du texte non structuré. Si vous avez déjà essayé d'extraire des données propres d'un tas de PDF (après OCR), de rapports ou de notes griffonnées, vous voyez de quoi je parle : c'est l'enfer ! (oui j'aime me faire du mal en tentant des regex impossibles).
Heureusement, Google a lâché début janvier 2026 une petite pépite en open source (même si c'est pas un produit "officiel") qui s'appelle LangExtract . C'est une bibliothèque Python qui utilise la puissance des LLM pour transformer vos documents textuels en données JSON bien rangées.
Exemple d'extraction sur le texte de Roméo et Juliette ( Source )
Ce qui fait que LangExtract sort du lot par rapport à d'autres outils comme Sparrow , c'est surtout son système de Source Grounding. En gros, chaque info extraite est directement liée à sa position exacte dans le texte source. Ça facilite énormément la vérification et la traçabilité puisque vous pouvez voir visuellement d'où vient la donnée grâce à un système de surlignage automatique.
Sous le capot, l'outil est optimisé pour les documents à rallonge (le fameux problème de l'aiguille dans une botte de foin). Il utilise des stratégies de découpage de texte et de passes multiples pour améliorer le rappel et s'assurer que le maximum d'infos soit capturé.
La visualisation interactive permet de valider les données en un clin d'œil ( Source )
Et cerise sur le gâteau, il permet de générer un fichier HTML interactif pour visualiser les milliers d'entités extraites dans leur contexte original. À la cool !
Côté installation, c'est hyper fastoche :
pip install langextract
Pour faire le job, vous avez le choix des armes : les modèles cloud de Google (Gemini 2.5 Flash/Pro), ceux d'OpenAI (via pip install langextract[openai]), ou carrément du local avec
Ollama
. Pas besoin de passer des heures à fine-tuner un modèle, il suffit de fournir quelques exemples structurés via le paramètre examples et hop, c'est parti mon kiki.
Voici à quoi ça ressemble sous le capot pour lancer une machine à extraire :
import langextract as lx
# 1. On définit les règles du jeu
prompt = "Extraire les noms de personnages et leurs émotions."
# 2. On donne un exemple (few-shot) pour guider le modèle
examples = [
lx.data.ExampleData(
text="ROMEO. But soft! What light...",
extractions=[lx.data.Extraction(extraction_class="character", extraction_text="ROMEO", attributes={"emotion": "wonder"})]
)
]
# 3. On lance l'extraction (nécessite une clé API ou Ollama)
results = lx.extract(
text_or_documents="votre_texte_brut_ici",
prompt_description=prompt,
examples=examples,
model_id="gemini-2.5-flash"
)
# 4. On sauvegarde et on génère la visualisation HTML
lx.io.save_annotated_documents(results, output_name="results.jsonl")
html_content = lx.visualize("results.jsonl")
with open("view.html", "w") as f:
f.write(html_content)
Honnêtement, je ne sais pas si ça va remplacer les solutions industrielles de RPA , mais pour un dev qui veut structurer du texte sans se prendre la tête, c'est vraiment impressionnant. Que vous fassiez du Grist ou de l'analyse de données pure, cet outil mérite clairement que vous y jetiez un œil !
Vous pensiez avoir tout vu en matière de projets geeks complètement déjantés ?
Hé bien accrochez-vous à vos slips, parce que des chercheurs, menés par le neuro-ingénieur Viktor Tóth, ont réussi à faire "jouer" des rats à DOOM. Pas en appuyant sur des boutons au hasard, non non, mais avec un casque de réalité virtuelle sur mesure, une boule de déplacement sous leurs pattes, et même une gâchette pour tirer sur les démons !
Je vous jure que c'est vrai. Le projet s'appelle " Rats Play DOOM " et c'est à la croisée de la neuroscience, de la robotique et du game design. L'idée de base, c'est de prouver qu'on peut entraîner des rongeurs à interagir avec des environnements virtuels contrôlés basés sur un moteur de jeu. Et quitte à faire ça, autant le faire avec le jeu le plus iconique des années 90.
Gros plan sur le casque VR panoramique pour rongeurs ( Source )
Le setup est assez dingue. Le rat est équipé d'un casque panoramique intégrant un écran AMOLED pliable qui offre 180 degrés de champ horizontal et 80 degrés de vertical. Il est installé sur une boule sphérique qui détecte ses mouvements via des capteurs, un peu comme une trackball géante. Quand il marche, court ou tourne, ça se traduit directement en déplacements dans le jeu.
Et pour ceux qui se demandent comment un rat peut vraiment dégommer des monstres... Hé bien oui, car Viktor a même fabriqué un levier custom avec un encodeur rotatif que le rat actionne avec ses pattes pour faire feu. Donc oui, les rats tirent sur des démons avec leurs petites papattes !
Le nouveau setup modulaire V2 ( Source )
Pour motiver nos petits rongeurs gamers, y'a évidemment un système de récompense. À chaque action réussie, le système distribue 10 microlitres d'eau sucrée via un solénoïde. C'est pas grand-chose mais pour un rat, c'est le graal. Au bout de deux semaines d'entraînement environ, les rats Todd, Kojima et Gabe (oui, ils ont des noms de légendes du jeu vidéo, on adore l'humour des chercheurs) ont réussi à naviguer dans l'environnement virtuel. Et là, ils ont même appris à déclencher le mécanisme de tir.
Bon, faut être honnête, ils n'ont pas encore terminé le jeu. L'équipe explique que les rats ont vieilli avant de pouvoir passer à l'entraînement avancé. Du coup, c'est plus une preuve de concept qu'un speedrun, mais quand même, c'est impressionnant. On est loin du simple contrôle neuronal de base, là car c'est une vraie interaction avec un moteur de jeu.
Setup V1 du projet Rats Play DOOM ( Source )
Côté technique, tout tourne sur un combo Raspberry Pi pour l'acquisition des capteurs en temps réel, et un PC qui fait tourner une version modifiée de ViZDoom. Le tout communique en TCP et hop, c'est géré par un script Python central. Et comme si ça suffisait pas, le projet est entièrement open source. Vous pouvez récupérer le code, les schémas électroniques et même les fichiers 3D pour imprimer les pièces sur le repo GitHub. Donc si vous avez un rat de compagnie et beaucoup trop de temps libre...
Le projet en est à sa deuxième version. Cette V2 est plus modulaire, avec des composants imprimables en 3D et une électronique plus fiable. C'est typiquement le genre de bidouille qui me rappelle pourquoi j'aime tant farfouiller dans les projets Raspberry Pi les plus improbables ^^.
D'ailleurs, si vous êtes fan de portages improbables, vous vous souvenez peut-être de cet article sur DOOM Retro , mais là avec les rats, on est clairement passé au niveau supérieur.
Bref, on vit vraiment une époque formidable où des gens financent des projets pour apprendre à des rats à buter des démons en VR. Et j'adore l'idée !
Youssef Sammouda, un chercheur en sécurité connu sous le pseudo sam0, vient de publier un article détaillant pas moins de 4 vulnérabilités de type XS-Leaks qu'il a découvertes chez Meta. Pour vous la faire courte, ce genre de faille permet à un site malveillant de déduire des informations sur vous sans même avoir besoin de pirater quoi que ce soit. Heureusement, tout a été patché depuis !
La première faille concernait Workplace (la version entreprise de Facebook) et son intégration avec Zoom. En gros, un attaquant pouvait créer une page web qui chargeait le callback Zoom de Workplace dans une iframe, et selon que l'utilisateur était connecté ou non à Meta Work, la redirection se comportait différemment. Et là, pouf, l'attaquant savait si vous étiez un utilisateur Meta Work. Pas besoin d'accéder à vos données, juste de mesurer combien de temps met une redirection. Vicieux, non ? Meta a casqué 2 400 dollars pour cette trouvaille.
La deuxième faille, c'était le bon vieux bouton Like de Facebook. Vous savez, ce petit widget qu'on trouve sur des millions de sites web ? Eh bien si vous étiez connecté à Facebook, le plugin pouvait révéler si vous aviez liké une page spécifique ou pas. Un attaquant n'avait qu'à mesurer le nombre de frames dans l'iframe pour le savoir. Encore 2 400 dollars dans la poche de notre chercheur.
La troisième était plus technique et bien trouvée. Le fichier signals/iwl.js de Facebook utilise Object.prototype pour ses opérations. En manipulant ce prototype depuis la page parente, un attaquant pouvait provoquer des erreurs différentes selon l'état de connexion de l'utilisateur, et même récupérer son ID Facebook. Ça, ça valait 3 600 dollars.
Et voilà, la quatrième concernait l'identification des employés Meta eux-mêmes via les domaines internes. Celle-là n'a pas rapporté de bounty (juste un "informative"), mais elle montre bien l'étendue du problème.
Au total, Youssef a empoché 8 400 dollars entre décembre 2024 et mai 2025, le temps que Meta corrige tout ça. Alors oui, c'est cool que ces failles soient maintenant corrigées mais ça fait quand même réfléchir sur la quantité de données qui peuvent fuiter sans même qu'on s'en rende compte.
Pour ceux qui veulent creuser le fonctionnement des programmes de bug bounty , c'est vraiment un système génial et hyper vertueux où tout le monde est gagnant. Les chercheurs sont payés pour trouver des failles, les entreprises patchent avant que les méchants n'exploitent. Y'a vraiment de quoi faire dans ce domaine.
Bref, bien joué Youssef Sammouda, grâce à lui quelques failles de moins chez Meta, et ça c'est cool !
TikTok vient de lâcher une info qui va faire grincer des dents tous ceux qui comme moi tiennent à leur vie privée. Le réseau social chinois va prochainement déployer dans l'Union européenne une nouvelle technologie d'intelligence artificielle dont le but est d'estimer si un compte appartient à un utilisateur de moins de 13 ans en analysant... votre comportement.
Fini le simple formulaire où l'on tape une date de naissance bidon, TikTok passe à la vitesse supérieure sous la pression des régulateurs européens. Le système va donc scanner vos infos de profil, les vidéos que vous postez, mais surtout des "signaux comportementaux".
En gros, l'algorithme va analyser comment vous interagissez avec l'app pour prédire votre tranche d'âge. Mais rassurez-vous, si l'IA vous siffle parce qu'elle pense que vous n'avez pas l'âge requis, votre compte ne sera pas banni instantanément, mais envoyé à des modérateurs humains spécialisés là dedans pour une vérification manuelle.
Après même si ça part d'une bonne intention, l'enfer en est pavé et le souci ici c'est que l'analyse comportementale sera constante. Donc si vous avez des centres d'intérêt un peu "jeunes" ou si vous utilisez l'app d'une certaine manière, vous pourriez vous retrouver flaggé par erreur. À l'inverse, un gamin un peu malin pourrait adopter un comportement "adulte" pour passer sous les radars. C'est le jeu du chat et de la souris, mais avec vos données personnelles comme mise de départ.
Et quid de la confidentialité ? Même si TikTok a travaillé en concertation avec la Commission irlandaise de protection des données (DPC) pour que le système respecte les règles de l'UE, ByteDance reste sous surveillance étroite. Je me demande où seront stockés ces signaux comportementaux et surtout à quoi ils serviront d'autre ? De mon point de vue, le risque de dérive vers un profilage publicitaire encore plus intrusif est réel avec ce genre de process...
Maintenant, si votre compte est bloqué et que vous voulez contester, TikTok proposera plusieurs options de confirmation d'âge en backup tels que :
En tout cas, je trouve marrant que pour "protéger les mineurs", on finisse toujours par demander encore plus de données biométriques ou bancaires à tout le monde. Données qui vont encore se retrouver sur BreachForums ou je ne sais où d'ici quelques années...
Le marché des batteries externes est devenu une véritable jungle où il est parfois compliqué de distinguer l'innovation du simple gadget marketing. Pourtant, de temps en temps, un produit arrive sur mon bureau et coche absolument toutes les cases, au point de rendre obsolète tout ce que j'ai pu utiliser auparavant.
C'est exactement le cas de la KUXIU S3 , une batterie magnétique de 10 000 mAh qui ne se contente pas de recharger votre téléphone, mais qui embarque les toutes dernières technologies comme le Qi2.2 et surtout une conception "Solid-State" franchement rassurante. Si vous cherchiez le compagnon de route idéal pour vos iPhone 16, 17 ou même votre iPad, vous pouvez arrêter vos recherches ici, c’est la batterie externe ultime.
La première chose à noter avec cette KUXIU S3, c'est donc l'intégration de la technologie de batterie à l'état semi-solide. Pour faire simple, contrairement aux batteries lithium-ion classiques qui contiennent un électrolyte liquide potentiellement instable, celle-ci utilise une structure semi-solide. Concrètement, ça veut dire une densité énergétique bien supérieure, une meilleure dissipation de la chaleur et surtout une sécurité améliorée face aux risques de gonflement ou d'incendie. C'est un argument de poids si vous voyagez souvent ou si vous êtes du genre à laisser votre batterie au fond d'un sac en plein été. En plus, cette technologie permet de tripler la durée de vie de l'accessoire, promettant plus de 1000 cycles de charge, là où la concurrence s'essouffle parfois après 300 ou 400 cycles. C'est un investissement sur la durée, et c'est exactement ce qu'on attend d'un bon accessoire tech.
Là où la KUXIU S3 met aussi tout le monde d'accord, c'est sur la vitesse de charge. Elle est l'une des rares sur le marché à être certifiée Qi2.2, ce qui lui permet de délivrer une puissance de 25W en sans-fil pour les derniers smartphones comme les iPhones récents. C'est assez simplement fou de voir enfin la jauge de batterie remonter aussi vite sans aucun câble branché, atteignant des performances quasi similaires à une charge filaire classique. Bien entendu, si vous avez un modèle plus ancien comme un iPhone 12 ou 15, elle s'adaptera parfaitement en 15W, ce qui reste très confortable. La force des aimants N52 assure que le téléphone reste littéralement collé à la batterie.
L'ergonomie a également été pensée pour ceux qui, comme moi, détestent s'encombrer de câbles qui traînent. La S3 intègre un câble USB-C tressé directement dans son châssis, qui sert non seulement à recharger la batterie elle-même, mais aussi à délivrer jusqu'à 35W en sortie. C'est une puissance suffisante pour recharger très rapidement un iPhone, mais aussi pour donner un sérieux coup de boost à un iPad Pro ou même dépanner un MacBook Air en cas d'urgence. Ce câble est robuste, détachable si besoin d’en brancher un plus long ou avec une connectique différente, et se range discrètement sur le côté, ce qui rend l'ensemble incroyablement compact et facile à glisser dans une poche de veste. Il y a aussi un port USB-C en plus pour brancher un second câble, ou recharge la batterie.
En plus de la puissance brute, ce sont les petits détails qui rendent l'utilisation de cette batterie si agréable au quotidien. Vous allez aimer l'écran numérique situé sur la tranche inférieure, qui affiche clairement le pourcentage exact de batterie restante. C'est fini le temps où l'on devait deviner l'autonomie restante avec quatre petites LED à la con. KUXIU a aussi eu la bonne idée d'intégrer un pied rétractable au dos de l'appareil. Ce qui transforme votre batterie en un support idéal pour regarder une série dans le train ou passer un appel vidéo en mode portrait ou paysage, tout en continuant à charger votre smartphone à pleine vitesse.
En termes d'autonomie pure, les 10 000 mAh sont largement suffisants pour les journées les plus intenses. Lors de mes tests, j'ai pu recharger complètement un iPhone Pro et avoir encore assez de jus pour une recharge partielle supplémentaire, atteignant presque les deux charges complètes selon les modèles. Le tout est contenu dans un format qui, bien que légèrement plus épais qu'un modèle de 5000 mAh, reste très contenu grâce à la densité de la technologie Solid-State. Le tout respire la qualité de fabrication et la solidité.
(Oui carrément)
Bref, vous l’avez compris, cette KUXIU S3 s'impose comme une référence incontournable pour quiconque souhaite profiter des vitesses de charge maximales offertes par les smartphones modernes. Entre sa technologie de batterie sécurisée et durable, sa charge sans fil ultra-rapide de 25W, son câble intégré polyvalent et son écran de contrôle précis, elle ne fait aucun compromis. C'est un produit mature, bien fini et terriblement efficace qui justifie largement son prix sous les 60 euros. Je vous la recommande donc les yeux fermés, et elle est disponible en promo sur Amazon en plus .
Article invité publié par Vincent Lautier . Vous pouvez aussi faire un saut sur mon blog , ma page de recommandations Amazon , ou lire tous les tests que je publie dans la catégorie "Gadgets Tech" , comme cette liseuse Android de dingue ou ces AirTags pour Android !
Vous vous souvenez de Top Gun sur NES ? Ce jeu culte des années 80 où vous incarniez Maverick dans des combats aériens endiablés ? Hé bien si vous y avez joué, vous avez forcément vécu LE traumatisme du jeu : l'atterrissage sur le porte-avions.
Je ne sais pas combien de manettes ont été explosées à cause de cette séquence de torture, mais ça doit se compter en millions. Vous avez beau suivre les instructions à l'écran "Alt. 200 / Speed 288", faire exactement ce qu'on vous dit, et PAF... crash. Retour à la case départ.
Toutefois, c'était sans compter sur ce développeur qui a eu la bonne idée de faire du reverse engineering sur le code assembleur du jeu pour comprendre ce qui se passait vraiment derrière cette mécanique diabolique.
Et en fouillant dans les entrailles du code NES, il a découvert que pour réussir l'atterrissage, il fallait respecter 3 critères simultanément. D'après l'analyse du code, l'altitude doit être entre 100 et 299 (une plage plutôt large, ouf), la vitesse entre 238 et 337 (déjà plus serré), et surtout l'alignement latéral avec le porte-avions qui est lui ultra strict. Et c'est là que ça devient chaud, parce que ce dernier paramètre, on ne le voit pas à l'écran. Vous pouvez avoir l'altitude parfaite et la vitesse au poil, si vous êtes décalé de quelques pixels à gauche ou à droite, c'est muerto pépito.
La direction est stockée en mémoire comme un entier signé allant de -32 à +32, puis convertie en une plage de 0 à 7. Autant dire que la marge d'erreur est ridicule...
Le plus intéressant dans son reverse, c'est de voir comment le code vérifie tout ça. La fonction "landing_skill_check" fait des vérifications séquentielles super basiques avec des codes d'erreur du genre : Altitude hors limites ? Code d'erreur 2. Vitesse hors limites ? Code 4. Direction hors limites ? Code 8.
Et ces codes d'erreur déterminent même l'animation de crash que vous allez voir. Du coup, si vous crashez souvent de la même façon, c'est probablement toujours le même paramètre qui foire.
Les valeurs sont stockées en BCD (Binary Coded Decimal) pour faciliter l'affichage à l'écran, et on peut les trouver aux adresses $40-$41 pour la vitesse, $3D-$3E pour l'altitude, et $FD pour la direction. Le résultat de la vérification se retrouve à l'adresse $9E. Voilà, maintenant vous savez où regarder si vous voulez tricher avec un émulateur .
D'ailleurs, en parlant de triche, l'auteur de cette analyse a même créé un code Game Genie spécifique pour contourner toute cette galère : AEPETA. Tapez ça et vous atterrirez à tous les coups, peu importe à quel point vous pilotez comme un manche.
Bref, voilà un mystère de 35 ans enfin résolu grâce au reverse engineering. Et si vous voulez vous replonger dans cette torture en connaissance de cause, vous savez maintenant que c'est probablement l'alignement qui vous a eu, pas votre skill.
Après l'attaque massive de septembre 2025 qui a vérolé 18 packages ultra-populaires (coucou
debug et chalk
) et la campagne
Shai-Hulud
2.0 qui a siphonné les credentials cloud de 25 000 dépôts GitHub, on peut le dire, on est officiellement dans la sauce. Surtout si vous êtes du genre à faire un npm install comme on traverse l'autoroute les yeux bandés ! Il est donc temps de changer vos habitudes parce qu'entre les crypto-stealers qui vident vos portefeuilles en 2 heures et les malwares qui exfiltrent vos clés AWS, l'écosystème JavaScript ressemble de plus en plus à un champ de mines.
Le rayon d'action de la campagne Shai-Hulud 2.0 - une véritable moisson de secrets ( Source )
D'ailleurs, beaucoup se demandent comment savoir si un package npm est vraiment sûr. Et la réponse classique, c'est de lire le code de toutes les dépendances. Ahahaha... personne ne fait ça, soyons réalistes. Du coup, on se base sur la popularité, sauf que c'est justement ce qu'exploitent les attaques supply chain en ciblant les mainteneurs les plus influents pour injecter leurs saloperies.
C'est là qu'intervient safe-npm , une petite pépite qui va vous éviter bien des sueurs froides. Cela consiste à ne jamais installer une version de package publiée depuis moins de 90 jours. Pourquoi ? Parce que l'Histoire nous apprend que la plupart des compromissions massives sont détectées et signalées par la communauté dans les premiers jours ou semaines. Ainsi, en imposant ce délai de "quarantaine", vous laissez aux experts en sécurité le temps de faire le ménage avant que le malware n'arrive sur votre bécane.
Et hop, un souci en moins !
La supply chain npm, le nouveau terrain de jeu préféré des attaquants ( Source )
Concrètement, si vous voulez react@^18 et que la version 18.5.0 est sortie hier, safe-npm va poliment l'ignorer et installer la version précédente ayant passé le test des 90 jours.
Pour l'installer, c'est du classique :
npm install -g @dendronhq/safe-npm
Ensuite, vous l'utilisez à la place de votre commande habituelle. L'outil propose des options bien pratiques comme --min-age-days pour ajuster le délai, --ignore pour les packages que vous savez sains (ou critiques), et surtout un mode --strict parfait pour votre CI afin de bloquer tout build qui tenterait d'importer du code trop frais pour être honnête. Y'a même un --dry-run pour voir ce qui se passerait sans rien casser, c'est nickel.
Alors oui, ça veut dire que vous n'aurez pas la toute dernière feature à la mode dès la première seconde. Mais bon, entre avoir une nouvelle icône dans une lib de CSS et voir son compte AWS se faire siphonner par un groupe de hackers russes, le choix est vite fait, non ? Perso, je préfère largement ce filet de sécurité, surtout quand on voit que les attaquants utilisent maintenant Gemini ou Qwen pour réécrire leur code malveillant à la volée afin d'échapper aux antivirus.
Bien sûr, ça ne remplace pas un bon scanner de malware spécifique ou une lecture attentive des vulnérabilités, mais c'est une couche de protection supplémentaire qui coûte rien et qui peut sauver votre boîte. À coupler d'urgence avec les recommandations de la CISA comme la MFA résistante au phishing et la rotation régulière de vos credentials.
Bref, si vous voulez kiffer votre code sans avoir l'impression de jouer à la roulette russe à chaque dépendance ajoutée, safe-npm est clairement un indispensable à rajouter dans votre caisse à outils de dev paranoïaque.
Allez sur ce, codez bien et restez prudents (et gardez un œil sur vos backdoors générées par IA , on sait jamais ^^).