Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

Clash of Clans 2012 - La version disparue est rejouable en ligne

Par : Korben ✨
25 juin 2026 à 17:32

C'est triste mais la toute première version de Clash of Clans, celle de 2012, n'était plus jouable nulle part depuis longtemps. En effet, les serveurs officiels rejettent ses vieilles connexions depuis des années, et donc plus personne ne pouvait y remettre les pieds.

Mais c'était sans compter sur Mike, le dev derrière Atrasis Retro et fidèle lecteur de Korben.info, qui vient de ressusciter l'app ! Et, oh magie de l'internet, vous pouvez y rejouer direct depuis votre navigateur, maintenant là tout de suite, sans rien avoir à télécharger.

Vous cliquez ici et hop, vous voilà dans le village originel tel qu'il était il y a maintenant plus de dix ans. Bien sûr, tout cela représente un boulot de dingue puisque Mike est parti d'un seul artefact, un binaire iOS de 4 Mo compilé en ARMv7 32 bits en 2012. Il l'a décompilé à coups d'IDA, traduit instruction par instruction en C++ au moment de la compilation (et pas à l'exécution, pour avoir zéro perte de perf), réimplémenté tout l'environnement iOS autour (UIKit, OpenGL ES, les sockets...etc.), puis recompilé le tout en WebAssembly pour que ça tienne dans un seul onglet.

Le mec est fou !

Et comme les serveurs officiels de Supercell envoient bouler les vieilles connexions en v1.70, il a carrément reconstruit un serveur compatible de zéro lui aussi, en C#, qui parle le même protocole réseau d'origine (c'est du RC4 sur TCP) et qui rejoue la même synchronisation déterministe que le jeu de l'époque. Résultat, vous vous retrouvez avec le jeu de 2012 dans son jus, avec les classements et les batailles multijoueur. Que du bonheur quoi !

Pour moi, c'est dans le même esprit que le port natif de Twilight Princess dont je vous parlais, que ce Zelda 64 recompilé , ou que l'outil de recompilation de ROMs que je suis en train de faire. Prendre un vieux binaire et le faire revivre par la recompilation plutôt que par l'émulation, moi j'adore !! Puis pour une fois, c'est pas un classique de Nintendo vu et revu mais quand même l'un des plus gros hits mobiles de l'histoire du smartphone. C'est une vraie capsule temporelle pour tous les anciens jeunes que vous êtes, loool. (Moi je suis toujours jeune, me faites pas chier ^^)

Maintenant, faut quand même que je précise un truc, et Mike est le premier à le dire... Son portage embarque évidemment les ressources du jeu de Supercell. On n'est donc pas du tout sur du "juridiquement" blindé. De plus, Supercell interdit noir sur blanc les serveurs privés dans sa fan content policy , et la boîte a déjà dégainé des DMCA contre des projets qui touchaient à son code. Donc autant en profiter tant que ça tourne en eau de boudin...

Ou alors Supercell se dit que son jeu a bien vécu et que ce portage leur fait une jolie pub gratuite et n'est aucunement une nuisance pour eux. Bah quoi, ce serait bien qu'un jour, les ayants droits aient un peu de souplesse sur ce genre de projets faits par des fans.

Bref, voilà, si vous avez connu Clash of Clans à ses débuts, allez y faire un tour, c'est gratuit et surtout, savourez l'instant car on ne sait jamais combien de temps ça va rester en ligne.

F-15 Strike Eagle II - Le simulateur de 1989 cherche des pilotes d'essai

Par : Korben ✨
21 juin 2026 à 12:27

Je ne me lasse jamais de tous ces projets qui ressuscitent des vieux jeux. Et celui dont je vais vous parler aujourd'hui, c'est à neuviemeporte qu'on le doit. Celui-ci s'est donné pour mission de reconstruire ligne de code par ligne de code, ce bon vieux F-15 Strike Eagle II, le simulateur de vol de combat sorti chez MicroProse en 1989. Et hier, le 20 juin dernier, le projet a passé un cap important puisque le portage est enfin jouable. Et son dev cherche maintenant des pilotes d'essai pour le mettre à l'épreuve.

Donc si ça vous chauffe, mes petits Maverick en herbe, faut récupérer les exécutables sur son dépôt, ensuite vous les balancez dans le dossier de votre copie du jeu à la place des originaux (faites un backup avant, hein) et vous décollez !! Et si ça plante, si un truc s'affiche de travers, si une touche ne répond plus, vous lui remontez le bug, tout simplement.

Je reconnais quand même que le boulot derrière, est dingue car ce n'est ni une émulation ni une recompilation à partir d'un code source volé. neuviemeporte a vraiment désassemblé le binaire de 1989, réécrit chaque morceau en C, et recompilé tout ça. Puis ensuite, il a comparé les instructions machine produites avec celles du jeu original et tant que les opcodes n'arrivent pas identiques au bit près, c'est que la reconstruction est faussée. Alors il recommence et ainsi de suite ! Je ne sais pas s'il utilise l'IA pour ça mais je lui conseille fortement afin d'automatiser au maximum tout ce travail de débugging. C'est exactement ce que je suis en train de faire avec mon recompilateur de Roms et à la main, ça me prendrait facile 10 ans, je crois...

Le plus fou, c'est qu'il a d'abord dû retrouver quel compilateur MicroProse utilisait à l'époque. Il a fait des recherches sur certaines chaînes de caractères présentes dans le code et il est tombé au fond de l'exécutable sur celle-ci : "MS Run-Time Library - Copyright (c) 1988, Microsoft Corp". Verdict, c'est du Microsoft C 5.1. Et sans ce détail, il n'avait aucune chance de générer exactement la même séquence d'instructions que le binaire d'origine.

Et puis il y a ce petit détail que j'adore... En fait, le mec fait une reconstruction "bug-for-bug". En gros, les bugs du jeu de 1989 doivent rester. Ainsi, si dans la version originale votre avion se met à tomber vers le ciel quand il est à l'envers et en panne de carburant, et bien il doit continuer à tomber vers le ciel... Même comportement, mêmes défauts, mêmes sensations qu'à l'époque.

Mais alors, d'où ça lui vient, cette obsession ?

Eh bien comme nous tous, de ses jeunes années de passion dévorante avec l'informatique, quand il était scotché à son premier 386 et qu'il a découvert là son premier monde ouvert sur son ordinateur. Et ce truc lui est resté... Développeur C/C++ le jour, dingue de MS-DOS et de reverse engineering la nuit, comme il le résume lui-même sur son site. Il a lancé ce projet de recompilation en 2022 et avoue que le rythme actuel le dépasse un peu aujourd'hui...

Mais c'est ce genre de "missions de vie" qui a déjà sauvé d'autres classiques. Je pense par exemple à Mario 64 qui a été décompilé au point de tourner aujourd'hui dans un navigateur , et plein de vieux jeux DOS ne survivent que parce que des passionnés s'en occupent un par un, un peu comme l'ont fait les ancêtres nés avant l'an 2000 (je me mets dans le lot, 1982 FTW! les gars !).

Un petit mot quand même pour les futurs testeurs, parce que ce n'est pas tout à fait du plug-and-play... La version reconstruite ne passe pas par l'écran de configuration d'origine car elle part du principe que vous êtes en affichage MCGA/VGA, sans son et sans joystick. Donc pas la peine de régler votre Roland MT-32 virtuel, ça démarre direct au manche. Et pour signaler un souci, une capture via Ctrl+F5 dans DOSBox + une description de ce qui se passait avant le plantage et c'est réglé.

Voilà, si une copie traîne dans vos archives, allez voir son appel et reprenez les commandes.

RAMwavDroid - Et si on écoutait les malwares Android ?

Par : Korben ✨
15 juin 2026 à 12:15

Si vous faites un peu de reverse engineering sous Android, vous savez que les malwares modernes font absolument tout ce qu'ils peuvent pour planquer leurs mauvaises intentions, un peu comme vos parents toxiques... Code obfusqué, chargement dynamique, packing...etc, etc.

Mais c'était sans compter sur une équipe de chercheurs italiens menée par Giorgio Giacinto ont carrément changé de stratégie avec RAMwavDroid qui au lieu de désassembler le code , permet de le transformer en son et ensuite, laissent une IA l'écouter. Et cela permet d'obtenir un niveau de 98% de détection des malwares.

J'vous explique la sorcellerie de ce truc...

En effet, d'habitude, pour analyser une appli Android, on décompile l'APK et on récupère le code, notamment des fichiers smali, un équivalent lisible par un humain du code bas niveau Dalvik.

Mais avec leur RAMwavDroid, vous prenez le fichier, et chaque octet, qui vaut une valeur entre 0 et 255, devient directement une amplitude sonore. Pas de normalisation, ni de désassemblage mais simplement une forme d'onde, stockée dans un vrai fichier WAV ou MP3 + des réseaux de neurones qui apprennent à reconnaître la texture sonore d'un malware.

Le transformer utilisé, c'est Wav2Vec2, qui était même à la base entraîné sur de la voix humaine.

Comment RAMwavDroid transforme les octets d'une appli en forme d'onde

Mais alors pourquoi passer par le son ?

Hé bien parce que les antivirus classiques s'appuient sur le "sens" du programme, ses permissions, ses appels API, la structure de son code...etc. Or c'est exactement ça que les vrais malwares un peu filous brouillent pour passer entre les mailles. Alors que la texture brute des octets, elle, reste la même, peu importe l'habillage que son concepteur a donné à son malware.

Et ça, une oreille artificielle finit par le repérer.

Mais le vrai coup de génie c'est que plutôt que d'analyser le fichier au repos, RAMwavDroid lance l'appli dans un émulateur et prend un instantané de sa mémoire vive juste après le démarrage. Ça permet de parcourir les fichiers chargés en mémoire, les processus, et surtout le code que le packing a déjà déchiffré pour pouvoir s'exécuter. Cette analyse forensique de la mémoire fait alors grimper la précision de près de 94% en statique à jusqu'à 98% en dynamique.

Le spectrogramme d'une appli malveillante, vu comme un son

Sur un extrait de dataset de malwares utilisé pour leurs tests, composé de 600 applis (moitié saines moitié vérolées), RAMwavDroid tape jusqu'à 98% de bonnes réponses, avec dans sa meilleure configuration quasiment aucun faux positif.

Un faux positif, c'est quand il n'y a pas de malware, mais que l'antivirus clignote quand même en rouge, donc ça montre bien l'efficacité de leur technologie. On est au même niveau que VirusTotal qui fait bosser des dizaines de moteurs de détection en parallèle.

Bien sûr, c'est un résultat de laboratoire sur un échantillon limité d'apps, et le code source n'est pas encore disponible publiquement, donc on ne peut que les croire sur parole. Surtout que leur système fonctionne uniquement dans un émulateur (pour accéder à la RAM) et ça c'est un truc typique que les malwares sont capables de détecter... Donc bon, à voir...

En plus ce système se fait avoir par les applis bourrées de gros SDK légitimes qui noient également le signal, et par les malwares minimalistes trop simples pour faire du bruit. Bref, la robustesse face à l'obfuscation avancée, ce sera pour plus tard mais j'ai trouvé cette façon de faire plutôt originale.

Peut-être qu'à terme, les créateurs de malware mixeront leur binaire avec un MP3 de Jul ou Gims pour tromper ces futurs détecteurs audio ^^.

Source

PulseLoop libère les bagues connectées à 7 dollars

Par : Korben ✨
12 juin 2026 à 17:43

7 dollars, c'est le prix d'une bague connectée chinoise sur AliExpress, et c'est surtout tout ce que Saksham Bhutani a payé pour se bricoler un coach santé privé. Son truc s'appelle PulseLoop , et c'est une app iPhone open source qui transforme ce gadget à deux balles en tracker de fréquence cardiaque, de sommeil et d'activité, sans abonnement ni cloud à la con.

Le principe, c'est de prendre une bague avec capteurs vendue trois fois rien (la même qui traîne sur AliExpress sous le nom de SMART_RING et en un peu plus cher sur Amazon ) et de la débrancher complètement de son app d'origine, la fameuse JRING. À la place, vous clonez le projet, vous compilez ça dans Xcode, et hop, votre iPhone causera alors directement à la bague en Bluetooth.

Fréquence cardiaque, nombre de pas, calories brûlées et kilomètres sont relevés par la bague, ainsi que le parcours par le GPS du téléphone (si vous avez votre smartphone avec le GPS actif dans la poche), et tout est agrégé et stocké en local sur le téléphone et nulle part ailleurs.

Côté sommeil, on peut grâce à ça, suivre jour après jour la qualité de la nuit qu'on vient de passer et ainsi essayer d'atteindre plus de régularité pour améliorer son score de sommeil. Pour ma part, ce genre de trackers d'activité ne sont jamais restés bien longtemps à mon poignet, mais j'avoue que bidouiller le sien change un peu la donne et me fait reconsidérer la chose.

Et là où ça devient du vrai boulot de bidouilleur, c'est que rien de tout ça n'était documenté. Saksham a donc sorti Wireshark et un dongle Nordic nRF52840 pour renifler les échanges Bluetooth de la bague, puis il a tout reconstruit. Résultat, un second repo qui documente le protocole de A à Z, avec une petite CLI Python où vous tapez des commandes du genre hr run 45 ou spo2 run 45 pour déclencher une mesure. Y'a même un mode selfie planqué dedans, vous serrez le poing et la bague déclenche la prise de photo sur le téléphone !

Le truc marrant (enfin, marrant... je me comprends), c'est ce qu'il a trouvé en chemin... Car OUI la bague balance tout en clair sur un service maison avec 0 chiffrement. ou signature. Vos battements de cœur transitent donc à poil sur le Bluetooth ! D'ailleurs, on a vu avec l'affaire Strava que ces données de tracking peuvent révéler bien plus que prévu, alors une bague à 7 balles qui cause sans aucune protection, ça craint un peu...

En tout cas, c'est ça qui a énervé Saksham au départ. Il avait acheté un Google Fitbit, il aimait l'idée, mais pas le reste. A 100 balles l'appareil + 10 balles de plus par mois d'abonnement, et une app bourrée d'IA à tous les étages, sans oublier ce flux continu de son rythme cardiaque, de son sommeil et de ses déplacements envoyé non-stop chez Google pour qu'ensuite ils les revendent... Ça commençait à faire un peu trop pour lui. Chez Whoop, Oura ou d'autres, c'est tout pareil, vos données SONT le produit.

C'est pour cela qu'avec PulseLoop il a décidé de casser ça...

Au-dessus, il a même collé un coach IA plutôt malin qui lit vos mesures en local et vous sort des trucs du style "ton rythme au repos a grimpé les trois nuits où tu as dormi moins de 6 heures". Il fait des graphiques, repère des tendances, retient vos objectifs. Après ce coach-là tourne sur l'API d'OpenAI avec VOTRE clé du coup dès que vous lui posez une question, vos données partent chez OpenAI et vous payez à l'usage. Mais bon, même sans ça, le reste de l'app marche très bien.

Après, faut pas rêver sur la qualité de l'appareil car une bague à 7 dollars c'est pas un capteur Oura... les capteurs valent ce qu'ils valent et le décodeur de sommeil est encore expérimental (il ne choppe même pas les phases REM pour l'instant). On est dans l'esprit d' AsteroidOS , sauf qu'ici on "libère" une bague plutôt qu'une montre.

Mais bon je me dis que les capteurs vont évoluer, ils vont en devenir de mieux en mieux et cet outil sous licence libre sera toujours là pour en reprendre le contrôle. Pour moi c'est un projet à suivre, même s'il est encore ultra jeune (et uniquement sur iPhone pour le moment).

❌
❌