
Un outil open-source d'écoute LTE (liaison descendante/montante)
LTESniffer est un espion LTE open-source pour liaison descendante et montante.
Il décode d'abord le canal de contrôle physique descendant (PDCCH) pour obtenir les informations de contrôle descendant (DCI) et les identifiants temporaires de réseau radio (RNTI) de tous les utilisateurs actifs. À l'aide des DCI et RNTI décodés, LTESniffer décode ensuite le canal partagé physique descendant (PDSCH) et le canal partagé physique montant (PUSCH) pour récupérer le trafic de données montant et descendant.
LTESniffer prend en charge une API avec trois fonctions pour la recherche et les applications de sécurité. De nombreuses recherches en sécurité LTE supposent un renifleur passif capable de capturer les paquets liés à la vie privée sur les ondes. Cependant, aucun des renifleurs open-source actuels ne répond à leurs exigences car ils ne peuvent pas décoder les paquets de protocole dans PDSCH et PUSCH. Nous avons développé une API de sécurité de preuve de concept qui prend en charge trois tâches proposées par des travaux antérieurs : 1) Mappage d'identités, 2) Collecte d'IMSI, et 3) Profilage de capacités.
Veuillez consulter notre [article][paper] pour plus de détails.
LTESniffer est un outil capable de capturer les messages sans fil LTE envoyés entre une station de base et les smartphones qui y sont connectés. LTESniffer prend en charge la capture des messages dans les deux sens, de la station de base vers les smartphones, et des smartphones vers la station de base.
LTESniffer NE PEUT PAS DÉCRYPTER les messages chiffrés entre la station de base et les smartphones. Il peut être utilisé pour analyser les parties non chiffrées de la communication entre la station de base et les smartphones. Par exemple, pour les messages chiffrés, il peut permettre à l'utilisateur d'analyser les parties non chiffrées, comme les en-têtes des couches MAC et physique. Cependant, les messages envoyés en clair peuvent être complètement analysables. Par exemple, les messages de diffusion envoyés par la station de base, ou les messages au début de la connexion sont entièrement visibles.
Le but principal de LTESniffer est de soutenir la recherche en sécurité et en analyse sur le réseau cellulaire. En raison de la collecte de données utilisateur montantes et descendantes, toute utilisation de LTESniffer doit respecter les réglementations locales concernant le reniflage du trafic LTE. Nous ne sommes pas responsables des utilisations illégales telles que la collecte intentionnelle d'informations personnelles des utilisateurs.
LTESniffer-record-subframe et son [README][capture-readme] pour plus de détails.LTESniffer-multi-usrp et son [README][multi-readme] pour plus de détails.LTESniffer est implémenté sur la base de [FALCON][falcon] avec l'aide de la bibliothèque [srsRAN][srsran]. LTESniffer prend en charge :
Actuellement, LTESniffer fonctionne de manière stable sous Ubuntu 18.04/20.04/22.04.
Pour un décodage en temps réel du trafic LTE, un processeur hautes performances avec plusieurs cœurs physiques est nécessaire, surtout pendant les heures de pointe où la station de base a de nombreux utilisateurs actifs. LTESniffer a réussi un décodage en temps réel sur un PC Intel i7-9700K, en décodant le trafic d'une station de base avec 150 utilisateurs actifs.
Le matériel suivant est recommandé
LTESniffer nécessite des SDR différentes pour ses modes de reniflage montant et descendant.
Pour ne renifler que le trafic descendant de la station de base, LTESniffer est compatible avec la plupart des SDR prises en charge par la bibliothèque srsRAN (par exemple, USRP ou BladeRF). La SDR doit être connectée au PC via un port USB 3.0. De plus, elle doit être équipée de deux antennes RX pour décoder les messages descendants dans les modes de transmission 3 et 4. Si votre SDR n'a qu'une seule antenne RX, LTESniffer ne décodera que les messages descendants en mode de transmission 1. Notez que le GPSDO est optionnel pour le reniflage descendant ; il aide à améliorer la synchronisation mais n'est pas obligatoire.
D'autre part, pour renifler le trafic montant des smartphones vers les stations de base, LTESniffer doit écouter deux fréquences différentes (montante et descendante) simultanément. Pour résoudre ce problème, LTESniffer prend en charge deux options :
main de LTESniffer.LTESniffer-multi-usrp de LTESniffer et à son [README][multi-readme].Remarque importante : pour éviter des erreurs inattendues, veuillez suivre les étapes suivantes sur Ubuntu 18.04/20.04/22.04.
Dépendances