Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
LTESniffer — Ein Open-Source LTE Downlink/Uplink Abhörer | Kitploit
Tools/GitHubGitHub/syssec-kaist/ltesniffer
OSINT (Open-Source-Intelligence)Paket-Sniffing & AnalyseAufklärungInformationsbeschaffungNetzwerksicherheitDrahtlose SicherheitPapers & ForschungLernen & Bildung
GitHubsyssec-kaist/ltesniffer

LTESniffer

Ein Open-Source LTE Downlink/Uplink Abhörer

Repository anzeigen
2.2k232vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

LTESniffer – Ein Open-Source-LTE-Downlink/Uplink-Abhörgerät

LTESniffer ist ein Open-Source-LTE-Downlink/Uplink-Abhörgerät.

Es dekodiert zunächst den Physical Downlink Control Channel (PDCCH), um die Downlink Control Information (DCIs) und Radio Network Temporary Identifiers (RNTIs) aller aktiven Nutzer zu erhalten. Mithilfe der dekodierten DCIs und RNTIs dekodiert LTESniffer weiter den Physical Downlink Shared Channel (PDSCH) und den Physical Uplink Shared Channel (PUSCH), um Uplink- und Downlink-Datenverkehr zu erfassen.

LTESniffer unterstützt eine API mit drei Funktionen für Sicherheitsanwendungen und Forschung. Viele LTE-Sicherheitsforschungen gehen von einem passiven Sniffer aus, der datenschutzrelevante Pakete aus der Luft erfassen kann. Allerdings erfüllt keiner der derzeitigen Open-Source-Sniffer ihre Anforderungen, da sie keine Protokollpakete in PDSCH und PUSCH dekodieren können. Wir haben eine Proof-of-Concept-Sicherheits-API entwickelt, die drei Aufgaben unterstützt, die in früheren Arbeiten vorgeschlagen wurden: 1) Identitätszuordnung, 2) IMSI-Sammlung und 3) Fähigkeitsprofilierung.

Weitere Informationen finden Sie in unserem Paper.

LTESniffer in einfachen Worten

LTESniffer ist ein Werkzeug, das die drahtlosen LTE-Nachrichten erfassen kann, die zwischen einer Basisstation und den damit verbundenen Smartphones gesendet werden. LTESniffer unterstützt das Erfassen der Nachrichten in beide Richtungen: von der Basisstation zu den Smartphones und von den Smartphones zurück zur Basisstation.

LTESniffer KANN KEINE verschlüsselten Nachrichten zwischen der Basisstation und den Smartphones entschlüsseln. Es kann zur Analyse unverschlüsselter Teile der Kommunikation zwischen Basisstation und Smartphones verwendet werden. Beispielsweise erlaubt es bei verschlüsselten Nachrichten die Analyse unverschlüsselter Teile wie Header in der MAC- und der Bitübertragungsschicht. Nachrichten, die im Klartext gesendet werden, können jedoch vollständig analysiert werden. Beispielsweise sind die von der Basisstation gesendeten Broadcast-Nachrichten oder die Nachrichten zu Beginn der Verbindung vollständig sichtbar.

Ethische Überlegungen

Der Hauptzweck von LTESniffer ist die Unterstützung von Sicherheits- und Analyseforschung im Mobilfunknetz. Aufgrund der Erfassung von Uplink-Downlink-Nutzerdaten muss jede Nutzung von LTESniffer die örtlichen Vorschriften zum Abhören von LTE-Datenverkehr einhalten. Wir übernehmen keine Verantwortung für illegale Zwecke wie das absichtliche Sammeln von datenschutzrelevanten Informationen der Nutzer.

Funktionen

Neues Update v2.1.0

  • Unterstützt das Aufzeichnen von IQ-Rohdaten von Subframes in Dateien. Weitere Informationen finden Sie im LTESniffer-record-subframe-Branch und in dessen README.
  • Unterstützt die Offline-Dekodierung mithilfe aufgezeichneter Dateien (README).
  • API im Downlink-Modus aktiviert (gilt nur für Identity-Collecting- und Mapping-API).

Neues Update v2.0.0

  • Unterstützt zwei USRP-B-Serien für den Uplink-Sniffing-Modus. Weitere Informationen finden Sie im LTESniffer-multi-usrp-Branch und in dessen README.
  • Einige Fehler behoben.

LTESniffer ist auf Basis von FALCON unter Verwendung der srsRAN-Bibliothek implementiert. LTESniffer unterstützt:

  • Echtzeit-Dekodierung von LTE-Uplink/Downlink-Steuer-/Datenkanälen: PDCCH, PDSCH, PUSCH
  • LTE Advanced und LTE Advanced Pro, bis zu 256QAM im Uplink und Downlink
  • DCI-Formate: 0, 1A, 1, 1B, 1C, 2, 2A, 2B
  • Übertragungsmodi: 1, 2, 3, 4
  • Nur FDD
  • Maximal 20-MHz-Basisstation.
  • Automatische Erkennung der maximalen UL/DL-Modulationsschemata von Smartphones (64QAM/256QAM im DL und 16QAM/64QAM/256QAM im UL)
  • Automatische Erkennung der Konfiguration der Bitübertragungsschicht pro UE.
  • LTE-Sicherheits-API: RNTI-TMSI-Zuordnung, IMSI-Sammlung, UECapability-Profilierung.

Hardware- und Software-Anforderungen

Anforderungen an das Betriebssystem

Derzeit läuft LTESniffer stabil auf Ubuntu 18.04/20.04/22.04.

Hardware-Anforderungen

Um eine Echtzeit-Dekodierung des LTE-Datenverkehrs zu erreichen, ist eine leistungsstarke CPU mit mehreren physischen Kernen erforderlich, insbesondere während Spitzenzeiten, wenn die Basisstation viele aktive Nutzer hat. LTESniffer erreichte erfolgreich die Echtzeit-Dekodierung, als es auf einem Intel i7-9700K-PC eingesetzt wurde und Datenverkehr einer Basisstation mit 150 aktiven Nutzern dekodierte.

Die folgende Hardware wird empfohlen

  • Intel i7-CPU mit mindestens 8 physischen Kernen
  • Mindestens 16 GB RAM
  • 256 GB SSD-Speicher

SDR

LTESniffer benötigt unterschiedliche SDRs für den Uplink- und Downlink-Sniffing-Modus.

Zum reinen Abhören des Downlink-Datenverkehrs von der Basisstation ist LTESniffer mit den meisten SDRs kompatibel, die von der srsRAN-Bibliothek unterstützt werden (z. B. USRP oder BladeRF). Das SDR sollte über einen USB-3.0-Anschluss mit dem PC verbunden sein. Zudem sollte es über zwei RX-Antennen verfügen, um Downlink-Nachrichten in den Übertragungsmodi 3 und 4 zu dekodieren. Wenn Ihr SDR nur eine RX-Antenne hat, dekodiert LTESniffer nur Downlink-Nachrichten im Übertragungsmodus 1. Beachten Sie, dass GPSDO für das Downlink-Sniffing optional ist; es verbessert die Synchronisation, ist aber nicht zwingend erforderlich.

Andererseits muss LTESniffer zum Abhören des Uplink-Datenverkehrs von Smartphones zur Basisstation gleichzeitig zwei verschiedene Frequenzen (Uplink und Downlink) überwachen. Um dieses Problem zu lösen, unterstützt LTESniffer zwei Optionen:

  • Verwendung eines einzelnen USRP X310. Der USRP X310 verfügt über zwei Local Oscillators (LOs) für 2 RX-Kanäle, mit denen jeder RX-Kanal auf eine andere Uplink-/Downlink-Frequenz eingestellt werden kann. Ähnlich wie beim Downlink-Sniffing ist GPSDO für diese Option optional. Informationen zur Nutzung dieser Option finden Sie im main-Branch von LTESniffer.
  • Verwendung von 2 USRP-B-Serien. LTESniffer verwendet je ein USRP B-Serie (B210/B200) für Uplink und Downlink. Die Synchronisation zwischen den beiden USRPs wird durch GPSDO als Taktquelle und Zeitreferenz erreicht. GPSDO ist für diese Option zwingend erforderlich. Informationen zur Nutzung dieser Option finden Sie im LTESniffer-multi-usrp-Branch von LTESniffer und in dessen README.

Installation

Wichtiger Hinweis: Um unerwartete Fehler zu vermeiden, befolgen Sie bitte die folgenden Schritte auf Ubuntu 18.04/20.04/22.04.

Abhängigkeiten

  • Wichtige Abhängigkeit: Die UHD-Bibliothek in Version >= 4.0 muss vorab installiert sein (empfohlen: Bau aus dem Quellcode). Die folgenden Schritte können unter Ubuntu 18.04 verwendet werden. Vollständige Installationsanleitung finden Sie im UHD-Handbuch.

UHD-Abhängigkeiten:

root@kitploit:~
sudo apt update
sudo apt-get install autoconf automake build-essential ccache cmake cpufrequtils doxygen ethtool \
g++ git inetutils-tools libboost-all-dev libncurses5 libncurses5-dev libusb-1.0-0 libusb-1.0-0-dev \
libusb-dev python3-dev python3-mako python3-numpy python3-requests python3-scipy python3-setuptools \
python3-ruamel.yaml

UHD aus dem Quellcode klonen und bauen (stellen Sie sicher, dass der aktuelle Branch höher als 4.0 ist):

root@kitploit:~
git clone https://github.com/EttusResearch/uhd.git
cd <uhd-repo-path>/host
mkdir build
cd build
cmake ../
make -j 4
make test
sudo make install
sudo ldconfig

Firmware für USRPs herunterladen:

root@kitploit:~
sudo uhd_images_downloader

Wir verwenden eine 10-Gb-Karte, um den USRP X310 mit dem PC zu verbinden. Informationen zur Konfiguration des USRP X310 und der 10-Gb-Kartenschnittstelle finden Sie im UHD-Handbuch [1], [2]. Für USRP B210 sollte dieser über einen USB-3.0-Anschluss mit dem PC verbunden werden.

Verbindung und Firmware testen (nur für USRP X310):

root@kitploit:~
sudo sysctl -w net.core.rmem_max=33554432
sudo sysctl -w net.core.wmem_max=33554432
sudo ifconfig <10Gb card interface> mtu 9000
sudo uhd_usrp_probe
  • srsRAN-Abhängigkeiten:
root@kitploit:~
sudo apt-get install build-essential git cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev
  • LTESniffer-Abhängigkeiten:
root@kitploit:~
sudo apt-get install libglib2.0-dev libudev-dev libcurl4-gnutls-dev libboost-all-dev qtdeclarative5-dev libqt5charts5-dev

LTESniffer aus dem Quellcode bauen:

root@kitploit:~
git clone https://github.com/SysSec-KAIST/LTESniffer.git
cd LTESniffer
mkdir build
cd build
cmake ../
make -j 4 (use 4 threads)

Verwendung

LTESniffer hat 3 Hauptfunktionen:

  • Abhören des LTE-Downlink-Datenverkehrs von der Basisstation
  • Abhören des LTE-Uplink-Datenverkehrs von Smartphones
  • Sicherheits-API

Nach dem Bau aus dem Quellcode befindet sich LTESniffer in <build-dir>/src/LTESniffer.

Beachten Sie, dass vor der Nutzung von LTESniffer im kommerziellen Umfeld die örtlichen Vorschriften zum Abhören von LTE-Datenverkehr geprüft werden müssen, wie unter Ethische Überlegungen erläutert.

Um die Basisstation und das Uplink-Downlink-Band zu ermitteln, mit dem das Test-Smartphone verbunden ist, installieren Sie die App Cellular-Z auf dem Test-Smartphone (die App unterstützt nur Android). Sie zeigt die Zellen-ID und das Uplink-/Downlink-Band/die Frequenz an, mit der das Test-Smartphone verbunden ist. Stellen Sie sicher, dass LTESniffer ebenfalls mit derselben Zelle und Frequenz verbunden ist.

Allgemeines Downlink-Sniffing

LTESniffer Downlink-Modus

root@kitploit:~
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -C -m 0
example: sudo ./src/LTESniffer -A 2 -W 4 -f 1840e6 -C -m 0
-A: number of antennas
-W: number of threads
-f: downlink frequency
-C: turn on cell search
-m: sniffer mode, 0 for downlink sniffing and 1 for uplink sniffing

Hinweis: Um LTESniffer mit USRP B210 im Downlink-Modus auszuführen, fügen Sie die Option -a "num_recv_frames=512" zur Befehlszeile hinzu. Diese Option erweitert den Empfangspuffer für USRP B210, um eine bessere Synchronisation zu erreichen.

root@kitploit:~
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -C -m 0 -a "num_recv_frames=512"
example: sudo ./src/LTESniffer -A 2 -W 4 -f 1840e6 -C -m 0 -a "num_recv_frames=512"

Allgemeines Uplink-Sniffing

Hinweis: Im Uplink-Sniffing-Modus sollten sich die Test-Smartphones in der Nähe des Sniffers befinden, da die Uplink-Signalleistung des UE deutlich schwächer ist als das Downlink-Signal der Basisstation.

LTESniffer Uplink-Modus

root@kitploit:~
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -u <UL Freq> -C -m 1
example: sudo ./src/LTESniffer -A 2 -W 4 -f 1840e6 -u 1745e6 -C -m 1
-u: uplink frequency

Sicherheits-API

LTESniffer API-Modus

root@kitploit:~
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -u <UL Freq> -C -m 1 -z 3
example: sudo ./src/LTESniffer -A 2 -W 4 -f 1840e6 -u 1745e6 -C -m 1 -z 3
-z: 3 for turnning on 3 functions of sniffer, which are identity mapping, IMSI collecting, and UECapability profiling.
    2 for UECapability profiling
    1 for IMSI collecting
    0 for identity mapping

Eine bestimmte Basisstation angeben

LTESniffer kann auf einer bestimmten Basisstation lauschen, indem die Optionen -I <Physical Cell ID (PCI)> -p <number of Physical Resource Block (PRB)> verwendet werden. In diesem Fall führt LTESniffer keine Zellensuche durch, sondern verbindet sich direkt mit der angegebenen Zelle.

root@kitploit:~
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -I <PCI> -p <PRB> -m 0
sudo ./<build-dir>/src/LTESniffer -A 2 -W <number of threads> -f <DL Freq> -u <UL Freq> -I <PCI> -p <PRB> -m 1
example: sudo ./src/LTESniffer -A 2 -W 4 -f 1840e6 -u 1745e6 -I 379 -p 100 -m 1

Der Debug-Modus kann mit der Option -d aktiviert werden. In diesem Fall werden Debug-Meldungen auf dem Terminal ausgegeben.

Ausgabe von LTESniffer

LTESniffer liefert pcap-Dateien als Ausgabe. Die pcap-Datei kann mit WireShark zur weiteren Analyse und Paketverfolgung geöffnet werden. Der Name der Downlink-pcap-Datei: sniffer_dl_mode.pcap, der der Uplink-pcap-Datei: sniffer_ul_mode.pcap und der der API-pcap-Datei: api_collector.pcap. Die pcap-Dateien befinden sich im selben Verzeichnis, in dem LTESniffer ausgeführt wurde. Damit WireShark die dekodierten Pakete korrekt analysieren kann, beachten Sie bitte die WireShark-Konfigurationsanleitung hier. Es gibt auch einige Beispiele für pcap-Dateien unter dem Link.
Hinweis: Die Uplink-pcap-Datei enthält sowohl Uplink- als auch Downlink-Nachrichten. Verwenden Sie in WireShark diesen Filter, um nur Uplink-Nachrichten zu überwachen: mac-lte.direction == 0; oder diesen Filter, um nur Downlink-Nachrichten zu überwachen: mac-lte.direction == 1.

Anwendungshinweis

Entfernung für Uplink-Sniffing

Die effektive Reichweite zum Abhören des Uplinks ist bei LTESniffer aufgrund der Fähigkeiten des HF-Frontends der Hardware (d. h. SDR) begrenzt. Die Uplink-Signalleistung des UE ist deutlich schwächer als das Downlink-Signal, da das UE ein Handgerät ist, das den Akkuverbrauch optimiert, während die eNB ausreichend Leistung verwendet, um einen großen Bereich abzudecken. Um den Uplink-Datenverkehr erfolgreich zu erfassen, kann LTESniffer die Signalleistung erhöhen, indem es i) physisch nahe am UE ist oder ii) die Signalempfangsfähigkeit mit spezieller Hardware wie einer Richtantenne, einem dedizierten HF-Frontend und einem Signalverstärker verbessert.

Die auf dem Terminal angezeigten Informationen

Downlink-Sniffing-Modus

Processed 1000/1000 subframes: Anzahl der Subframes, die von LTESniffer in der letzten Sekunde verarbeitet wurden. Es gibt konstruktionsbedingt 1000 LTE-Subframes pro Sekunde.
RNTI: Radio Network Temporary Identifier der UEs.
Table: Das maximale Modulationsschema, das von Smartphones im Downlink verwendet wird. LTESniffer unterstützt bis zu 256QAM im Downlink. Weitere Informationen finden Sie in unserem Paper.
Active: Anzahl der erkannten Nachrichten der RNTIs.
Success: Anzahl der erfolgreich dekodierten Nachrichten im Verhältnis zu den erkannten Nachrichten (Active).
New TX, ReTX, HARQ, Normal: Statistik neuer und erneut gesendeter Nachrichten. Diese Funktion befindet sich in der Entwicklung.
W_MIMO, W_pinfor, Other: Anzahl der Nachrichten mit falscher Funkkonfiguration, nur zum Debuggen.

Uplink-Sniffing-Modus

Max Mod: Das maximale Modulationsschema, das von Smartphones im Uplink verwendet wird. Es kann 16/64/256QAM sein, abhängig von der Unterstützung der Smartphones und der Konfiguration des Netzwerks. Weitere Informationen finden Sie in unserem Paper.
SNR: Signal-Rausch-Verhältnis (dB). Ein niedriger SNR bedeutet, dass die Uplink-Signalqualität des Smartphones schlecht ist. Ein möglicher Grund ist, dass das Smartphone weit vom Sniffer entfernt ist.
DL-UL_delay: Die durchschnittliche Zeitverzögerung zwischen dem Downlink-Signal der Basisstation und dem Uplink-Signal des Smartphones.
Other Info: Nur Informationen zum Debuggen.

API-Modus

Detected Identity: Der Name der erkannten Identität.
Value: Der Wert der erkannten Identität.
From Message: Der Name der Nachricht, die die erkannte Identität enthält.

Danksagungen

Wir danken dem FALCON-Team und dem SRS-Team aufrichtig für die Bereitstellung ihrer großartigen Software.

Mitwirkende

Besonderer Dank gilt allen Mitwirkenden, die uns halfen, Fehler zu beheben und LTESniffer zu verbessern:

  1. cellular777
  2. Cemaxecuter
  3. Ksk190809

BibTex

Weitere Informationen finden Sie in unserem Paper.

root@kitploit:~
@inproceedings{hoang:ltesniffer,
  title = {{LTESniffer: An Open-source LTE Downlink/Uplink Eavesdropper}},
  author = {Hoang, Dinh Tuan and Park, CheolJun and Son, Mincheol and Oh, Taekkyung and Bae, Sangwook and Ahn, Junho and Oh, BeomSeok and Kim, Yongdae},
  booktitle = {16th ACM Conference on Security and Privacy in Wireless and Mobile Networks (WiSec '23)},
  year = {2023}
}

Stern-Verlauf

Stern-Verlaufsdiagramm

FAQ

F: Ist es zwingend erforderlich, GPSDO mit dem USRP zu verwenden, um LTESniffer auszuführen?
A: GPSDO ist für eine stabilere Synchronisation nützlich. Im Downlink-Sniffing-Modus kann LTESniffer jedoch auch ohne GPSDO mit dem LTE-Signal synchronisieren, um Pakete zu dekodieren. Im Uplink-Sniffing-Modus ist GPSDO nur erforderlich, wenn 2 USRP-B-Serien verwendet werden, da es als Zeit- und Taktreferenz für die Synchronisation zwischen Uplink- und Downlink-Kanälen dient. Eine andere Uplink-SDR-Option, die Verwendung eines einzelnen USRP X310, benötigt kein GPSDO.

F: Kann ich für den Downlink-Datenverkehr ein günstigeres SDR verwenden?
A: Technisch gesehen kann jedes von der srsRAN-Bibliothek unterstützte SDR wie Blade RF verwendet werden, um LTESniffer im Downlink-Sniffing-Modus auszuführen. Wir haben die Downlink-Sniffing-Funktion von LTESniffer jedoch nur mit USRP B210 und X310 getestet.

F: Ist es illegal, LTESniffer zum Abhören von LTE-Datenverkehr zu verwenden?
A: Sie sollten die örtlichen Vorschriften zum Abhören (unverschlüsselten) LTE-Datenverkehrs prüfen. Eine andere Möglichkeit, LTESniffer zu testen, ist die Einrichtung eines persönlichen LTE-Netzwerks mit srsRAN – einer Open-Source-LTE-Implementierung in einem Faraday-Käfig.

F: Kann LTESniffer verwendet werden, um den Inhalt von Nachrichten zwischen zwei Benutzern einzusehen?
A: Man kann nur den „unverschlüsselten“ Teil der Nachrichten sehen. Beachten Sie, dass der Datenverkehr zwischen der Basisstation und den Benutzern größtenteils verschlüsselt ist.

F: Wird im LTE-Netzwerk eine Geräteidentität im Klartext preisgegeben?
A: Ja, die Literatur zeigt, dass mehrere Identitäten preisgegeben werden, wie z. B. TMSI, GUTI, IMSI und RNTI. Weitere Informationen finden Sie in der akademischen Literatur, z. B. Watching the Watchers: Practical Video Identification Attack in LTE Networks.

Tool herunterladen