Les codes tournants ou comment ne pas envoyer le même message deux fois

Magazine
Marque
Hackable
Numéro
17
Mois de parution
mars 2017
Spécialité(s)


Résumé

Lorsqu'on utilise une télécommande que ce soit à fréquence ou infrarouge, un message est transmis de l'émetteur au récepteur. Cela fonctionne très bien, mais si quelqu'un capte un message, le copie et l'envoie à votre place, le voici capable de piloter votre installation. Ceci s'appelle le rejeu et pour contrer ce type d'attaque, l'astuce consiste à ne jamais envoyer deux fois le même message. C'est précisément ce que font, plus ou moins toujours selon les modèles, les télécommandes pour le verrouillage centralisé des voitures par exemple et ceci repose sur une notion particulière : les codes tournants. Chose que nous allons découvrir en pratique dans cet article...


Dans le numéro précédent, nous avons vu qu'avec un matériel comme le HackRF One ou n'importe quel autre émetteur/récepteur SDR (ou montage fait maison), il était possible de capturer un signal radio, l'enregistrer et le rejouer pour prendre la place de la télécommande à fréquence initialement utilisée. Ce genre de pratique est applicable pour bon nombre de dispositifs du carillon sans fil à la porte de garage en passant par la télécommande IR de votre téléviseur.

Le fait de chiffrer les données transmises ne règle pas le problème. Si vous chiffrez un message « ouvre garage » en « eofjdlksfuir » et que le récepteur le déchiffre pour retrouver le message initial, ceci n'empêchera absolument pas le fait que quelqu'un puisse capturer « eofjdlksfuir » et l'envoyer à votre place. Le chiffrement n'est donc pas la solution au problème de rejeu.

La solution consiste à utiliser des codes tournants, rolling codes ou hopping codes<…

La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Toujours plus loin dans LiteX : des histoires de nonos et de bar

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Dans le précédent article [1], nous avons affiné notre configuration pour supporter pleinement toute la richesse de ce que le langage C et la chaîne de compilation peuvent offrir en termes d'adressage mémoire, et sommes même allés jusqu'à utiliser ces mécanismes pour piloter une série de 64 LED adressables WS2812. Mais tout ceci se passe depuis « l'intérieur » du SoC lui-même et il est temps à présent d'accéder à cet espace depuis le monde extérieur.

Hack : utiliser les sous-titres comme source d'action durant une lecture audio

Magazine
Marque
GNU/Linux Magazine
Numéro
278
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Il y a des matins comme ça... On se réveille avec une idée saugrenue, qui ne nous lâchera pas avant d'avoir un début de solution, qui, forcément, doit ensuite se transformer en implémentation. L'idée de ce jour était « tiens, ce serait amusant que la lecture d'un fichier audio puisse provoquer des actions en fonction de la présence de marqueurs spécifiques à des positions temporelles fixes » (je vous explique dans un instant ce que cela veut dire). Ceci soulève plein de questions : qu'est-ce qui existe comme solutions « standard » ? Peut-on ajouter des sous-titres à un format audio ? Comment récupérer ces métadonnées ensuite ? Faut-il vraiment écrire un player pour ça ? Explorons donc tout cela...

Créons un « pilote » bare metal pour une interface série

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Durant mes pérégrinations dans le petit monde du développement FPGA avec LiteX s'est posée une problématique intéressante, consistant à devoir écrire un support pour une interface série (UART) en n’ayant à disposition rien d'autre qu'une poignée de registres où lire ou écrire. Cet exercice, pour moi, était une phase préalable à l'implémentation d'un pilote pour un système d'exploitation, mais serait transposable à n'importe quel type d'interface reposant sur des mécanismes similaires, et ce, sur n'importe quel MCU ou SoC, actuel ou ancien. Faisons donc connaissance avec l'UART LiteX, voulez-vous ?

Entretien avec Gwenhaël Goavec-Merou, créateur d'OpenFPGAloader

Magazine
Marque
Hackable
Numéro
63
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Si vous êtes lecteur régulier du magazine, OpenFPGAloader est un nom qui ne vous est certainement pas étranger. Il s'agit en effet d'un outil incontournable dès lors qu'on souhaite se pencher sur le monde des circuits logiques programmables. Son rôle est de permettre la configuration du FPGA, ainsi que l'enregistrement en flash de cette configuration (bitstream), par l'intermédiaire d’une sonde JTAG. OpenFPGAloader vient tout juste d'arriver en version 1.0.0, qui est une étape importante de tout projet en logiciel libre. À cette occasion, son créateur et mainteneur a accepté de répondre à quelques-unes de nos questions...

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture