Modulbeschreibung - Ruhr

Transcription

Modulbeschreibung - Ruhr
Seite 1
Modulbeschreibung
Modulbezeichnung:
Sicherheit mobiler Systeme
Studiengang:
OpenC3 S - Zertifikat
Verwendbarkeit:
Dieses Modul ist verwendbar für
• Studierende der IT-Sicherheit
• Studierende der Informatik
• Studierende der Wirtschaftsinformatik
• Studierende der Mathematik und Informatik
auf Bachelorniveau.
Dieses Modul kann nicht als Wahlpflichtmodul gewählt werden,
sondern ist ein Pflichtmodul.
Lehrveranstaltungen und
Lehrformen:
Sicherheit mobiler Systeme
Modulverantwortliche(r):
Prof. Dr. Thorsten Holz
Dozent(in):
Prof. Dr. Thorsten Holz
Dauer:
1 Semester
Credits:
5 ECTS
Studien- und Prüfungsleistungen:
Schriftliche Prüfung: 120 min.
Schriftliche Prüfung
Notwendige Voraussetzungen:
• Programmierung
• Kryptographie
• Netzsicherheit 1-3
Empfohlene Voraussetzungen:
Sprache:
Deutsch, aktuelle Fachartikel teilweise in englischer Sprache
Zuordnung des Moduls zu den
Fachgebieten des Curriculums:
Einordnung ins Fachsemester:
Ab Studiensemester 3
Generelle Zielsetzung des Moduls:
Arbeitsaufwand bzw.
Gesamtworkload:
Präsenzzeit: 2 h
• Prüfung: 2h
Eigenstudium: 148 h
• Durcharbeiten der Studienbriefe: 85 h
• Durcharbeiten des Online-Lernmaterials: 15 h
• Wahrnehmen der Online Betreuung und Beratung: 10 h
• Ausarbeiten von Aufgaben: 30 h
• Individuelle Prüfungsvorbereitung der Studierenden: 8 h
Seite 2
Lerninhalt und Niveau:
In diesem Modul erwerben die Teilnehmer Kenntnisse über Sicherheitsaspekte von verschiedenen mobilen Systemen, insbesondere zur Sicherheit von Smartphones. Im ersten Teil des Moduls
liegt der Schwerpunkt auf der Beschreibung der wichtigsten Sicherheitsfunktionen von mobilen Systemen. Im zweiten Teil des
Moduls wird die Sicherheit von Smartphones genauer beleuchtet
und verschiedene Sicherheitsaspekte werden genauer betrachtet,
der Fokus liegt dabei auf Apps für Smartphones. In der Vorlesung
werden verschiedene Sicherheitsaspekte von mobilen Systemen
vorgestellt. Anhand von konkreten Beispielen wird erläutert, wie
verschiedene Arten von mobilen Systemen aufgebaut sind und
welche Sicherheitsrisiken diese besitzen. Dies umfasst unter anderem die folgenden Themen:
• Design von GSM und UMTS (Sicherheitsaspekte, Lokalisierungsverfahren, Verbindungsmanagement)
• Sicherheit von Satellitentelefonen (GMR)
• Sicherheitsaspekte von DECT
• Design mobiler Betriebssysteme (Android und iOS)
• Analyse von (mobilen) Apps
Angestrebte Lernergebnisse:
Fachkompetenz: Die Studierenden erlernen die wichtigen Strukturen von Sicherheitsaspekten in mobilen Datennetzen, verstehen
die darin verwendeten kryptographischen Verfahren sowie das Zusammenspiel verschiedener Protokolle. Die Studierenden können
das Zusammenspiel der kryptographischen Verfahren in einem
Protokoll auf erste Sicherheitslücken hin überprüfen und eine erste
Einschätzung der Sicherheit des Protokolls liefern. Dazu werden
auch konkrete Angriffe auf existierende Systeme vorgestellt, um
ein tiefergehendes Verständnis zu erlangen.
Methodenkompetenz: Die Studierenden beherrschen den Umgang
mit (englischer) Fachliteratur und können ihr wichtige Informationen eigenständig entnehmen. Weiterhin sind die Studierenden mit
verschiedenen Angriffs- und Analysetechniken vertraut, welche
auf neue Systeme, Protokolle und Verfahren übertragen werden
können.
Sozialkompetenz: Die Studierenden tauschen sich über Probleme
beim Erarbeiten und Anwenden von neuen Inhalten aus und können problemorientiert diskutieren. Die konstruktive Diskussion
wird im Rahmen von Übungen erlernt. Selbstkompetenz: Die Studierenden erlangen die Fähigkeit, sich selbständig eine Meinung
über die Sicherheit von verschiedenen mobilen Systemen zu bilden. Darüber hinaus besitzen sie die Kompetenz, neue Angriffe
aus der aktuellen Fachliteratur zu verstehen und ihre Bedeutungen
zu evaluieren. Die Studierenden entwickeln ein „gesundes Misstrauen“ gegenüber vorgegebenen Sicherheitskonzepten.
Häufigkeit des Angebots:
Anerkannte Module:
Anerkannte anderweitige Lernergebnisse / Lernleistungen:
Jedes Semester
Seite 3
Medienformen:
Literatur:
• Hannes Federrath: Sicherheit mobiler Kommunikation:
Schutz in GSM-Netzen, Mobilitätsmanagement und mehrseitige Sicherheit, Vieweg, 1999
• Noureddine Boudriga: Security of Mobile Communications,
Auerbach Publications, 2009
• Miller et al.: iOS Hacker’s Handbook, Wiley, 2012
Weitere Literatur wird in der Lehrveranstaltung bekannt gegeben.
Modul XXX
Sicherheit Mobiler Systeme
Chapter 1: Sicherheitsaspekte von Mobilfunknetzen
Chapter 2: Sicherheitsaspekte von Satellitentelefonen
Chapter 3: Sicherheitsaspekte von DECT
Autor:
Prof. Dr. Thorsten Holz
1. Auflage
Ruhr-Universität Bochum
© 2015 Ruhr-Universität Bochum
Bochum
Universitätsstr. 150
44801 Bochum
1. Auflage (31. März 2015)
Didaktische und redaktionelle Bearbeitung:
Das Werk einschließlich seiner Teile ist urheberrechtlich geschützt. Jede Verwendung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne
Zustimmung der Verfasser unzulässig und strafbar. Das gilt insbesondere
für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.
Um die Lesbarkeit zu vereinfachen, wird auf die zusätzliche Formulierung
der weiblichen Form bei Personenbezeichnungen verzichtet. Wir weisen deshalb darauf hin, dass die Verwendung der männlichen Form explizit als geschlechtsunabhängig verstanden werden soll.
Inhaltsverzeichnis
Seite 3
Inhaltsverzeichnis
Einleitung zu den Studienbriefen
I.
II.
III.
Chapter 1
1.1
1.2
1.3
1.4
1.5
1.6
2.5
2.6
2.7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9
9
9
9
10
12
16
19
23
24
24
25
31
33
35
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Sicherheitsaspekte von DECT
Lernziele . . . . . . .
Advanced Organizer
Einleitung . . . . . .
Grundlagen . . . . .
5
6
7
9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Sicherheitsaspekte von Satellitentelefonen
Lernziele . . . . . . . . . . . . . . . . . . . .
Advanced Organizer . . . . . . . . . . . . .
Einleitung . . . . . . . . . . . . . . . . . . .
Grundlagen . . . . . . . . . . . . . . . . . .
2.4.1 Netzwerkstruktur . . . . . . . . . . .
2.4.2 Kanäle . . . . . . . . . . . . . . . . .
2.4.3 Kodierung und Verschlüsselung . .
2.4.4 Architektur eines Satellitentelefons .
2.4.5 Analyse existierender Protokolle . .
2.4.6 Kontrollaufgaben . . . . . . . . . . .
GMR-1 Protokoll . . . . . . . . . . . . . . .
2.5.1 Hardwarearchitektur . . . . . . . . .
2.5.2 Struktur . . . . . . . . . . . . . . . .
2.5.3 Funktionsweise . . . . . . . . . . . .
2.5.4 Operationsmodi . . . . . . . . . . . .
2.5.5 Angriffe . . . . . . . . . . . . . . . .
2.5.6 Kontrollaufgaben . . . . . . . . . . .
GMR-2 Protokoll . . . . . . . . . . . . . . .
2.6.1 Hardwarearchitektur . . . . . . . . .
2.6.2 Struktur . . . . . . . . . . . . . . . .
2.6.3 Funktionsweise . . . . . . . . . . . .
2.6.4 Operationsmodi . . . . . . . . . . . .
2.6.5 Exkurs: Angriff . . . . . . . . . . . .
2.6.6 Kontrollaufgaben . . . . . . . . . . .
Übungen . . . . . . . . . . . . . . . . . . . .
Chapter 3
3.1
3.2
3.3
3.4
Sicherheitsaspekte von Mobilfunknetzen
Lernziele . . . . . . . . . .
Advanced Organizer . . .
Einleitung . . . . . . . . .
GSM . . . . . . . . . . . .
1.4.1 Systemdesign . . .
1.4.2 Datenübertragung
1.4.3 Sicherheit . . . . .
1.4.4 Angriffe . . . . . .
1.4.5 Kontrollaufgaben .
UMTS . . . . . . . . . . . .
1.5.1 Systemdesign . . .
1.5.2 Sicherheit . . . . .
1.5.3 Kontrollaufgaben .
Übungen . . . . . . . . . .
Chapter 2
2.1
2.2
2.3
2.4
5
Abkürzungen der Randsymbole und Farbkodierungen . . . . . . . . . . . . . . . . . . . . . .
Zu den Autoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modullehrziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
35
35
35
36
37
38
39
39
40
41
41
41
43
43
45
46
46
46
46
50
51
51
54
54
55
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
55
55
55
Seite 4
3.5
3.6
3.7
3.8
Inhaltsverzeichnis
Systemdesign . . . . . . . . . . . . . . .
3.5.1 DECT-Referenzmodell . . . . . .
3.5.2 Kontrollaufgaben . . . . . . . . .
Verbindungsverwaltung . . . . . . . . .
3.6.1 Betriebszustände . . . . . . . . .
3.6.2 Verbindung zwischen PP und FP
3.6.3 Handover . . . . . . . . . . . . .
3.6.4 Kontrollaufgaben . . . . . . . . .
Sicherheit in DECT . . . . . . . . . . . .
3.7.1 Architektur . . . . . . . . . . . .
3.7.2 Authentisierung . . . . . . . . .
3.7.3 Verschlüsselung . . . . . . . . . .
3.7.4 Angriffe auf DECT . . . . . . . .
3.7.5 Kontrollaufgaben . . . . . . . . .
Übungen . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Liste der Lösungen zu den Kontrollaufgaben
Liste der Lösungen zu den Übungen . . . . .
Literature . . . . . . . . . . . . . . . . . . . . .
Glossar . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Verzeichnisse
I.
II.
III.
IV.
56
57
60
60
60
62
64
65
65
65
65
67
67
71
71
73
73
77
80
82
Einleitung zu den Studienbriefen
Seite 5
Einleitung zu den Studienbriefen
I. Abkürzungen der Randsymbole und Farbkodierungen
Axiom
A
Beispiel
B
Definition
D
Exkurs
E
Kontrollaufgabe
K
Merksatz
M
Quelle
Q
Satz
S
Übung
Ü
Seite 6
II. Zu den Autoren
Bild fehlt
Einleitung zu den Studienbriefen
Modullehrziele
III. Modullehrziele
Seite 7
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Seite 9
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
1.1 Lernziele
Sie können Grundlagen der Mobilfunkkommunikation mittels der Protokolle
GSM und UMTS aufzeigen und Unterschiede zwischen den beiden Protokollen
benennen. Weiterhin können Sie die Sicherheitsarchitekturen der jeweiligen Protokollfamilien erläutern. Abschließend können Sie Schwachstellen und Angriffe
auf die Sicherheitsfunktionen aufzeigen und skizzieren.
1.2 Advanced Organizer
Wie sind GSM und UMTS aufgebaut, welche Sicherheitsmerkmale verwenden diese Protokolle und welche Angriffe sind auf die Protokollfamilien möglich? In diesem Studienbrief werden der Aufbau und die Sicherheitsarchitekturen von weit
verbreiteten Mobilfunknetzwerken aufgezeigt und Schwachstellen erläutert.
1.3 Einleitung
In diesem Studienbrief werden die Grundlagen der Kommunikation von Mobilfunknetzen anhand der weit verbreiteten Protokolle GSM und UMTS erläutert.
Dies umfasst insbesondere den Aufbau und die Funktionsweise der zugehörigen
kryptographischen Verschlüsselungsfunktionen. Abschließend werden verschiedene Angriffe auf diese Verschlüsselungsfunktionen vorgestellt.
1.4 GSM
GSM steht für Global System for Mobile Telecommunications und ist ein international
etablierter Standard zur Übertragung von Daten mittels Funktechnik für die kabellose zellulare Telefonie. GSM ist der erste Standard der sogenannten zweiten
Mobilfunkgeneration (2G) und gilt als Nachfolger der analogen Mobilfunknetze.
Die Entwicklung von GSM begann im Jahr 1983 durch das European Telecommunications Standards Institute (ETSI). Im Jahr 1991 wurde der Testbetrieb von mehreren
GSM-Netzen in 5 Ländern aufgenommen [Lüd01]. Ab Sommer 1992 begann im
Anschluss an die Testphase der kommerzielle Betrieb von 13 Mobilfunknetzen in
7 Ländern.
Exkurs 1.1: Namensgebung GSM
Die Abkürzung GSM stand ursprünglich für Groupe Spéciale Mobile, einer Arbeitsgruppe des European Telecommunications Standards Institutes. Erst mit der
weltweiten Verbreitung wurde GSM als Global System for Mobile Telecommunications bekannt.
Das Design des GSM-Standards legt besonderen Fokus darauf, eine Vielzahl
unterschiedlicher Telekommunikationsdienste zu unterstützen, sodass sowohl
E
Seite 10
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Sprach- (beispielsweise Anruf und Notruf) als auch Datenübertragungen ermöglicht werden. Weiterhin sollten mit Einführung des GSM-Standards unter anderem folgende Ziele erreicht werden [Fed99, Wal01a]:
• Hohe Mobilität (auch international)
• Hohe Erreichbarkeit unter einer international einheitlichen Rufnummer
• Hohe Teilnehmerkapazität
• Hoher Verfügbarkeitsgrad
• Eingebaute Sicherheitsmerkmale (PIN, Authentifikations- und Identifikationsdienste)
• Priorisierter Notrufdienst
• Niedriges Kostenniveau
1.4.1 Systemdesign
Ein GSM-System besteht wie in Abbildung 1.1 dargestellt im Allgemeinen aus 9
Komponenten, welche ein Public Land Mobile Network (PLMN) bilden [Bou10].
Figure 1.1: GSMArchitektur aus
[Bou10, Fed99,
Wal01a].
• MS: Die Mobilstation stellt das mobile Endgerät in GSM dar und ist mit
einem Subscriber Identity Module (SIM) ausgestattet. Mit Hilfe dieser SIMKarte und einer persönlichen PIN wird dem Nutzer der Mobilstation gegenüber dem GSM-Betreibernetz erlaubt, ein- und ausgehende Telekommunikationsdienste zu nutzen. Die SIM-Karte enthält dazu verschiedene
Identifizierungsmerkmale und -funktionen:
– CHVI: Die Card Holder Verification Information werden beispielsweise durch die PIN und PUK (Personal Unblocking Key) bestimmt und
identifizieren den Benutzer gegenüber der SIM-Karte.
– IMSI: Die International Mobile Subscriber Identity ist ein Identifizierungsmerkmal, mit welcher eine SIM-Karte in GSM eindeutig identifiziert werden kann.
1.4 GSM
Seite 11
– TMSI: Die Temporary Mobile Subscriber Identity wird vom Netzbetreiber für eine kurze Zeit vergeben und dient wie die IMSI ebenso der
Identifizierung der SIM-Karte.
– A3, A8 und Ki : Die Algorithmen A3 und A8 und der Authentifizierungsschlüssel Ki werden bei der Authentisierung der Mobilstation
und bei der Generierung des Sessionkeys Kc für die Datenverschlüsselung zwischen Mobilstation und Betreibernetz verwendet.
– LAI: Der Location Area Identifier ist eine eindeutige Identifikationsnummer des aktuellen Aufenthalts der Mobilstation und findet beim
Wechsel von Funkzellen in Location Update Nachrichten Anwendung.
• BSS: Das Base Station Subsystem (BSS) verwaltet die Kommunikation mittels
Funk und besteht aus den Komponenten BTS und BSC.
– BTS: Die Base Transceiver Station, auch GSM-Basisstation genannt,
umfasst die Sende- und Empfangsanlage, welche die funktechnische
Versorgung von mindestens einer Funkzelle übernimmt und der direkten Funkkommunikation mit den Mobilstationen dient.
– BSC: Der Base Station Controller verwaltet eine oder mehrere BTS und
überwacht die darüber laufenden Funkkanäle mit den Mobilstationen.
• (G)MSC: Das Mobile Switching Center bildet die Kernkomponente eines
GSM-Netzes. Dazu verwaltet das MSC mehrere BSCs und leitet Befehle
und Anrufe an die weiteren Komponenten des Netzwerkes weiter. Ebenfalls übernimmt es die Funktionen für die Mobilitätsverwaltung der Teilnehmer, inklusive der Registrierung, Authentisierung, Lokalisierung und
des Verbindungsroutings. Ein Gateway Mobile Switching Center übernimmt
zusätzlich das Routing in ein anderes Netzwerk, beispielsweise in das analoge oder ISDN Netz.
• OMC: Das Operation and Maintenance System ist mit dem MSC verbunden
und bietet Konfigurationsfunktionen für den operativen Betrieb und Funktionen zur Überwachung und Fernwartung des GSM-Netzwerkes an.
• HLR: Das Home Location Register besteht aus einer Datenbank, welches teilnehmerspezifische Daten wie Aufenthalt (LAI), Rufnummer und IMSI verwaltet. Jeder Teilnehmer in GSM ist in genau einem HLR registriert.
• VLR: Das Visitor Location Register ähnelt dem HLR, allerdings werden in
dieser Datenbank lediglich Informationen zu Teilnehmern abgelegt, für die
das zugehörige MSC aktuell zuständig ist. Weiterhin übernimmt das VLR
die Verwaltung von Roaming-Teilnehmern (Teilnehmer die in einem HLR
eines anderen GSM-Netzwerkes registriert sind).
• AUC: Das Authentication Center besteht aus einer Datenbank, in der teilnehmerspezifische Identifikations- und Authentifizierungsmerkmale abgelegt sind. Dies umfasst beispielsweise die teilnehmerindividuellen Langzeitschlüssel Ki . Weiterhin werden die für die Authentisierung und Verschlüsselung benötigten Zufallswerte gewählt und die kryptographischen
Operationen durchgeführt.
• EIR: In dem Equipment Identification Register werden die eindeutigen
Hardware-Identifikationsnummern (International Mobile Station Equipment
Identity, IMEI) der Mobilstationen abgelegt. Diese Datenbank erlaubt es
dem Netzwerkbetreiber, gesperrte oder gestohlene Mobilstationen zu identifizieren. Dazu verwaltet das EIR drei Listen [Bou10]:
– Whitelist: Diese Liste enthält die IDs der Geräte, die mit dem GSMNetzwerk kommunizieren dürfen.
Seite 12
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
– Blacklist: Die Blacklist umfasst alle IDs der Geräte, welche keine Verbindungen in das Netzwerk aufbauen dürfen.
– Graylist: Auf dieser Liste befinden sich IDs von Geräten, die mit
dem Netzwerk kommunizieren dürfen, allerdings aus verschiedenen
Gründen überwacht werden.
1.4.2 Datenübertragung
Das GSM-Protokoll wendet verschiedene Nachrichtenübertragungsverfahren
und Verbindungstypen für die funktechnische Datenübertragung zwischen
Mobil- und Basisstation an, welche im Folgenden vorgestellt werden.
Physikalische Kanäle
In Deutschland verwendet das GSM-Protokolle die Funkfrequenzen 890-915 MHz
und 935-960 MHz für die D-Netze (GSM900) und die Frequenzen 1710-1785 MHz
und 1805-1880 MHz für die E-Netze (DCS1800). Dabei sind die Frequenzen in die
Bereiche Upload (Datenübertragung von der Mobilstation zum GSM-Netzwerk)
und Download (Übertragung vom GSM-Netz zur Mobilstation) eingeteilt. Bei
GSM900 ist der Frequenzbereich 890-915 MHz für den Upload und der Bereich
935-960 MHz für den Download vorgesehen.
GSM verwendet für die Übertragung der Daten mittels Funk die Frequency Division Multiplex (FDM), Frequency Division Duplexing (FDD) und Time Division Multiple
Access (TDMA) Nachrichtenübertragungsverfahren. Dabei wird jedes Frequenzspektrum von GSM (sowohl Upload als auch Download) in jeweils 124 Frequenzträger mit einem Abstand von 200 kHz eingeteilt (FDM). Weiterhin werden die
einzelnen Frequenzträger von Up- und Download zu 124 Duplexträgern kombiniert (FDD). Jeder Frequenzträger ist weiterhin wie in Abbildung 1.2 dargestellt in
8 Zeitschlitze unterteilt (TDMA), wobei 8 Zeitschlitze einen sogenannten TDMARahmen bilden. Dieser TDMA-Rahmen wiederholt sich alle 4,6 ms (entspricht
1250 Bits an Daten) und wird mit einer eindeutigen ID, der sogenannten FrameNummer identifiziert, welche bei 0 beginnt und in verschiedene Funktionen und
Algorithmen wie der Verschlüsselungsfunktion von GSM einfließt. In einem einzelnen Zeitschlitz (0,577 ms) können 156,25 Bits an Daten übertragen werden.
Figure 1.2: Physikalische
Kanäle aus [Lüd01].
Bei einer typischen GSM-Verbindung werden wie in Abbildung 1.2 rot und dunkelgrau markiert zwei Zeitschlitze für eine Duplexverbindung verwendet, wobei
diese um 3 Zeitschlitze versetzt sind. Die Basisstation überträgt in diesem Beispiel die Daten somit auf einem Download-Frequenzträger in Zeitschlitz 1; die
Mobilstation um 3 Zeitschlitze versetzt ebenfalls in Zeitschlitz 1 auf einem UploadFrequenzträger.
1.4 GSM
Seite 13
Transportformate
Der Transport von Daten mittels Funk birgt Gefahren von fehlerhaften Datenübertragungen (beispielsweise Bitfehlern), welche beim Empfänger korrigiert bzw. zumindest erkannt werden müssen. In GSM werden dazu alle Sprach- und Datenbits bevor sie über die physikalischen Kanäle versendet werden mit Fehlererkennungsbits versehen. Dazu werden Datenbits im GSM-Standard in ein bestimmtes
Transportformat überführt, die sogenannten Bursts.
Abbildung 1.3 stellt den Normal Burst in GSM dar, welcher zur Nachrichtenübertragung in Verkehrskanälen (Traffic Channels, TCH) und Steuerungskanälen (Control Channels, CCH) dient. Darüber hinaus nutzt GSM vier weitere Burst-Typen
mit unterschiedlichem Aufbau, welche in verschiedenen Steuerungskanälen eingesetzt werden. Diese Bursts synchronisieren beispielsweise eine Mobilstation mit
der Basisstation oder enthalten Systeminformationen zu einem GSM-Netzwerk,
welche von den Mobilstationen benötigt werden, um Verbindungen mit dem
GSM-Netz bzw. der Basisstation aufzubauen.
Figure 1.3: Normal
Burst in GSM aus
[Lüd01, Wal01a].
Der Normal Burst ist in verschiedene Felder und Bitfolgen eingeteilt:
• Die T-Felder enthalten jeweils 3 Tail-Bits, welche als Begrenzung zu den
übrigen Feldern eingesetzt werden.
• Das TR-Feld enthält 26 Trainingsbits, welche sowohl dem Sender als auch
Empfänger bekannt sind. Mit Hilfe dieser Bits können Informationen zu
Übertragungsstörungen detektiert und ausgeglichen werden. Das TR-Feld
dient somit der Fehlererkennung und -behebung.
• Die beiden Stealing-Bits umschließen die Trainingssequenz und geben an,
ob der Burst Nutzdaten oder Signalisierungsinformationen enthält.
• Die zwei 57-bit großen Felder werden zur Übertragung der eigentlichen
Nutzdaten verwendet.
• Von den 156,25 Bits eines Normal Burst werden immer 8,25 Bits für die so
genannte Guard Period (GP-Feld) verwendet. Dieses Datenfeld vermeidet
Überschneidungen von mehreren physikalischen Paketen bei benachbarten
Zeitschlitzen, beispielsweise bei Synchronisationsungenauigkeiten.
Verbindungsaufbau
Mit Hilfe der vorgestellten physikalischen Kanäle und Bursts werden zwischen
einer Mobil- und Basisstation logische Verbindungen aufgebaut, über die sowohl
Seite 14
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Sprache, Daten als auch Steuerungsinformation übertragen werden. Generell initiiert in GSM (bis auf wenige Ausnahmen) immer die Mobilstation eine Verbindung
mit der Basisstation (beispielsweise für die Sprachübertragung bei Anrufen). Bevor eine Mobilstation jedoch für diese Datenübertragungen bereit ist, müssen verschiedene Initialisierungsphasen durchlaufen werden. Abbildung 1.4 stellt dazu
die wichtigsten Zustände einer Mobilstation dar [Lüd01].
Figure 1.4: Betriebszustände
einer Mobilstation aus
[Lüd01].
• Powered Off:
– Mit dem Einschalten der Mobilstation wird der Nutzer aufgefordert,
seine PIN einzugeben und sich gegenüber der Mobilstation zu authentisieren. Im Anschluss beginnt die Mobilstation mit der Suche
nach einem geeigneten Mobilfunknetz.
– Bevor die Mobilstation einen physikalischen Kanal zu einer Basisstation aufbauen kann, führt sie Empfangspegelmessungen auf verschiedenen Frequenzträgern durch, um den bestmöglichen Empfang
zu gewährleisten.
– Konnte die Mobilstation eine geeignete Basisstation ermitteln, versucht sie sich in das vom Nutzer bevorzugte Netz einzuwählen und
anzumelden. Ist diese Prozedur erfolgreich, wechselt die Mobilstation in den Zustand Idle.
• Idle:
– Die Mobilstation hört den sogenannten Paging-Steuerungskanal ab.
Über diesen Kanal teilt die Basisstation einer Mobilstation beispielsweise mit, wenn ein Anruf für die Mobilstation bereitsteht und diese
für die Annahme des Gespräches einen neuen Kanal aufbauen muss.
– Verändert der Teilnehmer seine Position (im abgedeckten Funkbereich), sodass sich die Qualität der Funkübertragung verschlechtert,
kann eine Zellneuwahl von Nöten sein. In diesem Fall führt die
Mobilstation erneut Empfangspegelmessungen durch und wechselt
basierend auf dem Ergebnis der Messungen die Funkzelle. Bei einem Zellwechsel führt die Mobilstation ein Location Update Prozedur
durch, in welchem dem Home Location Register die neue Position
(LAI) des Teilnehmers mitgeteilt wird (vgl. Beispiel 1.1). Im gleichen
Schritt wird der Mobilstation eine neue TMSI zugeteilt.
– Wird die Mobilstation angerufen bzw. initiiert sie einen Anruf, so
werden die nachfolgenden Schritte durchgeführt.
Bei einem von der Mobilstation ausgehenden Anruf finden die in Abbildung 1.5
dargestellten Schritte statt [Wal01a]. In den Schritten 1 und 2 leitet die Mobilstation benötigte Sicherheitsprozeduren ein (unter anderem die Nachrichtenverschlüsselung) und übermittelt einen Rufwunsch inklusive der Anschlussnummer des
Zieles. Im Anschluss überprüft das Mobile Switching Center durch Anfrage im
VLR in den Schritten 3 und 4 die Berechtigungen der Mobilstation und verifiziert
in Schritt 5 die eigenen Kommunikationswege (z.B. eine freie Leitung). Bei Erfolg
wird der Mobilstation die freie Leitung zugewiesen und der Verbindungsaufbau
zum Ziel kann eingeleitet werden.
1.4 GSM
Seite 15
Figure 1.5: Ausgehender
Verbindungsaufbau
aus [Wal01a].
Eingehende Verbindungen erfordern ungleich kompliziertere Prozeduren, welche in Abbildung 1.6 dargestellt sind. Initiiert ein externer Anrufer einen Verbindungsaufbau, so wird in Schritt 1 das nächstgelegene Gateway Mobile Switching
Center angefragt. Dieses GMSC bestimmt in Schritt 2 anhand der Rufnummer
das Home Location Register des mobilen Teilnehmers. Das HLR prüft im Anschluss diese Nummer und fordert in Schritt 3 das VLR (in dem sich der mobile Teilnehmer aktuell aufhält) auf, eine Roamingnummer (MSRN) bereitzustellen.
Nach Empfang der MSRN in Schritt 4 bestimmt das HLR das dem VLR zugehörige MSC, welches dem GMSC in Schritt 5 mitgeteilt wird. In Schritt 6 baut das
GMSC eine Verbindung mit dem für den mobilen Teilnehmer aktuell zuständigen MSC auf. Dieses MSC beauftragt in Schritt 7 das VLR damit zu prüfen, ob die
Mobilstation erreichbar ist. Ist die Mobilstation erreichbar, wird dies dem MSC
in Schritt 8 mitgeteilt, welches im Anschluss in Schritt 9 Paging-Nachrichten über
den Paging-Steuerungskanal an alle dem MSC zugeordneten Funkzellen sendet.
Meldet sich in Schritt 10 die Mobilstation auf die Paging-Nachricht, werden (wie
bei ausgehenden Verbindungsaufbauten) die Berechtigungsabfragen und Sicherheitsprozeduren in Schritt 11 durchgeführt. Bei Erfolg wird das MSC vom VLR in
Schritt 12 angewiesen, den Aufbau der Verbindung in Schritt 13 einzurichten.
Figure 1.6: Eingehender
Verbindungsaufbau
aus [Wal01a].
Ist letztendlich die Verbindung für den Anruf aufgebaut, wechselt die Mobilstation in den Zustand Dedicated. In diesem Zustand führt die Mobilstation kontinuierlich Empfangspegelmessungen durch, um mögliche Einschränkungen der
Übertragungsqualität zu detektieren und mögliche Ausweichfunkzellen zu ermitteln [Lüd01]. Überwiegen die Störungen auf dem Funkkanal oder ist der Empfangspegel zu niedrig, kann die Mobilstation mittels automatischen HandoverMechanismen an einen anderen Kanal der gleichen Funkzelle (Intracell Handover)
oder eine komplett unterschiedliche Funkzelle (Intercell Handover) übergeben wer-
Seite 16
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
den. Mit Hilfe dieser Handover-Mechanismen kann den Teilnehmern eines GSMMobilfunknetzes wie in den Anforderungen an den GSM-Standard gefordert hohe Mobilität gewährleistet werden.
E
Exkurs 1.2: General Packet Radio Service
General Packet Radio Service (GPRS) bezeichnet einen paketorientierten Dienst
für die Datenübertragung in GSM-Netzwerken, welcher im Jahr 1992 von der
ETSI standardisiert wurde [Lüd01]. Bei der Standardisierung stand beispielsweise ein effizientes Zusammenspiel mit anderen Paketdatennetzen wie dem
Internet im Fokus.
Grundsätzlich baut die GPRS-Architektur auf der von GSM auf, wurde allerdings wie in der Abbildung [Lüd01] dargestellt um weitere Elemente erweitert, da die für GSM definierten Netzelemente keine Paketvermittlung
durchführen können.
Das BSC wurde um eine Packet Control Unit erweitert, welche die Datenpakete zerlegt und wieder zusammenfügt. Die GPRS Support Nodes (GSN)
übernehmen die Aufgabe des Paketroutings über ein Backbone-Netzwerk,
welches auf Techniken des IP-Protokolls zurückgreift. Die GSN werden in
zwei Arten unterteilt: die Support GPRS Support Nodes (SGSN) versorgen
eine Gruppe von Funkzellen wohingegen die Gateway GPRS Support Nodes
(GGSN) Verbindungen beispielsweise mit dem Internet verwalten. Mit Hilfe der Border Gateways kommunizieren die einzelnen GPRS-Systeme unterschiedlicher Anbieter miteinander.
1.4.3 Sicherheit
In einem GSM-Netzwerk werden eine Vielzahl vertraulicher Daten zwischen den
einzelnen Netzwerkkomponenten ausgetauscht, welche von Angreifern für verschiedenste Attacken missbraucht werden könnten. Dies umfasst unter anderem
teilnehmeridentifizierende Daten wie die IMSI, aber auch Gesprächsinhalte, Anrufverläufe oder die Lokalität von Teilnehmern. Besonders die Datenübertragung
über Funk ist anfällig für das Abhören, sodass der GSM-Standard verschiedene
1.4 GSM
Seite 17
Authentisierungs- und Verschlüsselungsverfahren einsetzt, um die Privatsphäre
der Teilnehmer und die Dateninhalte zu schützen bzw. zu wahren.
Beispiel 1.1: Location Update Prozedur
Bei einem Wechsel der Funkzelle muss sich die Mobilstation wie in der Abbildung [Lüd01] dargestellt gegenüber dem Netzwerk erneut authentisieren
und die Verschlüsselungsparameter aushandeln. Im ersten Schritt versendet die Mobilstation dazu eine Channel-Request Nachricht mit der Anfrage,
einen Steuerungskanal aufbauen zu dürfen. Bei Erfolg antwortet der BSC
mit einer Intermediate Nachricht, in der die Parameter des Kanals (unter
anderem die Frequenz und der Zeitschlitz) enthalten sind. Die Zuweisungsphase des Kanals wird von der Location Update Request Nachricht abgeschlossen, in welcher die Mobilstation ihre bisherige TMSI und die alte LAI
weiterleitet. Das neue VLR fordert nach Erhalt der Nachricht die Authentifizierungsparamter vom alten VLR an. In Schritt 2 authentisiert sich der Teilnehmer gegenüber dem Netz und handelt aktualisierte Verschlüsselungsparameter aus. In Schritt 3 wird das eigentliche Location Update durchgeführt.
Hierbei teilt das neue VLR dem HLR die neue Zuständigkeit des Teilnehmers mit, worauf das HLR bei dem alten VLR die Löschung der Zuständigkeit beantragt. In der TMSI Reallocation Nachricht wird neben einer
neu-generierten TMSI auch die aktualisierte Location in Form der LAI an
die Mobilstation übertragen und auf der SIM-Karte gespeichert. In Schritt 4
wird letztendlich der aufgebaute Steuerungskanal wieder abgebaut.
Architektur
Abbildung 1.7 stellt die Sicherheitsarchitektur von GSM dar. Grundsätzlich verwendet GSM drei proprietäre kryptographische Algorithmen, A3, A5 und A8, die
sowohl die Authentisierung und Schlüsselgenerierung als auch die Verschlüsselungsaufgaben übernehmen. Authentizität und Vertraulichkeit werden in GSM erzeugt, indem der Teilnehmer und das Netzwerk einen 128-bit Schlüssel Ki teilen,
der auf der SIM-Karte und im Authentication Center abgespeichert ist [Bou10].
Dieser Schlüssel wird in keinem Fall über das Netzwerk übertragen und ist
dementsprechend nur dem Teilnehmer und dem Netzwerk bekannt.
B
Seite 18
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Figure 1.7: Sicherheitsarchitektur von GSM
aus [Fed99, Wal01a].
In einem ersten Schritt authentifiziert sich der Nutzer einer Mobilstation gegenüber der SIM-Karte mit der Eingabe der PIN. Weiterhin muss sich eine Mobilstation bei jedem Verbindungsaufbau oder Wechsel der Funkzelle (Location Update
Request) gegenüber dem Netzwerk authentifizieren. Diese Authentisierung findet mittels der Challenge-Response Technik statt. Dazu empfängt die Mobilstation
vom Netzwerk eine Authentication Request Nachricht mit einer 128-bit Zufallszahl RAN D, der sogenannten Challenge. Die Mobilstation leitet RAN D an die
SIM-Karte, in der mit Hilfe des A3-Algorithmus und Schlüssels Ki die 32-bit Response SRES berechnet wird. Die Response wird zurück an das Netzwerk gesendet, welches die exakt gleichen Operationen durchführt und das Ergebnis mit dem
Wert SRES der Mobilstation vergleicht. Sind die vom Netzwerk und der Mobilstation berechneten Werte identisch, so konnte sich die Mobilstation erfolgreich
gegenüber dem Netzwerk authentisieren. Sind die Werte unterschiedlich, muss
das GSM-Netzwerk davon ausgehen, dass die Mobilstation den teilnehmerspezifischen Schlüssel Ki nicht kennt.
Die bei der Authentisierung ausgetauschte Zufallszahl RAN D fließt weiterhin zusammen mit dem Schlüssel Ki in den Schlüsselableitungsalgorithmus A8, der den
64-bit Sessionkey Kc berechnet. Die Algorithmen A3 und A8 werden bei GSM häufig unter dem Namen COMP128 zusammengefasst. Nach der Schlüsselableitung
wird Kc von der SIM-Karte auf die Mobilstation übertragen, in der die nachfolgenden Verschlüsselungsoperationen stattfinden.
Für die Verschlüsselung der eigentlichen Übertragungsdaten wendet GSM die
A5-Stromchiffre an, die als Eingabe den Sessionkey Kc und die Frame-Nummer
des aktuell zu verschlüsselnden TDMA-Rahmens erhält und als Ausgabe einen
Schlüsselstrom von 228 Bits erzeugt (zweimal 114 Bits, wobei 114 Bits einem Burst
entsprechen), welcher in zwei Hälften unterteilt wird [Bou10]. Die erste Hälfte verbzw. entschlüsselt bei einer Duplexkommunikation den Download-TDMA-Frame,
wohingegen die zweite Hälfte den Upload-TDMA-Frame ver- und entschlüsselt.
Für jeden TDMA-Frame (d.h. alle 4,6 ms) wird ein neuer Schlüsselstrom generiert, wobei sich nach ungefähr 209 Minuten der Schlüsselstrom wiederholt, da
1.4 GSM
zu diesem Zeitpunkt die TDMA-Nummer überläuft und die Zählung erneut bei
0 beginnt [Fed99].
1.4.4 Angriffe
In den vergangenen Jahren wurden eine Vielzahl an Angriffen auf das GSMProtokoll und die einzelnen Authentisierungs- und Verschlüsselungsverfahren
veröffentlicht [Bou10].
Generelle Schwachstellen
In GSM-Netzwerken wird grundsätzlich nur die Authentizität der Mobilstation
gegenüber der Basisstation validiert. Die Umkehrrichtung ist im GSM-Standard
nicht vorgesehen. Dies bedeutet, dass eine Basisstation gegenüber der Mobilstation nicht zeigen muss, dass ihr der teilnehmerspezifische Schlüssel Ki bekannt
ist. Ein Angreifer kann sich dies zunutze machen und gegenüber einer Mobilstation als Basisstation ausgeben. Dazu überlagert der Angreifer die Funksignale der
echten Basisstationen mit stärkeren Signalen, sodass sich die Mobilstation des Opfers in die Basisstation des Angreifers einbucht. Die Authentisierungsphase umgeht der Angreifer, indem seine Mobilstation einen beliebigen Wert als Challenge
sendet und die Response der Mobilstation ignoriert.
In einem weiteren Angriffsszenario kann die Basisstation des Angreifers die Nachrichtenverschlüsselung deaktivieren, sodass die Kommunikation zwischen Mobilstation des Opfer und Basisstation des Angreifers unverschlüsselt abläuft. Zusätzlich kann sich der Angreifer gegenüber einer echten Basisstation als Mobilstation ausgeben und so die Anrufe und Nachrichten zwischen der Mobilstation
des Opfers und einer echten Basisstation weiterleiten und aufzeichnen. Diese Art
von Angriffen ist in Abbildung 1.8 dargestellt und konnte mit so genannten IMSICatchern durchgeführt werden.
Die Basisstation des Angreifers kann in einem weiteren Szenario wiederholte Authentisierungsanfragen an die Mobilstation stellen statt die Authentisierungsphase der Mobilstation wie im vorherigen Szenario zu umgehen, sodass der Angreifer
die (RAN D, SRES)-Tupel aufzeichnen und mit einer hinreichenden Anzahl von
Challenge-Response-Paaren den Schlüssel Ki ableiten kann.
In GSM wird bei der erstmaligen Anmeldung einer Mobilstation in ein Netzwerk
die IMSI im Klartext übertragen, da erst basierend auf der IMSI der teilnehmerspezifische Schlüssel Ki ermittelt werden kann. In dieser ersten Anmeldephase kann
ein Angreifer die IMSI mittels einfachem Abhören der Funkverbindung ermitteln.
Nach der ersten Anmeldung werden zur Verschleierung der Identität des Teilnehmers lediglich die kurzzeitig gültigen TMSIs verwendet. Es kann jedoch der Fall
eintreten, dass bei Synchronisationsproblemen zwischen einzelnen Netzsegmenten die TMSI keine Gültigkeit mehr besitzt, sodass das GSM-Netz den Teilnehmer
zu diesem Zeitpunkt nach dessen IMSI fragen muss. Auch in diesem Fall wird die
IMSI im Klartext übertragen, da dem Netzwerk keine teilnehmeridentifizierenden
Merkmale bekannt sind, um den korrekten Schlüssel Ki zu identifizieren. Ein Angreifer kann aber wie bereits zuvor erläutert eine Basisstation imitieren und die
Mobilstation ebenso direkt nach der IMSI des Teilnehmers fragen.
Seite 19
Seite 20
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Figure 1.8: Man-inthe-Middle Attacke
aus [Bou10].
Schwachstellen in den Algorithmen A3 und A8
Die Sicherheitsalgorithmen A3 und A8 (COMP128) sind der Öffentlichkeit lange
Zeit nicht zugänglich gewesen, was generell eine schlechte Vorgehensweise bei
kryptographischen Algorithmen ist. Nach Bekanntwerden der Implementierung
von COMP128 mittels Reverse-Engineering wurden eine Vielzahl von Schwachstellen in diesen Algorithmen entdeckt [Bou10]. Mit Hilfe von ausgewählten Werten für RAN D (Chosen-Challenge Angriff) konnten hinreichend viele Informationen ermittelt werden, um den Schlüssel Ki zu bestimmen. Dies ist möglich, da
die Diffusion des A3-Algorithmus fehlerhaft ist und gewisse Teile der Ausgabe auf
bestimmten Teilen der Eingabeparameter basieren. Ein Chosen-Challenge Angriff
zur Bestimmung von Ki konnte bis zu 8 Stunden dauern und bis zu 150.000 Challenges benötigen. Aufgrund von weiteren Schwachstellen in den Lookup-Tabellen
von COMP128 konnten die Angriffe jedoch derart verbessert werden, dass der
Schlüssel Ki mit weniger als 1000 zufälligen Challenges innerhalb von Minuten
bestimmt werden kann. Eine weitere Schwachstelle in COMP128 wird dadurch
definiert, dass bei der Generierung des Sessionkeys Kc der Algorithmus intern
die niederwertigsten 10 Bits auf den Wert 0 setzt, wodurch die kryptographische
Stärke der Chiffre deutlich verringert wurde.
Kann ein Angreifer mit Hilfe der vorgestellten Angriffe sowohl die IMSI abfangen
als auch den Schlüssel Ki bestimmen, so kann sich dieser als legitimer Teilnehmer
gegenüber dem Netzwerk ausgeben und beispielsweise auf Kosten des Opfers Telefongespräche durchführen und weitere Dienste in Anspruch nehmen.
1.4 GSM
Seite 21
Schwachstellen im A5-Algorithmus
Generell existieren für den A5-Algorithmus mehrere verschiedene und kryptographisch unterschiedlich starke Versionen, von denen zwei im Folgenden vorgestellt
werden. Ursprünglich wurde die proprietäre A5/1-Chiffre als Verschlüsselungsalgorithmus für die Datenübertragung in GSM eingesetzt. Neben der A5/1-Chiffre
wurde allerdings auch die kryptographisch schwächere proprietäre A5/2-Chiffre
eingesetzt, um den Import- und Exportbestimmungen einiger Länder zu entsprechen [Fed99]. Mit Hilfe von Reverse-Engineering konnten die Funktionsweisen
der bis dato unbekannten Algorithmen bestimmt werden.
A5/2-Chiffre
Die A5/2-Chiffre verwendet wie in Abbildung 1.9 dargestellt vier irregulär getaktete linear rückgekoppelte Schieberegister (LFSRs) R1 (19 Bits), R2 (22 Bits), R3
(23 Bits) und R4 (17 Bits) [Bou10].
Figure 1.9: Struktur
der GSM A5/2Chiffre aus [Ben13].
Wird ein LFSR getaktet, so wird der komplette LFSR-Inhalt um eine Position nach
rechts verschoben, wobei ein Bit ausgegeben wird. Die Ausgabebits der LFSRs
R1 bis R3 fließen wie abgebildet direkt in das Schlüsselstrombit zl ein. Weiterhin
verwendet jedes LFSR mehrere Bits, die bei einem Takt des jeweiligen LFSRs mit
dem Ausgabebit verrechnet und an die Position 0 geschrieben werden. Für R1
werden beispielsweise die Bits 18, 17, 16 und 13 XOR-verrechnet und im Anschluss
an die Position 0 geschrieben.
Neben dem jeweiligen höchstwertigen Bit eines LFSRs fließen drei weitere Bits
von R1 bis R3, im Folgenden Taps genannt, in das Schlüsselstrombit zl ein. Diese
drei Bits werden mittels einer Majority-Funktionen M kombiniert, die folgendermaßen definiert ist:
M : {0, 1}3 7→ {0, 1}
(a, b, c)2 7→ ab ⊕ ac ⊕ bc.
Das LFSR R4 und die Taktkomponente C bestimmen die Taktung der restlichen
LFSRs. Dabei definiert Ri,j das Bit des LFSR Ri an Position j, wobei Ri,0 das Bit
mit dem niedrigsten Stellenwert beschreibt.
1. Die drei Bits R4,3 , R4,7 , R4,10 werden der Taktkomponente C übergeben.
2. Die Taktkomponente wendet die Majority-Funktionen M auf diese Bits an
und taktet die restlichen LFSRs folgendermaßen:
Seite 22
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
a) Wenn M(R4,3 , R4,7 , R4,10 ) = R4,10 gilt, wird LFSR R1 getaktet.
b) Wenn M(R4,3 , R4,7 , R4,10 ) = R4,3 gilt, wird LFSR R2 getaktet.
c) Wenn M(R4,3 , R4,7 , R4,10 ) = R4,7 gilt, wird LFSR R3 getaktet.
3. LFSR R4 wird getaktet.
Der Verschlüsselungsalgorithmus operiert in zwei unterschiedlichen Modi, der
Initialisierungsphase und der Schlüsselstromerzeugung. Während der Initialisierungsphase werden die nachfolgenden Schritte ausgeführt:
1. Alle Bits in den vier LFSRs werden auf 0 gesetzt.
2. Die 64 Bits des Schlüssels Kc werden in die LFSRs geschrieben, indem folgende Operationen für i ∈ {0, ..., 63} durchgeführt werden:
a) Alle LFSRs werden einmal getaktet.
b) R1,0 := R1,0 ⊕ Kc [i], R2,0 := R2,0 ⊕ Kc [i],
R3,0 := R3,0 ⊕ Kc [i], R4,0 := R4,0 ⊕ Kc [i]
3. Die 22 Bits der Frame-Nummer f werden in die LFSRs geschrieben, indem
folgende Operationen für i ∈ {0, ..., 21} durchgeführt werden:
a) Alle LFSRs werden einmal getaktet.
b) R1,0 := R1,0 ⊕ f [i], R2,0 := R2,0 ⊕ f [i],
R3,0 := R3,0 ⊕ f [i], R4,0 := R4,0 ⊕ f [i]
4. Die Bits R1,15 , R2,16 , R3,18 und R4,10 werden auf den Wert 1 gesetzt.
5. Im Anschluss wird die Chiffre 99 Mal getaktet, wobei alle in dieser Phase
entstehenden Bits zl des Schlüsselstroms verworfen werden.
Während der Schlüsselstromerzeugung wird die Chiffre 228 Mal getaktet, wobei
alle in dieser Phase entstehenden Schlüsselstrombits verwendet werden.
Die A5/2-Chiffre von GSM ist gegen verschiedene Angriffe verwundbar, beispielsweise einer Known-Plaintext Attacke, in welcher der Angreifer mehrere KlartextChiffretext-Paare kennt [BBK08a, Bou10]. Die generelle Idee ist, dass wenn ein
Angreifer mit Hilfe der Klartext-Chiffretext-Paare die Initialzustände der LFSRs
berechnen kann, so kann er auch den Sessionkey Kc bestimmen. Zum Berechnen
der Initialzustände wird ein lineares Gleichungssystem mit 656 Variablen aufgebaut. Ein Angreifer ist an 18 + 21 + 22 = 61 dieser Variablen interessiert, den Initialzuständen der LFSRs R1 bis R3 definieren. Mit den Initialzuständen der LFSRs
und Raten der 216 möglichen Initialzustände von R4 kann der Sessionkey Kc bestimmt werden. Weitere Angriffe auf Algorithmen ähnlich der GSM A5/2-Chiffre
werden im nachfolgenden Kapitel vorgestellt.
A5/1-Chiffre
Die GSM A5/1-Chiffre ist in Abbildung 1.10 dargestellt und deutlich einfacher
aufgebaut. Anders als bei der A5/2-Chiffre wird weder ein viertes LFSR noch eine
Taktkomponente C verwendet. Als Ersatz wird in jedem LFSR ein Taktbit definiert
1.4 GSM
Seite 23
(R1,8 , R2,10 und R3,10 ). Bei einem Taktzyklus werden die drei Taktbits geprüft
und der überwiegend vorkommende Wert (0 oder 1) als Majority-Bit definiert. Im
Anschluss werden die LFSRs getaktet, bei denen die Taktbits dem Majority-Bit
entsprechen. Sind beispielsweise R1,8 = R3,10 = 1 und R2,10 = 0, so hat das
Majority-Bit den Wert 1 und die LFSRs R1 und R3 werden getaktet.
Figure 1.10: Struktur
der GSM A5/1Chiffre aus [Bou10].
Die Initialisierungsphase ähnelt der von A5/2, sodass zu Beginn die LFSRs auf 0
gesetzt und anschließend die 64 Bits des Schlüssels Kc und die 22 Bits der FrameNummer in die LFSRs getaktet werden. Im Anschluss wird die Initialisierungsphase der Chiffre mit einer 100-fachen Taktung abgeschlossen, wobei in dieser
Phase die Schlüsselstrombits verworfen werden. Die Schlüsselgenerierung gleicht
der des A5/2-Algorithmus.
Auch die A5/1-Chiffre ist für verschiedene Angriffe verwundbar, unter anderen
weil die drei LFSRs insgesamt lediglich 219+22+23 Initialzustände annehmen können. Aus diesem Grund wurden verschiedene weitere kryptographische Algorithmen für die A5-Funktion vorgeschlagen, unter anderem eine Stromchiffre auf Basis der Kasumi-Blockchiffre, welche bei GSM unter dem Namen A5/3 den Schlüsselstrom generiert. Die Kasumi-Blockchiffre wird in Abschnitt 1.5.2 genauer vorgestellt.
1.4.5 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
Kontrollaufgabe 1.1: GSM-Architektur
K
Aus welchen neun Hauptkomponenten besteht im wesentlichen ein GSMSystem? Welche Komponenten bilden das Funk-Teilsystem?
Kontrollaufgabe 1.2: Bewegungsprofil
Wie könnte ein Angreifer Bewegungsprofile in GSM erstellen und warum ist
dies überhaupt möglich?
K
Seite 24
K
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Kontrollaufgabe 1.3: Abhören
Wie könnte ein Angreifer Gesprächsdaten in GSM abhören?
1.5 UMTS
UMTS steht für Universal Mobile Telecommunications System und ist ein international etablierter Mobilfunkstandard der dritten Generation (3G). Die Entwicklung
von UMTS wurde wie die von GSM durch das European Telecommunications Standards Institute (ETSI) durchgeführt, wobei heutzutage das 3GPP (3rd Generation
Partnership Project) den UMTS-Standard weiter entwickelt. Ähnlich wie bei GSM
sollen mit dem UMTS-Standard verschiedene Ziele erreicht werden [Lüd01]:
• Universelle Nutzungsmöglichkeiten (breites Anwendungsspektrum)
• Betrieb im weltweit einheitlichen Frequenzband
• Effiziente Nutzung des Frequenzspektrums
• Vielfältiges Dienstspektrum (Sprache, Daten, Video und Multimedia) mit
hoher Datenrate und Dienstqualität
1.5.1 Systemdesign
Ein UMTS-System lässt sich wie GSM in ein Funkteilsystem (UMTS Terrestrial
Radio Access, UTRAN) und ein Vermittlungsteilsystem (Core Network, CN) einteilen [Lüd01]. Das Vermittlungsteilsystem ähnelt der Architektur und den Protokollen, die bereits bei GSM und dessen GPRS-Erweiterung Anwendung finden. Um
der Anforderung an höhere Datenraten und Multimediadiensten gerecht zu werden, wurden für das Funkteilsystem neue Konzepte eingeführt und weitere Komponenten der Architektur hinzugefügt. Um die geänderten Funktionsweisen zwischen GSM und UMTS unterscheiden zu können, wurden wie in Abbildung 1.11
zu erkennen die Namen einiger Komponenten abgeändert.
• UE: Die Mobilstation wird bei UMTS als User Equipment bezeichnet und
besteht aus dem mobilen Endgerät und dem UMTS Subscriber Identity Modul (USIM). Die USIM enthält ähnlich zur GSM SIM-Karte verschiedene
Teilnehmer-Identifizierungsmerkmale wie die IMSI und den Schlüssel Ki
sowie die kryptographischen Algorithmen für die Authentisierung.
• Node B: Der Node B entspricht im wesentlichen der GSM-Basisstation und
übernimmt die funktechnische Versorgung.
• RNC: Der Radio Network Controller übernimmt die Aufgaben der BSCs in
GSM und verwaltet mehrere Node B-Komponenten. Die RNCs sind untereinander vernetzt, sodass Handover-Mechanismen zwischen einzelnen
Funkzellen ohne Beteiligung des Vermittlungsteilsystems durchgeführt
werden können.
1.5 UMTS
Seite 25
Figure 1.11: UMTSArchitektur aus
[Lüd01].
1.5.2 Sicherheit
Bei der Entwicklung der dritten Generation der Mobilfunkstandards sollten viele der bei 2G identifizierten Schwachstellen und Fehler vermieden werden. Eine
große Verbesserung wurde alleinig dadurch erreicht, dass bereits öffentliche kryptographische Funktionen statt der proprietären Verschlüsselungsalgorithmen verwendet wurden. Dies hatte den Vorteil, dass die öffentlichen Funktionen bereits
von Experten auf ihre kryptographische Stärke untersucht worden sind. Weiterhin wurden bestimmte Prozeduren wie die Authentisierungsphase deutlich verbessert.
Authentisierung und Schlüsselableitung
Während sich in GSM lediglich die Mobilstation gegenüber dem Netz authentisieren musste, wendet UMTS Mutual Authentication (auch Zwei-WegeAuthentisierung genannt) an, in der sich beide Kommunikationspartner dem
anderen gegenüber authentisieren müssen [Bou10]. Weiterhin fließen bei UMTS
Sequenznummern in die Nachrichten ein, um Freshness zu garantieren und gegen Replay-Angriffe zu schützen. Die USIM speichert dazu die SQNM S , in der
die höchste von der USIM akzeptierte Sequenznummer abgelegt wird. Die Sequenznummer SQNHE wird vom UMTS-Netz für jeden Teilnehmer individuell
gespeichert.
Die Authentisierung wird ähnlich zum GSM-Standard durchgeführt (um Kompatibilität mit GSM zu wahren), in dem ein Challenge-Response Verfahren angewandt wird, welches in Abbildung 1.12 dargestellt ist. Wie bereits bei GSM
dient das Verfahren dazu, dem Kommunikationspartner die Kenntnis des geteilten Schlüssels Ki zu zeigen, ohne diesen Schlüssel über das Netz verschicken zu
müssen. Der Authentisierungsprozess wird beispielsweise bei der ersten Registrierung des Teilnehmers in ein UMTS-Netz aber auch bei Location Update Prozeduren durchgeführt.
In der ersten Phase der Authentisierung wird ein Authentication Request von dem
für eine Mobilstation aktuell gültigen VLR an das HLR im Heimatnetz des Teilnehmers gesendet. Das HLR generiert eine Zufallszahl RAN D und ein Authentisierungstoken AU T N , welches vom VLR an die Mobilstation weitergereicht wird.
Seite 26
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Figure 1.12: Authentisierung
in UMTS aus [Bou10].
Unter Einbeziehung dieser beiden Parameter leitet die Mobilstation sowohl die
Authentisierung-Response als auch die Schlüssel für die Datenverschlüsselung
ab.
Figure 1.13: Generierung
des Authentisierungstokens aus [Bou10].
Abbildung 1.13 stellt die Schritte des HLRs dar. Im ersten Schritt generiert das
HLR eine frische Sequenznummer SQN , welche der Mobilstation beweist, dass
diese Nachricht nicht bereits früher versendet worden ist. Weiterhin wird eine
Zufallszahl RAN D generiert. Unter Einbeziehung des Schlüssels Ki werden mit
Hilfe der kryptographischen Funktionen f 1 bis f 5 die Parameter der Authentisierung und die Schlüssel abgeleitet. Grundsätzlich basieren die Funktionen f 1 bis
f 5 auf dem selben kryptographischen Algorithmus, unterscheiden sich jedoch
in ihrer internen Verarbeitungsweise, sodass mit Hilfe der fünf Ergebnisse keine
Rückschlüsse auf den verwendeten Schlüssel Ki gezogen werden können.
1. Die Funktion f 1 ist ein Message Authentication Algorithmus, welcher unter Einbeziehung des Schlüssels, der Sequenznummer, der Zufallszahl und
eines Authentication and Key Management Fields (kann unter anderem weitere Schlüssel Ki in der USIM aktivieren) einen Message Authentication Code
M AC generiert.
1.5 UMTS
Seite 27
2. Die Funktion f 2 generiert den Authentisierungsparameter, der in späteren
Schritten mit der Authentisierung-Response der Mobilstation verglichen
wird.
3. Die Funktionen f 3 bis f 5 leiten den Cipher-Key CK, den Integrity-Key IK
und den Anonymity-Key AK ab.
Im letzten Schritt bildet das HLR das Authentisierungstoken AU T N
AU T N = (SQN ⊕ AK, AM F, M AC)
und sendet dieses über das VLR an die Mobilstation.
Figure 1.14: Verifizierung
des Authentisierungstokens im USIM aus
[ETS99].
Nach Erhalt des Tupels (RAN D, AU T N ) verifiziert die Mobilstation die erhaltenen Werte und leitet wie in Abbildung 1.14 dargestellt ihrerseits die weiteren Schlüssel ab. Dazu berechnet die USIM zuerst den Anonymity-Key AK =
f 5(Ki , RAN D) und damit die Sequenznummer SQN = (SQN ⊕ AK) ⊕ AK. Im
weiteren Schritt wird die MAC XM AC = f 1(Ki , SQN, RAN D, AM F ) berechnet
und mit dem in AU T N enthaltenen M AC des UMTS-Netzes verglichen. Sind die
Parameter unterschiedlich, sendet die Mobilstation eine User Authentication
Reject Nachricht an das Netz und bricht die Authentisierung ab. Bei Gleichheit verifiziert die USIM, ob die erhaltene Sequenznummer SEQ mit Hilfe der
gespeicherten SQNM S in einem gültigen Wertebereich liegt. Schlägt die Verifizierung fehl, wird eine Synchronization Failure Nachricht an das Netz übertragen und die weiteren Schritte werden abgebrochen. Im Anschluss berechnet
die USIM RES = f 2(Ki , RAN D), sendet diesen Wert zurück an die Basisstation und berechnet den Cipher-Key CK = f 3(Ki , RAN D) und den IntegrityKey IK = f 4(Ki , RAN D). Im UMTS-Netz wird RES nach Erhalt mit dem Wert
XRES verglichen. Stimmen beide Werte überein, so ist die Authentisierungsund Schlüsselerzeugungsphase abgeschlossen und beide Kommunikationspartner konnten beweisen, dass sie im Besitz des Schlüssels Ki sind.
Verschlüsselung
Nach der Authentisierungs- und Schlüsselerzeugungsphase beginnen Mobil- und
Basisstation mit der Verschlüsselung der zu übertragenen Nachrichten. Die Ver-
Seite 28
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
schlüsselungsfunktionen sind auf der Mobilstation und in den Radio Network
Controllern implementiert. Im UMTS-Standard wird dazu die f 8-Funktion verwendet, die in Abbildung 1.15 dargestellt ist.
Figure 1.15: Schlüsselstromgenerator f 8 aus
[ETS01].
Die f 8-Funktion ist eine symmetrische Stromchiffre, welche unter Einfluss des
Cipher-Keys CK und der Kasumi-Chiffre einen Frame variabler Länge verschlüsselt. Um sicherzustellen, dass zwei Frames nicht den gleichen Schlüsselstrom
verwenden, werden die drei Parameter COU N T , BEARER und DIRECT ION
einbezogen. Die Ausgabe der f 8-Funktion ist eine Schlüsselstromsequenz mit
der Länge des zu verschlüsselnden Frames, sodass mittels einfacher XORVerknüpfung Klartext und Schlüsselstrom den Ciphertext bilden.
Figure 1.16: Integritätsfunktion f 9 aus
[ETS01].
Der UMTS-Standard fügt verschlüsselten Nachrichten auf Steuerungskanälen zusätzliche Integritätsinformationen hinzu. Dazu wird die in Abbildung 1.16 dargestellte Funktion f 9 verwendet, welche basierend auf den Nachrichtendaten, dem
1.5 UMTS
Seite 29
Integrity-Key IK und einem Zufallswert F RESH einen 32-bit Message Authentication Code erzeugt.
M AC = f 9(IK, COU N T − I, M ESSAGE, DIRECT ION, F RESH)
Dieser M AC wird an die mit der f 8-Funktion verschlüsselten Daten gehängt.
Auf der Empfängerseite wird zur Verifizierung ebenfalls der MAC berechnet und
mit dem vom Sender berechneten und weitergeleiteten Wert verglichen. Ähnlich zu der f 8-Schlüsselstromfunktion verwendet auch die Integritätsfunktion die
Kasumi-Blockchiffre.
Kasumi-Chiffre
Die Kasumi-Chiffre ist wie bereits in den vorherigen Abbildungen angedeutet eine
Vielfach in UMTS angewandte Blockchiffre. Die Chiffre basiert auf einem Feistelnetzwerk (vgl. Vorlesung Kryptographie I und II), welches aus 64-bit Eingabeblöcken und dem Schlüsselparameter K den Ciphertext erzeugt [ETS07].
Wie in Abbildung 1.17 zu erkennen führt die Chiffre 8 Runden aus, wobei sie in
einer einzelnen Runde lediglich eine Hälfte der Eingabe verarbeitet. Zu Beginn
wird der 64-bit Eingabeblock in zwei 32-bit Blöcke L0 und R0 aufgeteilt. In den
weiteren Schritten führt die Chiffre für i ∈ {1, ..., 8} die Operationen
Ri = Li−1
Li = Ri−1 ⊕ fi (Li−1 , RKi )
durch, wobei fi die Rundenfunktion mit dem Eingabeparameter Li−1 und Rundenschlüssel RKi beschreibt. Die Chiffre liefert in der achten Runden den resultierenden Chiffretext (L8 ||R8 ) zurück.
Die Rundenfunktion fi erhält den 32-bit Eingabeparameter I und liefert den 32-bit
Ausgabeparameter O zurück, welcher unter Anwendung des Rundenschlüssels
RKi , bestehend aus den Unterschlüsseln (KLi , KOi , KIi ), und den Unterfunktionen F L und F O gebildet wird. Die Rundenfunktion fi führt basierend auf der
Rundennummer unterschiedliche Operationen durch.
Für ungerade Rundennummer i ∈ {1, 3, 5, 7} ist fi definiert als
fi (I, RKi ) = F O(F L(I, KLi ), KOi , KIi )
und für gerade Rundennummer i ∈ {2, 4, 6, 8} als
fi (I, RKi ) = F L(F O(I, KOi , KIi ), KLi ).
Die F L-Funktion besteht aus einfachen logischen Operationen und Verschiebungen. Dazu wird der Schlüssel KLi in zwei Unterschlüssel geteilt und mit jeweils
einem Teil der Eingabe I = (L||R) verrechnet.
KLi = KLi,1 ||KLi,2
R0 = R ⊕ ROL(L ⊕ KLi,1 )
L0 = L ⊕ ROL(R0 ⊕ KLi,2 )
Die F O-Funktion besteht wie die fi -Funktion auf der Feistelstruktur mit diesmal
drei Runden und einer Unterfunktion F I. Die 32-bit Eingabe wird ähnlich zu der
Seite 30
3GPP TS 35.202 version 7.0.0 Release 7
18
ETSI TS 135 202 V7.0.0 (2007-06)
Chapter 1 Sicherheitsaspekte
von Mobilfunknetzen
Annex 1 (informative):
Figures of the KASUMI Algorithm
Figure 1.17: Struktur
der Kasumi-Chiffre
aus [ETS07].
L0
R0
64
32
32
KL 1
32
16
KO1, KI 1
FL1
FO2
9
KOi,1
FO1
7
S9
KI i,1
FIi1
KO2, KI 2
16
16
zero-extend
KL2
S7
KOi,2
FL2
truncate
KI i,2
FIi2
KIi,j,1
KL 3
KO3, KI 3
FL3
FO3
KOi,3
KI i,3
FIi3
KO4, KI 4
FO4
S9
zero-extend
KL4
FL4
S7
truncate
KL 5
KO5, KI 5
FL5
FO5
Fig.2: FO Function
KO6, KI 6
Fig.3: FI Function
KL6
32
FO6
FL6
16
16
KLi,1
KL 7
KO7, KI 7
FL7
FO7
KLi,2
KO8, KI 8
FO8
KL8
FL8
bitwise AND operation
bitwise OR operation
L8
R8
one bit left rotation
C
Fig. 1: KASUMI
Fig.4: FL Function
ETSI
KIi,j,2
1.5 UMTS
Seite 31
fi -Funktion in zwei Hälften L0 und R0 geteilt. Die beiden 48-bit Schlüssel werden
in jeweils drei 16-bit Unterschlüssel
KOi = KOi,1 ||KOi,2 ||KOi,3
KIi = KIi,1 ||KIi,2 ||KIi,3
geteilt. Für j ∈ {1, 2, 3} werden im Anschluss die Operationen
Rj = F I(Lj−1 ⊕ KOi,j , KIi,j ) ⊕ Rj−1
Lj = Rj−1
durchgeführt und (L3 ||R3 ) ausgegeben. Die Unterfunktion F I teilt die Eingabe
in zwei ungleiche Hälften und wendet auf diese mehrmals zwei Lookup-Tabellen
(S7 und S9) an.
Angriffe
Die Sicherheitsarchitektur von UMTS wurde im Gegensatz zu GSM stark verbessert. Dies hat zum einen den Grund, dass eine Zwei-Wege-Authentisierung eingeführt wurde, welche eine Vielzahl der in Abschnitt 1.4.4 vorgestellten GSM
Angriffe verhindern soll. Desweiteren wurde für UMTS auf öffentlich verfügbare Kryptoalgorithmen zurückgegriffen, welche unter anderem mit Hilfe der Integritätsfunktion f 9 die Datenintegrität über den Funkkanal absichern. Dennoch
sind verschiedene Angriffe auf die Sicherheitsmerkmale vom UMTS vorgestellt
worden. Beispielsweise wurden verschiedene Attacken auf die Kasumi-Chiffre bekannt, welche die Chiffre mit Hilfe von Kryptoanalyse mit einer Komplexität von
232 brechen können [DKS10].
1.5.3 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
Kontrollaufgabe 1.4: Architektur in UMTS
K
Aus welchen Hauptkomponenten besteht im wesentlichen ein UMTSSystem? Wozu dienen die neu eingeführten Komponenten?
Kontrollaufgabe 1.5: Authentisierungsphase in UMTS
Welche Parameter werden zwischen UMTS-Netz und Mobilstation während
der Authentisierungsphase ausgetauscht? Wozu dienen diese Parameter im
Einzelnen? Welche Operationen finden in der Authentisierungsphase auf
der Mobilstation statt?
K
Seite 32
K
Chapter 1 Sicherheitsaspekte von Mobilfunknetzen
Kontrollaufgabe 1.6: Verschlüsselung in UMTS
Beschreiben Sie die Aufgaben der f 8 und f 9-Funktionen. Was haben beide
Funktionen in ihrer Struktur gemeinsam?
1.6 Übungen
Seite 33
1.6 Übungen
Übung 1.1: Verschlüsselung in GSM
Ü
Es existieren verschiedene Angriffe auf die GSM-Verschlüsselungsalgorithmen.
Beispielsweise kann mittels eines Ciphertext-only-Angriffes auf die A5/2
Chiffre der Schlüssel Kc innerhalb von wenigen Sekunden bestimmt werden.
Wie könnte ein Angreifer diese Attacke auf A5/2 ausnutzen, um auch Gespräche einer Mobilstation in einem mit A5/1 oder A5/3-Algorithmen geschützten GSM-Netz abzuhören, wenn die Mobilstation auch die Verwendung der A5/2-Chiffre unterstützt? Beschreiben Sie die einzelnen Schritte.
Welche Eigenschaften von GSM erlauben diesen Angriff?
Übung 1.2: Verschlüsselung in GSM / UMTS
Ü
Warum ist es im GSM-Standard einem Angreifer möglich, Nachrichten
zwischen Mobilstation und GSM-Netzwerk abzuändern? Wie soll dies im
UMTS-Standard verhindert werden?
Übung 1.3: Blockchiffre / Feistelnetzwerk
Was macht eine Blockchiffre, die auf einem Feistelnetzwerk besteht im Hinblick auf Ver- und Entschlüsselung besonders? Wie sieht die generelle Struktur aus?
Ü
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
2.1 Lernziele
Sie kennen die Grundlagen der Kommunikation über Satellitentelefone und können Unterschiede zwischen Protokollen von Satellitentelefonen und anderen Mobilfunkstandards wie GSM / UMTS benennen. Weiterhin können Sie die generellen Funktionsweisen von zwei Satellitentelefon-Protokollfamilien erläutern. Abschließend können Sie Angriffe auf die zwei Protokolle aufzeigen und skizzieren.
2.2 Advanced Organizer
Wie ist ein Satellitentelefonnetzwerk aufgebaut und welche Angriffe sind auf
die verschiedenen Protokollfamilien möglich? In diesem Studienbrief werden der
Aufbau und zwei der verwendeten Protokolle von Satellitentelefonnetzwerken
aufgezeigt und Schwachstellen erläutert.
2.3 Einleitung
In diesem Studienbrief werden die Grundlagen der Kommunikation von Satellitentelefonen und ihre Einsatzgebiete erläutert. Weiterführend wird der Aufbau
und die Funktionsweise von zwei verwendeten Protokollfamilien aufgezeigt. Dies
umfasst insbesondere den Aufbau und die Funktionsweise der zugehörigen proprietären kryptographischen Verschlüsselungsfunktionen. Abschließend werden
verschiedene Angriffe auf diese Verschlüsselungsfunktionen vorgestellt.
2.4 Grundlagen
Mobile Kommunikationssysteme haben die Art und Weise der heutigen Kommunikation revolutioniert. Statt für die Telefon- und Datenkommunikation wie vor einigen Jahren üblich statische Festnetzanschlüsse nutzen zu müssen, können heutzutage Daten mittels mobilen zellulären Systemen wie dem Global System for Mobile Communications (GSM) von beinahe jedem beliebigen Ort übertragen werden.
Diese zellulären Systemen erfordern Funkzellen in denen Verbindungen innerhalb des mobilen Netzwerkes aufgebaut werden. Funkzellen werden durch den
von der Sendeeinrichtung abgedeckten Bereich definiert, in der die Mobilfunksignale empfangen und fehlerfrei verarbeitet werden können. Eine Sendeeinrichtung besteht ihrerseits dafür aus Sendern / Empfängern, Antennen und digitalen
Signalprozessoren zur Verarbeitung der Daten. Ein großer Nachteil dieser Sendeeinrichtungen besteht allerdings darin, dass die Reichweite limitiert ist und somit in abgelegeneren Orten ohne hinreichende Signalabdeckung keine Telefonie
möglich ist. Dies trifft beispielsweise auf Ölplattformen oder Schiffe zu. Als Lösung wurden Satellitensysteme eingeführt, welche die Problematik der Signalabdeckung umgehen, indem die Sprach- und Nutzdaten direkt mit geostationären
Telekommunikationssatelliten ausgetauscht werden.
Seite 35
Seite 36
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
Für die Satellitenkommunikation werden heutzutage hauptsächlich die folgenden zwei Protokollfamilien verwendet, die beide vom European Telecommunications Standards Institute (ETSI) entwickelt und standardisiert wurden.
• Das Geostationary Earth Orbit (GEO) Mobile Radio Interface (besser bekannt
als GMR-1) ist ein ETSI-Standard, der vom terrestrischen zellulären GSMStandard abgeleitet wurde. Die Spezifikationen von GMR bilden eine Erweiterung zum GSM-Standard, wobei einige Eigenschaften der Spezifikationen speziell für die Satellitenkommunikation abgeändert wurden. Die
GMR-1-Familie wird von verschiedenen Anbietern wie Thuraya, SkyTerra
und TerreStar unterstützt und wurde in der Vergangenheit mehrmalig überarbeitet, um weitere Dienste anzubieten.
• Die GMR-2-Familie ähnelt noch deutlicher dem GSM-Standard und wurde vom GMR-1-Standard abgeleitet, wobei sich die Netzwerkarchitekturen
deutlich voneinander unterscheiden.
Die Spezifikationen von GMR-1 und GMR-2 sind online verfügbar, enthalten allerdings keinerlei Informationen über die Implementierungen der Sicherheitsmerkmale, beispielsweise die angewandten Verschlüsselungsalgorithmen, die für die
Sicherung der Kommunikationskanäle zwischen Satellitentelefon und Satellit zuständig sind. Angreifer können die Satellitenkommunikation beispielsweise auch
aus einiger Entfernung abhören und mitschneiden, sodass eine schwache Verschlüsselung dementsprechend die Vertraulichkeit in der Satellitenkommunikation zerstören würde.
2.4.1 Netzwerkstruktur
Im Folgenden wird der Aufbau und die Struktur eines Satellitenkommunikationsnetzwerkes anhand des Anbieters Thuraya genauer aufgezeigt.
Thuraya implementiert den GMR-1-Standard und bietet die Satellitentelefonie für
einen weiten Teil Europas, den mittleren Osten, Nord- und Ostafrika, Asien und
Australien an. Um diese Reichweite zu erzielen, besteht das Netzwerk aus zwei
überlappenden Regionen, wobei jede Region von einem eigenen Satelliten abgedeckt wird. Thuraya-Satelliten operieren im geosynchronen Orbit (GSI), in dem
sie keine bestimmte Position einnehmen sondern einem festen Bewegungsmuster
folgen. Zur Zeit nutzt Thuraya zwei Satelliten namens Thuraya-2 und Thuraya-3,
wobei Thuraya-2 wie in Abbildung 2.1 erkennbar den größten Teil von Europa
und Afrika abdeckt.
Figure 2.1: Abdeckung
des Thuraya-2 Satelliten aus [DHW+ 13].
2.4 Grundlagen
Seite 37
Thuraya überträgt Sprach-, Fax- und IP-basierte Daten an Orte, an denen konventionelle mobile Kommunikation nicht möglich ist. Zusätzlich zu den zwei Satelliten nutzt Thuraya terrestrische Gateways und ein primäres Gateway (lokalisiert
in den Vereinigten Arabischen Emiraten), welche das gesamte Netzwerk wie in
Abbildung 2.2 dargestellt verwalten. Die Gateways stellen unter anderem die Verbindungen zu den kabelgebundenen Netzwerken wie dem Telefonnetz (Public
Switched Telephone Network, PSTN) her. Für die Kommunikation mit dem Satelliten nutzen die Gateways die C-Frequenzbänder in den Bereichen 3,400 - 3,625
und 6,425 - 6,725 GHz. Für den Transport der Daten zwischen Satellitentelefon
und Satellit wird das L-Band verwendet, wobei der Bereich 1,525 - 1,559 GHz für
den Downlink (Satellit zu Telefon) und der Bereich 1,6265 - 1,6605 GHz für den
Uplink (Telefon zu Satellit) reserviert ist.
Figure 2.2: Struktur
eines geostationären
Satellitennetzwerkes
aus [DHW+ 12, Dri12].
L-Band
Spotbeam
C-Band
Gateway
Station
End User Devices
C-Band
Operator Control
Facility
PSTN
2.4.2 Kanäle
Bei der Satellitenkommunikation werden für die Übertragung der Daten die Multi
Carrier (MC) und Time Division Multiple Access (TDMA) Nachrichtenübertragungsverfahren eingesetzt. Dabei werden die Frequenzspektren vom Up- als auch Downlink in 1087 Duplex-Frequenzträger (MC) mit einem Abstand von 31,25 kHz eingeteilt. Jeder Träger wird wie in Abbildung 2.3 dargestellt in 24 Zeitschlitze (TDMA) unterteilt, die sich alle 40 ms wiederholen und einen TDMA-Frame bilden.
TDMA-Frames können zu Gruppen zusammengefasst werden, wobei 16 Frames
beispielsweise einen Multiframe mit einer Dauer von 640 ms bilden. Jeder TDMAFrame wird durch eine 19-bit Frame-Nummer identifiziert, wobei die Nummer bei
0 beginnt und für jeden weiteren Frame erhöht wird.
...
Pro Frequenzträger und Zeitschlitz kann ein logischer Kanal aufgebaut werden.
Mit Hilfe dieser Architektur wird ein Kanal eindeutig durch die IDs des Frequenzträgers und Zeitschlitzes definiert. In GMR existieren verschiedene Arten
von Kanälen, wobei diese wie bei GSM entweder in Traffic-Kanäle (Traffic Channels, TCH) für Nutzdaten oder Kontrollkanäle (Control Channels, CCH) eingeteilt
werden können. Dazu gehören beispielsweise der Frequency Correction Channel
(FCCH), der Common Control Channel (CCCH) und der Traffic Channel-3 (TCH3).
Figure 2.3: TDMAStruktur eines GMR-1
Netzwerkes aus
[DHW+ 13].
Seite 38
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
Der FCCH wird nach dem Einschalten des Satellitentelefons zur Ermittlung der
relativen Zeit und der Frequenzfehler verwendet, um das Telefon mit dem Satelliten zu synchronisieren. Der CCCH überträgt beispielsweise Anfragen an neue
Kanäle (beispielsweise TCH3) an ein Telefon. Der TCH3 überträgt letztendlich die
Sprachdaten.
2.4.3 Kodierung und Verschlüsselung
Die Nutzdaten werden über die Kanäle mittels TDMA-Frames (Blöcke von aufeinanderfolgenden Bits) übertragen, wobei die Frames vor der Übertragung wie in
Abbildung 2.4 dargestellt Kodierungs- und Verschlüsselungsverfahren durchlaufen, bevor sie abschließend über die Antenne des Satellitentelefons an den Satelliten übertragen werden. Die angewandten Kodierungsverfahren werden durch
den Kanaltyp bestimmt und können bei einigen Kanälen entfallen.
Figure 2.4: Kodierungund Verschlüsselungsschema für
Informationen in einem GMR-1 Netzwerk
aus [DHW+ 13].
E
block
encoding
convolutional
encoding
channel
interleaving
scrambling
intraburst
multiplexing
encryption
modulation
Exkurs 2.1: Kodierung im GMR-1-Standard
Laut GMR-1-Standard [ETS02] werden bei der Kodierung folgende Schritte
durchgeführt:
Each channel uses the following sequence and order of operations:
• the information bits are coded with a systematic block code cyclic redundancy check (CRC), building words of information + parity bits;
• these information + parity bits are encoded with a convolutional code,
building the coded bits;
• the coded bits are reordered and potentially interleaved over multiple
bursts;
• the interleaved bits are scrambled and, in some cases, multiplexed
with other bits (before or after encryption);
• the multiplexed bits are mapped to the physical burst.
Um die zu übertragenen Daten gegen das Abhören zu schützen, werden die enkodierten Daten wie bei GSM mit Hilfe eines proprietären kryptographischen Algorithmus verschlüsselt. Dabei wird die Verschlüsselung in GMR-1 pro Session
durchgeführt. Dies bedeutet, dass für die Dauer einer Session (beispielsweise ein
Anruf) ein Sessionkey Kc generiert wird.
Dieser Key wird wie in Abbildung 2.5 dargestellt mittels der Challenge-Response
Technik von einer Zufallszahl RAN D und einem Langzeitschlüssel Ki abgeleitet,
wobei Ki lediglich dem Satellitentelefon und dem Satellitennetzwerk bekannt ist.
In der GMR-1-Spezifikation wird der Algorithmus zur Schlüsselableitung A8 genannt, wobei er die gleiche Funktion wie die A8-Funktion in GSM hat. Auf der
Seite des Telefons ist dieser Algorithmus auf der SIM-Karte implementiert, auf
2.4 Grundlagen
Seite 39
Satellitentelefon
(kennt Ki)
Netzwerk
Authentication Request RAN D
←−−−−−−−−−−−−−−−−−−−−−−−−−
SRES = A3(Ki; RAN D)
Authentication Response SRES
−−−−−−−−−−−−−−−−−−−−−−−−−→
Kc = A8(Ki; RAN D)
Cipher mode Command
←−−−−−−−−−−−−−−−−−−−−−−−−−
d0 = A5(Kc; 0, N0 , · · · )
Cipher mode complete
−−−−−−−−−−−−−−−−−−−−−−−−−→
..
.
Daten N0 ,d0
−−−−−−−−−−−−−−−−−−−−−−−−−→
Daten N1 ,d1
←−−−−−−−−−−−−−−−−−−−−−−−−−
Daten N2 ,d2
←−−−−−−−−−−−−−−−−−−−−−−−−−
..
.
(kennt Ki) Figure 2.5: Authentisierung
und Verschlüsselung
in einem GMR-1 Netzwerk aus [DHW+ 13].
Kc = A8(Ki; RAN D)
d1 = A5(Kc; 1, N1 , · · · )
d2 = A5(Kc; 1, N2 , · · · )
der auch der Langzeitschlüssel Ki gespeichert ist. Bevor der Sessionkey Kc generiert wird, führen Satellitentelefon und Netzwerk eine Authentisierung mit Hilfe
des A3-Algorithmus durch, welcher ebenfalls die gleiche Funktion wie in GSM
erfüllt. Nach Aufbau der Session werden die Daten schließlich mittels Sessionkey
und der A5-Stromchiffre (A5-GMR-1) verschlüsselt, wobei als zusätzlicher Parameter die TDMA-Frame-Nummer und die Richtung der Daten (Satellitentelefon
zu Satellit oder umgekehrt) mit in die Verschlüsselung einfließen.
2.4.4 Architektur eines Satellitentelefons
Im Folgenden wird ein kurzer Überblick über die generelle Architektur von Satellitentelefonen gegeben. Tiefergehende Informationen zu bestimmten Satellitentelefonen werden in den Abschnitten 2.5 und 2.6 vorgestellt.
Generell ähnelt die Architektur von Satellitentelefonen der von zellulären Telefonen. Beide Arten von Telefonen müssen eine hohe Anzahl an Sprach- und Signaldaten verarbeiten, weswegen sie typischerweise mit dedizierten digitalen Signalprozessoren (DSP) ausgestattet sind. Die DSPs übernehmen dabei die aufwendigen Rechenoperationen wie beispielsweise die Verschlüsselungsfunktionen.
Der Kern jedes Telefons ist ein Standard-Mikroprozessor (häufig auf der ARMArchitektur basierend), der die Grundoperationen des Telefons durchführt. Dazu gehört unter anderen die Initialisierung des DSPs während des Bootprozesses.
Hauptprozessor und DSP teilen sich den Hauptspeicher oder ähnliche HardwareDevices, über die beide Prozessoren miteinander kommunizieren. Das Betriebssystem eines Satellitentelefons ist speziell an die Aufgaben und das Einsatzgebiet
angepasst, beispielsweise limitierte Ressourcen und Echtzeitanforderungen.
2.4.5 Analyse existierender Protokolle
Wie bereits in Abschnitt 2.4 beschrieben existieren außer einer generellen Übersicht über die Verschlüsselungstechniken keinerlei Informationen zu den Funk-
Seite 40
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
tionsweisen der beiden hauptsächlich verwendeten Protokollfamilien von Satellitentelefonen, GMR-1 und GMR-2, sodass die verwendeten kryptographischen
Algorithmen lange Zeit als Blackbox angesehen werden mussten. Im Jahr 2012 ist
es Forschern [DHW+ 12, Dri12, DHW+ 13] mittels Reverse-Engineering gelungen,
die Verschlüsselungsalgorithmen zu bestimmen und zu analysieren. Dazu sind
die Forscher folgendermaßen vorgegangen:
• Finden von Firmware-Update-Paketen von GMR-1- und GMR-2Satellitentelefonen und den dazugehörigen Updateprogrammen (typischerweise Anwendungen unter Windows).
• Extraktion der Firmware-Images aus den Update-Paketen.
• Rekonstruktion des korrekten Speicherabbildes von Code- und Datensegmenten im Firmware-Image.
• Identifizierung der DSP-Initialisierungsroutinen, um den DSP-Code zu extrahieren.
• Suche nach den Verschlüsselungsalgorithmen im DSP-Code mit Hilfe von
Heuristiken und Techniken wie der Datenflussanalyse.
Generell konnten sich die Forscher verschiedene Informationen zu Nutze machen,
um die Verschlüsselungsfunktionen im DSP-Programmcode zu identifizieren:
• Die Länge des Sessionkeys ist bekannt.
• Die Länge des von der Chiffre generierten Schlüsselstroms ist gleich der
Länge eines verschlüsselten Frames.
• Da die GMR-Standards vom GSM-Standard abstammen, sollten die Algorithmen zumindest leichte Ähnlichkeiten zu den A5-Algorithmen von GSM
aufweisen.
Im Folgenden werden die in den GMR-1- und GMR-2-Protokollfamilien verwendeten Verschlüsselungsroutinen und deren Funktionsweisen genauer vorgestellt
und Schwachstellen und Angriffe aufgezeigt.
2.4.6 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
K
Kontrollaufgabe 2.1: Aufgaben der A3- und A8-Algorithmen
Was sind die Aufgaben der Algorithmen A3 und A8 und wie fließen deren
Berechnungen in die Satellitenkommunikation ein?
K
Kontrollaufgabe 2.2: Aufbau von Satellitentelefonen
Aus welchen Komponenten bestehen im Allgemeinen Satellitentelefone?
2.5 GMR-1 Protokoll
Seite 41
2.5 GMR-1 Protokoll
Für die Analyse der GMR-1-Protokollfamilie wurde das Thuraya SO-2510 Satellitentelefon verwendet. Die Firmware für dieses Telefon wurde frei verfügbar auf
der Herstellerseite angeboten und konnte von den Forschern analysiert werden.
2.5.1 Hardwarearchitektur
Das Thuraya SO-2510 Satellitentelefon verwendet die Texas Instruments
OMAP1510 Plattform. Der Kern der Plattform ist wie in Abbildung 2.6 dargestellt ein ARM-925 Mikroprozessor in Kombination mit einem TI TMS320C5000
DSP. Beide Prozessoren kommunizieren über einen geteilten Peripheriebus und
verwenden weiterhin den gleichen RAM-Speicher bzw. können weiteren Speicher wie SRAM oder Flash adressieren. Bei Systemstart des Telefons werden
der DSP-Programmcode und zugehörige Daten vom ARM-Mikrocontroller in
bestimmte Speicherbereiche des DSPs geschrieben und im Anschluss vom DSP
ausgeführt.
DSP
MMU
C55x DSP
SARAM
Flash /
SRAM
Memory Interface
Controller (MIC)
ARM / DSP
Shared Peripherals
SDRAM
MMU
ARM Core
2.5.2 Struktur
GMR-1 verwendet die in Abbildung 2.7 dargestellte Stromchiffre, wobei deren
Struktur dem in GSM eingesetzten A5/2-Algorithmus (vgl. Abbildung 2.8) stark
ähnelt. Ähnlich zum A5/2-Algorithmus nutzt GMR-1 vier irregulär getaktete linear rückgekoppelte Schieberegister (LFSR), welche im Folgenden R1 , R2 , R3 und
R4 genannt werden.
Bei einem genaueren Vergleich der beiden Algorithmen sind wie auch in Tabelle 2.1 dargestellt einige Unterschiede in der Struktur zu erkennen. Für die meisten
LFSRs wurden die Feedback-Polynome als auch die Eingabeparameter der nichtlinearen Majority-Funktion M modifiziert, die bei GMR-1 folgendermaßen definiert ist:
M : {0, 1}3 7→ {0, 1}
(x2 , x1 , x0 )2 7→ x2 x1 ⊕ x2 x0 ⊕ x0 x1 .
Figure 2.6: OMAP1510
Plattform aus
[DHW+ 12, Dri12,
DHW+ 13].
Seite 42
Figure 2.7: Struktur
der A5-GMR-1-Chiffre
aus [DHW+ 12, Dri12,
DHW+ 13].
Figure 2.8: Struktur
der GSM A5/2Chiffre aus [Ben13].
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
2.5 GMR-1 Protokoll
Seite 43
Ebenfalls wurden die Positionen der Bits abgeändert, die mit den Ausgaben der
Majority-Funktionen verrechnet werden, im Folgenden Taps genannt. Gleichgeblieben sind jedoch die jeweiligen Längen der LFSRs.
A5-GMR-1
LFSR
R1
R2
R3
R4
A5/2
Feedback Polynom
Taps
Feedback Polynom
Taps
x19 + x18 + x17 + x14 + 1
x22 + x21 + x17 + x13 + 1
x23 + x22 + x19 + x18 + 1
x17 + x14 + x13 + x9 + 1
1,6,15
3,8,14
4,15,19
1,6,15
x19 + x5 + x2 + x + 1
x22 + x + 1
23
15
x + x + x2 + x + 1
x17 + x5 + 1
12,14,15
9,13,16
13,16,18
3,7,10
2.5.3 Funktionsweise
Im Folgenden wird die Funktionsweise des Verschlüsselungsalgorithmus von
GMR-1 illustriert. Dabei definiert Ri,j das Bit des LFSR Ri an Position j, wobei
Ri,0 das Bit mit dem niedrigsten Stellenwert beschreibt. Wird ein einzelner LFSR
getaktet, so wird der LFSR-Inhalt um eine Position nach rechts verschoben und
das höchstwertige Bit mit dem Ergebnis des Feedback-Polynoms aufgefüllt. Wenn
die Chiffre das l-te Mal irregulär getaktet wird, werden folgende Schritte durchgeführt:
1. Die irreguläre Taktkomponente C wertet alle Taps vom LFSR R4 aus und die
restlichen LFSRs werden folgendermaßen getaktet:
a) Wenn M(R4,1 , R4,6 , R4,15 ) = R4,15 gilt, wird LFSR R1 getaktet.
b) Wenn M(R4,1 , R4,6 , R4,15 ) = R4,6 gilt, wird LFSR R2 getaktet.
c) Wenn M(R4,1 , R4,6 , R4,15 ) = R4,1 gilt, wird LFSR R3 getaktet.
2. Die Taps von R1 , R2 und R3 werden ausgewertet und ein Bit des Schlüsselstroms wird folgendermaßen generiert:
zl =M(R1,1 , R1,6 , R1,15 ) ⊕ M(R2,3 , R2,8 , R2,14 )⊕
M(R3,4 , R4,15 , R3,19 ) ⊕ R1,11 ⊕ R2,1 ⊕ R3,0 .
3. LFSR R4 wird getaktet.
2.5.4 Operationsmodi
Der Verschlüsselungsalgorithmus operiert in zwei unterschiedlichen Modi, der
Initialisierungsphase und der Schlüsselstromerzeugung. Während der Initialisierungsphase werden die nachfolgenden Schritte ausgeführt:
1. Alle Bits in den vier LFSRs werden auf 0 gesetzt.
Tabelle 2.1: Unterschiede
zwischen den LFSRs
in A5-GMR-1 und
A5/2 [DHW+ 13].
Seite 44
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
2. Ein 64-bit Initialisierungsvektor α = (α0 , ..., α63 ) wird mittels XOR aus der
19-bit Frame-Nummer N und dem 64-bit Sessionkey K berechnet:
α = F(N, K) = (K0 , K1 , K2 , K3 ⊕ N6 , K4 ⊕ N7 ,
K5 ⊕ N8 , K6 ⊕ N9 , K7 ⊕ N10 ,
K8 ⊕ N11 , K9 ⊕ N12 , K10 ⊕ N13 ,
K11 ⊕ N14 , K12 ⊕ N15 ,
K13 ⊕ N16 , K14 ⊕ N17 , K15 ⊕ N18 ,
K16 , K17 , ..., K21 , K22 ⊕ N4 ,
K23 ⊕ N5 , K24 , ..., K59 , K60 ⊕ N0 ,
K61 ⊕ N1 , K62 ⊕ N2 , K63 ⊕ N3 ).
3. Die Bits von α werden folgendermaßen umsortiert:
α0 = (α15 , α14 , ..., α0 , α31 , α30 , ..., α16 , α47 , ..., α32 , α63 , ..., α48 )2
und in dieser Reihenfolge in alle vier LFSRs getaktet.
Um ein Bit von α0 in das LFSR R1 zu takten, wird das Feedback-Polynom ausgewertet und das resultierende Bit in R1 geschrieben, nachdem es mit dem
α0 -Bit XORed wurde. Dieses α0 Bit wird gleichermaßen in die übrigen LFSRs
R2 , R3 und R4 getaktet. Im Anschluss werden nach dieser Prozedur die weiteren Bits von α0 in alle vier LFSRs getaktet. In dieser Initialisierungsphase
ist die irreguläre Taktung deaktiviert, d.h., alle Register werden für jedes Bit
von α0 einmal getaktet.
4. Das niederwertigste Bit eines jeden LFSRs wird auf 1 gesetzt (R1,0 = R2,0 =
R3,0 = R4,0 = 1).
Im Anschluss wird die irreguläre Taktung aktiviert und die Chiffre 250 Mal getaktet, wobei alle in dieser Phase entstehenden Ausgabebits zl verworfen werden.
Nach der Initialisierungsphase wechselt die Chiffre in den Modus Schlüsselstromerzeugung und taktet pro zu verschlüsselndem Frame mit der Länge m insgesamt 2·m Mal die LFSRs, um pro Takt ein Bit des Schlüsselstromes zu erzeugen.
Je nach Senderichtung wird ähnlich zu GSM entweder die erste oder zweite Hälfte der 2 · m Schlüsselstrombits für die Ver- bzw. Entschlüsselung verwendet. Dies
liegt daran, dass beispielsweise die ersten m Bits vom Telefon für die Entschlüsselung und vom Netzwerkprovider für die Verschlüsselung verwendet werden.
Die Länge m wird durch die Art des Kanals definiert, für den Daten ver- oder
entschlüsselt werden. Beispielsweise ist die Länge eines Frames bei einem TCH3Kanal wie in Tabelle 2.2 dargestellt m = 208 Bits. Nachdem 2 · m Schlüsselstrombits erzeugt wurden, wird die Chiffre mit der nachfolgenden Frame-Nummer neu
initialisiert.
Tabelle 2.2: Größe der
Payloads [DHW+ 12].
Kanaltyp
TCH3 / SDCCH
TCH6 / FACCH6+SACCH
TCH9 / FACCH9+SACCH
n: Länge
Rohdaten (Bits)
m: Länge
Verschlüsselt (Bits)
80/84
144/188+10
480/300+10
208
420+10
648+10
(N )
Im Folgenden wird das l-te Bit des Schlüsselstromes als zl bezeichnet, wobei die
Anzahl der irregulären Takte im Bereich 250 ≤ l < 250 + 2 · m liegt (einschließlich
2.5 GMR-1 Protokoll
Seite 45
der 250 irregulären Takte während der Initialisierungsphase) und N durch die bei
der Initialisierung verwendeten Frame-Nummer definiert ist.
Weiterhin beschreibt z die durchgehende erste Hälfte des Schlüsselstrom für die
Frames N, N + 1, ....
(N ) (N )
(N )
(N +1)
(N +1) (N +2)
z = z0 , z1 , ..., zm−1 , z0
, ..., zm−1 , z0
, ...
2
2.5.5 Angriffe
Die Struktur des A5-GMR-1-Algorithmus ähnelt der des GSM A5/2-Algorithmus,
sodass bereits bekannte Angriffe auf den A5/2-Algorithmus [PFS00, BBK08b,
BER07] leicht modifiziert auch für den A5-GMR-1 gelten. Beispielsweise können
mittels eines Known-Keystream Angriffes alle 216 möglichen initialen Zustände
des LFSRs R4 geraten werden. Kenntnisse des initialen Zustandes von R4 offenbaren dem Angreifer im Anschluss das Taktverhalten der Chiffre, sodass dieser den
bekannten Schlüsselstrom als binäres quadratisches Gleichungssystem aufstellen
und die Zustände von R1 , R2 , und R3 berechnen kann. Das Gleichungssystem
kann im Anschluss aufgrund von festen Bits in den LFSRs und Symmetrien in
den quadratischen Termen in ein lineares Gleichungssystem A · x = z mit
18
21
22
+ (18 + 21 + 22) = 655
v=
+
+
|
{z
}
2
2
2
{z
} Originale Variablen
|
Linearisierte Variablen
Variablen für jede Vermutung von R4 überführt werden. Nach Erhalt der 655
linear-unabhängigen Gleichungen kann jede Gleichung einzeln aufgelöst werden.
Das Resultat ist jeweils ein möglicher Initialisierungszustand für R1 , R2 , und R3 .
Um diese Zustände zu verifizieren, werden die LFSRs R1 , R2 , und R3 mit den
berechneten Werten initialisiert und anschließend mehrfach getaktet. Gleicht der
resultierende Schlüsselstrom dem bereits bekannten Schlüsselstrom, konnte der
wahrscheinlich korrekte Initialisierungszustand jedes LFSRs bestimmt werden.
Mit Hilfe der Frame-Nummer N , welche bei der Initialisierung der LFSRs genutzt
wurde, kann der Schlüssel K effizient abgeleitet werden.
Dieser Known-Keystream Angriff kann weiterhin in eine Ciphertext-only Attacke abgewandelt werden. Die Anzahl der Schlüsselstrombits, welche zum Lösen
des Gleichungssystems benötigt werden, basiert auf der Anzahl der Unbekannten.
Die Größe des Gleichungssystems kann durch Raten von R1 , R2 und R3 ebenfalls
verringert werden. Im Folgenden definiert k1 , k2 , k3 die Anzahl der geratenen Bits
eines jeden LFSRs, sodass die Anzahl der Variablen auf
18 − k1
21 − k2
22 − k3
v=
+
+
2
2
2
+(18 − k1 ) + (21 − k2 ) + (22 − k3 )
reduziert werden kann. Der Nachteil dieser Methode ist, dass die Anzahl der Rateversuche im schlechtesten Fall auf 216 · 2k1 +k2 +k3 erhöht wird. Diese Methode
ermöglicht jedoch, Ciphertext-only Angriffe auf beliebige GMR-1-Kanäle durchzuführen [DHW+ 12].
Seite 46
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
2.5.6 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
K
Kontrollaufgabe 2.3: R4 LFSR
Wozu dient der R4 LFSR im A5-GMR-1-Algorithmus?
K
Kontrollaufgabe 2.4: Initialisierungsvektor
Wozu dient der Initialisierungsvektor im A5-GMR-1-Algorithmus? Warum
könnte die Kommunikation im GMR-1-Protokoll nicht stattfinden, wenn sich
jeder Teilnehmer eines Satellitennetzwerkes einen eigenen zufälligen Initialisierungsvektor generiert?
2.6 GMR-2 Protokoll
Die GMR-2-Protokollfamilie beschreibt das zweite von der ETSI für die Satellitenkommunikation standardisierte Protokoll. Ähnlich zu GMR-1 konnte eine veröffentlichte Firmwareversion eines GMR-2-Satellitentelefons genutzt werden, um
mittels Reverse-Engineering Kenntnisse über die in GMR-2 verwendeten proprietären Verschlüsselungsalgorithmen zu erlangen.
2.6.1 Hardwarearchitektur
Für die Analyse der GMR-2-Protokollfamilie wurde die im Jahr 2010 veröffentlichte Firmware des Inmearsat IsatPhone Pro Satellitentelefons verwendet. Das
Satellitentelefon basiert auf der Analog Devices LeMans AD6900 Plattform. Der
Kern der Plattform ist wie in Abbildung 2.9 dargestellt ein ARM-926EJ-S Mikroprozessor in Kombination mit einem Blackfin DSP. Beide Prozessoren kommunizieren über ein geteiltes Businterface, welches mit dem RAM-Speicher und weiteren Ressourcen verbunden ist. Das System wird durch den Boot-Code des ARMMikrocontrollers initialisiert, welcher im Anschluss die Aufgabe hat, den DSP für
die weiteren Operationen vorzubereiten.
2.6.2 Struktur
Das GMR-2-Protokoll verwendet die in Abbildung 2.10 dargestellte A5Stromchiffre, wobei anders als bei GMR-1 die Struktur nicht der von GSM
bekannten A5/2-Chiffre ähnelt sondern aus einer Vielzahl bisher unbekannter Funktionen aufgebaut ist. Weiterhin arbeitet die Chiffre nicht bit- sondern
byte-orientiert. Der Algorithmus erhält den 64-bit Schlüssel K und wird einmal
2.6 GMR-2 Protokoll
Seite 47
Figure 2.9: LeMans
AD6900 Plattform
aus [DHW+ 12, Dri12,
DHW+ 13].
Blackfin
DSP Core
Shared
Peripherals
Boot
ROM
System
RAM
Bus Controller
Bus Controller
External
Memory
ARM Core
Se
getaktet, um ein Byte des Schlüsselstroms zu generieren. Hierbei definiert Zl das
Byte des Schlüsselstroms, welches nach l Takten ausgegeben wird.
Figure 2.10: Struktur
der A5-GMR2-Chiffre aus
[DHW+ 12, DHW+ 13].
64
1
8
6
4
6
3
8
Die Chiffre verwendet ein 8-byte Statusregister S = (S0 , S1 , ..., S7 )28 und drei Unterfunktionen, die im Folgenden F, G und H genannt werden. Zusätzlich fließt
in die Berechnungen des Schlüsselstroms ein 1-bit Register T ein, welches ein sogenanntes Toggle-Bit ausgibt und pro Takt zwischen den Werten 0 und 1 alterniert.
Zuletzt verwendet die Chiffre ein 3-bit Register C, welches als Zähler von 0 bis 7
fungiert und pro Takt um den Wert 1 erhöht wird.
Im Folgenden werden die F-, G- und H-Funktionen genauer vorgestellt.
F -Funktion
Die in Abbildung 2.11 dargestellte F-Funktion verwendet ein 64-bit Register, welches in die 8 Bytes (K0 , K1 , ..., K7 )28 aufgeteilt ist und den Schlüssel K enthält.
Dieses Register wird durch zwei Multiplexer ausgelesen. Der untere Multiplexer
extrahiert ein Byte Kc , welches in Verbindung mit dem Zählerwert c aus dem
Schlüssel K ausgelesen wird. Der obere Multiplexer extrahiert ein weiteres Byte
aus dem Schlüssel K, wobei die Position des Bytes durch einen 4-bit Wert bestimmt wird, der im Folgenden α genannt wird.
Weiterhin nutzt die F-Funktion die zwei Komponenten T1 und T2
T1 : {0, 1}4 7→{0, 1}3
T2 : {0, 1}3 7→{0, 1}3 ,
Seite 48
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
Figure 2.11: Struktur
der F-Komponente
der A5-GMR2 Chiffre aus
[DHW+ 12, DHW+ 13].
welche die in Tabelle 2.3 dargestellten Lookup-Tabellen abbilden. Die mit * markierten Zeilen werden in Abschnitt 2.6.5 bei der Vorstellung eines Angriffes auf
das GMR-2-Protokoll genauer erläutert.
Tabelle 2.3: T1
und T2 LookupTabellen [DHW+ 12].
x
(0, 0, 0, 0)2
(0, 0, 0, 1)2
(0, 0, 1, 0)2
(0, 0, 1, 1)2
(0, 1, 0, 0)2
(0, 1, 0, 1)2
(0, 1, 1, 0)2
(0, 1, 1, 1)2
(1, 0, 0, 0)2
(1, 0, 0, 1)2
(1, 0, 1, 0)2
(1, 0, 1, 1)2
(1, 1, 0, 0)2
(1, 1, 0, 1)2
(1, 1, 1, 0)2
(1, 1, 1, 1)2
T1 (x)
T2 (x)
T2 (T1 (x))
2
5
0
6
3
7
4
1
3
0
6
1
5
7
4
2
4
5
6
7
4
3
2
1
-
6
3
4
2
7
1
4
5
7
4
2
5
3
1
4
6
*
*
*
*
Der Eingabeparameter von T1 (der Wert α) wird durch die Parameter p, Kc und
dem Toggle-Bit t definiert, wobei p das im letzten Takt generierte Schlüsselstrombyte p = Zl−1 darstellt. Bevor diese drei Werte in das Ergebnis der Lookup-Tabelle
T1 einfließen, werden sie durch einen kleinen Multiplexer rechts neben T1 verarbeitet. Der Multiplexer verwendet die Abbildung N (·), wobei folgendes gilt:
N : {0, 1} × {0, 1}8 7→{0, 1}4
(
(x3 , x2 , x1 , x0 )2
(t, x7 , x6 , ..., x0 ) 7→
(x7 , x6 , x5 , x4 )2
wenn t = 0 gilt,
wenn t = 1 gilt.
Die Abbildung gibt basierend auf dem Wert des Toggle-Bits t entweder die ersten
oder letzten 4 Bits (Nibble) der Eingabe zurück. Mit Hilfe dieser Abbildung kann
der Ausgabewert des Multiplexers folgendermaßen beschrieben werden:
α = N (t, Kc ⊕ p) = N (c mod 2, Kc ⊕ p).
Der Wert α wird T1 übergeben und bestimmt, welches Byte der obere Multiplexer
aus dem Schlüssel K extrahiert. Der Wert dieses Bytes wird im Anschluss um
T2 (T1 (α)) Stellen nach rechts rotiert und von der F-Funktion als 8-bit Wert O0
2.6 GMR-2 Protokoll
Seite 49
zurückgegeben. Der zweite 4-bit Ausgabewert O1 von F wird mittels der Ausgabe
des unteren Multiplexers (Kc ) und des Parameters p gebildet:
O0 = (KT1 (α) ≫ T2 (T1 (α)))28
O1 = (Kc,7 ⊕ p7 ⊕ Kc,3 ⊕ p3 ,
Kc,6 ⊕ p6 ⊕ Kc,2 ⊕ p2 ,
Kc,5 ⊕ p5 ⊕ Kc,1 ⊕ p1 ,
Kc,4 ⊕ p4 ⊕ Kc,0 ⊕ p0 )2 .
G -Funktion
Die in Abbildung 2.12 dargestellte G-Funktion erhält als Eingabeparameter die
Ausgabeparameter der F-Funktion. Zusätzlich fließt das Byte S7 des Statusregisters in die Berechnungen von G mit ein.
Figure 2.12: Struktur
der G-Komponente
der A5-GMR2 Chiffre aus
[DHW+ 12, DHW+ 13].
Ähnlich zu der F-Funktion werden Lookup-Tabellen verwendet, welche im Folgenden B1 , B2 und B3 genannt werden. Diese Lookup-Tabellen erhalten eine 4-bit
Eingabe und liefern einen 4-bit Ausgabewert zurück:
B1 : {0, 1}4 7→ {0, 1}4
(x3 , x2 , x1 , x0 )2 7→ (x3 ⊕ x0 , x3 ⊕ x2 ⊕ x0 , x3 , x1 )2 ,
B2 : {0, 1}4 7→ {0, 1}4
(x3 , x2 , x1 , x0 ) 7→ (x1 , x3 , x0 , x2 )2 ,
B3 : {0, 1}4 7→ {0, 1}4
(x3 , x2 , x1 , x0 ) 7→ (x2 , x0 , x3 ⊕ x1 ⊕ x0 , x3 ⊕ x0 )2 .
Da die verwendeten Lookup-Tabellen und XOR-Berechnungen linear sind und die
restlichen in der G-Funktion verwendeten Operationen Bit-Permutationen durchführen, ist die G-Funktion vollständig linear und kann mittels der nachfolgenden
Gleichungen beschrieben werden, wobei die 6-bit Ausgaben O00 , O10 auf den Eingaben I0 , I1 und S7 basieren:
O00 = (I0,7 ⊕ I0,4 ⊕ S7,5 , I0,7 ⊕ I0,6 ⊕ I0,4 ⊕ S7,7 , I0,7 ⊕ S7,4 , I0,5 ⊕ S7,6 ,
I1,3 ⊕ I1,1 ⊕ I1,0 , I1,3 ⊕ I1,0 )2 ,
O10
= (I0,3 ⊕ I0,0 ⊕ S7,1 , I0,3 ⊕ I0,2 ⊕ I0,0 ⊕ S7,3 , I0,3 ⊕ S7,0 ,
I0,1 ⊕ S7,2 , I1,2 , I1,0 )2 .
Seite 50
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
H-Funktion
Die in Abbildung 2.13 dargestellte H-Funktion erhält die von der G-Funktion ausgegebenen Werte O00 , O10 und das Toggle-Bit t und führt die nicht-lineare Filterung
in der GMR-2-Chiffre durch.
Figure 2.13: Struktur
der H-Komponente
der A5-GMR2 Chiffre aus
[DHW+ 12, DHW+ 13].
Dazu werden erneut Lookup-Tabellen verwendet, welche einen 6-bit Eingabewert
auf einen 4-bit Ausgabewert abbilden:
S2 : {0, 1}6 7→ {0, 1}4
S6 : {0, 1}6 7→ {0, 1}4 .
Interessanterweise wurden diese Tabellen vom Data Encryption Standard (DES)
übernommen, d.h., S2 entspricht der zweiten S-Box und S6 der sechsten S-Box
von DES. Die Sortierung der Lookup-Tabellen wurden allerdings abgeändert, um
eine modifizierte Adressierung gegenüber den DES S-Boxen zu erreichen.
Die vier höherwertigen Bits der Eingabe selektieren die S-Box-Spalte, die zwei niederwertigen Bits die Zeile. Bevor die Eingabeparameter I00 , I10 in die S-Boxen fließen, können sie mit Hilfe von zwei Multiplexern vertauscht werden, wobei diese
Operation auf dem Toggle-Bit t basieren. Das l-te Byte des Schlüsselstromes des
GMR-2-Algorithmus ist somit folgendermaßen definiert:
(
(S2 (I10 ), S6 (I00 ))24 if t = 0,
Zl =
(S2 (I00 ), S6 (I10 ))24 if t = 1.
E
Exkurs 2.2: S-Boxen im Data Encryption Standard (DES)
Im Data Encryption Standard bilden das erste und letzte Bit zusammen die
Zeile. Die Spalte wird aus den mittleren Bits errechnet.
2.6.3 Funktionsweise
Im Folgenden wird die Funktionsweise des Verschlüsselungsalgorithmus von
GMR-2 illustriert. Wenn die Chiffre das l-te Mal getaktet wird, werden folgende
Schritte durchgeführt:
1. Die Chiffre generiert ein Byte des Schlüsselstromes Zl , wobei dieses Byte auf
den Werten in den S- und C-Registern und dem T -Bit basiert.
2. Das T -Bit wird invertiert.
2.6 GMR-2 Protokoll
Seite 51
3. Das C-Register wird um den Wert 1 erhöht. Wird der Wert 8 erreicht, so
wird das Register auf den Wert 0 gesetzt.
4. Das S-Register wird um eine Byte-Position nach rechts verschoben. Der vorherige Wert in Position S7 wird der G-Funktion übergeben und die anschließende Ausgabe Zl der H-Funktion wird zurück in das Statusregister an Stelle S0 geschrieben. Weiterhin fließt Zl im nächsten Takt als Parameter p mit
in die Eingabe der F-Funktion.
2.6.4 Operationsmodi
Der A5-Verschlüsselungsalgorithmus von GMR-2 operiert wie bereits bei GMR1 in zwei unterschiedlichen Modi, der Initialisierungsphase und der Schlüsselstromerzeugung. Während der Initialisierungsphase werden die nachfolgenden
Schritte ausgeführt:
1. Das T -Bit und das C-Register werden auf 0 gesetzt.
2. Der 64-bit Schlüssel K wird in das K-Register der F-Funktion geschrieben.
3. Das S-Register wird mit der 22-bit Frame-Nummer N initialisiert.
Im Anschluss wird die Chiffre 8 Mal getaktet, wobei alle in dieser Phase entstehenden Bytes des Schlüsselstroms verworfen werden.
Im Anschluss an die Initialisierungsphase wechselt die Chiffre in den Modus
Schlüsselstromerzeugung, um pro Takt ein Byte des Schlüsselstromes zu erzeu(N )
gen. Dabei definiert Zl das l-te (0 ≤ l ≤ 14) Byte des Schlüsselstromes, welcher
nach der Initialisierungsphase mit der Frame-Nummer N generiert wird. In der
GMR-2-Protokollfamilie wird die Frame-Nummer immer nach Ausgabe von 15
Bytes des Schlüsselstromes erhöht, wodurch die Chiffre eine erneute Initialisierungsphase durchläuft. Der eigentliche Schlüsselstrom ist daher eine Verkettung
von 15-byte Blöcken. Der durchgehende Schlüsselstrom wird für mehrere Frames
N, N + 1, ... mit Z bezeichnet.
(N )
(N )
(N +1)
(N +1)
(N +2)
Z = Z0 , ..., Z14 , Z0
, ..., Z14
, Z0
, ... 8 .
2
2.6.5 Exkurs: Angriff
Ähnlich zum GMR-1-Protokoll finden sich auch im A5-GMR-2-Algorithmus
Schwachstellen, die mit Hilfe von kryptographischen Angriffen ausgenutzt werden können. Im Folgenden wird eine Known-Plaintext Attacke auf den GMR-2Verschlüsselungsalgorithmus im Detail vorgestellt [DHW+ 12, DHW+ 13].
Hinweis: Sie müssen dabei nicht jeden Schritt nachvollziehen können. Vielmehr dient der
nachfolgende Abschnitt dazu, Ihnen zu verdeutlichen, welch hohe Komplexität Angriffe
auf kryptographische Algorithmen haben können.
Der Known-Plaintext Angriff basiert auf einer Vielzahl an Beobachtungen bei der
Analyse der F-Funktion und der mit * markierten Zeilen in Tabelle 2.3 (Definition
der T1 und T2 Lookup-Tabellen der F-Funktion).
Seite 52
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
1. Wenn α ∈ {(0, 0, 1, 0)2 , (1, 0, 0, 1)2 }, dann ist T1 (α) = 0 und T2 (T1 (α)) = 4,
sodass O0 = (N (0, K0 ), N (1, K0 ))24 gilt.
2. Wenn α ∈ {(0, 1, 1, 0)2 , (1, 1, 1, 0)2 }, dann ist T1 (α) = 4 und T2 (T1 (α)) = 4,
sodass O0 = (N (0, K4 ), N (1, K4 ))24 gilt.
3. Wenn T1 (α) = c, dann selektieren beide Multiplexer das gleiche Byte des
Schlüssels K. Dies wird im Folgenden Lesekollision (Read-Collision) in Kc
genannt.
Nachfolgend wird beschrieben, wie basierend auf diesen Beobachtungen die Bytes K0 und K4 des Schlüssels mit hoher Wahrscheinlichkeit ermittelt werden können. Diese werden im Anschluss dazu verwendet, die übrigen 48 Bits des Schlüssels K effizient zu erraten.
Die Grundidee zur Erlangung von K0 ist, die Bytes (Zi , Zi−1 , Zi−8 )28 des Schlüsselstromes mit i ∈ {8, 23, 38, ...} bei der Generierung von Zi auf Lesekollisionen
in K0 zu untersuchen. Durch die Wahl dieser i-Werte sind die Gleichungen
(N )
Z8 = Z8
(N +1)
, Z23 = Z8
(N +2)
, Z38 = Z8
, ...
erfüllt, da für diese i-Werte bereits bekannt ist, dass der untere Multiplexer in der
F-Funktion aufgrund des Zählers c mit c mod 8 = 0 das Byte K0 des Schlüssels
selektiert hat.
Findet eine Lesekollision in der F-Funktion statt und beide Multiplexer haben K0
selektiert, so ist die Ausgabe von F folgendermaßen definiert:
O0 = (p3 ⊕ α3 , p2 ⊕ α2 , p1 ⊕ α1 , p0 ⊕ α0 , K0,7 , K0,6 , K0,5 , K0,4 )2 ,
O1 = (K0,7 ⊕ p7 ⊕ α3 , K0,6 ⊕ p6 ⊕ α2 , K0,5 ⊕ p5 ⊕ α1 , K0,4 ⊕ p4 ⊕ α0 )2 .
Die Ausgabe der G-Funktion gleicht im Anschluss:
O00 = (p3 ⊕ α3 ⊕ p0 ⊕ α0 ⊕ S7,5 , p3 ⊕ α3 ⊕ p2 ⊕ α2 ⊕ p0 ⊕ α0 ⊕ S7,7 ,
p3 ⊕ α3 ⊕ S7,4 , p1 ⊕ α1 ⊕ S7,6 ,
K0,7 ⊕ p7 ⊕ α3 ⊕ K0,5 ⊕ p5 ⊕ α1 ⊕ K0,4 ⊕ p4 ⊕ α0 ,
K0,7 ⊕ p7 ⊕ α3 ⊕ K0,4 ⊕ p4 ⊕ α0 )2 ,
O10
= (K0,7 ⊕ K0,4 ⊕ S7,1 , K0,7 ⊕ K0,6 ⊕ K0,4 ⊕ S7,3 ,
K0,7 ⊕ S7,0 , K0,5 ⊕ S7,2 ,
K0,6 ⊕ p6 ⊕ α2 ,
K0,4 ⊕ p4 ⊕ α0 )2 .
Weiterhin ist durch die H-Funktion folgende Gleichung gültig:
Zi = (S2 (O10 ), S6 (O00 ))24 .
Um nun das Schlüsselbyte K0 zu bestimmen, werden die Ein- und Ausgaben der
S-Boxen S6 und S2 in der H-Funktion im Folgenden genauer analysiert.Da die ursprünglichen DES S-Boxen umgeordnet worden sind, wird bei GMR-2 die Spalte
von S6 mittels der vier hochwertigen Bits von O00 ausgewählt. Wenn davon ausgegangen wird, dass eine Kollision in K0 während der Generierung von Zi stattgefunden hat, können diese vier hochwertigen Bits mit Hilfe der für die gewählten
i-Werte ebenfalls bekannten Werte S7 = Zi−8 und p = Zi−1 bestimmt werden.
Wenn für α ∈ {(0, 0, 1, 0)2 , (1, 0, 0, 1)2 } das niederwertige Nibble von Zi in der
Zeile mit Index β gefunden werden kann, könnte tatsächlich eine Kollision statt-
2.6 GMR-2 Protokoll
Seite 53
gefunden haben, wobei die niederwertigen zwei Bits von O00 (welche die Zeile in
S6 bestimmen) gleich (β1 , β0 )2 sein müssen und dann folgendes gilt:
K0,7 ⊕ K0,5 ⊕ K0,4 = β1 ⊕ p7 ⊕ α3 ⊕ p5 ⊕ α1 ⊕ p4 ⊕ α0 ,
K0,7 ⊕ K0,4 = β0 ⊕ p7 ⊕ α3 ⊕ p4 ⊕ α0 .
In diesem Schritt können einige Informationen zu den Bits von K0 bestimmt werden. Beispielsweise kann K0,5 komplett berechnet werden.
Im Anschluss kann die Ausgabe der S-Box S2 verwendet werden, um zu verifizieren, ob eine Kollision bei der obigen Wahl von α aufgetreten ist. Durch die Struktur
der S-Box existieren lediglich vier 6-bit Eingaben γ, für die gilt:
S2 (γ) = (Zi,7 , Zi,6 , Zi,5 , Zi,4 )2 .
Aufgrund der teilweisen Kenntnis von (K0,4 , K0,5 , K0,7 )2 kann für jeden der vier
möglichen γ-Werte getestet werden, ob folgende Gleichungen erfüllt werden:
?
γ5 =β0 ⊕ p7 ⊕ α3 ⊕ p4 ⊕ α0 ⊕ S7,1 ,
?
γ4 ⊕ γ1 =β0 ⊕ p7 ⊕ α3 ⊕ p4 ⊕ α0 ⊕ S7,3 ⊕ p6 ⊕ α2 ,
?
γ3 ⊕ γ0 =β0 ⊕ p7 ⊕ α3 ⊕ S7,0 ,
?
γ2 ⊕ γ5 =β1 ⊕ p7 ⊕ α3 ⊕ p5 ⊕ α1 ⊕ p4 ⊕ α0 ⊕ S7,1 ⊕ S7,2 .
Wenn ein γ-Wert alle Gleichungen erfüllt, kann mit hoher Wahrscheinlichkeit davon ausgegangen werden, dass eine Lesekollision stattgefunden hat.
Eine mögliche resultierende Hypothese für K0 ist:
(γ3 ⊕ S7,0 , γ1 ⊕ p6 ⊕ α2 , γ2 ⊕ S7,2 , γ0 ⊕ p4 ⊕ α0 , p3 ⊕ α3 , p2 ⊕ α2 , p1 ⊕ α1 , p0 ⊕ α0 )2 .
Nach diesem Prinzip kann auch Byte K4 des Schlüssels bestimmt werden, wenn
α ∈ {(0, 1, 1, 0)2 , (1, 1, 1, 0)2 } und i ∈ {12, 27, 42, ...} verwendet werden.
In den folgenden Schritten wird davon ausgegangen, dass in den vorherigen
Schritten eine Menge von möglichen Werten für K0 gewonnen werden konnte.
In vorherigen Phasen möglicherweise erlangte Kenntnisse zu K4 erhöhen die Effizienz der nachfolgenden Attacke allerdings nur geringfügig.
Basierend auf den erlangten Hypothesen von K0 können die restlichen Bytes des
Schlüssels K mittels Brute-Force bestimmt werden. Die nachfolgenden Schritte
bestimmten den korrekten Schlüssel K allerdings nur, wenn die Hypothese von
K0 korrekt war.
Um die Schlüsselbytes K1 , ..., K7 zu bestimmen, werden einige weitere Bytes des
Schlüsselstromes untersucht, wobei sich die nächsten Schritte auf die F-Funktion
fokussieren. Für jedes Kj mit j ∈ {0, 1, ..., 7} für das bereits eine Hypothese besteht, können die zugehörigen Bytes (Zi+j , Zi+j−1 , Zi+j−8 )28 des Schlüsselstromes mit i ∈ {8, 23, 38, ...} verwendet werden um folgende Gleichung zu berechnen:
α = N (j mod 2, Kj ⊕ Zi+j−1 ).
Existiert noch keine plausible Hypothese für Kk mit k = T1 (α) kann durch alle
möglichen Werte δ ∈ {0, 1, ..., 255} iteriert und die Ausgabe der Chiffre berechnet werden. Stimmt für ein δ die Ausgabe der Chiffre mit Zi+j überein, so ist δ
die Hypothese für Kk . Dies kann für verschiedene i-Werte wiederholt werden,
bis für jedes Byte des Schlüssels und somit für den kompletten Schlüssel K eine
Seite 54
Chapter 2 Sicherheitsaspekte von Satellitentelefonen
Hypothese aufgestellt wurde. Da die Gültigkeit der Hypothese für den Schlüssel
K komplett auf der Richtigkeit von K0 basiert, muss im Folgenden jeder Schlüsselkandidat verifiziert werden, indem der Schlüsselstrom generiert und mit dem
Ausgangsschlüsselstrom verglichen wird.
Die Gesamtkomplexität dieser Attack basiert auf der Anzahl der Hypothesen für
K0 . Bei 15 − 20 Schlüsselstrom-Frames rangiert das korrekte Byte von K0 normalerweise unter den besten Hypothesen, sodass im Durchschnitt für den gesamten
Schlüssel (7 · 28 )/2 ≈ 210 einzelne Hypothesen für die fehlenden Bytes des Schlüssels verifiziert werden müssen.
Je mehr Schlüsselstrom-Frames existieren, um die Hypothesen von K0 zu testen,
um so eher kann der korrekte Wert von K0 bestimmt werden. Grundsätzlich können aber auch alle 28 möglichen Werte für K0 getestet werden, was die Länge des
benötigten Schlüsselstroms auf 400–500 Bits reduziert, allerdings die Gesamtkomplexität auf (7 · 28 · 28 )/2 ≈ 218 erhöht.
2.6.6 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
K
Kontrollaufgabe 2.5: Lookup-Tabelle
Wozu dient eine Lookup-Tabelle?
K
Kontrollaufgabe 2.6: Schlüsselstrom Zl
In welche Funktionen und Register fließt der Schlüsselstrom Zl mit ein?
2.7 Übungen
Ü
Übung 2.1: LFSR
Was ist die Aufgabe eines LFSRs? Was wird durch das Feedback-Polynom
definiert?
Ü
Übung 2.2: A5-Algorithmus
Warum ist der A5-Algorithmus typischerweise eine Strom- und keine Blockchiffre?
Chapter 3 Sicherheitsaspekte von DECT
Seite 55
Chapter 3 Sicherheitsaspekte von DECT
3.1 Lernziele
Sie kennen den Aufbau des DECT-Standards und können sowohl Vor- als auch
Nachteile von DECT benennen. Weiterhin können Sie Unterschiede zwischen
DECT und anderen Mobilfunkstandards wie GSM / UMTS erläutern. Abschließend können Sie die Sicherheitsarchitektur von den DECT-Standard skizzieren.
3.2 Advanced Organizer
Wie wird der DECT-Standard im Mobilfunk eingesetzt und welche Sicherheitsmerkmale werden angewandt? In diesem Studienbrief werden der Aufbau und
die verwendeten kryptographischen Protokolle des DECT-Standards aufgezeigt
und Schwachstellen erläutert.
3.3 Einleitung
In diesem Studienbrief wird der DECT-Standard vorgestellt, welcher im Mobilfunkbereich für die Sprach- als auch Datenübertragung eingesetzt wird. Dazu
werden in einer Einführung die Grundlagen und Ziele von DECT benannt. Weiterführend wird der Aufbau und die Funktionsweise von DECT erläutert. Dies
umfasst insbesondere den Aufbau einer Datenübertragung und die Anwendung
von Sicherheitsmaßnahmen. Abschließend werden die verschiedene Sicherheitsmerkmale von DECT-Standard vorgestellt.
3.4 Grundlagen
DECT steht für Digital Enhanced Cordless Telecommunications und ist ein international etablierter Standard zur Übertragung von Daten mittels Funktechnik, primär
für die kabellose picozellulare Telefonie. DECT wurde vom European Telecommunications Standards Institute (ETSI) entwickelt und löste im Jahr 1992 den analogen
Standard CT1 (Cordless Telephone generation 1) sowie den digitalen Standard
CT2 (Cordless Telephone generation 2) ab.
Exkurs 3.1: Namensgebung DECT
Die Abkürzung DECT stand ursprünglich für Digital European Cordless Telephone und wurde vom European Telecommunications Standards Institute als einheitlicher Standard für kabellose Telefonsysteme eingeführt. DECT erlangte
über die Zeit allerdings auch außerhalb Europas immer höhere Verbreitung.
Weiterhin wurden neben der Telefonie weitere Anwendungsgebiete erschlossen, sodass der Standard in Digital Enhanced Cordless Telecommunications umbenannt wurde.
E
Seite 56
Chapter 3 Sicherheitsaspekte von DECT
Das Design des DECT-Standards legt besonderen Fokus darauf, eine Vielzahl unterschiedlicher Telekommunikationsdienste und Anwendungen zu unterstützen.
Speziell für die Zusammenarbeit mit bereits bestehenden Netzen wie dem analogen Telefonnetz oder ISDN wurden Zugriffsprotokolle und Anwendungsprofile
definiert. Die Minimalanforderungen für diese Anwendungsprofile wurden im
Generic Access Profil (GAP) zusammengefasst, welches ab dem Jahr 1997 von allen Anbietern von DECT-Infrastruktur wie Basisstationen und mobilen Endgeräten unterstützt werden muss. Die Einführung von GAP ermöglicht beispielsweise die Kombination von Basisstationen und mobilen Geräten verschiedener Hersteller. Auf GAP aufbauend sind weitere Profile entwickelt worden, welche unter
anderem die Kommunikation zwischen DECT und GSM- oder ISDN-Netzen erlauben.
B
Beispiel 3.1: DECT/GSM Interworking Profil (GIP)
Das DECT/GSM Interworking Profil (GIP) erlaubt die Kommunikation zwischen DECT-Systemen mit GSM-Systemen, sodass Teilnehmer eines DECTSystems GSM-Dienste wie SMS verwenden können.
Weiterhin sollen mit dem DECT-Standard unter anderem folgende Ziele erreicht
werden:
• Netzwerkweite Mobilität mittels automatischem Handover
• Einsparung von Frequenzen durch Nutzung eines exklusiven Frequenzbands
• Sowohl für Sprach- als auch Datenübertragung nutzbar
• Verbesserte Sprachqualität
• Gleichzeitiger Betrieb mehrerer mobiler Endgeräte
• Herstellerunabhängige Nutzung von mobilen Endgeräten an gleicher Basisstation
• Abhör- und Ausfallsicherheit
3.5 Systemdesign
Ein DECT-System besteht im Allgemeinen aus einem Fixed Part (FP) und einem oder mehreren mobilen Endgeräten, im Folgenden Portable Parts (PP) genannt [Lüd01]. Im Heim- und Bürobereich besteht der Fixed Part meist aus einer
oder mehreren Basisstationen, nachfolgend Radio Fixed Part (RFP) genannt, die
die funktechnische Versorgung von Innen- und Außenbereichen bereitstellen. Bei
dem Betrieb von mehreren Radio Fixed Parts werden diese meist über ein lokales
Netz miteinander verbunden, sodass ein mobiles Endgerät automatisch zwischen
den Basisstationen wechseln kann, sollte ein mobiles Endgerät die Reichweite eines RFPs verlassen. Die Reichweite eines Radio Fixed Parts beträgt innerhalb von
Gebäuden typischerweise 30 bis 50 Meter. Im Freien erhöht sich die Funkreichweite auf bis zu 300 Meter.
Abbildung 3.1 stellt ein Beispiel eines einfachen DECT-Systems mit einem Fixed
Part und drei mobilen Endgeräten dar, welche mittels Funktechnik miteinander
kommunizieren. Der Fixed Part besteht hierbei aus dem Radio Fixed Part, einer
Datenbank in der die mobilen Endgeräte registriert sind, einer Interworking Unit
3.5 Systemdesign
Seite 57
(IWU), welche das DECT-System mit externen Netzen wie ISDN verbindet, und
einem Central Control Fixed Part (CCFP), der die einzelnen Komponenten des Fixed
Parts miteinander verbindet.
Figure 3.1: Beispiel
eines DECT-Systems
im Heimbereich aus
[Lüd01].
3.5.1 DECT-Referenzmodell
Das DECT-Referenzmodell in Abbildung 3.2 wurde dem ISO/OSI-Modell nachempfunden und entspricht im wesentlichen den drei unteren Schichten Physical,
Data Link und Network des ISO/OSI-Modells [Lüd01, Wal01b]. Die Sicherungsschicht (Data Link Layer) des ISO/OSI-Modells wurde in die zwei Schichten Medium Access Control (MAC) und Data Link Control (DLC) unterteilt, da das Übertragungsmedium Funk häufigen Qualitätsschwankungen unterliegt und weiterhin
der Kanalaufbau und -zugriff ein vielfach durchzuführender Prozess darstellt.
Figure 3.2: DECT
Referenzmodell aus
[Lüd01, Wal01b].
Im Folgenden werden die wichtigsten Eigenschaften der einzelnen Schichten vorgestellt.
Physikalische Schicht
Die physikalische Schicht von DECT ist für die Realisierung der Übertragungskanäle über das Funknetz zuständig. DECT operiert dazu in Europa im Frequenzband 1880 MHz bis 1900 MHz [Lüd01, For97, Wal01b]. Im Gegensatz zu beispielsweise GSM wird für die Nutzung dieses Frequenzbandes keine Lizenz benötigt.
Seite 58
Chapter 3 Sicherheitsaspekte von DECT
DECT verwendet für die Übertragung der Daten die Multi Carrier (MC), Time
Division Multiple Access (TDMA) und Time Division Duplexing (TDD) Nachrichtenübertragungsverfahren. Dabei wird wie in Abbildung 3.3 dargestellt das Frequenzspektrum von DECT in 10 Frequenzträger (MC) mit einem Abstand von
1728 kHz eingeteilt. Jeder Träger ist in 24 Zeitschlitze (TDMA) unterteilt, die sich
alle 10 ms wiederholen. Die Zeitschlitze sind weiterhin in zwei Hälften mit 5 ms
Zeitunterschied aufgeteilt (TDD), wobei die ersten 12 Zeitschlitze zumeist für die
Datenübertragung des Fixed Parts (Downlink) und die weiteren 12 Zeitschlitze für
die Daten der Portable Parts (Uplink) reserviert sind. Bei einem typischen DECTSprachdienst werden wie in Abbildung 3.3 rot markiert zwei Zeitschlitze zum Aufbau einer Duplexverbindung verwendet, welche auf der gleichen Trägerfrequenz
liegen müssen und um 12 Zeitschlitze (5 ms) versetzt sind. Der Fixed Part überträgt die Daten in diesem Beispiel somit auf Frequenzträger 3 in Zeitschlitz 2; der
Portable Part um 12 Zeitschlitze versetzt in Zeitschlitz 14.
Figure 3.3: DECT Zeit/ Frequenzspektrum
aus [Lüd01].
Die TDMA-Struktur erlaubt bis zu 12 simultane Duplex-Sprachverbindungen pro
Trägerfrequenz. Bei Datendiensten können Zeitschlitze allerdings auch gebündelt
werden, sodass beispielsweise 23 Zeitschlitze für den Downlink (mit einer maximalen Datenrate von 552 kbit/s) und ein Zeitschlitz für den Uplink bzw. Rückkanal verwendet werden.
Pro Zeitschlitz können bei einer TDMA-Rahmendauer von 10 ms und einer Bitrate
von 1152 kbit/s (Modulationsrate bei DECT) maximal 480 Bits an Daten in Form
von physikalischen Paketen (Physical Packets) übertragen werden. Abbildung 3.4
stellt das hauptsächlich eingesetzte Basic Physical Packet dar.
• Das S-Feld wird zur Synchronisation des Empfängers verwendet.
• Das 64-bit große A-Feld enthält in den ersten 48 Bits Steuer-, Kontroll- und
Systeminformationen wie die unterstützten Frequenzträger, die Identität eines RFPs (Radio Fixed Part Identifier, kurz RFPI, ähnlich zur SSID in Wireless
Lans) oder Signalisierungsinformationen aus höheren Schichten. In den
nachfolgenden 16 Bits wird der aus den ersten 48 Bits berechnete CRC abgelegt, sodass beim Empfänger eine Fehlererkennung für das A-Feld durchgeführt werden kann.
• Das B-Feld enthält die zu übertragenden Nutzdaten entweder ungeschützt,
sodass bis zu 320 Bits an Daten innerhalb eines Paketes übertragen werden
(beispielsweise Sprachdaten), oder geschützt, sodass der Datenbereich in
vier 64-bit große Datenblöcke und vier 16-bit CRC-Felder unterteilt wird
und somit pro Paket 256 Bits an Daten übertragen werden können.
3.5 Systemdesign
Seite 59
Figure 3.4: Aufbau
eines Basic Physical
Packets aus [Lüd01].
• Das 4-bit große X-Feld wird zur Fehlererkennung des B-Feldes verwendet.
• Grundsätzlich werden von den 480 Bits eines Paketes 60 Bits für die so
genannte Guard Period (GP-Feld) verwendet. Dieses Datenfeld vermeidet
Überschneidungen von mehreren physikalischen Paketen bei benachbarten
Zeitschlitzen, beispielsweise bei Synchronisationsungenauigkeiten.
Exkurs 3.2: Vergleich der Pakete von DECT und GSM
In DECT transportiert jedes Basic Physical Packet sowohl Steuer- als auch
Nutzdaten. Im GSM-Standard überträgt ein Burst entweder nur Steuer- oder
Nutzdaten.
Zugriffssteuerungsschicht (MAC)
Die Medium Access Control Schicht (MAC) ist für den Aufbau, Aufrechterhaltung
und Abbau der physikalischen Kanäle (MAC-Bearer) für die höheren Schichten
verantwortlich. Weiterhin fügt die MAC-Schicht zu jedem Paket Anwendungsund Dienstspezifische Steuerdaten hinzu und sichert die verschiedenen Datenfelder in den zu übertragenden Paketen mit Hilfe der zyklischen Codes (CRC) ab,
sodass der Empfänger Übertragungsfehler in einem Paket detektieren kann.
Sicherungsschicht (DLC)
Wie in Abbildung 3.2 dargestellt, teilt sich die Data Link Control Schicht (DLC) in
zwei Bereiche. In der DLC-Schicht für den Transport für Signalisierung findet ähnlich zur MAC-Schicht eine Fehlersicherung statt, sodass die Übertragungsqualität
und -zuverlässigkeit verbessert wird. Die zweite DLC-Schicht steuert die Übertragung der Nutzerdaten und bietet verschiedene Dienste wie geschützte oder ungeschützte Datenübertragung und Datenratenanpassung an. Weiterhin sind die
DLC-Schichten für die Aufbereitung der Daten aus den höheren Schichten zuständig, sodass diese entsprechend den Anforderungen an den Dienst (z.B. Sprachoder Datendienst) mittels MAC-Bearer übertragen werden können.
E
Seite 60
Chapter 3 Sicherheitsaspekte von DECT
Netzschicht (NWK)
Die Netzschicht verwaltet die Verbindungen zwischen einem Portable Part und
dem Fixed Part in DECT und ist weiterhin für die Steuerung des Datenaustausches verantwortlich. Hierzu bietet die Netzschicht unter anderem die Protokolle
Mobility Management (MM) und Call Control (CC) an.
• Das Mobility Management verwaltet alle Aufgaben und Eigenschaften die
für die Mobilität der Portable Parts benötigt werden. Dies umfasst die Teilnehmeridentität, Authentisierung, Verschlüsselung und Verwaltung der
Aufenthaltsorte der PPs.
• Die Verbindungssteuerung (Call Control) verwaltet alle ein- und ausgehenden Anrufe und die zugrundeliegenden Aufgaben wie Verbindungsaufbau
und -abbau.
3.5.2 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
K
Kontrollaufgabe 3.1: TDMA-Struktur
Wieviele simultanen Duplex-Sprachverbindungen werden im DECTStandard durch die TDMA-Struktur insgesamt ermöglicht?
K
Kontrollaufgabe 3.2: Referenzmodell
Welchen drei Schichten im ISO/OSI-Modell entspricht das DECTReferenzmodell?
3.6 Verbindungsverwaltung
Im Folgenden werden die einzelnen Betriebszustände der mobilen Endgeräte und
der Basisstation erläutert und sowohl der Verbindungsaufbau als auch der Handovermechanismus in DECT illustriert.
3.6.1 Betriebszustände
Portable Part
Mobile Endgeräte in DECT können wie in Abbildung 3.5 dargestellt einen von
vier Betriebszuständen annehmen [Wal01b]:
3.6 Verbindungsverwaltung
Seite 61
Figure 3.5: Betriebszustände
eines PP aus [Wal01b].
• Idle Unlocked: Das mobile Endgerät ist ausgeschaltet und kann sich
dementsprechend zu keinem Radio Fixed Part verbinden.
• Active Unlocked: Das mobile Endgerät ist eingeschaltet aber mit keinem
RFP verbunden und kann daher keine Anrufe annehmen oder tätigen. In
diesem Zustand sucht das PP nach einem geeigneten RFP mittels Empfangspegelmessungen, um in den Zustand Idle Locked überzugehen.
• Idle Locked: Das mobile Endgerät ist mit einem geeigneten RFP synchronisiert und kann Anrufe annehmen oder tätigen. Verlässt das PP den abgedeckten Funkbereich des RFPs, so wechselt der Zustand zurück in Active
Unlocked und das PP sucht wiederum nach einem geeigneten RFP. Wird
der erste MAC-Bearer aufgebaut (beispielsweise bei einem Anruf), wechselt das PP in den Zustand Active Locked.
• Active Locked: Das mobile Endgerät unterhält mindestens einen aktiven
physikalischen Kanal mit dem RFP. Bei Beendigung der Verbindung wechselt das PP zurück in den Zustand Idle Locked.
Fixed Part
Die Basisstation in DECT kann wie in Abbildung 3.6 dargestellt ebenfalls einen
von vier Betriebszuständen annehmen.
Figure 3.6: Betriebszustände
eines FP aus [Wal01b].
• Inactive: Die Basisstation ist ausgeschaltet und kann dementsprechend
keine Nachrichten versenden oder empfangen.
Seite 62
Chapter 3 Sicherheitsaspekte von DECT
• Active Idle: Die Basisstation betreibt keine aktiven Verbindungen und
strahlt einen Dummy-Bearer mit Systeminformationen im A-Feld (vgl. Abbildung 3.4) aus, welcher von den PPs empfangen und zur Synchronisation
mit der Basisstation verwendet wird.
• Active Traffic: Die Basisstation betreibt mindestens einen aktiven physikalischen Kanal mit einem PP und sendet den Dummy-Bearer nicht aus.
• Active Traffic & Idle: Die Basisstation betreibt mindestens einen aktiven physikalischen Kanal mit einem PP und sendet ebenfalls den DummyBearer aus.
3.6.2 Verbindung zwischen PP und FP
Ein mobiles Endgerät und die Basisstation müssen vor dem eigentlichen Informationsaustausch (wie beispielsweise Sprachdaten) einen physikalischen Kanal
aufbauen. Anders als bei zellularen Mobilfunksystemen mit Kanalzuweisung
mittels festem Algorithmus wendet DECT ein dynamisches Kanalwahlverfahren
(Dynamic Channel Selection) an, sodass jedem mobilen Endgerät theoretisch jeweils alle 12 möglichen Zeitschlitze auf allen 10 Trägerfrequenzen (vgl. Abbildung 3.3) für den Verbindungsaufbau mit der Basisstation zur Verfügung stehen [Wal01b, Lüd01].
Dynamische Kanalwahl
Vor dem Aufbau eines physikalischen Kanals zwischen einem mobilen Endgerät
und einer Basisstation ist es die Aufgabe des PPs, die Signalpegel aller Kanäle
der in Reichweite befindlichen Basisstationen bzw. RFPs zu messen. Das PP erhält durch regelmäßig durchgeführte Scans (mindestens einmal alle 30 Sekunden,
auch bei bereits aktiven Verbindungen) eine Liste mit allen freien bzw. verwendeten Kanälen der umliegenden Basisstationen. Im Anschluss an die Messungen
führt das mobile Endgerät bis zu drei Versuche von Verbindungsaufbauten mit
dem RFP durch, für das die beste Signalstärke gemessen worden ist. Schlagen
diese Verbindungsversuche fehl, so wechselt das mobile Endgerät zu der nächststärkeren Basisstation und wiederholt die Verbindungsversuche.
Die Kanalwahl für den Verbindungsaufbau wird durch die gemessenen Signalpegel (Radio Signal Strength Indicator) der einzelnen Kanäle bestimmt und unterliegt
einigen Einschränkungen [Lüd01]. Diese werden im Folgenden anhand eines Beispieles in Abbildung 3.7 verdeutlicht.
Figure 3.7: Kanalwahl
in DECT aus [Lüd01].
3.6 Verbindungsverwaltung
Die schwarz markierten Bereiche stellen die Zeitschlitze dar, die bereits von aktiven Verbindungen verwendet werden. Im Beispiel wird sowohl Zeitschlitz 2 auf
Frequenzträger 4 als auch Zeitschlitz 9 auf Frequenzträger 1 aktiv genutzt.
Besteht eine Basisstation lediglich aus einer Sende- und Empfangseinheit (Transceiver), so kann dieser RFP pro Zeitschlitz lediglich mit einem mobilen Endgerät
kommunizieren und somit insgesamt nur 12 statt der 120 möglichen Duplexkanäle nutzen. Die Ursache liegt darin begründet, dass ein Transceiver pro Zeitschlitz
nur auf einer Trägerfrequenz senden bzw. empfangen kann und Daten auf den übrigen 9 Trägerfrequenzen im gleichen Zeitschlitz nicht abgerufen und verarbeitet
werden können. Belegt ein PP einen Kanal auf einer Trägerfrequenz, so werden die
anderen Kanäle auf den übrigen neun Trägerfrequenzen im gleichen Zeitschlitz
als Blind Slot bezeichnet. In Abbildung 3.7 sind diese nicht-nutzbaren Zeitschlitze
grau markiert.
Führt ein mobile Endgerät die Signalmessungen während einer aktiven Verbindung durch (im Beispiel in Zeitschlitz 5 auf Frequenzträger 5 rot markiert),
so kann das Gerät in diesem Zeitschlitz keine Signalpegel der anderen neun
Frequenzträger messen. Weiterhin können manche Endgeräte aufgrund von
Hardware-technischen Einschränkungen die Zeitschlitze vor und nach dem aktiv
genutzten Zeitschlitz nicht für Signalpegelmessungen verwenden.
Verbindungsaufbau
In DECT baut grundsätzlich das mobile Endgerät eine Verbindung auf. Nachdem
der PP wie im vorherigen Abschnitt aufgezeigt den bestmöglichen Kanal für eine neue Verbindung ausgewählt hat, initiiert dieser den Verbindungsaufbau mit
Hilfe der Synchronisationsinformationen in den von der Basisstation versendeten
Dummy-Bearer Paketen. Die Basisstation ihrerseits scannt kontinuierlich die freien Kanäle nach Verbindungsanfragen.
Der eigentliche Verbindungsaufbau findet wie in Abbildung 3.8 dargestellt in der
MAC-Schicht durch einen Connection Request statt [Wal01b]. Diese Verbindungsanfrage initiiert eine Bearer Request Nachricht, in der das mobile Endgerät bei der
Basisstation auf dem ausgesuchten Kanal einen Bearer anfordert. Ist die Basisstation noch nicht für den Verbindungsaufbau bereit, sendet sie eine Wait Nachricht
an den PP, welcher diese Nachricht erwidert. Abgeschlossen wird die erste Phase des Verbindungsaufbaus mittels der Bearer Confirm Nachricht, die dem PP
signalisiert, dass die Basisstation für die weiteren Übertragungen bereit ist. Im
anschließenden Verlauf werden die Verbindungsaufbaunachrichten der Verbindungssteuerung (Call Control) in der Netzschicht (vgl. Abschnitt 3.5.1) ausgetauscht, um den Verbindungsaufbau abzuschließen.
Wie bereits erwähnt, initiiert in DECT das mobile Endgerät den Verbindungsaufbau, beispielsweise um einen Anruf zu tätigen. Dies führt zu dem Problem, dass
bei eingehenden Anrufen die Basisstation keine Verbindung zum mobilen Endgerät aufbauen kann. Als Lösung verwendet DECT sogenannte Paging-Nachrichten
mit der Identität des mobilen Endgerätes, die von allen PPs empfangen werden.
Das Endgerät mit der passenden Identität baut nach Empfang einer solchen Nachricht eine neue Verbindung zur Basisstation auf, um den Anruf in Empfang zu
nehmen.
Seite 63
Seite 64
Chapter 3 Sicherheitsaspekte von DECT
Figure 3.8: Verbindungsaufbau
zwischen PP und FP
aus [Wal01b].
3.6.3 Handover
Eine Anforderung an den DECT-Standard ist die netzwerkweite Mobilität mittels automatischen Handover-Mechanismen, sodass sich Teilnehmer eines DECTSystems frei in den mittels Funktechnik versorgten Gebieten bewegen können.
Weiterhin finden Handover wie beispielsweise in GSM statt, wenn aufgrund von
Qualitätseinbußen der bestehenden Verbindung entweder der genutzte Kanal
(Intra-Cell Handover) oder die Basisstation (Inter-Cell Handover) gewechselt werden muss.
Weiterhin werden Handover in die folgenden zwei Typen unterteilt:
• Internal Handover: Bei einem internen Handover wechselt das mobile Endgerät von Basisstation RF P1 zu RF P2 , wobei sich beide RFPs in
dem gleichen DECT-System befinden. Handover dieses Typs finden in
der MAC- oder DLC-Schicht statt. Interne Handover werden zumeist seamingless durchgeführt. Dies bedeutet, dass ein alter Kanal erst dann abgebaut wird, wenn ein neuer Kanal bereits aufgebaut und für eine gewisse
Zeit die identischen Daten über beide Verbindungen übertragen worden
sind.
• External Handover: Wechselt ein mobiles Endgerät zwischen verschiedenen in sich geschlossenen DECT-Systemen (mit unterschiedlichen Fixed
Parts), findet der Handover extern statt. Dieser Wechsel wird im Mobility Management der Netzschicht (vgl. Abschnitt 3.5.1) durchgeführt, wobei
es im Gegensatz zum internen Handover zu einem kurzzeitigen Verlust der
Verbindung kommen kann.
Ähnlich zum Verbindungsaufbau wird ein Handover immer durch ein mobiles
Endgerät initiiert. Stellt eine Basistation eine schlechte Verbindungsqualität fest,
signalisiert diese dem PP, einen Handover zu initiieren.
3.7 Sicherheit in DECT
Seite 65
3.6.4 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
Kontrollaufgabe 3.3: Dummy-Bearer
K
Aus welchem Grund sendet eine Basisstation den Dummy-Bearer?
Kontrollaufgabe 3.4: Handover
Wieso kann es bei einem externen Handover zu Verbindungsabbrüchen
kommen?
3.7 Sicherheit in DECT
Die Nutzung von Telefonie über Funk bietet ein hohes Maß an Flexibilität im Bereich Mobilität, allerdings birgt die Übertragung über Funk ebenfalls ein hohes
Potential an Risiken wie beispielsweise das Abhören von Gesprächen. DECT bietet zum Schutz vor Angriffen verschiedene Maßnahmen wie Authentisierung und
Verschlüsselung an, welche im Folgenden vorgestellt werden.
3.7.1 Architektur
Abbildung 3.9 stellt ein vereinfachtes Modell der Sicherheitsarchitektur von
DECT dar. Grundsätzlich verwendet DECT zwei proprietäre Algorithmen, die die
Authentisierungs- als auch Verschlüsselungsfunktionen übernehmen.
• DECT Standard Authentication Algorithm (DSAA):
Der
DSAAAlgorithmus besteht aus den vier Funktionen A11, A12, A21 und A22
und wird für die Authentisierung der Basisstation als auch der mobilen
Endgeräte angewandt. Weiterhin fließen Ergebnisse der A11 und A12
Funktionen in den Schlüsselerzeugungsprozess der Verschlüsselung ein.
• DECT Standard Cipher (DSC): Der DSC-Algorithmus ist eine asynchrone
64-Bit Stromchiffre, die mit einem 35-bit Initialisierungsvektor und irregulär getakteten linearen rückgekoppelten Schieberegistern (LFSR) arbeitet
und den Schlüsselstrom für die Sprach- und Datenverschlüsselung erzeugt.
3.7.2 Authentisierung
Bevor ein mobiles Endgerät an einer Basisstation verwendet werden kann und sich
gegenüber der Basisstation authentisiert, muss das Endgerät bei der Basisstation
registriert werden.
K
Seite 66
Chapter 3 Sicherheitsaspekte von DECT
Figure 3.9: Überblick
Sicherheitsarchitektur
aus [ETS11].
Registrierung
Bei der Registrierung gibt der Benutzer einen geheimen PIN-Code sowohl bei
dem mobilen Endgerät als auch bei der Basisstation ein. Nachfolgend werden
über Funk eindeutige Identifikationsnummern der Geräte ausgetauscht und beide Seiten erzeugen einen geheimen Authentisierungsschlüssel, welcher bei späteren Verbindungsaufbauten verwendet wird. Dieser Schlüssel wird grundsätzlich
nicht mittels Funk übertragen.
Mobile Endgeräte können in verschiedenen DECT-Systemen registriert sein. Mit
jeder Registrierung des PPs in einem neuen DECT-System wird ein eigener geheimer Authentisierungsschlüssel erzeugt und im PP abgelegt. Mobile Endgeräte
buchen sich somit lediglich in die DECT-Systeme ein, für die sie registriert sind.
Portable Part
Die Authentisierung eines mobilen Endgerätes bei der Basisstation findet bei jedem Verbindungsaufbau mittels der Challenge-Response Technik statt. Dazu sendet die Basisstation die zwei Parameter RS und RAN D_F an das mobile Endgerät, wobei RAN D_F eine Zufallszahl ist, die sogenannte Challenge. Der Parameter
RS wird für das Roaming zwischen verschiedenen Netzwerken verwendet, wird
allerdings im Folgenden nicht genauer betrachtet. Der PP verwendet die DSAA
Algorithmen A11 und A12 und errechnet aus den beiden Parametern der Basisstation und dem geheimen Authentisierungsschlüssel die Response RES1 und leitet diese an die Basisstation. Wie in Abbildung 3.10 dargestellt führt die Basisstation ihrerseits ebenfalls die Berechnung von Zufallszahl, Parameter RS und
geheimen Authentisierungsschlüssel durch und vergleicht das Ergebnis der Berechnung XRES1 mit der Antwort von dem mobilen Endgerät. Stimmen diese
Werte überein, hat sich das mobile Endgerät erfolgreich gegenüber der Basisstation authentisieren.
Figure 3.10: Authentisierung
eines mobilen Endgerätes aus [ETS11].
3.7 Sicherheit in DECT
Seite 67
Fixed Part
Die Authentisierung einer Basisstation bei einem mobilen Endgerätes ähnelt dem
vorherigen Authentifizierungsmechanismus. Das mobile Endgerät sendet wie in
Abbildung 3.11 dargestellt die Zufallszahl RAN D_P an das mobile Endgerät. Die
Basisstation verwendet die DSAA Algorithmen A21 und A22 und berechnet die
Response RES2. Diese wird zusammen mit dem Roamingparameter RS an das
mobile Endgerät gesendet, welches ebenfalls die Berechnungen durchführt und
das Ergebnis mit der Antwort der Basisstation vergleicht.
Figure 3.11: Authentisierung
einer Basisstation aus
[ETS11].
3.7.3 Verschlüsselung
DECT bietet die Möglichkeit, den Datenstrom von Daten- und Sprachnachrichten
zwischen Basisstation und mobilem Endgerät zu verschlüsseln. Dafür generieren
sowohl die Basisstation als auch das mobile Endgerät während der Authentisierungsphase einen Schlüssel mit Hilfe der DECT Standard Cipher. Dieser generiert
nachfolgend einen Schlüsselstrom für die Verschlüsselung der Daten- und Sprachnachrichten.
Figure 3.12: Vereinfachte
Darstellung der Verschlüsselung in DECT
aus [For97].
3.7.4 Angriffe auf DECT
Der DECT-Standard bietet durch eine eher unausgereifte Sicherheitsarchitektur
verschiedene Angriffsmöglichkeiten. Angriffe werden zum einen dadurch ermöglicht, dass grundsätzlich mobile Endgeräte die Verschlüsselung des Sprach- und
Datenstroms initiieren müssen und dies nicht durch die Basisstation gefordert
werden kann. Der Einsatz von verschlüsseltem Datenstrom ist in DECT allerdings
optional und bei einer Vielzahl von mobilen Geräten standardmäßig deaktiviert,
sodass ein Angreifer auf einfache Weise den Funkverkehr abhören und mitschneiden kann. Selbst wenn ein mobiles Endgerät den Datenstrom verschlüsseln will,
kann die Basisstation die Verschlüsselung ablehnen. In vielen Fällen stellt das mobile Endgerät die Verbindung zur Basisstation dennoch her, sodass der Funkverkehr ebenfalls unverschlüsselt durchgeführt wird und abgehört werden kann.
In DECT ist neben der Verschlüsselung auch die Authentisierung der Basisstation
gegenüber dem mobilen Endgerät optional [LST+ 09]. Dies erlaubt einem Angreifer sich als Basisstation auszugeben, indem er die Radio Fixed Part Identity fälscht
Seite 68
Chapter 3 Sicherheitsaspekte von DECT
und die Authentisierung des mobilen Endgerätes (vgl. Abbildung 3.10) ohne Prüfung akzeptiert. Anschließend kann die gefälschte Basisstation die Verschlüsslung
des Datenstroms ablehnen und den Sprach- und Datenstrom mitschneiden.
Neben diesen Angriffen existieren eine Reihe weiterer Angriffe auf die
Authentisierungs- und Verschlüsselungsalgorithmen DSAA und DSC.
Angriffe auf DSAA
Die genaue Funktionsweise des DECT Standard Authentication Algorithms war bis
zum Jahr 2009 der Öffentlichkeit nicht bekannt und Informationen waren lediglich für Hersteller von mobilen Geräten mittels einer Vertraulichkeitserklärung
verfügbar. Einzig der Aufbau und die Parameter der DSAA Funktionen A11, A12,
A21 und A22 wurden veröffentlicht (vgl. Abbildung 3.9).
Im Jahr 2009 gelang es einer Gruppe von Forschern [LST+ 09] mit Hilfe von Reverse Engineering, die Arbeitsweisen und Sicherheitsmerkmale von DSAA aufzudecken. Die vier A-Funktionen des DSAA können wie in Abbildung 3.13 dargestellt als Wrapperfunktionen für den eigentlichen DSAA-Algorithmus angesehen werden, wobei DSAA einen 64-bit Zufallswert und einen 128-bit Schlüssel als
Parameter erwartet und ein 128-bit Ergebnis zurückliefert. Die Ausgabe wird im
Anschluss von den einzelnen Wrapperfunktionen modifiziert.
Figure 3.13: Struktur
der DSAA AFunktionen aus
[LST+ 09].
• Funktion A11 liefert das vom DSAA generierte Ergebnis ohne Modifikation
zurück.
• Funktion A21 invertiert jedes zweite Bit des DSAA-Ergebnisses, beginnend
mit dem ersten Bit.
• Funktion A22 liefert die letzten 4 Bytes des DSAA-Ergebnisses zurück.
• Funktion A12 liefert wie A22 die letzten 4 Byte als Ausgabe zurück. Weiterhin werden die mittleren 8 Bytes in einem zweiten Ergebniswert zurückgegeben.
Abbildung 3.14 stellt die Struktur des DSAA dar. Grundsätzlich kann der DSAA
als Verschaltung von vier sehr ähnlichen Blockchiffren, cassable genannt, verstanden werden.
3.7 Sicherheit in DECT
Seite 69
Figure 3.14: Struktur
von DSAA [LST+ 09].
Diese Blockchiffren bestehen aus einem Substitutions-Permutations-Netzwerk
mit 6 Runden, in denen der Schlüssel zuerst auf die Eingabe addiert, auf eine S-Box
angewendet und anschließend das Resultat permutiert wird. Fatalerweise folgt
der 6. Runde keine finale Schlüsseladdition, sodass diese Runde invertierbar ist
und somit die Anzahl der effektiven Runden auf 5 reduziert wird. Weiterhin wurden in der S-Box weitere kryptographische Einschränkungen gefunden, da diese
die Tendenz hat, das niederwertigste Bit einer Eingabe zu invertieren. Mit Hilfe
von differenzieller Kryptoanalyse und wenigen ausgewählten Klartexten konnte
die cassable Blockchiffren komplett gebrochen werden, wobei drei Runden der
Blockchiffre mit einem einzigen Klartext / Ciphertext-Paar angegriffen werden
können [LST+ 09].
Zusammenfassend kann festgestellt werden, dass DSAA unsicher ist, da beispielsweise die mittleren 64 Bits des DSAA-Ergebnisses auf den mittleren 64 Bits des
Keys basieren, wodurch triviale Angriffe gegen DSAA möglich sind. Unter anderem können alle 128 Bits des Schlüssels mit maximal 264 Durchläufen von DSAA
ermittelt werden. Weitere Schwachstellen im Aufbau der Blockchiffren ermöglichen Angriffe mit einer Komplexität von weniger als 264 .
Angriffe auf DSC
Ähnlich zum DSAA war die Funktionsweise der DECT Standard Cipher der Öffentlichkeit lange Zeit unbekannt. Im Jahr 2010 ist es Forschern [NTW10] mittels
Reverse-Engineering gelungen, die Funktionsweise von DSC zu ermitteln.
Die DECT Standard Cipher ist eine asynchrone Stromchiffre, die mittels eines 64bit Schlüssels und einem 35-bit Initialisierungsvektor den Schlüsselstrom für die
Verschlüsselung in DECT generiert. Intern arbeitet DSC wie in Abbildung 3.15
dargestellt mit irregulär getakteten linear-rückgekoppelten Galois Schieberegistern R1 , R2 , R3 und R4 der Länge 17, 19, 21 und 23 Bits. Bits dieser vier LFSRs
werden mittels einer Kombinierfunktion O und dem Ausgabebit y der Funktion
O kombiniert und ergeben den finalen Schlüsselstrom.
Im Folgenden definiert xi,j das Bit des LFSR Ri an Position j, wobei xi,0 das Bit
mit dem niederwertigsten Stellenwert beschreibt. Für jedes Bit der Ausgabe wird
LFSR R4 drei Mal getaktet. Die restlichen drei LFSRs werden entweder zwei oder
dreimal pro Ausgabebit getaktet. Die Taktung wird durch die nachfolgenden Gleichungen bestimmt, wobei ci die Anzahl der Taktungen für LFSR Ri bestimmt.
c1 = 2 + (x4,0 ⊕ x2,9 ⊕ x3,10 )
c2 = 2 + (x4,1 ⊕ x1,8 ⊕ x3,10 )
c3 = 2 + (x4,2 ⊕ x1,8 ⊕ x2,9 )
Seite 70
Chapter 3 Sicherheitsaspekte von DECT
Figure 3.15: Struktur
von DSC aus
[NTW10] (schwarz
markierte Bits werden
bei Taktungsbestimmung invertiert).
Die Kombinierfunktion O nutzt die zwei niederwertigsten Bits der LFSRs R1 , R2
und R3 in Kombination mit dem Ausgabebit y folgendermaßen:
O((x1,0 , x1,1 , x2,0 , x2,1 , x3,0 , x3,1 ), y) = x1,1 x1,0 y ⊕ x2,0 x1,1 x1,0 ⊕ x1,1 y
⊕ x2,1 x1,0 y ⊕ x2,1 x2,0 x1,0 ⊕ x3,0 y
⊕ x3,0 x1,0 y ⊕ x3,0 x2,0 x1,0 ⊕ x3,1 y
⊕ x1,1 x1,0 ⊕ x2,0 x1,1 ⊕ x3,1 x1,0
⊕ x2,1 ⊕ x3,1
Das Ausgabebit wird daher sowohl für die Verschlüsselung eines Datenbits als
auch als Eingabe y der Kombinierfunktion O genutzt.
In der Initialisierungsphase von DSC werden alle LFSRs und das Ausgabebit y
auf 0 gesetzt. Anschließend wird der 35-bit Initialisierungsvektor mit Nullen auf
64 Bit aufgefüllt (die höherwertigen Bits werden auf Null gesetzt) und mit dem
64-bit Schlüssel CK konkateniert, um den Sessionkey K zu generieren.
K = Z(IV )||CK
Die Bits im Sessionkey K werden dann Bit für Bit in das jeweils höchstwertige
Bit der vier LFSRs kopiert, wobei mit dem niederwertigsten Bit des Schlüssels K
begonnen wird und die LFSRs pro übertragenen Bit einmal getaktet werden. Im
Anschluss werden 40 Initialisierungsrunden durchgeführt, in denen die LFSRs
getaktet, die Ausgabe der Kombinierfunktion O allerdings verworfen wird. Sollte
ein LFSR nach 11 Runden komplett aus Nullen bestehen, wird das höchstwertige
Bit des LFSR auf 1 gesetzt bevor die weiteren Runden getaktet werden.
Der DSC Algorithmus kann aufgrund der geringen Anzahl an Initialisierungsrunden mittels Clock-Guessing Attacken gebrochen werden. Ein ähnlicher Angriff
(Ekdahl-Johansson Angriff) konnte bereits bei dem A5/1 Algorithmus von GSM
erfolgreich durchgeführt werden. Weiterhin sind Known-Plaintext Angriffe auf
DSC möglich, sodass der DSC Algorithmus aufgrund dieser zwei Schwachstellen
deutlich schwächer ist als beispielsweise der A5/1 Algorithmus von GSM, obwohl
einige Eigenschaften DSC deutlich stärker machen würden als den A5/1 Algorithmus (vgl. Tabelle 3.1).
Die Sicherheit von DSC könnte deutlich verbessert werden, indem beispielsweise die Anzahl der Initialisierungsrunden vergrößert werden und weiterhin eine
Neu-Initialisierung des Schlüssels von Zeit zu Zeit stattfinden würde. Ähnlich
zum DSAA wäre allerdings eine bessere Strategie, ein von Experten begutachte-
3.8 Übungen
Anzahl LFSRs (Register)
Anzahl irregulär getakteter LFSRs (Register)
Kombinierfunktion
Für Ausgabe genutzte Bits
Für Taktung genutzte Bits
Taktungsentscheidung
Takte pro LFSR bis zum ersten Ausgabebit
Durchschn. Takte pro LFSR bis zum ersten Ausgabebit
Initialisierungsrunden
Seite 71
DSC
A5/1
4
3
nicht-linear
7
6
2/3
80-120
100
40
3
3
linear
3
3
0/1
0-100
75
100
Tabelle 3.1: Vergleich
DSC und A5/1 aus
[NTW10].
tes kryptographisches Protokoll für die Verschlüsselung in der nächsten Version
vom DECT-Standard zu nutzen.
3.7.5 Kontrollaufgaben
In diesem Abschnitt befinden sich verschiedene Kontrollaufgabe, die die Inhalt
der vorherigen Abschnitte auffassen und daher zur Vertiefung des Stoffs beitragen
sollen.
Kontrollaufgabe 3.5: Kryptographische Algorithmen
K
Benennen Sie die kryptographischen Algorithmen in DECT, deren Funktionen und ob deren Einsatz DECT kryptographisch sicher macht.
Kontrollaufgabe 3.6: DSC Algorithmus
K
Wozu dient der LFSR R4 im DSC Algorithmus?
3.8 Übungen
Übung 3.1: DECT vs. CT1/CT2
Ü
Finden Sie heraus, aus welchen Gründen CT1 bzw. CT2 Ende 2008 verboten
wurden?
Übung 3.2: Unterschiede zwischen DECT und GSM
Erläutern Sie einige Unterschiede zwischen DECT und GSM.
Ü
Seite 72
Ü
Chapter 3 Sicherheitsaspekte von DECT
Übung 3.3: Verschlüsselungsverfahren
Warum ist es nicht sinnvoll, wenn Verschlüsselungsverfahren wie bei DECT
auf geheimen Algorithmen basieren?
Ü
Übung 3.4: DSAA
Nennen Sie ein kryptographisches Verfahren, welches die unsichere
cassable Blockchiffre ersetzen könnte.
Verzeichnisse
Verzeichnisse
I. Liste der Lösungen zu den Kontrollaufgaben
Lösung zu Kontrollaufgabe 1.1 auf Seite 23
Das GSM-System besteht aus:
• Mobilstation1
• Base Transceiver Station1
• Base Station Controller1
• (Gateway) Mobile Switching Center
• Operation and Maintenance System
• Home Location Register
• Visitor Location Register
• Authentication Center
• Equipment Identification Register
Die mit 1 gekennzeichneten Komponenten bilden das Funk-Teilsystem.
Lösung zu Kontrollaufgabe 1.2 auf Seite 23
Ein Angreifer könnte folgendermaßen vorgehen:
• Passiv: Er lauscht alle Funk-Verbindungen mit und wartet, bis sich eine Mobilstation erstmalig mittels IMSI in das GSM-Netz einbucht. Dies ist möglich, da beim erstmaligen Einbuchen die IMSI im Klartext an das GSM-Netz
übertragen wird, um den teilnehmerspezifische Schlüssel zu bestimmen. In
dieser Phase ist dementsprechend keine Verschlüsselung aktiv.
• Aktiv: Der Angreifer gibt sich als Basisstation aus und zwingt eine Mobilstation statt der TMSI die IMSI zu übertragen. Dies ist möglich, da sich die
Basisstation gegenüber der Mobilstation nicht authentisieren muss.
Lösung zu Kontrollaufgabe 1.3 auf Seite 24
Ein Angreifer könnte folgendermaßen vorgehen:
• Er nutzt Schwachstellen in den Verschlüsselungsroutinen aus.
• Er gibt sich als Basisstation aus und unterdrückt wie in Abbildung 1.8 dargestellt die Verschlüsselung zwischen Mobil- und Basisstation.
Lösung zu Kontrollaufgabe 1.4 auf Seite 31
Das UMTS-System besteht aus:
• (Gateway) Mobile Switching Center
Seite 73
Seite 74
Verzeichnisse
• Operation and Maintenance System
• Home Location Register
• Visitor Location Register
• Authentication Center
• Equipment Identification Register
Weiterhin wurden zur Unterscheidung zwischen GSM und UMTS neue Komponenten eingeführt bzw. bestehende Komponenten umbenannt.
• UE: Das User Equipment besteht aus dem mobilen Endgerät und dem UMTS
Subscriber Identity Modul (USIM).
• Node B: Der Node B entspricht im wesentlichen der GSM-Basisstation und
übernimmt die funktechnische Versorgung.
• RNC: Der Radio Network Controller übernimmt die Aufgaben der BSCs in
GSM und verwaltet mehrere Node B-Komponenten.
Lösung zu Kontrollaufgabe 1.5 auf Seite 31
Die Basisstation sendet die Parameter RAN D und AU T N
AK, AM F, M AC).
=
(SQN ⊕
• RAN D: Zufallszahl
• SQN : Sequenznummer - Schutz vor Replayangriffen (Freshness)
• AK: Anonymity-Key
• AM F : Authentication and Key Management Field
• M AC: Message Authentication Code - Authentizität des GSM-Netzes
Nach Erhalt des Tuples (RAN D, AU T N ) berechnet die USIM zuerst
den Anonymity-Key AK
= f 5(Ki , RAN D) und die Sequenznummer
SQN = (SQN ⊕ AK) ⊕ AK. Im Anschluss wird die MAC XM AC =
f 1(Ki , SQN, RAN D, AM F ) berechnet und mit der in AU T N erhaltenen M AC
des UMTS-Netzes verglichen. Bei Gleichheit verifiziert die USIM, ob die erhaltene Sequenznummer SEQ mit Hilfe der gespeicherten SQNM S in einem
gültigen Wertebereich liegt. Zuletzt berechnet die USIM RES = f 2(Ki , RAN D),
sendet diesen Wert zurück an die Basisstation und berechnet den Cipher-Key
CK = f 3(Ki , RAN D) und den Integrity-Key IK = f 4(Ki , RAN D).
Lösung zu Kontrollaufgabe 1.6 auf Seite 32
Die f 8-Funktion ist eine symmetrische Stromchiffre, welche den Schlüsselstrom
für die Verschlüsselung der Daten in UMTS generiert. Die f 9-Funktion bildet
einen Message Authentication Code, welcher als Integritätsschutz einer Nachricht
dient.
Beide Funktionen nutzen die Kasumi-Chiffre.
Liste der Lösungen zu den Kontrollaufgaben
Lösung zu Kontrollaufgabe 2.1 auf Seite 40
Der A3-Algorithmus führt die Challenge-Response Berechnungen während der
Authentisierungsphase durch, wohingegen der A8-Algorithmus den Sessionkey
Kc generiert.
Lösung zu Kontrollaufgabe 2.2 auf Seite 40
Satellitentelefone bestehen häufig aus einem Standard-Mikroprozessor, einem dedizierten digitalen Signalprozessor, Speicher und weiterer Peripherie.
Lösung zu Kontrollaufgabe 2.3 auf Seite 46
Der R4 LFSR spielt bei der Bestimmung der Taktungen für die LFSRs R1 , R2 und
R3 eine Rolle, fließt aber nicht direkt mit in die Majority-Funktionen ein.
Lösung zu Kontrollaufgabe 2.4 auf Seite 46
Der Initialisierungsvektor wird aus der Frame-Nummer und dem Sessionkey Kc
berechnet und hat die Aufgabe, die LFSRs vor der Generierung des Schlüsselstroms in einen initialen Zustand zu überführen.
Würde jeder Teilnehmer einen eigenen Initialisierungsvektor verwenden (ohne
diesen mit dem Netzwerk zu teilen), könnte der Satellitenbetreiber die von einem
Teilnehmer verschlüsselten Nachrichten nicht entschlüsseln. Ebenso könnte auch
der Teilnehmer die Nachrichten vom Satellitenbetreiber nicht entschlüsseln, da
der A5-GMR-1-Algorithmus auf jeder Seite einen anderen Schlüsselstrom erzeugen würde.
Lösung zu Kontrollaufgabe 2.5 auf Seite 54
Lookup-Tabellen spezifizieren in Rechenoperationen häufig genutzte statische
Werte, um deren Berechnungen während der Laufzeit einzusparen.
Lösung zu Kontrollaufgabe 2.6 auf Seite 54
Der Schlüsselstrom fließt direkt in die Berechnungen der F-Funktion ein und wird
weiterhin in das Statusregister an Position S0 getaktet.
Lösung zu Kontrollaufgabe 3.1 auf Seite 60
Die TDMA-Struktur erlaubt bis zu 12 simultanen Duplex-Sprachverbindungen
pro Trägerfrequenz und damit einhergehend insgesamt 120 gleichzeitigen Sprachverbindungen im DECT-Standard.
Lösung zu Kontrollaufgabe 3.2 auf Seite 60
Das DECT-Referenzmodell entspricht den drei Schichten Physical, Data Link und
Network des ISO/OSI-Modells.
Seite 75
Seite 76
Verzeichnisse
Lösung zu Kontrollaufgabe 3.3 auf Seite 65
Der Dummy-Bearer enthält System- und Synchronisationsinformationen für die
mobilen Endgeräte, sodass diese sich mit dem Takt der Basisstation synchronisieren können.
Lösung zu Kontrollaufgabe 3.4 auf Seite 65
Bei einem externen Handover wird der Fixed Part des mobilen Endgerätes gewechselt. Bei dem Übergang von altem zum neuen FP müssen Prozesse wie beispielsweise Verschlüsselung gestoppt und neu synchronisiert werden, sodass ein
Seamingless-Handover nicht garantiert werden kann.
Lösung zu Kontrollaufgabe 3.5 auf Seite 71
DECT verwendet den DECT Standard Authentication Algorithm für die Authentisierung und die DECT Standard Cipher für die Generierung des Schlüsselstromes. Bei
beiden Algorithmen konnten die Funktionsweisen mittels Reverse-Engineering
ermittelt und analysiert werden. Weiterhin wurden in beiden Algorithmen massive Schwachstellen und Sicherheitslücken entdeckt, sodass sowohl Authentisierung als auch Verschlüsselung in DECT nicht kryptographisch sicher sind.
Lösung zu Kontrollaufgabe 3.6 auf Seite 71
Der LFSR R4 spielt lediglich bei der Bestimmung der Taktungen für die LFSRs R1 ,
R2 und R3 eine Rolle und fließt nicht direkt mit in die Kombinierfunktion ein.
Liste der Lösungen zu den Übungen
II. Liste der Lösungen zu den Übungen
Übungsaufgaben zu Studienbrief 1
Lösung zu Übung 1.1 auf Seite 33
• Der Angreifer gibt sich gegenüber der Mobilstation als Basisstation und
gegenüber dem Netz als Mobilstation des Opfers aus.
• Das GSM-Netz sendet die Authentisierungsanfrage RAN D an den Angreifer.
• Der Angreifer leitet RAN D an die Mobilstation.
• Die Mobilstation berechnet die Response SRES und sendet diese dem Angreifer.
• Der Angreifer leitet SRES an das GSM-Netz weiter und ist authentisiert.
• Das GSM-Netz initiiert eine A5/1 bzw. A5/3-Verschlüsselung mit dem Angreifer, wobei der Angreifer zu diesem Zeitpunkt Kc noch nicht kennt.
• Der Angreifer initiiert eine A5/2-Verschlüsselung mit der Mobilstation.
• Mittels Ausnutzung des Angriffes auf A5/2 berechnet der Angreifer innerhalb weniger Sekunden den Schlüssel Kc .
• Der Angreifer kommuniziert im folgenden mittels A5/1 bzw. A5/3 mit
dem GSM-Netz und mittels A5/2 mit der Mobilstation.
In GSM wird die Identität des GSM-Netzes nicht validiert. Weiterhin wird für
die Verschlüsselungsalgorithmen A5/1, A5/2 und A5/3 der gleiche Schlüssel Kc
verwendet.
Lösung zu Übung 1.2 auf Seite 33
Im GSM-Standard wird die Integrität von Nachrichten nicht verifiziert, sodass ein
Angreifer Nachrichten modifizieren kann. Im Gegensatz dazu nutzt UMTS die
Integritätsfunktion f 9, sodass der Empfänger mittels eines MAC erkennen kann,
ob Änderungen an einer verschickten Nachricht durchgeführt wurden.
Lösung zu Übung 1.3 auf Seite 33
Besteht eine Chiffre auf einem Feistelnetzwerk, so ist die Chiffre in jedem Fall umkehrbar, d.h., der Ciphertext ist in jedem Fall wieder in den Klartext rückführbar.
Ein Feistelnetzwerk besteht aus mehreren Runden, wobei pro Runde nur eine Hälfte der Eingabe unter Zuhilfenahme eines Rundenschlüssels in die Berechnungen
einfließt.
Seite 77
Seite 78
Verzeichnisse
Übungsaufgaben zu Studienbrief 2
Lösung zu Übung 2.1 auf Seite 54
Ein LFSR hat die Aufgabe, streng deterministischen Pseudozufallszahlenfolgen
zu generieren. Das Feedback-Polynom bestimmt die Abfolge der Pseudozufallszahlen und definiert damit die maximale Länge des LFSRs.
Lösung zu Übung 2.2 auf Seite 54
Stromchiffren eignen sich durch ihre Struktur besonders bei Echtzeitanwendungen wie der Telefonie, da jedes Bit/Byte der Nutzdaten direkt mit einem Bit/Byte
des Schlüsselstroms verknüpft werden kann. Eine Blockchiffre benötigt eine bestimmte Anzahl an Nutzdaten und verarbeitet diese Daten erst, wenn ein Datenblock komplett gefüllt und damit für die Verschlüsselung bereit ist. Dies kann zu
Verzögerungen während der Laufzeit führen.
Liste der Lösungen zu den Übungen
Frequenzband
Mobilitätsbereich
Trägerabstand
Duplexverfahren
Rahmenlänge
Zeitschlitze pro Rahmen
Kontrollkanäle
Kanalwahl durch
Handover durch
Seite 79
DECT
GSM
meist lizenzfrei
begrenzt (Heimbereich / Büro)
1728 kHz
TDD
10 ms
24
kombinierte Kanäle
PP
PP
lizenziert
international
200 kHz
FDD
4,6 ms
8
gesonderte Kanäle
FP
FP
Übungsaufgaben zu Studienbrief 3
Lösung zu Übung 3.1 auf Seite 71
Die Frequenzbereiche für CT1 und CT2 sind seit 2009 für die anderweitige
Nutzung vorgesehen (öffentlichen Mobilfunk und Funkanwendungen kleinerer
Reichweiten), sodass seit Ende des Jahres 2008 die Nutzung dieser Frequenzbereiche für CT1 bzw. CT2 nicht mehr gestattet ist.
Lösung zu Übung 3.2 auf Seite 71
Weiterhin sind die Frequenzträger in GSM in Upload und Download unterteilt,
wobei bei DECT jeder Frequenzträger Up- als auch Downloadkanäle überträgt.
Lösung zu Übung 3.3 auf Seite 72
Nach Kerckhoffs’ Prinzip sollte die Sicherheit eines Verschlüsselungsverfahrens
nicht auf der Geheimhaltung des Verschlüsselungsverfahrens sondern auf der Geheimhaltung des Schlüssels basieren. Mittels Reverse Engineering und ähnlichen
Techniken können Algorithmen rekonstruiert werden.
Lösung zu Übung 3.4 auf Seite 72
Generell können Verfahren wie Wi-Fi Protected Access 2 (WPA2) angewandt werden, die sich in ähnlichen Bereichen bereits bewährt haben. Der Einsatz von
Public-Key Verfahren wäre ebenfalls denkbar.
Tabelle 2: Unterschiede
zwischen DECT und
GSM aus [Lüd01].
Seite 80
Verzeichnisse
III. Literature
[BBK08a] Elad Barkan, Eli Biham, and Nathan Keller. Instant Ciphertext-Only Cryptanalysis of GSM Encrypted Communication. Journal of Cryptology, 21(3):392–429,
2008.
[BBK08b] Elad Barkan, Eli Biham, and Nathan Keller. Instant Ciphertext-Only Cryptanalysis of GSM Encrypted Communication. Journal of Cryptology, 21, March 2008.
[Ben13] Benedikt Driessen. PPractical Cryptanalysis of Real-World Systems: a Engineer’s
Approach. Dissertation, Ruhr-Universität Bochum, 2013.
[BER07] Andrey Bogdanov, Thomas Eisenbarth, and Andy Rupp. A HardwareAssisted Realtime Attack on A5/2 Without Precomputations. In Cryptographic
Hardware and Embedded Systems (CHES), 2007.
[Bou10] Noureddine Boudriga. Security of Mobile Communications. Taylor & Francis,
2010.
[DHW+ 12] Benedikt Driessen, Ralf Hund, Carsten Willems, Christof Paar, and Thorsten Holz. Don’t Trust Satellite Phones: A Security Analysis of Two Satphone Standards. In Proceedings of the 2012 IEEE Symposium on Security and Privacy, SP ’12,
pages 128–142, Washington, DC, USA, 2012. IEEE Computer Society.
[DHW+ 13] Benedikt Driessen, Ralf Hund, Carsten Willems, Christof Paar, and Thorsten Holz. An Experimental Security Analysis of Two Satphone Standards. ACM
Trans. Inf. Syst. Secur., 16(3):10:1–10:30, December 2013.
[DKS10] Orr Dunkelman, Nathan Keller, and Adi Shamir. A practical-time related-key
attack on the kasumi cryptosystem used in gsm and 3g telephony. In Proceedings
of the 30th Annual Conference on Advances in Cryptology, CRYPTO’10, pages 393–410,
Berlin, Heidelberg, 2010. Springer-Verlag.
[Dri12] Benedikt Driessen. Eavesdropping on Satellite Telecommunication Systems.
Cryptology ePrint Archive, Report 2012/051, 2012. http://eprint.iacr.org/
2012/051.
[ETS99] ETSI. ETSI TS 133 102 V3.6.0 (2000-10); Universal Mobile Telecommunications
System (UMTS); 3G Security; Security Architecture (3GPP TS 33.102 version 3.6.0
Release 1999), 1999.
[ETS01] ETSI. ETSI TS 135 201 V4.1.0 (2001-12); Universal Mobile Telecommunications System (UMTS); Specification of the 3GPP confidentiality and integrity algorithms; Document 1: f8 and f9 specifications (3GPP TS 35.201 version 4.1.0 Release
4), 2001.
[ETS02] ETSI. ETSI TS 101 376-5-3 V1.2.1 (2002-04); GEO-Mobile Radio Interface Specifications; Part 5: Radio interface physical layer specifications; Sub-part 3: Channel
Coding; GMR-1 05.003, 2002.
[ETS07] ETSI. ETSI TS 135 201 V4.1.0 (2001-12); Universal Mobile Telecommunications System (UMTS); Specification of the 3GPP confidentiality and integrity algorithms; Document 2: Kasumi specification (3GPP TS 35.202 version 7.0.0 Release
7), 2007.
Literature
[ETS11] ETSI. Digital Enhanced Cordless Telecommunications (DECT); Common Interface (CI); Part 7: Security features, 2011.
[Fed99] Hannes Federrath. Sicherheit mobiler Kommunikation: Schutz in GSM-Netzen, Mobilitätsmanagement und mehrseitige Sicherheit. DuD-Fachbeiträge. Vieweg+Teubner
Verlag, 1999.
[For97] DECT Forum. DECT - the standard explained. Website, 1997. Online verfügbar auf http://www.dectweb.com/DECTForum/publicdocs/TechnicalDocument.
PDF; besucht am 28.10.2014.
[LST+ 09] Stefan Lucks, Andreas Schuler, Erik Tews, Ralf-Philipp Weinmann, and Matthias Wenzel. Attacks on the DECT Authentication Mechanisms. In Marc Fischlin, editor, CT-RSA, volume 5473 of Lecture Notes in Computer Science, pages 48–65.
Springer, 2009.
[Lüd01] Christian Lüders. Mobilfunksysteme: Grundlagen, Funktionsweise, Planungsaspekte. Kamprath-Reihe. Vogel, 2001.
[NTW10] Karsten Nohl, Erik Tews, and Ralf-Philipp Weinmann. Cryptanalysis of the
DECT Standard Cipher. In Proceedings of the 17th International Conference on Fast
Software Encryption, FSE’10, pages 1–18, Berlin, Heidelberg, 2010. Springer-Verlag.
[PFS00] Slobodan Petrovic and Amparo Fuster-Sabater. Cryptanalysis of the A5/2 Algorithm. Technical report, 2000. http://eprint.iacr.org/2000/052.
[Wal01a] Bernhard Walke. Mobilfunknetze und ihre Protokolle 1. Mobilfunknetze und
ihre Protokolle. Teubner, 2001.
[Wal01b] Bernhard Walke. Mobilfunknetze und ihre Protokolle 2. Mobilfunknetze und
ihre Protokolle. Teubner, 2001.
Seite 81
Seite 82
Verzeichnisse
IV. Glossar
Begriff
Erklärung
(G)MSC
(Gateway) Mobile Switching Center
3GPP
3rd Generation Partnership Project
AUC
Authentication Center
BSC
Base Station Controller
BSS
Base Station Subsystem
BTS
Base Transceiver Station
CC
Call Control
CCCH
Common Control Channel
CCFP
Central Control Fixed Part
CCH
Control Channel
CHVI
Card Holder Verification Information
CN
Core Network
DECT
Digital Enhanced Cordless Telecommunications
DLC
Data Link Control
DSAA
DECT Standard Authentication Algorithm
DSC
DECT Standard Cipher
DSP
Digitaler Signalprozessor
EIR
Equipment Identification Register
ETSI
European Telecommunications Standards Institute
FCCH
Frequency Correction Channel
FDD
Frequency Division Duplexing
FDM
Frequency Division Multiplex
FP
Fixed Part
GAP
Generic Access Profil
GEO
Geostationary Earth Orbit
GGSN
Gateway GPRS Support Node
GIP
DECT/GSM Interworking Profil
GMR
Geostationary Earth Orbit Mobile Radio Interface
GP
Guard Period
GPRS
General Packet Radio Service
GSM
Global System for Mobile Telecommunications
GSN
GPRS Support Node
HLR
Home Location Register
IMEI
International Mobile Station Equipment Identity
IMSI
International Mobile Subscriber Identity
IWU
Interworking Unit
Glossar
Seite 83
LAI
Location Area Identifier
LFSR
Linear rückgekoppeltes Schieberegister
MAC
Medium Access Control
MC
Multi Carrier
MM
Mobility Management
MS
Mobilstation
OMC
Operation and Maintenance System
PCU
Packet Control Unit
PLMN
Public Land Mobile Network
PP
Portable Part
RFP
Radio Fixed Part
RFPI
Radio Fixed Part Identifier
RNC
Radio Network Controller
SGSN
Support GPRS Support Node
SIM
Subscriber Identity Modul
TCH
Traffic Channel
TCH3
Traffic Channel-3
TDD
Time Division Duplexing
TDMA
Time Division Multiple Access
TMSI
Temporary Mobile Subscriber Identity
UE
User Equipment
UMTS
Universal Mobile Telecommunications System
UTRAN
UMTS Terrestrial Radio Access
VLR
Visitor Location Register