Universal Radio Hacker - Un moyen facile d'explorer les protocoles radio numériques


Universal Radio Hacker (URH) est un outil incroyablement simple et compréhensible pour analyser les protocoles radio numériques. Contrairement aux monstres comme GNU Radio, vous pouvez le maîtriser en cinq minutes, sans tourment.
Caractéristiques clés d'URH:

  • Fonctionne sur toutes les plateformes - sur macOS / Linux / Windows, prêt à l'emploi! Pas besoin de compiler des kilomètres de dépendances pendant des heures.
  • Prend en charge les SDR populaires - prise en charge native de RTL-SDR, HackRF, LimeSDR, AirSpy et autres.
  • Tout en un - tous les outils nécessaires sont intégrés dans un seul programme: un analyseur de spectre pour rechercher des fréquences, enregistrer un signal, un interpréteur de signal numérique pour convertir automatiquement un signal enregistré en données numériques.
  • Il prend en charge la transmission - pour mener une attaque de relecture, sélectionnez simplement le segment de signal souhaité avec la souris et appuyez sur Replay. Super!

Dans l'article, nous analyserons le signal de la télécommande provenant de la barrière à l'aide du populaire RTL-SDR (radio d'un tuner TV USB bon marché) et macOS.


L'installation


URH est écrit en Python 3, avec des insertions C via Cython. Il peut être utilisé directement depuis le référentiel, sans installation ni compilation.

Pour un système d'exploitation de type UNIX, il peut être installé via le gestionnaire de packages pip3:
pip3 install urh 


Les bibliothèques pour travailler avec SDR sur macOS peuvent être installées via brew:
 brew install rtlsdr hackrf 


Déterminer la fréquence


Vous devez d'abord savoir à quelle fréquence fonctionne notre trousseau. Dans la plupart des cas, ces appareils fonctionnent dans la plage non autorisée de 433 MHz. Vérifiez si c'est le cas avec un analyseur de spectre.

File -> Spectrum Analyzer
Cet outil affiche uniquement le spectre dans la plage sélectionnée et ne vous permet pas d'enregistrer ou de traiter le signal de quelque manière que ce soit. Son seul but est de trouver visuellement le signal souhaité. Dans les paramètres, nous spécifions le pilote de périphérique (dans mon cas, c'est RTL-SDR) et la fréquence.

La vidéo montre un analyseur de spectre qui vous permet de déterminer à quelle fréquence l'appareil fonctionne.

Une fois la fréquence trouvée, cliquez simplement sur la grille pour définir la fréquence trouvée comme centrale.

Enregistrez le signal


Vous pouvez maintenant enregistrer le signal de pression sur le bouton pour une analyse ultérieure. Il est important de comprendre que non seulement la fréquence sélectionnée est enregistrée, mais aussi toutes les fréquences voisines que notre SDR peut entendre. Ceci est régulé par le paramètre Bande passante. Par conséquent, le fichier avec le vidage augmente assez rapidement, à quelques mégaoctets par seconde. Pour notre tâche, vous pouvez réduire considérablement la bande passante et le taux d'échantillonnage, cela réduira la quantité de données supplémentaires capturées, mais nous les laisserons par défaut afin de ne pas forcer.

File -> Record Signal...

Vidéo: capture du signal du trousseau

Étant donné que le trousseau est proche du récepteur, son signal est assez puissant et il est clairement visible sur la forme d'onde. Afin de comprendre si une protection contre une attaque par rejeu est utilisée, nous appuyons plusieurs fois sur le bouton. Cela nous permettra de comparer plusieurs signaux différents.

Analyser le signal


Après avoir fermé la fenêtre d'enregistrement du signal, le vidage enregistré est chargé dans l'interpréteur, qui détermine automatiquement les paramètres du signal: modulation, longueur de bit, etc., et convertit le signal analogique en signal numérique. C'est très pratique, je n'ai rien vu de tel dans d'autres programmes similaires. Habituellement, les utilitaires de console sont utilisés pour la même chose, qui doivent définir manuellement les paramètres du signal.


Pour plus de commodité, les données peuvent être affichées au format HEX.


Un simple coup d'œil suffit pour voir qu'ils se répètent. Par conséquent, aucune cryptographie n'est utilisée dans notre télécommande. Cela signifie que nous pouvons facilement effectuer une attaque de rejeu. Pour ce faire, utilisez la souris pour sélectionner le morceau de signal souhaité dans le spectrogramme et appuyez sur le bouton de relecture. Mais, malheureusement, RTL-SDR n'est pas en mesure de transmettre, mais accepte uniquement. Par conséquent, pour mener une attaque, nous avons besoin de tout appareil de l'URH pris en charge qui peut transmettre un signal: il peut s'agir de hackrf, limesdr, bladerf ou USRP.


La mise en évidence graphique vous permet de travailler facilement avec le signal brut et les données traitées.
Je voudrais également noter la commodité de travailler avec l'interprète. Lorsqu'un signal est sélectionné sur la forme d'onde, les données traitées sont mises en surbrillance. Ceci est pratique dans les cas où il existe un doute sur l'exactitude de l'analyseur automatique et que vous devez examiner le signal manuellement.

Résumé


URH est un outil simple pour travailler avec des signaux hétérogènes qui, dès la sortie de l'emballage, prend en charge tous les SDR populaires. Il peut être maîtrisé en cinq minutes, sans la douloureuse compilation de GNU Radio.


Si vous êtes intéressé par le sujet de la SDR, dans notre Neuron Hackspace, vous pouvez discuter avec les développeurs du SDR- XTRX avancé , qui cette année détenait une entreprise prospère au crowsupply. Malheureusement, le support XTRX n'a ​​pas encore été ajouté à Universal Radio Hacker, mais vous pouvez y participer.

Toute l'actualité de la vie de Huxpeys sur la chaîne télégramme: @neuron_news

Source: https://habr.com/ru/post/fr434634/


All Articles