Vue normale

Top Gun NES - Le mystère de l'atterrissage sur porte-avions enfin résolu

Par : Korben
16 janvier 2026 à 11:15

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.

Source

En finir avec l'enshittification en légalisant le reverse-engineering

Par : Korben
12 janvier 2026 à 10:59

Bon, je vais être direct : le reverse-engineering devrait être légal, point barre. Et tant mieux si quelqu'un d'aussi influent que Cory Doctorow le gueule dans le Guardian !

Pour ceux qui débarquent, le reverse-engineering c'est le fait de désosser un logiciel ou un appareil pour comprendre comment il fonctionne. Pas pour le pirater, hein, mais pour réparer, améliorer ou simplement vérifier qu'on ne se fait pas arnaquer. Et c'est là que ça devient un peu compliqué, parce que dans plein de pays, c'est illégal.

Doctorow rattache ça au phénomène d'"enshittification" (oui, le terme est volontairement moche... On pourrait traduire ça par "l'emmerdification"). C'est ce phénomène bien pénible où les entreprises dégradent progressivement leurs produits pour vous forcer à payer plus ou à racheter du neuf. Votre imprimante qui refuse les cartouches compatibles ? Enshittification. Votre tracteur John Deere qui vous interdit de le réparer vous-même ? Enshittification. Les onduleurs solaires chinois avec des kill switches à distance ? Enshittification + un peu de parano ^^.

Le truc, c'est que les lois anti-contournement comme le DMCA américain protègent ces pratiques. Du coup, même si vous avez acheté un machin, vous n'avez pas vraiment le droit de regarder sous le capot.

Mais bonne nouvelle pour nous autres Européens, l'article 6 de la directive européenne sur les logiciels autorise la décompilation pour assurer l'interopérabilité. Si ça c'est pas une nouvelle preuve que l'Europe est supérieure aux Etats-Unis, j'sais pas ce que c'est ^^.

En France par exemple, l'article L. 122-6-1 du Code de la propriété intellectuelle va même plus loin puisqu'il est impossible pour un éditeur d'interdire contractuellement ce droit. Autrement dit, même si c'est écrit dans les CGU, c'est nul et non avenu.

Par contre, le Royaume-Uni post-Brexit, c'est une autre histoire mais Doctorow y voit plutôt une opportunité. En effet, comme le Royaume-Uni est libéré des contraintes de l'harmonisation européenne, le pays pourrait assouplir ses lois plus rapidement que l'UE et devenir un hub du reverse-engineering légal. À condition évidemment de ne pas céder aux lobbys tech américains qui poussent dans l'autre sens.

Alors certains d'entre vous pourraient se demander : Ça sert à quoi de pouvoir reverse-engineerer ses appareils ?

Hé bien, ça sert par exemple à découvrir que votre thermostat "intelligent" envoie vos données à des serveurs douteux. Ou à réparer votre tracteur sans attendre 3 semaines un technicien agréé qui vous fera payer une fortune un truc dérisoire. Ou encore à vérifier que l'onduleur solaire sur votre toit n'a pas une backdoor exploitable par n'importe qui. De plus, des outils comme ReverserAI rendent ce genre d'analyse de plus en plus accessible, même sans être un expert en assembleur. Et ça c'est cool !

Le combat de Doctorow, c'est donc de faire sauter ces verrous juridiques qui protègent l'obsolescence programmée au détriment des consommateurs. Et franchement, quand on voit l'état du marché tech actuel, c'est pas du luxe, je trouve.

Bref, si vous voulez comprendre pourquoi votre grille-pain connecté vous espionne, au moins en Europe, vous avez théoriquement le droit de le découvrir. C'est déjà ça. Force à nos amis anglais et américains qui sont encore plus maltraités par les sociétés qui verrouillent leurs appareils, que nous.

Mailspring - L'alternative open source à Outlook qui ne vole pas vos mots de passe

Par : Korben
10 janvier 2026 à 09:00

Bon, si vous faites partie de ceux qui ont la boule au ventre en lançant le nouveau Outlook de Microsoft, j'ai une petite trouvaille pour vous. En fait, vous ne le savez pas encore mais vos identifiants IMAP partent en vacances sur les serveurs de Redmond. Ouais, Heise Online a levé le lièvre y'a quelques temps maintenant et ça fait pas plaisir. Un peu comme quand Apple avait ses petits soucis avec OCSP , mais en plus brutal.

On va pas se mentir, Thunderbird c'est le patron. C'est libre, c'est robuste, c'est la référence pour chiffrer ses mails . Mais bon... faut avouer qu'il a parfois une tronche à avoir connu Windows 98 (même si ça s'améliore, je vous vois venir les puristes !). Du coup, si vous cherchez un truc qui a de la gueule sans vendre votre âme, jetez un œil à Mailspring.

L'interface est propre, non ? ( Source )

Mailspring, c'est un client mail open source (GPLv3) qui tourne sur Mac, Windows et Linux. Pour la petite histoire, c'est le successeur spirituel de Nylas Mail. Le développeur, Ben Gotow, a repris le bébé et a fait un gros ménage. Le moteur de synchro qui bouffait de la RAM comme un ogre ? Hop, réécrit en C++ (ça s'appelle Mailsync maintenant), du coup ça tourne nickel, c'est fluide et ça pompe pas toute votre batterie.

L'interface est super propre, codée en TypeScript avec Electron et React. Et là je vous entends : "Electron ? Pffff, ça va ramer !". Hé bien non les amis, et c'est justement grâce à ce fameux moteur C++. C'est ça qui est cool. En plus, tout se passe en local sur votre machine. Pas de cloud intermédiaire qui vient renifler vos mails pour vous cibler de pubs.

  • Gestion multi-comptes (IMAP, Gmail, Office 365, iCloud...)
  • Boîte de réception unifiée (le bonheur)
  • Recherche ultra rapide (vraiment)
  • Traduction intégrée
  • Signatures personnalisées

La recherche qui trouve tout en 2 secondes ( Source )

Y'a aussi une version Pro à 8 dollars par mois avec des trucs comme l'envoi différé ou les rappels, mais franchement, pour 99% des gens, la version gratuite suffira laaarge.

Voilà, si vous cherchez une alternative sexy à Outlook qui respecte votre vie privée, Mailspring est une option béton. C'est dispo en téléchargement sur leur site ou via vos gestionnaires de paquets préférés.

Source

Deux projets remettent la sobriété et la fiabilité au cœur du monitoring Linux

Alors que les solutions de monitoring serveur deviennent toujours plus complexes et dépendantes de stacks lourdes, deux projets open source (NdM: absence de licence) récents prennent le contre-pied de cette tendance : MonitorBox et Monitux. Leur objectif commun : revenir à un monitoring lisible, fiable et maîtrisable, pensé avant tout pour les administrateurs Linux.

    MonitorBox : réduire le bruit pour mieux gérer l’urgence

    MonitorBox part d’un constat largement partagé dans les équipes techniques : la multiplication des alertes engendre une fatigue des notifications, au point que les incidents critiques risquent d’être ignorés.
    Le projet introduit une logique volontairement simple mais efficace : réduction des faux positifs par vérifications successives, séparation claire entre alertes critiques et informationnelles, et retour d’un outil longtemps abandonné mais redoutablement efficace : le pager (bipper).

    En complément des notifications classiques, MonitorBox propose :

    • une interface terminal pensée pour l’exploitation,
    • un dashboard web léger,
    • et une alerte matérielle dédiée pour les situations réellement urgentes.

    Le projet assume une philosophie pragmatique : mieux vaut peu d’alertes fiables que beaucoup d’alertes ignorées.

    Code source : https://github.com/simple-group/MonitorBox
    Présentation : https://www.ihaveto.be/2026/01/pourquoi-jai-ressuscite-le-pager-des.html

    Monitux : un monitoring “zero-dependency” pour réduire la surface d’attaque

    Monitux s’inscrit dans une démarche encore plus radicale de sobriété technique. Le projet se définit comme un outil de monitoring serveur sans base de données, sans langage interprété (PHP, Python, Node.js), et sans dépendances externes.

    Il repose exclusivement sur :

    • les outils natifs GNU/Linux (top, df, ss, systemd…), un affichage web minimaliste, et une protection d’accès via les mécanismes standards d’Apache (.htaccess / .htpasswd).

    Ce choix permet de limiter fortement la surface d’attaque, de simplifier l’installation et de garantir une excellente lisibilité du code. Monitux se destine particulièrement aux environnements où la stabilité, la sécurité et la compréhension priment sur la sophistication fonctionnelle.

    Code source : https://github.com/simple-group/Monitux/
    Présentation : https://www.ihaveto.be/2025/12/monitux-le-monitoring-serveur-revient.html

    Une même philosophie : simplicité, contrôle et responsabilité

    Bien que différents dans leur approche, MonitorBox et Monitux partagent une vision commune :
    le monitoring ne doit pas devenir une boîte noire, ni un empilement de dépendances difficile à auditer. Ces projets s’adressent aux administrateurs et équipes techniques qui souhaitent reprendre le contrôle, réduire la complexité et privilégier des outils compréhensibles, durables et open source.

    Les deux projets sont publiés sous licence libre et ouverts aux contributions.

    NdM: aucune licence n'est mentionnée sur les deux projets en question, qui ne sont donc pas libres en l'état.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Magic: The Gathering pourrait chambouler son univers avec une Liliana en blanc

    20 décembre 2025 à 19:13

    Une histoire pré-sortie pour l’extension Lorwyn: Eclipsed de Magic: The Gathering semble annoncer un bouleversement majeur dans la mythologie du jeu de cartes à collectionner. L’épisode 7 (rédigé par Seanan McGuire) poursuit les aventures de Tam, étudiante de Strixhaven blessée après avoir rencontré des difficultés sur Lorwyn. Elle est finalement secourue par les planeswalkers Oko ... Lire plus

    L'article Magic: The Gathering pourrait chambouler son univers avec une Liliana en blanc est apparu en premier sur Fredzone.

    Réseaux sociaux professionnels, nouvelles armes d’ingérence

    9 décembre 2025 à 09:37
    Faux investisseurs, mécénats fictifs, faux collègues : comment les réseaux sociaux professionnels deviennent un enjeu d’ingérence et de renseignement.

    Test Manipulation Analyser : pour s’entraîner à détecter l’ingénierie sociale

    12 novembre 2025 à 10:41
    Test Manipulation Analyser : un outil pédagogique pour repérer le langage manipulateur, s’entraîner à l’ingénierie sociale et renforcer ses réflexes de défense....

    Test Manipulation Analyser : l’outil ZATAZ pour s’entraîner à détecter l’ingénierie sociale

    6 novembre 2025 à 14:26
    Test Manipulation Analyser de ZATAZ : un outil pédagogique pour repérer le langage manipulateur, s’entraîner à l’ingénierie sociale et renforcer ses réflexes de défense....

    Pulse : monitoring Docker (et Proxmox)

    Par : Aerya
    25 octobre 2025 à 07:40

    Merci Holaf pour la découverte.

    Je n’ai plus de Proxmox depuis des années à la maison, je le teste avec Docker : Ubuntu, Synology et UNRAiD.

    Ça fait penser à Beszel mais en plus puissant et complet bien entendu.

    Pulse s’utilise en toute logique avec un serveur et des agents. Le tout s’installe en Docker ou en dur.

    C’est très musclé et sécurisé, ça permet la découverte de réseaux pour ajouter des nodes Proxmox notamment. Je l’utilise de manière très simple pour ce test :

    services:
      pulse:
        image: rcourtman/pulse:latest
        container_name: pulse_serveur
        ports:
          - 7655:7655
        volumes:
          - /mnt/user/appdata/pulse:/data
        restart: always

    On peut ensuite définir un compte d’accès

    pulse
    pulse1
    pulse2

    Je souhaite ajouter des clients Docker

    pulse3

    Il faudra pour ça générer un token par client

    pulse4
    pulse5

    Et tout est ensuite expliqué pour l’installer ou le retirer. C’est très bien fait.

    pulse6

    Mais pour ma machine sous UNRAiD je préfère passer par un container Docker

    docker run -d \
      --name pulse-docker-agent \
      -e PULSE_URL="http://192.168.0.195:7655" \
      -e PULSE_TOKEN="a297b11d70d16c15e4eb9241ace555a19bff4279c98ffaa92de5bd9d0bc9bab7" \
      -e PULSE_TARGETS="http://192.168.0.195:7655|a297b11d70d16c15e4eb9241ace555a19bff4279c98ffaa92de5bd9d0bc9bab7" \
      -v /var/run/docker.sock:/var/run/docker.sock \
      --restart always \
      ghcr.io/rcourtman/pulse-docker-agent:latest

    Et je l’ai tout de suite dans ma liste de clients

    pulse7
    pulse8
    pulse9

    Pour un NAS Synology je passe aussi par Docker. En revanche je suis leur recommandation pour ajouter un client sur la machine Ubuntu.

    curl -fsSL http://192.168.0.195:7655/install-docker-agent.sh | bash -s -- --url http://192.168.0.195:7655 --token bc6f2c3e562d5c030a1b2b925a6f145050e214359542b3670a79a4a94a971c18

    root@StreamBox:/home/aerya# curl -fsSL http://192.168.0.195:7655/install-docker-agent.sh | bash -s -- --url http://192.168.0.195:7655 --token bc6f2c3e562d5c030a1b2b925a6f145050e214359542b3670a79a4a94a971c18
    
    == Pulse Docker Agent Installer ==
    [INFO] Primary Pulse URL : http://192.168.0.195:7655
    [INFO] Install path      : /usr/local/bin/pulse-docker-agent
    [INFO] Log directory     : /var/log/pulse-docker-agent
    [INFO] Reporting interval: 30s
    [INFO] API token         : provided
    [INFO] Docker host ID    : cf13d13b-a0e2-4bc6-b755-2535f80b4932
    [INFO] Targets:
    [INFO]   • http://192.168.0.195:7655
    
    [INFO] Downloading agent binary
    /usr/local/bin/pulse-docker-agent                                                          100%[=======================================================================================================================================================================================================================================>]   6.85M  --.-KB/s    in 0.03s   
    [ OK ] Agent binary installed
    [ OK ] Cleared any previous stop block for host
    
    == Configuring systemd service ==
    [ OK ] Wrote unit file: /etc/systemd/system/pulse-docker-agent.service
    [INFO] Starting service
    Created symlink /etc/systemd/system/multi-user.target.wants/pulse-docker-agent.service → /etc/systemd/system/pulse-docker-agent.service.
    
    == Installation complete ==
    [INFO] Agent service enabled and started
    [INFO] Check status          : systemctl status pulse-docker-agent
    [INFO] Follow logs           : journalctl -u pulse-docker-agent -f
    [INFO] Host visible in Pulse : ~30 seconds

    Et j’ai bien mes 3 clients

    pulse10
    pulse11

    Pulse est un outil sécurisé, très simple, très beau, trés complet, très léger. J’adopte !

    Loading

    Pulse : Le monitoring Proxmox qui ne perd pas le rythme

    Par : Cédric
    18 octobre 2025 à 17:47
    Bon week-end à tous… enfin, presque ! Parce qu’ici, on n’est pas là pour enfiler des perles, mais pour garder le rythme – celui que j’ai tenté de reprendre depuis quelques jours avec vBlog.io ! Quoi de mieux, d’ailleurs, que de découvrir un petit outil open source qui a du flow ? ^^

    Pulse : Surveillance en temps réel pour Proxmox

    Par : fred
    25 septembre 2025 à 16:00
    Pulse est une solution de supervision centralisée permettant de suivre en temps réel l’ensemble d’une infrastructure Proxmox VE et PBS depuis un tableau de bord unique. L’outil envoie des alertes instantanées en cas de panne de nœud, d’échec de sauvegarde ou de saturation de stockage. Les notifications sont compatibles avec email, Discord, Slack, Telegram et […]
    ❌