« Tools:HackRF One » : différence entre les versions
Ligne 114 : | Ligne 114 : | ||
==== Options ==== | ==== Options ==== | ||
*<b>-s :</b> | *<b>-s :</b> Taux d'echantillons en MHz | ||
*<b>-f :</b> | *<b>-f :</b> Fréquence exacte enregistrée ou diffusée en Hz | ||
*<b>-r :</b> Nom du fichier | *<b>-r :</b> Nom du fichier à l'enregistrement | ||
*<b>-t :</b> Nom du fichier | *<b>-t :</b> Nom du fichier à la lecture | ||
*<b>-a :</b> | *<b>-a :</b> Amplification | ||
*<b>-x :</b> | *<b>-x :</b> Gain entre 0 et 47 dB (en Décibel) | ||
*<b>hackrf_transfer -h:</b> Pour le menu complet des options. | |||
=== Talkie-walkie === | === Talkie-walkie === |
Version du 2 décembre 2023 à 11:46
HackRF One
Le HackRF One de Great Scott Gadgets est une radio définie par logiciel capable d'émettre ou de recevoir des signaux radio de 1 MHz à 6 GHz.
Conçu pour permettre le test et le développement de technologies radio modernes et de nouvelle génération, HackRF One est un matériel open source qui peut être utilisée en tant que périphérique USB ou programmée pour un fonctionnement autonome.
- Fréquence de fonctionnement de 1 MHz à 6 GHz
- Émetteur-récepteur semi-duplex
- Jusqu'à 20 millions d'échantillons par seconde
- Échantillons en quadrature de 8 bits (8 bits I et 8 bits Q)
- Compatible avec GNU Radio, SDR#, etc.
- Gain RX et TX et filtre en bande de base configurables par logiciel
- Alimentation du port d'antenne contrôlée par logiciel (50 mA à 3,3 V)
- Connecteur d'antenne SMA femelle
- Entrée et sortie d'horloge SMA femelle pour la synchronisation
- Boutons pratiques pour la programmation
- En-têtes de broches internes pour l'expansion
- USB 2.0 haut débit
- alimenté par USB
Commandes
Hackrf_info : informations de version
Hackrf_transfer : capturer, transmettre
hackrf_debug : commande de debug du hackRF One
hackrf_sweep : balayer un champ de fréquences et l'analyser
hackrf_spiflash : mettre à jour le firmware
hackrf_cpldjtag : mettre à jour le cpld
Installation
$ apt install hackrf
Mise à jour du micrologiciel
Les appareils HackRF sont livrés avec un micrologiciel sur la mémoire flash SPI. Le micrologiciel peut être mis à jour à l'aide d'un câble USB et d'un ordinateur hôte.
Mise à jour du SPI Flash Firmware
$ hackrf_spiflash -w hackrf_one_usb.bin
Vous pouvez trouver le binaire du firmware (hackrf_one_usb.bin) dans le répertoire firmware-bin de la dernière version ou vous pouvez compiler le vôtre à partir des sources. Pour Jawbreaker, utilisez hackrf_jawbreaker_usb.bin. Si vous compilez à partir des sources, le fichier s'appellera hackrf_usb.bin.
Lorsque vous écrivez une image de micrologiciel sur la mémoire flash SPI, veillez à sélectionner un micrologiciel dont le nom de fichier se termine par ".bin".
Après avoir écrit le micrologiciel sur la mémoire flash SPI, vous devrez peut-être réinitialiser le dispositif HackRF en appuyant sur le bouton RESET ou en le débranchant et en le rebranchant.
Si vous obtenez une erreur mentionnant HACKRF_ERROR_NOT_FOUND, il s'agit souvent d'un problème de permissions dans votre système d'exploitation.
Pour vérifier si la mise à jour a été correctement installée:
$ hackrf_info hackrf_info version: unknown libhackrf version: unknown (0.5) Found HackRF Index: 0 Serial number: 000000000000000057b068dc22451163 Board ID Number: 2 (HackRF One) Firmware Version: 2018.01.1 (API:1.02) Part ID Number: 0xa000cb3c 0x00724357
Si nécessaire seulement: Récupération du SPI Flash Firmware
Si le firmware installé dans la mémoire flash SPI a été endommagé ou si vous programmez un HackRF fait maison pour la première fois, vous ne pourrez pas utiliser immédiatement le programme hackrf_spiflash comme indiqué dans la procédure ci-dessus. Suivez plutôt les étapes suivantes :
- Suivez les instructions de démarrage DFU pour démarrer le HackRF en mode de démarrage DFU.
- Tapez dfu-util --device 1fc9:000c --alt 0 --download hackrf_one_usb.dfu pour charger le micrologiciel d'une version dans la RAM. Si vous avez un Jawbreaker, utilisez hackrf_jawbreaker_usb.dfu à la place. Alternativement, utilisez make -e BOARD=HACKRF_ONE RUN_FROM=RAM pour charger le firmware en RAM et le démarrer.
- Suivez la procédure de mise à jour du micrologiciel SPI flash ci-dessus pour écrire l'image du micrologiciel ".bin" dans la mémoire flash SPI.
Si nécessaire seulement: DFU Boot
Le mode de démarrage DFU n'est normalement nécessaire que si le micrologiciel ne fonctionne pas correctement ou n'a jamais été installé.
Le microcontrôleur LPC4330 du HackRF est capable de démarrer à partir de plusieurs sources de code différentes. Par défaut, HackRF démarre à partir de la mémoire flash SPI (SPIFI). Il est également possible de démarrer HackRF en mode DFU (USB). En mode de démarrage DFU, le HackRF procède à une énumération via USB, attend que le code soit fourni à l'aide de la norme DFU (Device Firmware Update) via USB, puis exécute ce code à partir de la RAM. Le SPIFI est normalement inutilisé et non modifié en mode DFU.
Pour démarrer le HackRF One en mode DFU, maintenez le bouton DFU enfoncé tout en l'allumant ou en appuyant sur le bouton RESET et en le relâchant. Relâchez le bouton DFU lorsque le voyant 3V3 s'allume. Le voyant 1V8 doit rester éteint. À ce stade, le HackRF One est prêt à recevoir le micrologiciel par USB.
Pour démarrer le Jawbreaker en mode DFU, court-circuitez deux broches sur l'une des en-têtes "BOOT" lorsque l'alimentation est fournie pour la première fois. Les broches qui doivent être court-circuitées sont les broches 1 et 2 de l'en-tête P32 du Jawbreaker. L'en-tête P32 est étiqueté "P2_8" sur la plupart des Jawbreaker mais peut être étiqueté "2" sur les prototypes. La broche 1 est étiquetée "VCC". La broche 2 est la broche centrale. Après le démarrage DFU, vous devriez voir la LED VCC s'allumer et noter que la LED 1V8 ne s'allume pas. À ce stade, le Jawbreaker est prêt à recevoir un micrologiciel par USB.
Vous ne devez utiliser qu'une image de micrologiciel dont le nom de fichier se termine par ".dfu" par DFU, et non un micrologiciel se terminant par ".bin".
Installer DFU-Util
$ apt install dfu-util
Depuis les sources:
$ cd ~ $ sudo apt-get build-dep dfu-util $ sudo apt-get install libusb-1.0-0-dev $ git clone git://git.code.sf.net/p/dfu-util/dfu-util $ cd dfu-util $ ./autogen.sh $ ./configure $ make $ sudo make install
Mise à jour du CPLD
Les anciennes versions du firmware du HackRF (prior to release 2021.03.1) nécessitent une étape supplémentaire pour programmer un flux binaire dans le CPLD.
Pour mettre à jour l'image du CPLD, mettez d'abord à jour le microprogramme flash SPI, libhackrf et hackrf-tools.
Ensuite :
$ hackrf_cpldjtag -x firmware/cpld/sgpio_if/default.xsvf
Trois LEDs devraient commencer à clignoter. Cela indique que le CPLD a été programmé avec succès. Réinitialisez le dispositif en appuyant sur le bouton RESET ou en le débranchant et en le rebranchant.
Replay Attaque
Portail
Nous devons déterminer sur quelle fréquence la télécommande va communiquer (autours des 433Mhz).
Sur GQRX, nous allons pouvoir vérifier et ajuster notre fréquence d'écoute. Lorsque nous activons la télécommande, nous devons observer une variation du signal sur la fréquence écoutée.
Enregistrement
$ hackrf_transfer -s 2 -f 433000000 -r file
Émission
$ hackrf_transfer -s 2 -f 433000000 -t file -a 1 -x 24
Options
- -s : Taux d'echantillons en MHz
- -f : Fréquence exacte enregistrée ou diffusée en Hz
- -r : Nom du fichier à l'enregistrement
- -t : Nom du fichier à la lecture
- -a : Amplification
- -x : Gain entre 0 et 47 dB (en Décibel)
- hackrf_transfer -h: Pour le menu complet des options.
Talkie-walkie
Il s'agit exactement du même procédé vu ci-dessus pour les portail.