SPIT und Privacy im Kontext des IMS

Transcrição

SPIT und Privacy im Kontext des IMS
Hochschule Darmstadt
- Fachbereich Informatik -
Spam over Internet Telephony und Privacy im Kontext des IP Multimedia
Subsystem
Abschlussarbeit zur Erlangung des akademischen Grades
Master of Science (M.Sc.)
vorgelegt von
Jürgen Müller
Referent:
Prof. Dr. Michael Massoth
Korreferent: Prof. Dr. Stephan Karczewski
Ausgabedatum: 31.03.2009
Abgabedatum:
30.09.2009
ii
Erklärung
Ich versichere hiermit, dass ich die vorliegende Arbeit selbständig verfasst und keine
anderen als die im Literaturverzeichnis angegebenen Quellen benutzt habe. Alle Stellen, die wörtlich oder sinngemäß aus veröffentlichten oder noch nicht veröffentlichten
Quellen entnommen sind, sind als solche kenntlich gemacht. Die Zeichnungen oder
Abbildungen in dieser Arbeit sind von mir selbst erstellt worden oder mit einem entsprechenden Quellennachweis versehen. Diese Arbeit ist in gleicher oder ähnlicher Form
noch bei keiner anderen Prüfungsbehörde eingereicht worden.
Darmstadt, den 30.09.2009
Jürgen Müller
iii
Erklärung
iv
Abstrakt
Die Umstellung auf die nächste Generation der Netze, die sogenannten Next Generation
Networks (NGNs) schreitet immer weiter voran. Eine der essenziellen Technologien für die
neuen Kernnetze ist das IMS.
Parallel hierzu entwickelt sich das Aufkommen von Spam stark steigend. In den vergangenen Jahren hat sich die Quantität von E-Mail-Spam auf rund 85 % gesteigert. Eine derartige
Entwicklung im Voice over IP (VoIP)-Bereich könnte den gesamten Dienst gefährden. Dass
es Spam over Internet Telephony (SPIT) gibt, belegt ein Versuch der Universität DuisburgEssen. Auf einem dort testweise eingerichteten Honeypot konnte der Versand von SPIT nachgewiesen werden. Damit ist belegt, dass es sich bei SPIT um kein fiktives Problem handelt.
Deshalb werden im Rahmen dieser Arbeit Abwehrmaßnahmen ermittelt, die das SPITAufkommen eindämmen. Diese Mechanismen sind jedoch wirkungslos, wenn keine starken
Identitäten gewährleistet sind. Aus diesem Grund werden Sicherheitsverfahren beschrieben,
die den Teilnehmer authentifizieren.
Das Session Initiation Protocol (SIP) gewährt jedoch die Möglichkeit, Telefonate direkt
zwischen zwei Endgeräten zu führen. Da durch die direkte Übertragung des SPIT das IMS
umgangen wird, kann das Endgerät nicht serverseitig geschützt werden. Deshalb wird im
Rahmen dieser Arbeit ein Konzept entworfen und untersucht, um in solchen Fällen Schutz
zu bieten.
The change into Next Generation Networks (NGNs) is in progress. One of the keytechnologies for the new corenetworks is the IMS.
At the same time the amount of E-Mail-Spam is growing. The quantity of E-Mail-Spam
has risen to around 85 %. This development in the Voice over IP (VoIP)-Sector threatens
the whole service. The existance of Spam over Internet Telephony (SPIT) was proven by an
experiment of the University of Duisburg-Essen. The distribution of SPIT was demonstrated
by an experimental Honeypot. This proves, that SPIT is a real problem.
v
Abstrakt
The object of this thesis is to establish methods of SPIT-prevention. However, these methods only work with strong identitys. For this reason the thesis at hand describes securityprocedures for authentication of the participants.
But the Session Initiation Protocol (SIP) allows peer-to-peer-calls. Since the direct transmission of SPIT bypasses the IMS, servers are not able to check the messages for SPIT.
Therefore this thesis developes a concept to provide protection against this form of SPIT.
Schlüsselwörter: IP Multimedia Subsystem, Next Generation Network, Spam, Spam over
Internet Telephony, Session Initiation Protocol, Voice over IP.
vi
Vorwort
Anders als bei meiner Bachelorarbeit muss ich dieses Mal dem wichtigsten Menschen in
meinem Leben als erstes Danken. Janina, ohne dich wäre ich heute vermutlich kein Student.
Ohne dich würde ich mich und meine Umgebung nicht reflektieren, ich würde nicht darauf
achten, was ich esse, wie ich mich kleide oder wo ich in meinem Leben hin will. Kurz, du
gibst mir sehr viel und ich hoffe, ich kann es dir wieder zurückgeben. Das Wichtigste was ich
dir hier sagen will, ich liebe dich von ganzem Herzen.
Meinen Eltern gilt ein ganz besonderer Dank. Während des Masterstudiums mussten sie
mir leider deutlich öfters helfen, als während des Bachelors. Für die liebevolle Hilfe möchte
ich mich daher hier nochmals bedanken.
Ganz besonders muss ich Christine danken. Im Masterstudium haben wird oft zusammengearbeitet und waren immer ein gutes Team. Doch gerade beim Schreiben dieser Arbeit war
sie mir eine sehr große Hilfe. Sie hat besonders oft, früh und viel für mich korrektur gelesen,
danke.
Aber Christine war zum Glück nicht die Einzige, die mir hilfreich zur Seite stand. Als
nächstes will ich hier Klaus und Stephan danken. Wir haben zusammen angefangen zu
studieren und wären alleine nicht entsprechend erfolgreich gewesen. Vielen Dank.
Natürlich will ich all meinen restlichen Korrekturlesern danken. Rebecca danke für die
Hilfe beim englischen Abstrakt. Andreas danke für deine weitsichtigen Kritiken an meinem
Aufbau und der Hinterfragung meiner schriftlichen Aussagen.
Nach meinen schlechten Erfahrungen während der Bachelorarbeit war ich sehr skeptisch,
ob ich einen Betreuer brauche oder will. Trotz, dass ich in Kassel wohne und das FraunhoferInstitut sehr weit weg ist, war mir Rachid eine sehr große Hilfe, ohne die ich es nicht geschafft
hätte. Dafür möchte ich ihm sehr danken.
Natürlich will ich auch meinen Referenten Prof. Dr. Michael Massoth und Prof. Dr.
Stephan Karczewski danken. Darüber hinaus muss ich Prof. Dr. Elke Hergenröther
danken, da sie für mich meine Mentorin war.
Natürlich habe ich nicht alle genannt, die vielleicht genannt werden müssten. Vermutlich
habe ich im Abgabestress vergessen, euch zu erwähnen. Daher anonymer weise, vielen Dank.
vii
viii
Inhaltsverzeichnis
Erklärung
iii
Abstrakt
v
Vorwort
vii
Abbildungsverzeichnis
xiii
1 Einleitung
1
1.1
Motivation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Aufgabenstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.3
Wirtschaftlicher Nutzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.4
Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2 Next Generation Network
2.1
2.2
2.3
5
Session Initiation Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
2.1.1
Begriffserklärung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.1.2
Nachrichtenstruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.1.3
Nachrichtentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
2.1.4
Adressierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
2.1.5
Prozeduren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2.1.6
Netzelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
IP Multimedia Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.2.1
Begriffserklärung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.2.2
Adressierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
2.2.3
Prozeduren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
2.2.4
Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
3 Spam over Internet Telephony
37
ix
Inhaltsverzeichnis
3.1
Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.1.1
Herkunft des Wortes Spam . . . . . . . . . . . . . . . . . . . . . . . .
38
3.1.2
Bedeutung in dieser Arbeit . . . . . . . . . . . . . . . . . . . . . . . .
38
3.1.3
Formen von Spam mittels Session Initiation Protcol . . . . . . . . . .
39
3.2
Soziale Auswirkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
3.3
Vorgehen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
3.3.1
Informationen sammeln . . . . . . . . . . . . . . . . . . . . . . . . . .
41
3.3.2
Sitzung etablieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
3.3.3
Nachricht übertragen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
3.4
Kostenberechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
3.5
Gesetzeslage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
3.5.1
Begriffserklärung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
3.5.2
Rechtmäßiges Direktmarketing . . . . . . . . . . . . . . . . . . . . . .
48
3.5.3
Möglichkeiten der Strafbarkeit . . . . . . . . . . . . . . . . . . . . . .
50
3.5.4
Regelungen für Internet Service Provider . . . . . . . . . . . . . . . .
51
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
3.6
4 Abwehrmaßnahmen
4.1
53
Identität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
4.1.1
Blacklists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
4.1.2
Whitelists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
4.1.3
Graylists
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
4.1.4
Device Fingerprinting . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
4.1.5
Reputationssysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
4.2
Inhalt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
4.3
Interaktiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.3.1
Intrusion Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.3.2
Payments at Risk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
4.3.3
Turingtests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
4.3.4
Computational Puzzles
. . . . . . . . . . . . . . . . . . . . . . . . . .
63
4.3.5
Honeypots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
Präventiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.4.1
Adressen verbergen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.4.2
Adressen streuen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
4.4.3
Teilnehmerverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
4.4.4
Umgang mit empfangenem Spam . . . . . . . . . . . . . . . . . . . . .
72
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
4.4
4.5
5 Sicherheitsverfahren
5.1
x
Hypertext Transport Protocol Authentication . . . . . . . . . . . . . . . . . .
75
76
Inhaltsverzeichnis
5.2
5.3
5.4
5.5
5.6
5.1.1
Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
5.1.2
Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
5.1.3
Anwendungsszenarien . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
5.1.4
Authentication and Key Agreement . . . . . . . . . . . . . . . . . . .
82
Session Initiation Protocol Security . . . . . . . . . . . . . . . . . . . . . . . .
84
5.2.1
Transport Layer Security . . . . . . . . . . . . . . . . . . . . . . . . .
84
5.2.2
Anwendungsszenario . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
Privacy-Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
5.3.1
Anonymisierungsstufen
. . . . . . . . . . . . . . . . . . . . . . . . . .
87
5.3.2
Anonymisierungsverhalten . . . . . . . . . . . . . . . . . . . . . . . . .
87
Secure/Multipurpose Internet Mail Extensions . . . . . . . . . . . . . . . . .
88
5.4.1
Schlüsselaustausch . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
5.4.2
Authentifizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
Internet Protocol Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
5.5.1
Sicherheitsassoziationen . . . . . . . . . . . . . . . . . . . . . . . . . .
90
5.5.2
Sicherheitsmodi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
5.5.3
Protokolle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
92
6 Direct-IP-SPIT-Schutz
95
6.1
Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
6.2
Konzept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
96
6.2.1
Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
96
6.2.2
Entwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
97
Machbarkeitsstudie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
98
6.3.1
Existenz des Anrufers beim Betreiber überprüfen . . . . . . . . . . . .
99
6.3.2
Direkte Überprüfung der Existenz des Anrufers . . . . . . . . . . . . . 102
6.3.3
Entwicklungsumgebung . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.3.4
Umsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.3
6.4
6.5
Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.1
Performance
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.2
Akzeptanz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.4.3
Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7 Zusammenfassung
113
7.1
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.2
Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Glossary
117
xi
Inhaltsverzeichnis
Literatur- und Quellenverzeichnis
125
Request for Comments-Verzeichnis
133
CD-ROM (im rückseitigen Einband)
xii
Abbildungsverzeichnis
2.1
Server- und Client-Rollenverteilung bei einem normalen Telefonat. . . . . . .
7
2.2
Verteilung von Transactions und Sitzung. . . . . . . . . . . . . . . . . . . . .
8
2.3
Three-Way-Handshake mit zwei Transactions. . . . . . . . . . . . . . . . . . .
8
2.4
Three-Way-Handshake mit einer Transaction. . . . . . . . . . . . . . . . . . .
9
2.5
Veranschaulichung des Dialogs. . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.6
Aufbau einer SIP-Nachricht. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.7
Relation zwischen permanentem und temporärem SIPURI. . . . . . . . . . .
22
2.8
Teilnehmerregistrierung mittels Session Initiation Protocol. . . . . . . . . . .
22
2.9
Der Three-Way-Handshake. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.10 Beispiele für einen User Agent. . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.11 Veranschaulichung des SIP-Trapezoid-Begriffs.
. . . . . . . . . . . . . . . . .
26
2.12 Relation zwischen IMPI und IMPU. . . . . . . . . . . . . . . . . . . . . . . .
29
2.13 Ablauf der Registrierung im IMS. . . . . . . . . . . . . . . . . . . . . . . . . .
30
2.14 Sitzungsaufbau im IMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
2.15 Ausschnitt aus der Referenzarchitektur des IMS. . . . . . . . . . . . . . . . .
31
2.16 Skizze einer Universal Integrated Circuit Card. . . . . . . . . . . . . . . . . .
34
3.1
Drei Schritte zum SPIT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
3.2
Ablauf beim Double-Opt-IN. . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
4.1
Kategorisierung der Abwehrmaßnahmen. . . . . . . . . . . . . . . . . . . . . .
53
4.2
Ein Beispiel für ein bildbasiertes CAPTCHA. . . . . . . . . . . . . . . . . . .
62
4.3
Umgehung eines CAPTCHAs. . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
4.4
Explosionsskizzenbeispiel einer Bild-Adresse aus mehreren Teilen. . . . . . . .
67
5.1
Kategorisierung der Sicherheitsverfahren. . . . . . . . . . . . . . . . . . . . .
75
5.2
Berechnung des gemeinsamen Geheimnises mittels MD5-Algorithmus. . . . .
77
5.3
Registrierung mit HTTP Authentication. . . . . . . . . . . . . . . . . . . . .
79
5.4
Proxy-Sitzungsaufbau mit HTTP Authentication. . . . . . . . . . . . . . . . .
80
xiii
Abbildungsverzeichnis
5.5
Peer-to-Peer-Sitzungsaufbau mit HTTP Authentication. . . . . . . . . . . . .
82
5.6
Berechnung des Nonce-Wertes mit AKA. . . . . . . . . . . . . . . . . . . . . .
83
5.7
Transport Layer Security-Schichtenmodell. . . . . . . . . . . . . . . . . . . . .
85
5.8
Domainübergreifender SIPS-Verbindungsaufbau. . . . . . . . . . . . . . . . .
86
5.9
Ende-zu-Ende-Sicherung.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
5.10 Netz-zu-Netz-Sicherung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
5.11 Integration des AH-Headers in ein IP-Paket. . . . . . . . . . . . . . . . . . . .
92
6.1
Abfolge der Responses 100 Trying und 180 Ringing. . . . . . . . . . . . . . .
97
6.2
Konzeptionelle Änderung im Ablauf eines Direct-IP-Calls. . . . . . . . . . . .
98
6.3
Ablauf eines verifizierten Anrufs mit DERIVE. . . . . . . . . . . . . . . . . . 101
6.4
Erfolgreicher Angriff trotz DERIVE. . . . . . . . . . . . . . . . . . . . . . . . 102
6.5
Implementierte Änderung im Ablauf eines Direct-IP-Calls. . . . . . . . . . . . 105
6.6
Boxplot der Messergebnisse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.7
Boxplot der Messergebnisse bis zum 90 % Perzentil. . . . . . . . . . . . . . . 108
6.8
Standardabweichung um das arithmetische Mittel. . . . . . . . . . . . . . . . 109
6.9
Konfidenzintervall beider Messungen. . . . . . . . . . . . . . . . . . . . . . . . 110
6.10 Verteilung der Spamkosten für das Jahr 2009. . . . . . . . . . . . . . . . . . . 111
7.1
xiv
Reduktion von SPIT via Proxy. . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Kapitel
1
Einleitung
Zu Beginn wird die Motivation beschrieben, die zur Erstellung dieser Arbeit geführt hat (vgl.
Abschn. 1.1, S. 1). Anschließend wird die genaue Aufgabenstellung zur Anfertigung dieser
Masterarbeit dargestellt (vgl. Abschn. 1.2, S. 2). Danach wird der wirtschaftliche Nutzen
dieser Arbeit beschrieben (vgl. Abschn. 1.3, S. 2). Als letztes folgt ein kurzer Überblick über
den Aufbau der vorliegenden Arbeit (vgl. Abschn. 1.4, S. 3).
1.1 Motivation
Seit dem Wintersemester 2007 wird an der Hochschule Darmstadt das Projekt Systementwicklung mit dem Ziel Entwicklung und Betrieb eines IMS“ angeboten [Mas-2009].
”
Seitdem wurden vier Veröffentlichungen auf Konferenzen und ein Artikel im hochschulweiten
Magazin Querschnitt veröffentlicht. Außerdem wurden drei Bachelor- und vier Masterarbeiten
(die hier vorliegende Arbeit inbegriffen) erstellt.
Seit dem Sommer 2009 ist das Projekt Teil des Next Generation Telecommunication
Factory (NextFactor)-Projekt. Dieses Projekt hat die folgenden Ziele [Mas-2008, S. 2–3]:
1. IMS/NGN-Infrastruktur mit Testing and Test Control Notation Version 3 (TTCN-3)
”
basierter Testautomationsplattform als Service für kleinere und mittlere Unternehmen
(KMU) und Unternehmenspartner“.
2. Entwicklung einer umfassenden IMS/NGN-Sicherheitsinfrastrukur“.
”
3. Entwicklung eines sicheren SIP-basierten mobilen Bezahldienstes mit Integration von
”
Near Field Communication (NFC)“.
Das Projekt ist in mehrere Arbeitspakete unterteilt. Diese Arbeit ist dem Arbeitspaket
AP Sec4 Endgerätesicherheit (inkl. SPIT/SPAM)“ [Mas-2008, S. 14–18] zugeordnet. Die
”
Aufgabenstellung für diese Masterarbeit wird im nächsten Abschnitt (vgl. Abschn. 1.2, S. 2)
näher beschrieben.
1
Kapitel 1. Einleitung
Für die Bearbeitung des Themas Spam over Internet Telephony (SPIT) ist eine Betrachtung hinsichtlich Privacy unumgänglich. Mittlerweile ist deutlich geworden [RFC-5039,
S. 23], dass ohne starke Identitäten das SPIT nicht in den Griff zu bekommen ist. Eine starke
Identität bezeichnet eine vertrauenswürdige Bindung zwischen Teilnehmer und Netzwerk.
Doch wie können starke Identitäten im IMS gesichert werden?
Ob SPIT aufkommen wird, galt lange als ungewiss. Ein Versuch der Universität DuisburgEssen belegt die Existenz dieses Problems [Hof-2009, S. 9]. Sie betreibt einen Honeypot
für SPIT, auf den bereits zugegriffen wurde. Außerdem prognostiziert das Bundesamt für
Sicherheit in der Informationstechnik (BSI) für SPIT eine ähnliche quantitative Entwicklung
wie bei E-Mail-Spam [BSI-2009, S. 4].
Wenn jetzt etwas unternommen wird, kann diese Entwicklung aufgehalten werden. Kommt
es zu einer Verbreitung von SPIT, kann dies den gesamten Einsatz von Voice over IP (VoIP)
gefährden. Schließlich will niemand die selbe Masse an unerwünschten Anrufen, wie an unerwünschten E-Mails.
1.2 Aufgabenstellung
Frühere Untersuchungen haben gezeigt, dass zur erfolgreichen Spambekämpfung ein gewisses
Maß an Privatsphäre nötig ist [RFC-5039, S. 23–24]. Insbesondere das Vorhandensein starker
Identitäten ist eine der Schlüsselrollen gegen Spam.
Doch im Kontext moderner Netzarchitekturen, insbesondere des IMS, werden viele Identitäten ausgetauscht. Da sie für die Funktion der Architektur unumgänglich sind, können sie
nicht entfernt werden. Folglich geht es mehr um einen effektiven Schutz.
Im Kontext der Spambekämpfung bedeutet dies, dass die Identitäten mittels Authentifizierungsmaßnahmen geschützt werden müssen. Ziel dieser Arbeit ist daher die Ermittlung
von Mechanismen zur Abwehr von SPIT und Gewährung von starken Identitäten.
Abschließend wird eine Anti-SPIT-Maßnahme für direkte Anrufe implementiert. Da
das NextFactor-Projekt noch im Anfangsstadium ist, wird zunächst eine Machbarkeitsstudie
entworfen, die eine generelle Möglichkeit bestätigt.
1.3 Wirtschaftlicher Nutzen
Das Aufkommen von SPIT kann dafür sorgen, dass der VoIP-Dienst vom Teilnehmer abgelehnt wird. Da die Next Generation Networks (NGNs) von diesem Problem betroffen sind
[TIS-2008, S. 20], ergibt sich ein direktes Interesse der ISP, SPIT möglichst frühzeitig einzudämmen.
SPIT verursacht vor allem beim Ziel des Spams hohe Kosten. Der größte Bestandteil dieser Kosten ist mit 85 % der entstehende Produktivitätsverlust [Jen-2009]. Die Kosten cs
2
1.4. Aufbau der Arbeit
für einen Anruf ergeben sich aus dem durchschnittlichen Stundenlohn lh für die entgangene Arbeitszeit tc (vgl. Formel 1.1, S. 3). Da der Mitarbeiter durch den Anruf aus seiner
Tätigkeit gerissen wird, entgeht dem Arbeitgeber zusätzliche Arbeitszeit tx . Bei mehreren
Spamvorfällen summiert sich dieser Betrag weiter auf.
cs = (tc · tx ) ·
lh
360
(1.1)
Diese Arbeit präsentiert die notwendigen Abwehrmaßnahmen und Sicherheitsverfahren.
Dabei führt sie in die Probleme ein, die im Kontext von SPIT auftreten können. Insbesondere
wird die Relevanz von starken Identitäten, in Form von authentisierten Teilnehmern, beschrieben.
Zusätzlich wird ein Konzept zur Abwehr von Direct-IP-SPIT beschrieben. Direct-IP-SPIT
ist als besonders gefährlich einzustufen, da es das IMS umgeht und somit eine Abwehr kaum
möglich macht.
1.4 Aufbau der Arbeit
Das Thema SPIT wird in dieser Arbeit im Kontext des IMS betrachtet. Deshalb wird in
einem einleitenden Kapitel (vgl. Kap. 2, S. 5) in die für diese Arbeit wichtigsten Themen
eingeführt, die unter dem Schlagwort NGNs zusammengefasst werden. Da das Session Initiation Protocol (SIP) für das IMS und die Zustellung des SPIT von zentraler Bedeutung
ist, wird zunächst die Funktionsweise dieses Protokolls vorgestellt. Auf Basis dieses Wissens
wird in die Thematik des IMS eingeführt werden.
Anschließend wird das SPIT erklärt (vgl. Kap. 3, S. 37). Dafür wird zunächst definiert,
was unter dem Ausdruck SPIT in dieser Arbeit zu verstehen ist. Bevor auf die Arbeitsweise
eines Spammers eingegangen wird, werden ausgewählte soziale Auswirkungen von SPIT vorgestellt. Danach wird das Vorgehen beim Senden von SPIT erklärt. Des Weiteren wird untersucht, ob sich SPIT für den Versender finanziell lohnt. Abschließend wird in die rechtlichen
Rahmenbedingungen um das Thema Spam eingeführt.
Da es seit mehreren Jahren E-Mail-Spam gibt, steht die Forschung dem Thema SPIT
nicht unvorbereitet gegenüber. Viele Ansätze der klassischen Spambekämpfung sind auf
SPIT übertragbar. Unterteilt in vier Gruppen (z. B. identitätsbasiert, präventiv) werden
diese Abwehrmaßnahmen vorgestellt (vgl. Kap. 4, S. 53).
Dem Thema Privacy kommt eine Schlüsselfunktion für die erfolgreiche SPIT-Bekämpfung
zu. Aus diesem Grund werden im nächsten Kapitel (vgl. Kap. 5, S. 75) die Sicherheitsverfahren vorgestellt, die hierfür im IMS eingesetzt werden können.
Zwar lässt sich SPIT wie E-Mail-Spam nicht vollständig unterbinden, doch zeigt sich, dass
eine Form des SPIT besonders kritisch ist. Das sogenannte Direct-IP-SPIT“ kann fast
”
nicht abgewehrt werden. Um diesem Problem entgegenzuwirken, wurde im Rahmen dieser
3
Kapitel 1. Einleitung
Arbeit ein Konzept zur Abwehr von Direct-IP-SPIT definiert und im Rahmen einer Machbarkeitsstudie realisiert (vgl. Kap. 6, S. 95).
Abschließend werden die Erkenntnisse aus dieser Arbeit zusammengefasst und bewertet.
Die Zusammenfassung wird durch einen Ausblick ergänzt.
4
Kapitel
2
Next Generation Network
Im Kontext der digitalen Konvergenz der Netze sind die sogenannten Next Generation Networks (NGNs) [ITU-2004] als Integrationsplattform das tragende Konzept. Sie bieten
zukünftig ein zentrales paketorientiertes Basisnetz z. B. für Telefonie und Internet. Zur Steigerung der Skalierbarkeit und Modularisierung sind die Kontrollfunktionen und der Transport voneinander getrennt. Um Telefonie über paketorientierte Netze zu ermöglichen, ist
eine sogenannte Quality of Service (QoS) integriert. Da ohne QoS jedes Paket im Internet
gleichberechtigt ist, kann es während eines Telefonats vermehrt zu Störgeräuschen kommen.
Beispielsweise kann ein Sprachpaket stark verzögert eingehen, sollte ein großer Dateitransfer
dazwischenkommen. Jetzt ist es möglich, Sprachpakete bevorzugt zuzustellen, um dem Echtzeitcharakter dieser Anwendung Rechnung zu tragen.
Eines der tragenden Protokolle für die Internettelefonie in den NGNs ist das Session
Initiation Protocol (SIP) (vgl. Abschn. 2.1, S. 5). Es stellt dem Netzwerk eine Sitzungssteuerungsfunktionalität zur Verfügung. Wenn ein Angreifer Spam versenden will, wird
er nach dem heutigen Stand auf das SIP zugreifen müssen.
Im Kern dieses konvergenten Netzes wird das IMS (vgl. Abschn. 2.2, S. 27) eingesetzt.
Es definiert die zentralen Steuerfunktionen zur Durchführung verschiedener Services, wie
z. B. Telefonie. Somit hat das IMS eine Schlüsselfunktion in der Bekämpfung von Spam over
Internet Telephony (SPIT) (vgl. Kap. 3, S. 37).
Da jeder der genannten Technologien für den Vertrieb sowie die Bekämpfung von SPIT
relevant ist, werden diese nachfolgend genauer vorgestellt. Eine Untersuchung auf die Angriffsmöglichkeiten erfolgt später in dieser Arbeit (vgl. Kap. 4, S. 53).
2.1 Session Initiation Protocol
Voice over IP (VoIP) leistet einen wichtigen Beitrag zur Konvergenz der Netze. Mit VoIP
ist ein Teilnehmer in der Lage, von jedem beliebigen Endgerät (z. B. Handy) Telefonate zu
führen, solange dieses internetfähig ist.
5
Kapitel 2. Next Generation Network
Doch diese Flexibilität bedeutet zusätzlichen Aufwand. Ein Mobiltelefon ist in der Regel
nicht in der Lage die Sprache in derselben Qualität zu übertragen wie ein Telefon. Das liegt
an der unterschiedlichen Bandbreite. Mittels Mobilfunknetz wird beim Global System for
Mobile Communications (GSM) ca. 10 kbit/s oder mittels General Packet Radio Service
(GPRS) ca. 8–10 kbit/s zur Verfügung gestellt [3GP-2009]. Ein an das Integrated Service
Digital Network (ISDN) angeschlossenes Telefon hat jedoch 64 kbit/s.
Deshalb muss zur Abstimmung der Möglichkeiten eine sogenannte Sitzungssteuerung
eingesetzt werden. Sie ermittelt im Rahmen der Signalisierung die Fähigkeiten der beteiligten Endgeräte. Zur Beschreibung der Fähigkeiten kommt ein Sitzungsbeschreibungsprotokoll
(z. B. das Session Description Protocol (SDP) [RFC-4566]) zum Einsatz. Mit diesen Informationen kann eine Kommunikationsverbindung aufgebaut werden, die den Möglichkeiten aller
Teilnehmer gerecht wird. Des Weiteren ist eine Sitzungssteuerung für den generellen Aufund Abbau einer Sitzung und für die Verwaltung dieser Sitzung zuständig.
Der Begriff Sitzung bezeichnet den Austausch von Daten zwischen zwei beteiligten Teilnehmern [RFC-3261, S. 8]. Zur besseren Darstellung lässt sich dieser Begriff an folgendem
Beispiel beschreiben: Alice sitzt an ihrem Computer und will Bob auf seinem Mobiltelefon erreichen. Nach der Eingabe der Mobilfunknummer findet die Sitzungssteuerung die
Fähigkeiten von allen beteiligten Endgeräten heraus. Da Bob über ein Handy telefoniert,
kommt ein etwas schlechterer Codec zum Einsatz. Falls Bob während des Gesprächs in ein
Gebiet mit schlechterem Empfang kommt, kann der aktuelle Codec eventuell nicht mehr
genutzt werden. Deshalb wird der verwendete Codec in einer solchen Situation von der Sitzungssteuerung gewechselt. Beendet Alice ihr Telefonat mit Bob, sorgt die Sitzungssteuerung
dafür, dass die Verbindung getrennt wird. Der gesamte Prozess von Rufauf- bis Rufabbau
wird als Sitzung bezeichnet.
Das Session Initiation Protocol (SIP) [RFC-3261] ermöglicht eine solche Sitzungssteuerung.
Beim Entwurf des SIP wurde besonders auf die Verständlichkeit und leichte Handhabung Wert gelegt. Aus diesem Grund ist die Syntax sehr ähnlich zur der des Hypertext
Transport Protocol (HTTP) [RFC-1945][RFC-2616].
Um Nachrichten zwischen den Teilnehmern auszutauschen, kommen mehrere Transportprotokolle in Frage. Das gewählte Protokoll muss jedoch von beiden beteiligten Teilnehmern
unterstützt werden, um eine Verbindung zu etablieren. Um das SIP zu transportieren, kann
auf die folgenden Protokolle zurückgegriffen werden [RFC-3261, S. 141–142][RFC-4168]:
• Transmission Control Protocol (TCP) [RFC- 793].
• User Datagram Protocol (UDP) [RFC- 768].
• Session Control Transmission Protocol (SCTP) [RFC-4960].
Das SCTP und TCP bieten eine Übertragungssicherung. Eine Übertragungssicherung
beinhaltet eine Nachrichtenwiederholung bei Verlust oder Beschädigung, Einhaltung der
6
2.1. Session Initiation Protocol
Sendereihenfolge und Eliminierung von Duplikaten. Da das SIP eine Übertragungssicherung
bereitstellt, kann der Einsatz des SCTP und des TCP einen unnötigen zusätzlichen Overhead
aufgrund doppelt ausgeführter Tätigkeiten bedeuten [TW-2007, S. 124]. Deshalb kommt oft
das verbindungslos arbeitende UDP zum Einsatz, da es keine Übertragungssicherung einsetzt.
2.1.1 Begriffserklärung
Im Kontext vom SIP wird von Wörtern und Begriffen Gebrauch gemacht, die eventuell ungeläufig sind beziehungsweise in Zusammenhang mit anderen Thematiken verwendet werden.
Um Irritationen zu vermeiden, werden in diesem Abschnitt kurz die Begrifflichkeit bestimmter
Ausdrücke erklärt.
User Agent Client und Server
Ein UA (vgl. Abschn. 2.1.6, S. 24) besteht aus zwei Komponenten, einem UAC und einem UAS. Die Bezeichnung unterscheidet sich von der klassischen Verwendung des Client- /
Server-Begriffs. Ob ein UA als Client oder als Server agiert, sagt nichts über seine eigentliche
Funktion aus. Er kann eine Endeinrichtung oder ein Netzelement sein. Die Angabe, ob es
sich um einen Client oder einen Server handelt, ist nur eine fallbezogene Bezeichnung.
Alice
INVITE
Bob
100 Trying
User Agent
Client
180 Ringing
200 OK
User Agent
Server
ACK
Sitzung
User Agent
Server
BYE
200 OK
User Agent
Client
Abb. 2.1: Server- und Client-Rollenverteilung bei einem normalen Telefonat.
Startet ein UA eine Kommunikation durch das Senden eines INVITE-Request, nimmt er
die Rolle des UAC ein (vgl. Abb. 2.1, S. 7). Der angerufene UA übernimmt automatisch die
Rolle des UAS. Seine Funktion ist die Beantwortung der Requests mit Responses.
7
Kapitel 2. Next Generation Network
Transaction
Das Anfrage-Antwort-Verfahren bei SIP wird als Transaction [RFC-3261, S. 122–141]
bezeichnet. Im Rahmen einer Transaction werden eine Request und ein oder mehr Responses
ausgetauscht [RFC-3261, S. 122]. Eine Transaction wird mit einer finalen Response beendet.
Wenn die Request-Methode z. B. INVITE oder SUBSCRIBE (vgl. Abschn. 2.1.3, S. 18)
ist, leitet die Transaction einen Dialog (vgl. Abschn. 2.1.1, S. 9) ein. Diese Sitzung wird
wiederum durch eine weitere Transaction beendet (vgl. Abb. 2.2, S. 8).
Alice
INVITE
Bob
Transaction 1
200 OK
ACK
Transaction 2
Sitzung
BYE
Transaction 3
200 OK
Abb. 2.2: Verteilung von Transactions und Sitzung.
Um einzelne Nachrichten einer Transaction zuzuordnen, werden die folgenden HeaderFelder ausgewertet:
• Der brach-Wert im via-Header-Feld.
• Der Wert des CSeq-Header-Feld.
Eine Ausnahme [RFC-3261, S. 125–129] für die Transaction ist der Three-Way-Handshake
(vgl. Abschn. 2.1.5, S. 22). Abhängig davon, wie der Verbindungsaufbau verläuft, besteht er
aus mehr oder weniger Requests und Responses [RFC-3261, S. 122–123].
• Erfolgreicher Verbindungsaufbau (vgl. Abb. 2.3, S. 8): Das heißt der INVITERequest wird mit einem Response vom Typ 2xx beantwortet (vgl. Abb. 2.9, S. 23).
In diesem Fall besteht der Three-Way-Handshake aus einer normalen“ Transaction
”
(INVITE und 200 OK) und einer Transaction mit nur einem Request (ACK).
Alice
INVITE
200 OK
ACK
Bob
Transaction 1
Transaction 2
Abb. 2.3: Three-Way-Handshake mit zwei Transactions.
8
2.1. Session Initiation Protocol
• Erfolgloser Verbindungsaufbau (vgl. Abb. 2.4, S. 9): Dies ist der Fall, wenn der
INVITE-Request durch einen Response vom Typ 3xx bis 6xx beantwortet wird. Dann
besteht die Transaction aus zwei Requests (INVITE und ACK) und einer Response
(3xx bis 6xx).
Alice
INVITE
Bob
404 Not Found
Transaktion 1
ACK
Abb. 2.4: Three-Way-Handshake mit einer Transaction.
Dialog
Eine zusammenhängende Folge von Transactions wird als Dialog [RFC-3261, S. 69]
bezeichnet. Der Austausch der Medieninformationen, wie z. B. bei VoIP der Austausch der
Sprachdaten, fällt ebenfalls unter diesen Begriff.
Alice
INVITE
Bob
200 OK
INVITE-Dialog
ACK
Sitzung
Sitzungs-Dialog
BYE
200 OK
BYE-Dialog
Abb. 2.5: Veranschaulichung des Dialogs.
Die an einem Dialog beteiligten Transactions werden über die folgenden Header-Felder
zugeordnet:
• Der Wert des Call-ID-Header-Feld.
• Der Wert des tag-Parameters im From-Header-Feld.
• Der Wert des tag-Parameters im To-Header-Feld.
Ein Dialog wird von keinem Netzelement außer den Endsystemen terminiert. Ausnahmen
stellen Netzelemente dar, die als Endsystem auftreten können, wie beispielsweise der B2BUA
(vgl. Abschn. 2.1.6, S. 26).
9
Kapitel 2. Next Generation Network
Event
Als Event [RFC-3265] wird bei SIP ein Ereignis bezeichnet, dass zu einem bestimmten
Zustand gehört. Events werden beispielsweise für die Durchführung einer Presence-Funktion
[RFC-3856] genutzt. Bei einem Presence Event wird z. B. der Abonnent informiert, wenn sich
der überwachte Teilnehmer registriert.
Um ein Event zu abonnieren, wird ein SUBSCRIBE-Request (vgl. Abschn. 2.1.3, S. 19)
an den gewünschten Zielteilnehmer gesendet. Sobald sich der abonnierte Zustand dieses Teilnehmers ändert, sendet sein UA einen NOTIFY-Request an den abonnierenden Teilnehmer.
Diese Prozedur der Überwachung und Information wird als SIP-Specific Event Notification
[RFC-3265] bezeichnet. Eine vollständige Liste aller möglichen Event Packages ist auf der
Seite der Internet Assigned Numbers Authority (IANA) [IAN-2009] zu finden.
2.1.2 Nachrichtenstruktur
Beim SIP besteht eine Nachricht aus zwei bis vier Elementen. Sie enthält immer die folgenden
beiden Komponenten:
1. Start-Line.
2. Header.
Die Nachrichten sind zustätzlich in der Lage eine Nutzlast zu transportieren. In den meisten
Fällen ist dies eine Beschreibung der zu verwendenden Codecs. Enthält eine Nachricht eine
Nutzlast, erweitert sich der Aufbau der Nachricht wie folgt:
1. Start-Line.
2. Header.
3. Leerzeile.
4. Body.
Die Leerzeile hat die einzige Funktion, als Separator zwischen dem Header und dem Body
zu dienen. Im Folgenden werden die restlichen Bestandteile einer Nachricht beschrieben.
Start-Line
Wie der Name bereits suggeriert, besteht die Start-Line aus nur einer einzigen Zeile. Sie
enthält die wichtigsten Informationen zur Verarbeitung der Nachricht. Es gibt zwei
Arten von Nachrichten. Zum einen initiierende Nachrichten, zum anderen die korrespondierende Antwort. Diese Requests und Responses (vgl. Abschn. 2.1.3, S. 17) unterscheiden sich
im Aufbau leicht voneinander.
10
2.1. Session Initiation Protocol
Start Line
Header
Optional
Leerzeile
Body
Abb. 2.6: Aufbau einer SIP-Nachricht.
Zunächst wird an dieser Stelle der Request beschrieben. Abgesehen von der Methode des
Requests, ist in der Start-Line der URI des Adressaten und eine Versionsnummer enthalten.
Eine Methode ist die Art des Requests, z. B. REGISTER für einen Registrationsversuch. Die
Versionsnummer gibt die verwendete Version des SIP an. Diese drei Bestandteile sind in der
folgenden Reihenfolge angegeben (vgl. Notation 2.1, S. 11):
1. Methode
2. Request-URI
3. SIP-Version
REGISTER sip : registrar . atlanta . com SIP /2.0
Notation 2.1: Beispiel einer Start-Line in einem Request.
Bei einem Response ist die Start-Line ein wenig anders aufgebaut als beim Request. Sie
enthält neben der SIP-Version einen sogenannten Status-Code und eine Reason Phrase. Die
Reason Phrase dient der verbalen Beschreibung des Status-Codes. Sie werden in der folgenden
Reihenfolge angegeben (vgl. Notation 2.2, S. 11):
1. SIP-Version
2. Status-Code
3. Reason Phrase
SIP /2.0 2 00 OK
Notation 2.2: Beispiel einer Start-Line in einem Response.
Bei Requests sowie bei Responses werden diese drei Komponenten durch ein Leerzeichen
separiert. Die Status-Line wird mit einem Wagenrücklauf-Zeichen beendet.
11
Kapitel 2. Next Generation Network
Header
Der Header beinhaltet eine Liste mit Attributen. Sie geben Aufschluss über weitere Informationen zur Nachricht. Beispielsweise wird über Attribute das Routing oder eine Identifikation durchgeführt. Die Syntax der Attribute ist dieselbe wie beim HTTP. Auf einen
Attributsnamen folgt mindestens ein Attributswert.
Syntax:
Name: Wert(e)
Beispiel:
From: Alice <sip:[email protected]>
Manche Attribute müssen in jeder Nachricht enthalten sein, andere sind optional. Je nach
Nachrichtentyp (vgl. Abschn. 2.1.3, S. 17) können weitere Attribute verpflichtend sein. Nachfolgend werden die Attribute beschrieben, die in allen Nachrichten enthalten sein müssen
[RFC-3261, S. 162–163] und anhand eines Beispiels (vgl. Notation 2.3, S. 12) erklärt.
From : Alice < sip : alice@atlanta . com >; tag =888 a
To : Bob < sip : bob@biloxi . com >; tag =888 b
Via : SIP /2.0/ UDP proxy . atlanta . de :5060; branch = z9hG4bK87asdks7
Max - Forwards : 70
Call - ID : 20091023 @atlanta . com
CSeq : 1 INVITE
Notation 2.3: Minimalbeispiel eines Headers.
• Call-ID [RFC-3261, S. 166]: Der Call-ID ist eine eindeutige Identifikation der Sitzung.
Über ihn wird die Zusammengehörigkeit der Nachrichten ermittelt.
Syntax:
Call-ID: Identifikation
Beispiel:
Call-ID: [email protected]
• CSeq [RFC-3261, S. 170]: Die CSeq ist eine fortlaufende Sequenznummer. Mit ihr wird
die aktuelle Nachricht einer Transaction ermittelt. Sie besteht aus einer Zahl und dem
Namen der Request-Methode. Die Zahl muss ganzzahlig und maximal 32 bit lang sein.
Syntax:
CSeq: Sequenznummer Request-Methode
Beispiel:
CSeq: 1 INVITE
• From [RFC-3261, S. 172]: Dieses Feld gibt an, wer die Sitzung begonnen hat. Es besteht
aus einem optionalen Anzeigenamen und einem Kontakt-URI. Der Anzeigename wird
genutzt, um ihn beispielsweise auf dem Display beim Klingeln anzuzeigen. Soll nichts
12
2.1. Session Initiation Protocol
angezeigt werden, muss Anonymous“ als Displayname eingetragen werden. Der tag”
Wert dient der Zuordnung der Nachricht zu einem Dialog.
Syntax:
From: Anzeigename SIP URI;tag=Wert
Beispiel:
From: Alice <sip:[email protected]>;tag=888a
• Max-Forwards [RFC-3261, S. 173]: Der Wert dieses Feldes gibt die maximale Anzahl
der Weiterleitungen für diese Nachricht an. Sie wird von jedem passierten Proxy oder
Gateway dekrementiert. Erreicht der Wert des Feldes die 0, wird die Nachricht nicht
mehr weitergeleitet. Der Standard nennt einen Initialwert von 70 Weiterleitungen.
Syntax:
Max-Forwards: Anzahl
Beispiel:
Max-Forwards: 70
• To [RFC-3261, S. 178–179]: Dieses Header-Feld beschreibt, an wen die Nachricht gesendet werden soll. Genau wie das Header-Feld From besteht es aus einem optionalen
Anzeigenamen und einem Kontakt-URI. Wie beim Header-Feld From, kann der Anzeigename zur Darstellung auf dem Display genutzt werden. Entsprechend kann die
Angabe des Nutzernamens durch die Angabe des Anzeigenamens Anonymous“ un”
terdrückt werden. Der unter To angegebene URI ist derselbe, wie er in der Start-Line
angegeben ist. Wie beim From-Header-Feld dient der tag-Wert der Zuordnung der
Nachricht zu einem Dialog.
Syntax:
To: Anzeigename <SIP URI>;tag=Wert
Beispiel:
To: Bob <sip:[email protected]>;tag=888b
• Via [RFC-3261, S. 179–180]: Das Header-Feld Via enthält das verwendete Transportprotokoll und die Adresse des Clients. Es hat eine ähnliche Funktion wie ein Logbuch.
Jeder durchlaufene Proxy trägt sich hier ein. Somit wird ermöglicht, dass ein Response
durch dieselben Proxys wieder zurückfindet. Der Wert des branch-Parameters dient
der Zuordnung zu einer Transaction.
Syntax:
Via: Protokoll Adresse:Port;branch=Wert
Beispiel:
Via: SIP/2.0/UDP proxy.atlanta.de:5060;branch=z9hG4bK87asdks7
Zusätzlich können je nach Anwendung weitere Header-Felder in der Nachricht enthalten
sein. Beispielsweise enthält ein INVITE-Request in der Regel eine Medienbeschreibung in
seinem Body. Um zu beschreiben was und wie viel im Body transportiert wird, gibt es separate
13
Kapitel 2. Next Generation Network
Header-Felder. Deshalb werden nachfolgend zusätzliche Header-Felder vorgestellt, die in einer
Nachricht vorhanden sein können.
• Alert-Info [RFC-3261, S. 164]: Das Header-Feld Alert-Info gibt einen URI zu einer
Audiodatei an. Erreicht ein INVITE-Request mit diesem Header-Feld ein Endgerät,
wird die angegebene Audiodatei als Klingelton genutzt. Unterstützt das Endgerät dieses Header-Feld nicht, wird es ignoriert und mit dem normalen Ton geläutet. Bei einer
180 Ringing-Response ersetzt es das Wartezeichen. Es muss dem Teilnehmer allerdings
möglich sein, die Auswertung dieses Header-Feldes zu deaktivieren.
Syntax:
Altert-Info: <URI>
Beispiel:
Altert-Info: <http://www.atlanta.com/sounds/ringing.wav>
• Authorization [RFC-3261, S. 165–166]: Ist eine Autorisation des anfragenden Teilnehmers nötig, wird dieses Header-Feld von einem UAS oder Registrar (vgl. Abschn. 2.1.6, S. 26) eingefügt. Es beinhaltet alle für die Autorisation erforderlichen Informationen (vgl. Abschn. 5.1.3, S. 78).
Syntax:
Authorization: Digest username="Nutzername", realm="Domain",
nonce="Nonce", uri="URI", response"Geheimnis"
Beispiel:
Authorization: Digest username="alice", realm="atlanta.com",
nonce="ea9c[...]", uri="sips:atlanta.com", response="dfe5[...]"
• Contact [RFC-3261, S. 167]: Dieses Header-Feld muss in jedem Request enthalten
sein, der eine Kommunikation etabliert. Das ist z. B. bei einem INVITE-Request der
Fall. Das Contact-Feld enthält einen URI für eine folgende Kontaktaufnahme.
Syntax:
Contact: <SIP URI>
Beispiel:
Contact: <sip:[email protected]>
• Event [RFC-3265, S. 7]: Benennt das zu abonnierende Event-Package. Es darf pro
SUBSCRIBE-Request maximal ein Event abonniert werden.
Syntax:
Event: Eventtyp
Beispiel:
Event: presence
• Expires [RFC-3261, S. 171–172]: Das Expires-Feld gibt an, wie lange eine gesendete
Botschaft gültig ist. Die Zeitangabe kann einen Wert von 0 bis 232 −1 Sekunden haben.
14
2.1. Session Initiation Protocol
Besonders wichtig ist dieser Wert bei der Registrierung (vgl. Abschn. 2.1.5, S. 22).
Syntax:
Expires: Dauer in Sekunden
Beispiel:
Expires: 7200
• P-Asserted-Identity [RFC-3325, S. 8]: Dieses Header-Feld wird zwischen vertrauenswürdigen Netzelementen eingesetzt. Der Sender der Nachricht versichert hiermit,
dass er den genannten Teilnehmer kennt und authentifiziert hat.
Syntax:
P-Asserted-Identity: "Teilnehmername"<SIP URI>
Beispiel:
P-Asserted-Identity: "Alice"<sip:[email protected]>
• Privacy [RFC-3323, S. 11–12]: Dient der Nutzung eines Privacy-Services (vgl. Abschn. 5.3, S. 86). Je nach Feldwert werden diverse Bereiche der Nachricht anonymisiert.
Syntax:
Privacy: Privacylevel
Beispiel:
Privacy: user
• Proxy-Authenticate [RFC-3261, S. 174–175]: Dient der Authentifikation eines Teilnehmers durch einen Proxy (vgl. Abschn. 5.1.3, S. 78). Er beinhaltet alle zur Berechnung eines gemeinsamen Geheimnis benötigten Informationen.
Syntax:
Proxy-Authenticate: Digest realm="Domain", nonce="Nonce"
Beispiel:
Proxy-Authenticate: Digest realm="atlanta.com", nonce="ea9c[...]"
• Proxy-Authorization [RFC-3261, S. 175]: Dieses Header-Feld wird von einem Proxy
beigefügt, wenn eine Autorisation (vgl. Abschn. 5.1.3, S. 78) gefordert ist. Es beinhaltet
alle für die Autorisation erforderlichen Informationen.
Syntax:
Proxy-Authorization: Digest username="Nutzername", realm="Domain",
nonce="Nonce", uri="URI", response"Geheimnis"
Beispiel:
Proxy-Authorization: Digest username="alice", realm="atlanta.com",
nonce="ea9c[...]", uri="sips:atlanta.com", response="dfe5[...]"
• Subscription-State [RFC-3265, S. 15]: Gibt den Status des abonnierten Events an.
Der Status kann active (akzeptiert), pending (in Bearbeitung) und terminated (beendet) sein. Ist das Abonnement akzeptiert oder in Bearbeitung, sollte eine Gültigkeits-
15
Kapitel 2. Next Generation Network
dauer angegeben werden. Wird es abgelehnt, sollte eine Begründung angegeben werden.
Syntax:
Subscription-State: Status;expires=Dauer;reason=Begründung
Beispiel:
Subscription-State: active;expires=0
• WWW-Authenticate [RFC-3261, S. 182]: Dient der Authentifikation eines Teilnehmers durch einen UAS oder Registrar (vgl. Abschn. 5.1.3, S. 78). Dieses Header-Feld
beinhaltet einen Nonce-Wert, der in der angegebenen Domain gültig ist. Er dient der
Berechnung eines gemeinsamen Geheimnis, das zur Autorisation verwendet wird.
Syntax:
WWW-Authenticate: Digest realm="Domain", nonce="Nonce"
Beispiel:
WWW-Authenticate: Digest realm="atlanta.com", nonce="ea9c[...]"
Die oben genannten Header-Felder können für manche Nachrichten verpflichtend sein. Im
Umkehrfall ist es in vielen Situationen nicht erlaubt, diese Header-Felder in bestimmten
Nachrichten einzusetzen. Um Klarheit zu schaffen, werden diese Eigenschaften hier zusammengefasst (vgl. Tab. 2.1, S. 16).
Header-Feld
Wo ACK BYE CAN INV MES NOT OPT REG SUB
Alert-Info
–
–
–
o
–
–
–
–
–
Authorization
R
o
o
o
o
o
–
o
o
–
Contact
R
o
–
–
m
–
m
o
o
m
Contact
1xx
–
–
–
o
–
o
–
–
o
Contact
2xx
–
–
–
m
–
m
o
o
o
R
–
–
–
–
?
m
–
–
m
–
–
–
o
o
–
–
o
o
–
–
–
o
o
–
–
o
m
P-Asserted-Identity
–
o
–
o
?
o
o
–
o
Privacy
o
o
o
o
o
o
o
o
o
Proxy-Authenticate 401
–
o
o
o
o
?
o
o
?
Proxy-Authenticate 407
–
m
–
m
m
m
m
m
m
Proxy-Authorization
o
o
–
o
o
o
o
o
o
Req
–
–
–
–
?
m
–
–
–
WWW-Authenticate 401
–
m
–
m
m
m
m
m
m
WWW-Authenticate 407
–
o
–
o
o
?
o
o
?
Event
Expires
Expires
Subscription-State
2xx
Tab. 2.1: Zusammenfassung der relevanten optionalen Header-Felder.
16
2.1. Session Initiation Protocol
Die in der Tabelle genannten Abkürzungen in der Spalte Wo“ geben die betroffenen
”
Nachrichtentypen an. Steht in einer Zeile nichts in dieser Spalte, gelten die Informationen
für alle Nachrichten. Wird ein dreistelliger Statuscode angegeben, betrifft die Angabe die
entsprechenden Responses oder Response-Gruppen. Sind nur Requests betroffen, wird das
Kürzel R“ angezeigt. Um zu beschreiben, inwiefern ein Header-Feld in einer der Nachrichten
”
vorhanden sein kann, werden folgende Kürzel verwendet:
• –: Das Header-Feld darf in dieser Nachricht nicht verwendet werden.
• o: Das Header-Feld kann in dieser Nachricht verwendet werden, muss aber nicht.
• m: Das Header-Feld muss immer in dieser Nachricht vorhanden sein.
• ?: Im Standard wird auf diese Konstellation nicht eingegangen, daher ist kein Zusammenhang bekannt.
Body
Sofern ein Body vorhanden ist, enthält er zusätzliche Informationen, die für die reine
Nachrichtenübermittlung irrelevant sind. Theoretisch kann fast jede Information mit dem SIP
tranportiert werden. In der Praxis beläuft sich die Art des Inhaltes auf wenig Verschiedene.
Beispielsweise beinhaltet eine MESSAGE-Request (vgl. Abschn. 2.1.3, S. 18) die gesendete
Nachricht im Klartext.
Am wichtigsten ist der Body beim Sitzungsaufbau. Zu dieser Phase wird die Beschreibung der Medieninformationen im Body transportiert. Dafür kommt vor allem das Session
Description Protocol (SDP) [RFC-4566] zum Einsatz. Da der Nutzdatenaustausch für diese
Arbeit irrelevant ist, wird an dieser Stelle nicht weiter darauf eingegangen.
2.1.3 Nachrichtentypen
Bevor näher auf die Funktionsweise von SIP eingegangen wird, ist es für das Verständnis wichtig, die Nachrichtentypen zu kennen. Bei Prozeduren, wie beispielsweise dem Verbindungsaufbau, werden nur die Namen der Nachrichten zur Beschreibung verwendet. Wie bereits
erwähnt, werden die Nachrichten in zwei Nachrichtentypen unterteilt:
• Requests.
• Response.
Requests initiieren in der Regel eine Kommunikation. Ein Request wird mit dem Senden
einer Response vom UAS beantwortet. Im Folgenden werden beide Arten sowie einige wichtige
Vertreter beschrieben.
17
Kapitel 2. Next Generation Network
Requests
Um eine Transaction zu starten, sendet der UAC einen Request an den UAS. Requests
können von bestätigender Form sein (z. B. ACK). Selbst wenn sie als Bestätigung fungieren
sind sie kein Response. Die Methode eines Request wird durch ihren Namen gegeben. Im
Folgenden werden die für diese Arbeit relevanten Requests kurz vorgestellt.
• ACK [RFC-3261, S. 129–130]: Der ACK-Request (ACKnowledge) besagt, dass der
Response auf den zuvor gesendeten INVITE-Request erfolgreich empfangen wurde. Da
diese Nachricht nur bestätigend fungiert, wird sie niemals selbst bestätigt.
• BYE [RFC-3261, S. 89–91]: Wenn Bob das Telefonat beendet, sendet er ein BYE an
Alice. Daraufhin kann die Verbindung getrennt werden.
• CANCEL [RFC-3261, S. 115]: Wenn Alice z. B. während des Klingelns den Hörer
auflegt, sendet sie ein CANCEL an Bob. Dadurch wird der Verbindungsaufbau abgebrochen und es kommt keine Verbindung zustande. Bobs Telefon hört auf zu klingeln
und Bob weiß, dass er nicht mehr abnehmen muss.
• INVITE [RFC-3261, S. 78–86]: Will Alice mit Bob telefonieren, sendet sie einen
INVITE-Request an ihn. Dieser Request kann bereits Informationen über von Alices
Endgerät unterstützten Codecs enthalten. Bobs Endgerät gleicht diese angebotenen
Codecs mit seinen unterstützten Codecs ab und bestätigt die Übereinstimmungen.
Der Verbindungsaufbau wird weiter unten (vgl. Abschn. 2.1.5, S. 22) ausführlicher behandelt, daher wird an dieser Stelle nicht weiter darauf eingegangen. Wenn während
einer laufenden Sitzung ein INVITE-Request gesendet wird, dient dies in der Regel
der Änderung des verwendeten Codecs und wird als re-INVITE bezeichnet [RFC-3261,
S. 16].
• MESSAGE [RFC-3428]: Mittels eines MESSAGE-Request kann Alice eine Kurznachricht an Bob senden. Dieser, als Instant Messaging bekannte Service, wurde durch ICQ
[ICQ-2009] populär. Ursprünglich wurden nur sehr kurze Nachrichten ausgetauscht.
Mit SIP ist diese Beschränkung jedoch nicht mehr gegeben. In der Regel werden diese Nachrichten nicht in Form einer bidirectionalen Kommunikation genutzt. Vielmehr
werden sie wie Pager unidirektional verwendet.
• NOTIFY [RFC-3265, S. 34]: Über ein NOTIFY-Request wird ein Zustandswechsel bekannt gegeben. Der NOTIFY-Request bildet zusammen mit dem SUBSCRIBE-Request
die Basis für einen Präsenz-Dienst. Somit kann eine Feundesliste mit dem Onlinestatus
aller Freunde realisiert werden. Das Interesse an einem Zustand wird über das Senden
des SUBSCRIBE-Requests ausgedrückt.
18
2.1. Session Initiation Protocol
• OPTIONS [RFC-3261, S. 66–69]: Nicht alle UAs unterstützen dieselben Codecs, Methoden, Erweiterungen usw. Um einen anderen Teilnehmer nach seinen Fähigkeiten zu
fragen, wurde dieser Request definiert.
• REGISTER [RFC-3261, S. 57–58]: Um Telefonate führen zu können, muss sich ein
Endgerät im Netz anmelden. Dafür sendet es ein REGISTER-Request an den LocationService (vgl. Abschn. 2.1.6, S. 26). Ein registriertes Endgerät muss sich innerhalb eines
bestimmten Intervalls erneut mit einem REGISTER-Request beim Location-Service
melden. Somit wird dafür gesorgt, dass nur aktive Teilnehmer registriert bleiben. Will
sich ein Teilnehmer vom Netzwerk abmelden, sendet er ein REGISTER-Request mit
einem Time-out mit dem Wert 0 an den Location-Service.
• SUBSCRIBE [RFC-3265, S. 34]: Wenn Alice eine Information bekommen will, wenn
Bob sein Telefonat beendet hat und wieder erreichbar ist, sendet sie ein SUBSCRIBERequest für das Presence-Event Package (vgl. Abschn. 6.3.1, S. 99). Sobald Bob fertig
telefonieren ist, erhält Alice einen NOTIFY-Request, dass Bob wieder verfügbar ist.
Responses
Eine Antwort seitens des UAS wird als Response bezeichnet. Diese Nachrichten werden
über ein Nummerierungssystem identifiziert, das sich an HTTP [RFC-1945, S. 32–37] anlehnt.
Eine Nachricht vom Typ 404 bezeichnet beispielsweise analog zum HTTP [RFC-1945, S. 36]
einen nicht auffindbaren Teilnehmer.
Die Responses haben einen dreistelligen Code als Bezeichner. Zusätzlich zum Code
enthält jede Response eine sogenannte Reason Phrase. Maßgeblich für die Verarbeitung ist
jedoch nicht die Reason Phrase sondern der dreistellige Code. Zusätzlich werden sie in sechs
Gruppen unterteilt, wobei die erste Ziffer des Codes die Gruppenzugehörigkeit angibt.
• 1xx Provisional: Teilt dem Teilnehmer mit, dass sein Request in Bearbeitung, aber
noch nicht abgeschlossen ist. In der Regel ist das Senden und Verarbeiten dieser Nachrichten optional. Deshalb werden in allen Abbildungen in dieser Arbeit die Nachrichten
vom Typ 1xx entweder ausgelassen oder mit gestrichelten Linien dargestellt.
• 2xx Success: Der Request wurde erfolgreich empfangen, verstanden und akzeptiert.
• 3xx Redirection: Der Teilnehmer ist unter dem angegebenen URI nicht erreichbar.
Dieser Response teilt dem UAC mit, wie er den gewünschten Gesprächspartner erreichen kann.
• 4xx Client Error: Der Request enthält eine fehlerhafte Syntax oder kann bei diesem
Server nicht verarbeitet werden.
• 5xx Server Error: Der Server ist nicht in der Lage, den Request zu bearbeiten.
19
Kapitel 2. Next Generation Network
• 6xx Global Failure: Der Request kann überhaupt nicht verarbeitet werden.
Der Standard definiert eine Vielzahl von Responses. Für diese Arbeit sind jedoch nicht alle
relevant. Daher werden hier nur die wichtigen Nachrichten näher vorgestellt.
• 100 Trying [RFC-3261, S. 183]: Der Request ist vom nächsten Kommunikationspunkt erfolgreich empfangen worden. Der Kommunikationspunkt führt jedoch momentan nicht näher spezifizierte Bearbeitungen durch. Beispielsweise kann dies eine
Datenbankabfrage sein.
• 180 Ringing [RFC-3261, S. 183]: Ein INVITE-Request wurde vom UAS empfangen
und dieser versucht, den Benutzer ans Telefon zu rufen.
• 200 OK [RFC-3261, S. 183]: Der Request ist angenommen.
• 401 Unauthorized [RFC-3261, S. 185]: Der gesendete Request bedarf einer Authentifizierung (vgl. Abschn. 5.1.3, S. 78). Die für die Authentifizierung benötigten Informationen werden im Header übertragen. Diese Nachricht wird von einem UAS oder
einem Registrar-Server gesendet.
• 404 Not Found [RFC-3261, S. 186]: Es gibt keinen Teilnehmer unter dem angefragten
URI oder unter der besagten Domain.
• 407 Proxy Authentication Required [RFC-3261, S. 186]: Der gesendet Request
bedarf einer Authentifizierung. Die für die Authentifizierung benötigten Informationen
werden im Header übertragen. Diese Nachricht wird von einem Proxy-Server gesendet.
• 433 Anonymity Disallowed [RFC-5079]: Die Annahme des Request wird verweigert,
da der anfragende Teilnehmer anonym ist.
• 434 Suspicious Call [Kut-2008, S. 6]: Der Request wird abgelehnt, weil der anfragende
Teilnehmer nicht verifiziert werden konnte.
• 480 Temporarily Unavailable [RFC-3261, S. 188]: Die angefragte Ressource ist
momentan nicht verfügbar. Dies ist der Fall, wenn versucht wurde einen Teilnehmer
anzurufen, der momentan offline ist.
• 481 Call/Transaction Does Not Exist [RFC-3261, S. 188]: Der empfangene Request, kann keiner laufenden Transaction oder keinem laufenden Dialog zugeordnet
werden.
• 486 Busy Here [RFC-3261, S. 189–190]: Das Zielsystem wurde erfolgreich kontaktiert,
aber der Teilnehmer ist zurzeit Beschäftigt.
• 489 Bad Event [RFC-3265, S. 35]: Das mittels SUBSCRIBE-Request angefragte
Event-Package wird nicht unterstützt.
20
2.1. Session Initiation Protocol
2.1.4 Adressierung
Bei der Internettelefonie gibt es, wie bei der klassischen Telefonie, zu viele Endgeräte,
um sie manuell zu vermitteln. Beim Festnetz wird die Zuordnung über Nummern im
sogenannten E.164-Format [ITU-2005] durchgeführt. Für SIP wurde ein anderer eindeutiger
Identifikationsmechanismus entworfen.
Das Schema des sogenannten Session Initiation Protocol Uniform Ressource Identifier (SIP
URI) folgt den Richtlinien für Internet-URI [RFC-3986]. Der Aufbau ist stark an den einer
E-Mail-Adresse angelehnt. Genauer hat ein SIP URI die gleiche Syntax wie eine E-MailAdresse, angeführt vom doppelpunktseparierten Präfix sip“.
”
Syntax:
sip:user:password@host:port;uri-parameters?headers
Beispiel:
sip:[email protected]
Der Standard [RFC-3261, S. 77–87] sieht vor, dass ein Teilnehmer auf mehreren Endgeräten unter einer Nummer erreichbar ist. Dies lässt sich mit nur einem SIP URI
nicht verwalten. Daher sind zwei SIP URI-Typen definiert [RFC-3261, S. 148–158], die sich
in ihrer Funktion folgendermaßen unterscheiden (vgl. Abb. 2.7, S. 22):
• Permanenter SIP URI: Der permanente SIP URI wird benutzt, um mit einem
Teilnehmer in Kontakt zu treten. Es sind keinerlei Kenntnisse über den Aufenthaltsort
des Teilnehmers notwendig. Er besteht aus einem Anschlussnamen, der in der Regel
vom Betreiber festgelegt wird. Der Host-Teil hat die gleiche Struktur wie bei einer
E-Mail-Adresse und ist von Betreiber zu Betreiber verschieden.
• Temporärer SIP URI: Der temporäre SIP URI dient der Zuordnung auf die angemeldeten Endgeräte. Der Anschlussname wird auf die gleiche Weise gebildet, wie bei
einem permanenten SIP URI. Anstelle eines Domainnamens wird nach dem @-Zeichen
die tatsächliche IP-Adresse des Endgerätes eingesetzt. Somit hat jedes Gerät eine eindeutige Adresse, mit der es lokalisiert werden kann.
Um sich die Funktionsweise der beiden SIP URI zu verdeutlichen, kann sich folgendes
Szenario vorgestellt werden (vgl. Abb. 2.7, S. 22). Bob bekommt von seinem Telefonanbieter
den permanenten SIP URI sip:[email protected] zugewiesen. In unserem Fall hat Bob einen
Computer und ein Handy, die beide VoIP-fähig sind. Wenn sich Bob mit diesen Geräten beim
Registrar anmeldet, werden beide Geräte unter einem separaten temporären SIP URI abgelegt. Außerdem erstellt er eine Relation von Bobs permanenten SIP URI zu diesen Einträgen.
Wird Bob angerufen, können beide Geräte gleichzeitig angesprochen werden. Das Telefonat
wird an das Gerät vermittelt, an dem Bob sich zuerst meldet.
21
Kapitel 2. Next Generation Network
SIP-Teilnehmer
Permanenter SIP-URI
Temporärer SIP-URI 1
Temporärer SIP-URI 2
Temporärer SIP-URI n
Abb. 2.7: Relation zwischen permanentem und temporärem SIPURI.
2.1.5 Prozeduren
Der Ablauf der Standardprozeduren wird im Standard vom SIP beschrieben [RFC-3261].
Für unsere Betrachtungen sind die Registrierung und der Sitzungsaufbau besonders
wichtig. Zum einen entscheiden sie über die Zugangsmöglichkeiten ins Netz, zum anderen
wird über den Verbindungsaufbau die Spamübertragung eingeleitet.
Damit ein Netzelement die Adresse eines anzusprechenden Netzelementes kennt, fordert es
diese beim Domain Name Service (DNS) [RFC-3263] an. Da dieser Schritt für die Darstellung
der Prozeduren nicht essenziell ist, wird er hier der Übersichtlichkeit halber nicht aufgeführt.
Registrierung
Um ein Telefonat initiieren zu können, muss sich ein Teilnehmer zunächst dem Netz bekannt machen. Dies geschieht über die Registrierung. Die Aufenthaltsinformationen über
den Teilnehmer werden über den Registrar beim Location Service (vgl. Abschn. 2.1.6, S. 24)
hinterlegt.
Alice
REGISTER
Registrar
401 Unauthorized
REGISTER
200 OK
Abb. 2.8: Teilnehmerregistrierung mittels Session Initiation Protocol.
Um dem Registrar seine aktuelle Kontaktadresse mitzuteilen [RFC-3261, S. 56–66], sendet
der UA dem Registrar einen REGISTER-Request. Mit dieser Nachricht übermittelt er alle
für die Registrierung wichtigen Informationen (vgl. Notation 2.4, S. 23).
Mit der Angabe seines permanenten SIP URI identifiziert sich der Teilnehmer gegenüber
dem Registrar. Im Contact-Header-Feld nennt der UA den temporären SIP URI, unter der
er momentan erreichbar ist.
22
2.1. Session Initiation Protocol
REGISTER sip : atlanta . com SIP /2.0
From : Alice < sip : alice@atlanta . com >
To : Alice < sip : alice@atlanta . com >
CSeq : 1 REGISTER
Contact : < sip : alice@192 .0.2.65 >
Expires : 7200
[...]
Notation 2.4: REGISTER-Request während der Registrierung.
Die Registrierung gilt nur für die Dauer in Sekunden, die das Expires-Header-Feld
angibt. Meldet sich der UA bis zum Ablauf der angegebenen Anzahl an Sekunden nicht erneut
beim Registrar, wird die Registrierung aufgehoben. Mit dieser Regelung wird verhindert, dass
ein UA im Falle eines UA-Absturzes registriert bleibt.
Will sich der Teilnehmer gezielt Deregistrieren, sendet er einen erneuten REGISTERRequest an den Registrar. Um zu signalisieren, dass er sich abmeldet, trägt der UA eine
Gültigkeitsdauer von null Sekunden ein. Die Registrierung läuft dadurch direkt wieder ab
und der Registrar hebt diese wieder auf.
Aus Gründen der Sicherheit schreibt der Standard [RFC-3261, S. 64] vor, die Registrierung zu authentifizieren. Inwieweit sich der Registrierungsprozess dadurch verändert, wird
in dieser Arbeit detailliert dargestellt (vgl. Abschn. 5.1.3, S. 78).
Sitzungsaufbau
Zum Sitzungsaufbau gehört nicht nur der reine Aufbau einer Punkt-zu-Punkt-Verbindung,
sondern ebenso das Auffinden des Zielteilnehmers. Wie anfangs erwähnt, ist es mit SIP
möglich, auf mehreren Geräten erreichbar zu sein.
Um eine Kommunikationsverbindung zwischen zwei Teilnehmern aufzubauen, verwendet
SIP analog zum TCP den Three-Way-Handshake (vgl. Abb. 2.9, S. 23). Alice sendet in der
Rolle des UAC einen INVITE-Request an Bob. Sobald Bob das Telefonat annimmt, sendet
sein UA einen 200 OK-Response als Bestätigung an Alice zurück. Falls Alice nach wie vor
an der Kommunikation interessiert ist, sendet sie ein ACK an Bob.
Alice
INVITE
Bob
200 OK
ACK
Abb. 2.9: Der Three-Way-Handshake.
23
Kapitel 2. Next Generation Network
Warum sind für eine Kommunikationsverbindung drei Schritte notwendig? Bei einem normalen Nachrichtenaustausch reichen normalerweise zwei Nachrichten aus! Der Grund liegt
in der unterschiedlichen Antwortzeit. Bei einem normalen Request antwortet eine Maschine,
wodurch sehr schnell ein Response zustande kommt. Im Falle eines INVITE muss der angerufene Teilnehmer auf das Klingeln des Telefons reagieren. Bis er das getan hat, kann es
sein, dass der Anrufende längst aufgelegt hat. Der Three-Way-Handshake dient demnach der
Sicherung, dass nach wie vor beide Teilnehmer an einer Verbindung interessiert sind.
2.1.6 Netzelemente
SIP benötigt für seine Funktionsfähigkeit die Unterstützung einiger Netzelemente. Eine Ausnahme bildet der B2BUA, er wird nicht zwangsweise benötigt. In der Praxis hat sich jedoch
gezeigt, dass er aus Sicherheitsgründen oft eingesetzt wird. Im Folgenden werden diese Netzelemente vorgestellt.
User Agent
Wenn ein Teilnehmer einen anderen Teilnehmer anrufen will, benötigt er dafür eine Schnittstelle. Diese Schnittstelle bietet sich in Form eines UA.
Der Standard [RFC-3261] nennt keine Vorgaben, wie die Gestalt eines UA zu sein hat. Diese
Entscheidung wurde aus Gründen der Flexibilität getroffen, um zukünftigen Entwicklungen
nicht im Wege zu stehen. Heute können UAs anhand ihres Aufbaus grob in zwei Gruppen
unterteilt werden:
1. Hard-Phone.
2. Soft-Phone.
Bei einem Hard-Phone (vgl. Abb. 2.10(a), S. 25) handelt es sich um eine komplette
Einheit. Sie sind in der Regel konstruiert wie ein herkömmlicher Telefonapparat mit einigen
Zusatztasten für die erweiterte Funktionalität (z. B. eine Taste, um die ausgehende Identität
zu wählen). Technisch eher unversierte Nutzer haben es mit dieser Version eines UAs deutlich
leichter, da die Handhabung sehr nah am gewohnten Festnetztelefon ist.
Ein Soft-Phone (vgl. Abb. 2.10(b), S. 25) ist ein UA der nur in Form einer Software
existiert. Es benötigt eine laufende Trägerplattform wie einen Computer, um einsatzfähig zu
sein. Der Vorteil dieser Variante ist, dass er sehr leicht ausgetauscht und erweitert werden
kann.
Unabhängig von der Art des UAs ist seine eigentliche Funktion immer gleich. Er ist dazu
da Telefonate zu erzeugen, zu terminieren und zu verwalten. Zusätzlich kann der UA Zusatzfunktionen unterstützen. Viele UAs bieten die Möglichkeit, Videotelefonate oder Konferenzen
zu führen. Da der Fokus dieser Arbeit auf SPIT liegt, wird auf derartige Zusatzfunktionen
nicht weiter eingegangen.
24
2.1. Session Initiation Protocol
(a) Hard-Phone [sno-2009].
(b) Soft-Phone [HSC-2009].
Abb. 2.10: Beispiele für einen User Agent.
Proxy
Wenn ein Telefonat aufgegeben wird, ist der Proxy [RFC-3261, S. 91–122] die erste Anlaufstelle. Er nimmt den Telefonwunsch entgegen, wertet ihn aus und leitet ihn in Richtung des
Zielteilnehmers weiter.
Bevor der Proxy die Nachricht verarbeitet, überprüft er zunächst die Berechtigung des
Teilnehmers. Ist der Teilnehmer berechtigt, wird die Nachricht auf syntaktische Fehler und
Korrektheit des Inhalts überprüft. Beispielsweise werden die angegebenen Codecs auf ihre
Unterstützbarkeit untersucht.
Sind die Nachricht und der Teilnehmer verifiziert, schreibt oder entfernt der Proxy gegebenenfalls Informationen innerhalb der Nachricht. Ein Statefull-Proxy muss seine Adresse über
das Via-Header-Feld eintragen, um an der Kommunikation beteiligt zu bleiben.
Zur Weiterleitung der Nachricht überprüft der Proxy, ob sich der Zielteilnehmer im Heimatoder in einem Fremdnetz befindet. Ist er selbst für diesen Teilnehmer zuständig, fragt er
beim Location-Server den temporäre SIP URI des Teilnehmers an. Anschließend leitet er die
Nachricht an einen anderen Proxy weiter. Der Aufbau dieses Verfahrens der Weiterleitung ist
bekannt als SIP-Trapezoid [RFC-3261, S. 118], da sich die Kommunikation hier in einem
Trapezoid darstellen lässt (vgl. Abb. 2.11, S. 26).
Proxys werden zwischen Statefull und Stateless unterschieden. Diese beiden Proxys verhalten sich im Wesentlichen in der Verarbeitung der Nachrichten anders.
Wie der Name bereits andeutet, ist der Stateless-Proxy [RFC-3261, S. 116–118] nicht
in der Lage Informationen länger zu speichern. Geht bei ihm eine Nachricht ein, wird sie
verarbeitet und weitergeleitet. Anschließend hat der Stateless-Proxy keinerlei Informationen
mehr über diese Nachricht.
Ein Statefull-Proxy [RFC-3261, S. 92–94] ist dagegen in der Lage, sich eine Kommunikation zu merken. Dadurch kann nur der Statefull-Proxy einen Anruf an mehrere UAs splitten
25
Kapitel 2. Next Generation Network
alice.de-Proxy
bob.de-Proxy
SIP
SIP
SIP
Daten
Alice
Bob
Abb. 2.11: Veranschaulichung des SIP-Trapezoid-Begriffs.
(Call Forking). In diesem Fall tritt dieser Proxy als UAC auf, da er n neue INVITE-Requests
generiert. Nimmt der Teilnehmer auf einem UA an, werden alle anderen Anrufe abgebrochen
und der Verbindungsaufbau auf das abgenommene Endgerät normal weitergeführt.
Location Service
Der Location Service [RFC-3261, S. 22] ist im Grunde eine Datenbank, die sich den aktuellen
Aufenthaltsort des Teilnehmers merkt. Diese Information wird im Rahmen der Registration
vom Registrar an den Location Service gesendet. Konkret handelt es sich um eine Zuordnung
von permanenten zu temporären SIP URI.
Jeder Teilnehmer kann mehrere Geräte auf ein und denselben permanenten SIP URI anmelden. Dadurch kann ein Anruf von einem Statefull-Proxy auf mehrere Geräte gleichzeitig
geleitet werden.
Registrar
Der Registrar [RFC-3261, S. 24] ist der Ansprechpunkt zur Registrierung eines Teilnehmers. Durch die Registrierung des temporären SIP URI beim Registrar wird die Ortstransparenz des permanenten SIP URI erzielt. Dazu trägt der Registrar die aktuellen Informationen über den temporären SIP URI in den Location-Service ein. Meldet sich ein Teilnehmer
innerhalb eines angegebenen Intervalls nicht erneut beim Registrar, wird er automatisch
Deregistriert. In der Praxis werden Registrar und Location Service oft in einer physischen
Komponente umgesetzt.
Back to Back User Agent
Ein B2BUA [RFC-3261, S. 20] ist eine logische Einheit die als UAC und UAS fungieren
kann. Er wird vorrangig zur Trennung zweier Netzwerke oder Netzwerkbereiche
eingesetzt. Sinnbildlich gesprochen handelt es sich bei einem B2BUA um zwei Rücken an
Rücken stehende UA. Aus diesem Grund kann der B2BUA jede Art von Request erzeugen.
26
2.2. IP Multimedia Subsystem
Da er Nachrichten terminiert, bleibt er ähnlich, wie ein Statefull-Proxy an der Kommunikation
beteiligt. Anders als dieser bleibt der B2BUA am Nutzdatenaustausch beteiligt.
2.2 IP Multimedia Subsystem
Das IMS [TSG-2009d] ist ein wichtiger Bestandteil des Kernnetzes der NGNs. Es dient der
Bereitstellung eines SIP-basierten Multimediaservice. In diesem Abschnitt werden die im
Kontext von SPIT relevanten Bestandteile des IMS vorgestellt.
2.2.1 Begriffserklärung
Wie beim SIP werden im Kontext des IMS Wörter verwendet, die der Leser aufgrund gegebener Vorkenntnisse falsch verstehen kann oder neu sind. Deshalb wird in diesem Abschnitt
kurz auf spezielle Terminologien eingegangen.
Heimat- und Fremdnetz
Das IMS hat seinen Ursprung in der Mobiltelekommunikation. Dadurch hat es einige Konzepte von den Mobilfunkstandards GSM und GPRS übernommen [CGM-2008, S. 40–42]. Auf
diese Weise wird das Konzept der Aufenthaltsnetze im IMS umgesetzt.
Dieses Konzept lässt sich anschaulicher in der Mobilfunkwelt erklären. Wenn ein Teilnehmer sich von zu Hause mit seinem Mobiltelefon einwählt, befindet er sich im Heimatnetz.
Das Heimatnetzwerk gehört dem Anbieter, von dem der Teilnehmer den Service bezieht.
Befindet sich der Teilnehmer z. B. im Ausland und versucht sich einzuwählen, hält er
sich im Fremdnetz auf. Dieses Netz gehört in der Regel nicht dem Betreiber, von dem der
Teilnehmer den Dienst bezieht.
Um dem Teilnehmer den Dienst im Fremdnetz zur Verfügung zu stellen, müssen die beiden Betreiber eine Vereinbarung treffen. Diese Vereinbarung enthält Punkte wie z. B. die
anfallenden Kosten, die QoS oder eine Authentifizierung.
Referenzpunkte
Die Funktionen des IMS werden durch sogenannte Referenzpunkte [TSG-2009e, S. 76–85] verbunden. Sie werden mit einer zwei- bis dreistelligen Buchstabenkombination benannt. Durch
die Referenzpunkte ist es möglich, mit wenig Sprachaufwand, die beteiligten Funktionen sowie
das zu verwendende Protokoll zu bezeichnen.
27
Kapitel 2. Next Generation Network
2.2.2 Adressierung
Das IMS ordnet jedem Teilnehmer mehrere Identitäten zu. Diese werden zur externen und
internen Unterscheidung der Teilnehmer benötigt. Beim IMS werden die folgenden beiden
Adresstypen unterschieden:
• IMPI.
• IMPU.
Zur internen Identifikation des Teilnehmers wird die IMPI [TSG-2009d, S. 33] verwendet.
Jedem Teilnehmer wird mindestens eine IMPI zugeordnet. Sie wird vom Betreiber des IMS
permanent vergeben und identifiziert das Teilnehmerkonto eindeutig. Die Identifikation betrifft allerdings nur das Konto und nicht den Teilnehmer selbst. Die Syntax der IMPI sollte
sich an die eines NAI [RFC-2486] richten.
Syntax:
username@realm
Beispiel:
[email protected]
Die IMPI wird beispielsweise für die Registrierung, die Authorisation oder das Accounting des Teilnehmerkontos eingesetzt. Sie wird jedoch nicht für das Routing von normalen
Nachrichten verwendet.
Seitens des Betreibers wird sie im Home Subscriber Server (HSS) (vgl. Abschn. 2.2.4, S. 33)
gespeichert. Dieser nutzt sie, um weitere Informationen über das Teilnehmerkonto abzulegen.
Im Rahmen der Registration, Reregistration oder Deregistration greift zusätzlich die S-CSCF
(vgl. Abschn. 2.2.4, S. 32) auf die IMPI zu.
Zur externen Identifikation des Teilnehmers wird die IMPU [TSG-2009d, S. 33–34] verwendet. Jedem Teilnehmer wird mindestens ein IMPU zugeordnet. Sie dient den Teilnehmern zur gegenseitigen Adressierung. Ihre Form sollte der eines SIP URI oder eines Tel-URI
[RFC-3966] gleichen. Abhängig von der Form der IMPU wird der Teilnehmer über eine normale Telefonnummer oder den SIP URI kontaktiert.
Beide Adressen werden im UE (vgl. Abschn. 2.2.4, S. 35) sicher innerhalb des ISIM
(vgl. Abschn. 2.2.4, S. 34) gespeichert. Das UE darf jedoch nicht auf sie zugreifen oder sie
verändern. Hat der Teilnehmer weder ein ISIM noch ein USIM, können beide Adressen in den
eventuell im Endgerät vorhandenen IMS Credentials (IMC) [TSG-2009f, S. 15] gespeichert
werden. Die IMC beschreibt die Sicherheitsverfahren und Daten für den Zugang ins IMS.
Relation zwischen den Adressen
Einem Teilnehmer wird immer genau eine IMPI zugeordnet. Zusätzlich kann dieser Teilnehmer zu dieser IMPI weitere IMPUs nutzen. Diese werden der IMPI zugeordnet (vgl. Abb. 2.12,
S. 29). Die Information, unter welchen zusätzlichen IMPUs ein Teilnehmer erreichbar ist, wird
im HSS hinterlegt.
28
2.2. IP Multimedia Subsystem
IMS-Teilnehmer
Private User Identity
Public User Identity 1
Public User Identity 2
Service Profil
Public User Identity n
Service Profil
Abb. 2.12: Relation zwischen IMPI und IMPU [TSG-2009d, S. 35].
Der IMPU werden vom Betreiber des Netzes Service Profiles [TSG-2009c, S. 49–52] zugeordnet. Jedes Service Profile definiert die Rahmenbedingungen für die assoziierte Registrierung. Sie umfassen z. B. die assoziierten SIP URI, Tel-URI, Voraussetzungen für eine
erfolgreiche Registrierung, usw.
2.2.3 Prozeduren
Für den Ablauf der Prozeduren wie Registrierung und Sitzungsaufbau folgt das IMS den
Vorgaben des SIP. Da sich die Funktionen im IMS nicht vollständig mit den Netzelementen
des SIP decken, unterscheiden sie sich leicht im Ablauf. Deshalb wird hier erneut auf diese beiden Prozeduren eingegangen. Es wird gezeigt, wie der Nachrichtenaustausch im IMS
abläuft. Der Übersicht halber werden Anfragen beim DNS nicht dargestellt, wenngleich diese
zum Teil durchgeführt werden müssen.
Registrierung
Wie beim SIP muss ein UE zunächst eine Registrierungdurchführen, um sich dem Netz bekannt zu machen. Im IMS übernimmt der HSS die Rolle des Registrar. Für die nachfolgende
Beschreibung der Prozedur wird unterstellt, dass es nur einen HSS gibt. Sind mehrere vorhanden, wird zusätzlich der für den Teilnehmer zuständige HSS bei der Subscription Locator
Function (SLF) ermittelt (vgl. Abschn. 2.2.4, S. 33).
Zunächst sendet das UE ein REGISTER-Request an seine P-CSCF. Die P-CSCF ermittelt,
anhand des Domainnamens in der Anfrage, die Adresse des Heimatnetzes und leitet die
Nachricht an die dort zuständige I-CSCF weiter.
Die I-CSCF muss zunächst überprüfen, ob der Teilnehmer bereits registriert ist und ob er
sich registrieren darf. Ist der Teilnehmer berechtigt und unregistriert, wird der I-CSCF vom
HSS der Name der zuständigen S-CSCF übermittelt. Nachdem die I-CSCF die Adresse der
zuständigen S-CSCF von einem DNS erhalten hat, leitet sie die Nachrichten an weiter. Die
S-CSCF melden den Teilnehmer anschließend beim HSS an.
29
Kapitel 2. Next Generation Network
Fremdnetz
UE
Heimatnetz
P-CSCF
REGISTER
HSS
I-CSCF
REGISTER
S-CSCF
Cx-Query / Cx-Sel...
Cx-Query Resp / Cx-...
REGISTER
Cx-put / Cx-Pull
Cx-put Resp / Cx-...
200 OK
200 OK
200 OK
Abb. 2.13: Ablauf der Registrierung im IMS [TSG-2009d, S. 59].
Sitzungsaufbau
Die nachfolgende Veranschaulichung des Sitzungsaufbaus unterstellt, dass sich Alice und Bob
in verschiedenen Netzen befinden. Dieses Szenario wird ausgewählt, da es das Generischste
ist. Es lässt sich beliebig vereinfachen, bis hin zu dem Punkt, an dem Alice und Bob an
derselben P-CSCF angeschlossen sind.
Um eine Sitzung zu Bob aufbauen zu können, sendet Alice den INVITE-Request zunächst
an ihre P-CSCF (vgl. Abb. 2.14, S. 30). Nachdem diese die Struktur dedr Nachricht, Berechtigung, etc. erfolgreich überprüft hat, leitet sie die Nachricht an die für Alice zuständige
S-CSCF weiter. Diese führt gegebenenfalls Änderungen, die für Alice voreingestellt wurden
durch und leitet die Nachricht anschließend an die I-CSCF von Bobs Netzwerk weiter.
Netz von Alice
P-CSCF
1
9
Alice
Netz von Bob
S-CSCF
I-CSCF
S-CSCF
P-CSCF
2
3
6
7
9
9
9
9
4
5
HSS
8
9
Bob
Abb. 2.14: Sitzungsaufbau im IMS.
Diese ermittelt beim HSS die Adresse der für Bob zuständigen S-CSCF und leitet die Nachricht an diese weiter. Falls für Bob besondere Schritte vorkonfiguriert sind, wird die Nachricht
30
2.2. IP Multimedia Subsystem
dort verändert. Danach sendet sie die Nachricht an die P-CSCF, an die Bob angeschlossen
ist. Diese übergibt die Nachricht an Bobs UE.
Alle Nachrichten, die im Anschluss an Alice zurückgesendet werden (z. B. 200 OK), werden
über dieselben Call Session Control Functions (CSCFs) zu Alice geleitet.
2.2.4 Funktionen
Im Rahmen der IMS-Spezifikation werden diverse Funktionen standardisiert. Diese Funktionen sind nicht zwangsweise als eigenständige Netzelemente zu verstehen. Mehrere logische
Funktionen können in der Praxis in ein physikalisches Netzelement integriert werden.
Dh
AS
Sh
HSS
Anwendungsschicht
ISC
Ma
Cx
Cx
SLF
Dx
S-CSCF
Mw
Kontrollschicht
Mw
Dx
P-CSCF
Ut
I-CSCF
Mw
Gm
Transportschicht
Mm
UE
Mm
IP Multimedia
Netzwerk
Diameter
IP
SIP
Abb. 2.15: Ausschnitt aus der Referenzarchitektur des IMS [TSG-2009d, S. 21].
Das IMS bietet weitere Funktionen und Dienste, wie z. B. QoS oder Gateways in andere
Netze (z. B. das Public Switched Telephone Network (PSTN)). Da der Fokus dieser Arbeit
auf SPIT und Privacy ruht, wird nicht das ganze IMS vorgestellt. Im Folgenden wird nur auf
die Funktionen eingegangen, die mit SPIT oder Privacy zu tun haben. Beispielsweise wird
auf eine Einführung in die Gateway-Funktionen verzichtet. Zwar kann SPIT theoretisch ins
PSTN geleitet werden, aber aufgrund der dadurch entstehenden Kosten ist dieses Szenario
unwahrscheinlich (vgl. Abschn. 3.4, S. 46).
Der für diese Arbeit relevante Ausschnitt der Referenzarchitektur (vgl. Abb. 2.15, S. 31)
enthält die folgenden Komponenten, die im Anschluss näher beschrieben werden.
31
Kapitel 2. Next Generation Network
Call Session Control Function
Die Call Session Control Functions (CSCFs) [TSG-2009d, S. 40–40] sind einige der wichtigsten Funktionen im IMS. Die CSCFs sorgen für die Signalisierung der Nachrichten,
entspreched wie ein SIP-Proxy. Es existieren drei verschiedene CSCF:
1. P-CSCF.
2. I-CSCF.
3. S-CSCF.
Der erste Kontaktpunkt im IMS ist für ein UE die P-CSCF. Um die richtige P-CSCF zu
kontaktieren, bestehen drei Möglichkeiten [TSG-2009d, S. 53–54]:
1. Dem UE wird bei der Registrierung automatisch eine P-CSCF zugeordnet.
2. Er ermittelt die IP-Adresse der P-CSCF über eine Anfrage beim DNS.
3. Die Adresse der P-CSCF ist im UE fest eingetragen.
Sofern sich der Teilnehmer erfolgreich authentifizieren kann, dient ihm die P-CSCF als
Makler in Form eines Statefull-Proxys. Je nach Möglichkeit wird entweder mit Internet
Protocol Security (IPsec) oder mit Authentication and Key Agreement (AKA) (vgl. Kap. 5,
S. 75) ein Tunnel zwischen dem UA und der P-CSCF aufgebaut [TSG-2009a, S. 23]. Aufgrund
dieses Tunnels muss sich der Teilnehmer in Zukunft bei keiner anderen IMS-Funktion mehr
authentifizieren.i Dies signalisiert die P-CSCF, indem sie das P-Asserted-Identity-HeaderFeld in den Header die Nachricht einfügt [TSG-2009a, S. 85]. Die anderen IMS-Funktionen
vertrauen darauf, dass die P-CSCF nur für authentifizierte Teilnehmer einen Tunnel öffnet.
Zusätzlich überprüft die P-CSCF die angenommenen Nachrichten. Hierdurch wird sichergestellt, dass keine ungültigen oder fehlerhaften Nachrichten vom UE kommen. Da SIP ein
textbasiertes Protokoll ist, verbraucht es relativ viel Bandbreite. Dies kann z. B. bei einem
angeschlossenen W-LAN zu starken Verzögerungen führen. Aus diesem Grund kann die PCSCF die Nachrichten komprimieren und wieder dekomprimieren. Des Weiteren wird eine
eventuelle Abrechnung bei kostenpflichtigen Diensten durch die P-CSCF durchgeführt.
Für externe Anfragen an das IMS, ist die I-CSCF der erste Kontaktpunkt. Ihre Adresse
wird über einen DNS-Eintrag publiziert, sodass sie von außerhalb auffindbar ist.
Im Rahmen der Registrierung ermittelt die I-CSCF die Nutzerdaten des Teilnehmers.
Hierfür wird zunächst über Diameter die Adresse der zuständigen HSS bei der SLF abgefragt. Anschließend kann beim HSS die Adresse des zuständigen S-CSCF ermittelt werden.
Somit kann die Registrierungsanfrage an die S-CSCF weitergeleitet werden, die den Request
abschließt. Geht ein Request mit einer E.164-Nummer [ITU-2005] im Header ein, wandelt die
I-CSCF diese in einen Tel-URI [RFC-3966] um. Optional kann die I-CSCF alle Informationen
über das eigene Netz mittels THIGin den Nachrichten chiffrieren.
32
2.2. IP Multimedia Subsystem
Die S-CSCF tritt als Makler zwischen dem UE und einem angefragten Dienst auf. Aus
diesem Grund wird die Sitzungskontrolle von dieser Funktion durchgeführt. Um zu entscheiden, ob ein Teilnehmer berechtigt ist einen angeforderten Dienst zu nutzen, fragt er beim
zuständigen HSS die Teilnehmerinformationen ab. Wie bereits erwähnt, führt die S-CSCF
die Registrierung durch. In dem Sinne fungiert diese Funktion als Registrar. Das heißt, es wird
eine Relation zwischen den Aufenthaltsinformationen des Teilnehmers (z. B. die IP-Adresse
des Teilnehmers) und seiner IMPU aufgebaut. Anschließend ist die registrierende S-CSCF
dem Teilnehmer für die Dauer der Registrierung zugeordnet.
Nach der Registrierung werden alle Nachrichten des UE über die zugeordnete S-CSCF geleitet. Hierdurch wird der Application Server (AS) festgelegt, an den die Nachrichten geleitet
werden, sofern der Teilnehmer zum angefragten Dienst berechtigt ist.
Enthält der Request des Teilnehmers keinen SIP URI sondern z. B. eine Festnetznummer,
tranformiert die S-CSCF diese Nummer. In der Regel wird dies durch eine Anfrage beim
E.164 Number Mapping (ENUM)-Dienst [RFC-3761] durchgeführt.
Sicherheitstechnisch zu den wichtigsten Aufgaben der S-CSCF zählt die Einhaltung der
Netzwerk-Policy. Beispielsweise darf es keinem unautorisierten Teilnehmer möglich sein, einen
Dienst zu nutzen.
Alle CSCFs sind in der Regel redundant angelegt. Das heißt, in einem gegebenen
IMS befinden sich immer mehrere Ausprägungen der P-CSCF, I-CSCF und S-CSCF. Hierdurch wird einerseits eine Ausfallsicherheit gewährleistet und andererseits die Skalierbarkeit
des Netzes sichergestellt.
Die CSCFs kommunizieren mit Ausnahme der Datenbankdienste mittels des SIP. Anfragen
an den HSS oder die SLF werden über einen diameterbasierten Referenzpunkt abgewickelt.
Datenbankfunktionen
Das IMS enthält zwei Datenbankfunktionen zur Verwaltung aller relevanten Informationen.
1. Home Subscriber Server (HSS).
2. Subscription Locator Function (SLF).
Der HSS [TSG-2009d, S. 125–126] fungiert als zentrale Anlaufstelle für alle teilnehmerrelevanten Informationen. In ihm werden Daten zur Sitzungssteuerung hinterlegt. Beispielsweise
werden hier Aufenthalts-, Sicherheits- und Profilinformationen sowie die aktuell zugewiesene
S-CSCF abgespeichert.
In großen Netzwerken können mehrere HSS vorhanden sein. Die Informationen zu einem
bestimmten Teilnehmer sind jedoch immer nur in einem HSS vorhanden. Um den richtigen
HSS zu ermitteln, existiert die SLF [TSG-2009d, S. 126–128] . In ihr werden TeilnehmerHSS-Relationen hinterlegt.
Sowohl der HSS als die SLF werden über einen auf Diameter [RFC-3588] basierenden
Referenzpunkt kontaktiert.
33
Kapitel 2. Next Generation Network
Application Server
Der Application Server (AS) bietet dem Netzwerk Dienste an. Im Rahmen dieser Ausarbeitung ist der AS jedoch weitestgehend uninteressant, da er von SPIT kaum betroffen wird.
Als Ausnahme sei hier zu nennen, dass der AS als B2BUA im Sinne des SIP fungieren kann.
IP Multimedia Services Identity Module
Das ISIM [TSG-2009b] ist der Träger für wichtige Teilnehmerinformationen. Ist kein
ISIM vorhanden, können die Teilnehmerinformationen im USIM gespeichert werden. Dies ist
für eine erfolgreiche Authentifikation erforderlich, somit kann ohne USIM keine Kommunikation mit dem IMS stattfinden. Im Mobilfunkbereich ist das ISIM zusammen mit dem SIM
oder dem USIM auf der UICC des Teilnehmers hinterlegt.
Abb. 2.16: Skizze einer Universal Integrated Circuit Card.
Der Ausdruck SIM wird in der Praxis oft für eine UICC synonym verwendet. Bei der Karte
(vgl. Abb. 2.16, S. 34), die in ein Mobiltelefon zur Registrierung im Netz eingesetzt werden
muss, handelt es sich um die UICC und nicht um das SIM. Das SIM ist neben dem ISIM ein
Modul, dass auf der UICC abgelegt ist.
Wie beschrieben, beinhaltet das ISIM Informationen, die für eine erfolgreiche Registrierung
erforderlich sind. Auf alle im ISIM gespeicherten Informationen kann nur lesend zugegriffen werden. Im Detail handelt es sich um folgende Daten [TSG-2009b, S. 9–17]:
• IMPI: Das ISIM speichert die IMPI des Teilnehmers. Auf einem ISIM kann immer
nur eine IMPI gespeichert sein.
• Heimatnetz-Domain-URI: Der SIP URI des Heimatnetzes wird in diesem Feld gespeichert. Es wird benötigt, um im Registrationsprozess die Adresse des Heimatnetzes
zu ermitteln. Auf einem ISIM kann immer nur ein Heimatnetz-Domain-URI gespeichert
werden.
• IMPU: Auf dem ISIM werden ein oder mehrere IMPUs gespeichert.
• Long-term-Secret: Das Long-term-Secret wird für die Authentifikation benötigt. Mit
diesem können die gesendeten Nachrichten verschlüsselt und die empfangenen Nachrichten entschlüsselt werden.
34
2.3. Zusammenfassung
User Equipment
Das UE [TIS-2009, S. 29–30] bezeichnet die Endgeräte des Teilnehmers, über die es Zugang
zum IMS erhält. Damit das UE für VoIP genutzt werden kann, beinhaltet es den UA im Sinne
des SIP.
2.3 Zusammenfassung
Das IMS stellt den Rahmen für diese Arbeit bereit. Nachdem im nächsten Kapitel das SPIT
genauer beschrieben wird, werden sich die Betrachtungen danach auf das IMS beziehen. Ob
sich SPIT unterbinden lässt, ist maßgeblich von den Fähigkeiten des IMS abhängig.
Hierbei spielt das SIP eine tragende Rolle. Will ein Spammer seine Botschaften verteilen,
wird dies in der Regel über dieses Protokoll abgewickelt. Um die Möglichkeiten zu verstehen,
ist daher eine Einführung in die Funktionsweise des SIP unumgänglich.
In diesem Kapitel wurde auf beide Themen ausführlich eingegangen, sodass die folgenden
Kapitel leichter zu verstehen sind.
35
Kapitel 2. Next Generation Network
36
Kapitel
3
Spam over Internet Telephony
In dieser Arbeit wird beschrieben, inwieweit Spam over Internet Telephony (SPIT) für das
IMS problematisch ist. Nachdem in die Thematik des IMS eingeführt wurde, wird in diesem
Kapitel das SPIT erklärt.
Zunächst wird definiert, was im Rahmen dieser Arbeit unter SPIT zu verstehen ist (vgl.
Abschn. 3.1, S. 37). Anschließend wird untersucht, welchen sozialen Einfluss Spam im Allgemeinen auf die Gesellschaft nimmt (vgl. Abschn. 3.2, S. 40). Um die Auswirkungen von
SPIT auf das IMS zu identifizieren, wird die Arbeitsweise der Spammer vorgestellt (vgl. Abschn. 3.3, S. 41). Im Anschluss daran wird analysiert, ob sich SPIT finanziell lohnt (vgl.
Abschn. 3.4, S. 46). Abschließend wird der rechtliche Rahmen für Spam in Deutschland kurz
vorgestellt (vgl. Abschn. 3.5, S. 48).
3.1 Definition
Um SPIT zu verstehen, muss das klassische E-Mail-Spam betrachtet werden. Den Ausdruck SPIT gäbe es vermutlich nicht, wenn es vorher kein E-Mail-Spam gegäben hätte. Das
liegt daran, dass beides Unterbegriffe des Ausdrucks Spam sind. Da E-Mail-Spam die erste Form von Spam ist, trug es maßgeblich zur Definition des Spambegriffs bei. In diesem
Abschnitt werden die Gemeinsamkeiten zwischen diesen beiden Begriffen beschrieben.
Um das Wort Spam begreiflicher zu machen, wird zunächst die Herkunft des Wortes beschrieben. Im Anschluß wird das Wort Spam genauer definiert, um zu beschreiben, was
im Rahmen dieser Arbeit unter Spam zu verstehen ist. Abschließend wird der Unterschied
zwischen E-Mail-Spam und SPIT erklärt, womit ein eindeutiges Gesamtbild für das SPIT
entsteht.
37
Kapitel 3. Spam over Internet Telephony
3.1.1 Herkunft des Wortes Spam
R (SPAM)
R anlehnt. Wie
Spam ist ein Wort, was sich vermutlich an die Marke Spiced Ham
R das heute bekannte Spam wurde, ist nicht vollständig bekannt. Im Wesentlichen
aus SPAM
scheinen zwei Ereignisse eine tragende Rolle zu spielen [Zdz-2005, S. 4]:
• Ein Sketch namens SPAM“ [Mon-2009] aus der Sendung Monty Python’s Flying
”
”
Circus“.
• In Newsgroups wurde das Wort Spamming“ für das übermäßige Senden von Infor”
mationen genutzt.
Eggendorfer [Egg-2005, S. 19–20] bestätigt diese beiden Thesen, sieht sie aber nicht unabhängig voneinander. Demnach war die Schlüsselrolle der Sketch von Monty Python.
Das Wort Spamming wurde nämlich am 31. März 1993 erstmals in einer Newsgroup
erwähnt. Damals war Monty Python sehr beliebt und einige der Newsgroup-Nutzer waren
große Fans von ihm. Dadurch soll diese Anspielung auf den Sketch verstanden worden und
das Wort Spam seine Bedeutung erhalten haben.
3.1.2 Bedeutung in dieser Arbeit
Da das Wort Spam keinen direkten Rückschluss auf seine Bedeutung zulässt, wird es oft
sehr unterschiedlich verwendet. Für die einen ist Spam jede Art von massenhaft versendeten
E-Mails, für andere sind es nur solche mit werbendem Charakter. Die Definition scheint sich
jedoch immer enger um den Begriff UCE zu schnüren. E-Mail-Spam hat demnach werbenden Charakter und ist unerwünscht. Dieser Ausdruck wird mittlerweile sowohl vom
Bundesamt für Sicherheit in der Informationstechnik (BSI) [BSI-2005, S. 14] und der International Telecommunication Union - Telecommunication Standardization Sector (ITU-T)
[ITU-2006a, S. 7] eingesetzt.
Die Verwendung des Wortes Spam in der Wissenschaft steht jedoch im Widerspruch mit
der Definition im Duden [Dud-2006, S. 977]. Dort wird Spam wie folgt beschrieben:
[...] unaufgefordert an viele Internetnutzer auf einmal versandte E-Mail (zu Wer”
bezwecken o. Ä.) [...] an viele Newsgroups gleichzeitig übermittelte Nachricht [mit
belanglosem Inhalt] [...]“
Diese Definition ist zu allgemein. Demnach ist das Versenden einer Geburtstagseinladung
als Spam zu bezeichnen. Sie wird in der Regel unaufgefordert an viele Internetnutzer gleichzeitig mit einen werbeähnlichem Betreff gesendet. Aus diesem Grund ist der in der Wissenschaft
verwendete Ausdruck UCE treffender.
UCE müssen werbenden Charakter haben und unerwünscht sein. Dieser Punkt spiegelt
sich in der Erfahrung eines jeden E-Mail-Nutzers wieder. In Spam wird unter anderem für
38
3.1. Definition
Pharmaka, Druckerpatronen, Aktien, etc. geworben. Besonders gefährlich sind sogenannte Phishing-Mails oder Vishing-Anrufe. Hier wird dem Teilnehmer die Echtheit einer
wichtigen Nachricht vorgetäuscht. Beispielsweise wird mit einer falschen Bankmail versucht,
die Kontodaten zu erschleichen.
Rein rechtlich gesehen ergibt sich beim Umgang mit UCE eine wichtige Unterscheidung
(vgl. Abschn. 3.5, S. 48). Ist der Sender der vermeintlichen UCE dem Empfänger bekannt,
wurde die E-Mail nur an diesen gesendet, dann handelt es sich nicht mehr um Spam.
Massenhaft versendete E-Mails, die einen Teilnehmer über angebliche Gefahren warnen,
sogenannte Hoaxes“ [Zie-2009], fallen aus diesem Grund nicht unter Spam. Hoaxes werden
”
nämlich in der Regel durch befreundete Teilnehmer weitergeleitet.
Mit SPIT verhält es sich ähnlich wie mit E-Mail-Spam. Im Ausdruck SPIT ist die Bezeichnung Spam enthalten, daher muss es Gemeinsamkeiten geben. Der werbende Charakter
ist auf jeden Fall ein wesentlicher Bestandteil von SPIT. Außerdem ist die massenhafte Zustellung ein wichtiger Bestandteil von SPIT. Trotz der Gemeinsamkeiten unterscheidet sich
SPIT von E-Mail-Spam.
Der essenziellste Unterschied liegt in der Zustellung. Eine E-Mail kann vom Server auf
Spam-Schlagwörter und dergleichen untersucht werden. Findet er keine, wird die E-Mail
normal zustellt. Bei einer E-Mail kommt es nicht darauf an, ob sie sofort oder leicht verzögert
zugestellt wird.
Bei SPIT ist das nicht möglich. Im Gegensatz zur E-Mails ist beim Telefondient diese
Verzögerung unerwünscht. Zusätzlich ist der Inhalt des Anrufs erst bekannt, wenn der
Teilnehmer abgenommen hat. Wegen des Störfaktors ist es für Gegenmaßnahmen jedoch zu
spät, wenn das Endgerät des Teilnehmers klingelt.
Selbst wenn eine UCE zugestellt wird, kann der Nutzer selbst entscheiden, ob er sie liest
oder löscht. Bei einem SPIT-Anruf kann der Teilnehmer den SPIT nur erkennen, wenn er ihn
anhört.
Auch wenn dies nicht der eigentlichen Definition von SPIT entspricht, wird im Rahmen
dieser Arbeit eine umfassendere Bedeutung benutzt. Denn der massenhafte Anruf ohne werbenden Charakter kann in Form eines Denial of Service (DoS)-Angriffs gefährlich sein.
Aus diesem Grund wird die allgemeinere Definition für diese Arbeit verwendet.
3.1.3 Formen von Spam mittels Session Initiation Protcol
Inwiefern kann Spam mit dem Session Initiation Protocol (SIP) betrieben werden? Für das
SIP gibt es viele denkbare Möglichkeiten zu werben. Die folgenden drei Möglichkeiten haben
sich jedoch in der Forschung herauskristallisiert [RFC-5039, S. 3–8]:
• Call-Spam: Mit Call-Spam ist der massenhafte Versuch, Werbeanrufe zu initiieren gemeint. Genauer beschreibt Call-Spam das Senden von INVITE-Requests. Der Spammer
versucht, eine Verbindung aufzubauen und dann seine Werbebotschaft durchzugeben.
39
Kapitel 3. Spam over Internet Telephony
Dies kann durch ein Callcenter, eine automatisch abgespielte Nachricht usw. geschehen.
Call-Spam ist dasselbe wie SPIT.
• Instant Message-Spam: Ähnlich zum E-Mail-Spam werden dem Rezipienten bei
dieser Form Textnachrichten zugesandt. Nur geschieht dies hier in der Regel über
eine MESSAGE-Request. Instant Message-Spam wird als Spam over Instant Messaging
(SPIM) bezeichnet.
• Presence-Spam: Presence-Spam ist auf den ersten Eindruck etwas ungewöhnlich. Im
Grund ist es recht ähnlich zu SPIM. Der Spammer versucht, über ein SUBSCRIBERequest in die Freundesliste des Opfers zu gelangen. Sobald er auf der Freundesliste
ist, kann er jegliche andere Form von Spam gegen das Opfer einsetzen. Diese Form des
Spams wird als Spam over Presence Protocol (SPPP) bezeichnet.
Selbst wenn diese Formen des Spams in ihrer Ausführung absolut unterschiedlich sind,
können manche Gegenmaßnahmen für alle Formen von Spam eingesetzt werden.
3.2 Soziale Auswirkungen
Nach Berichten von Cisco System [Cis-2008, S. 13], MessageLabs [Mes-2009, S. 5] und der
ITU-T [ITU-2008, S. 9], waren 2007 und 2008 ungefähr 85 % der versendeten E-Mails
Spam. Findet SPIT eine ähnlich große Verbreitung, kann des Medium Voice over IPs (VoIPs)
unbrauchbar werden.
Denn die Auswirkungen von E-Mail-Spam gehen oft schon über die reine Belästigung hinaus. Bei manchen Nutzern ist der E-Mail-Spamandrang derart gewaltig, dass ihre Postfächer
überlaufen. In einer solchen Masse von Spam-E-Mails gehen erwünschte E-Mails unter, EMail-Server können zusammenbrechen und nicht zuletzt wehren schlecht konfigurierte Spamfilter normale E-Mails ab.
2007 wurde außerdem ein Wandel im Vorgehen der Spammer beobachtet. Es enthielten
83 % des versendeten Spams Links, die zu URI-basierten Viren führen [GW-2008, S. 225].
Die Situation ist bei SPIT nicht besser. Doch anders als bei E-Mail-Spams ist der Störfaktor
bei SPITs deutlich höher. Wenn bei einem Teilnehmer nur jeder zehnte Anruf erwünscht
ist, kann sich die Teilnehmer vom VoIPs abwenden. Außerdem sind durch SPITs nicht nur
nationale Gespräche gebührenfrei. Insbesondere für internationale Teilnehmer ist es sehr lukrativ, über VoIPs zu telefonieren. Deshalb kann es passieren, dass der amerikanische Spammer mitten in der Nacht versucht, seinen SPITs an einen deutschen Teilnehmer zuzustellen.
Spätestens jetzt ist die Reizschwelle vieler Nutzer überschritten. Zumal diese Problematik
mit einem Festnetzanschluss weniger präsent ist.
Einen eher ungewöhnlichen Blick auf Spam nahm eine Studie von McAfee [McA-2009].
Nach dieser Studie sind 2008 geschätzte 62 Billionen Spam-E-Mails versandt worden. Dieses
40
3.3. Vorgehen
Spamaufkommen hat ungefähr 33 Milliarden Kilowattstunden Abwärme produziert.
Das entspricht dem Stromverbrauch von 2,4 Millionen Haushalten. Spam ist demnach ebenfalls ein ökologisches Problem.
3.3 Vorgehen
Um SPIT erfolgreich zu unterbinden, muss klar werden, wie SPIT entsteht. SPIT ist mehr
als der Anruf selbst. Er kann nur durchgeführt werden, wenn zuvor Adressen potenzieller
Opfer gesammelt und eine Verbindung zu ihnen aufgebaut wurde.
In seiner Diplomarbeit [ElK-2008, S. 37–40] hat Rachid El Khayari drei Schritte (vgl.
Abb. 3.1, S. 41) vorgestellt, die zur Durchführung von SPIT notwendig sind. Demnach gehört
das Sammeln der Zieladressen zum SPIT-Prozess dazu. Auf Basis der gesammelten Adressen
wird eine Verbindung zu möglichst vielen Teilnehmern aufgebaut und die Werbebotschaft
übertragen. Im Folgenden werden diese drei Schritte genauer beschrieben.
Schritt 1
Informationen
sammeln
Schritt 2
Sitzung
etablieren
Schritt 3
Nachricht
übertragen
Abb. 3.1: Drei Schritte zum SPIT [ElK-2008, S. 37].
3.3.1 Informationen sammeln
Um einen Anruf zu starten, benötigt der Spammer zunächst valide Adressen der Teilnehmer. Woher erhält ein Spammer diese Adressen? In der Literatur werden insgesamt die
folgenden vier Möglichkeiten identifiziert [CDT-2003, S. 14–15][ElK-2008, S. 37–39][Egg-2005,
S. 16–17].
1. Kaufen.
2. Harvesting.
3. Aktiver Scan.
4. Passiver Scan.
Jedes Verfahren ist für sich unabhängig einsatzfähig, es ist aber eine Kombination der
Verfahren denkbar. Im Folgenden wird auf die einzelnen Möglichkeiten separat eingegangen.
Kaufen
Der einfachste und technisch aufwandloseste Weg an Adressen zu gelangen, besteht im
Kauf einer fertigen Liste. Manche Spammer bieten interessierten Teilnehmern ihre Listen zum
41
Kapitel 3. Spam over Internet Telephony
Kauf an. Beispielsweise können über das Internet eine Millionen E-Mail-Adressen für 39,95 $
[Bul-2008] gekauft werden. Gegen den Verkauf von solchen Listen lässt sich im Nachhinein
prinzipiell nichts mehr unternehmen. Wohnt der Verkäufer in einem Land mit gültigem AntiSpam-Gesetz, kann rechtlich gegen ihn vorgegangen werden. Unabhängig davon wurde die
Liste bis dahin vermutlich weiterverkauft und kann somit nicht mehr aus dem Umlauf entfernt
werden.
Harvesting
Harvesting beschreibt das automatische Sammeln von Adressen, die im Internet zu finden
sind. Das Internet bietet zwei potenzielle Quellen [CDT-2003, S. 14–15][Egg-2005, S. 16–17],
die Zugang zu Adressen bieten.
1. Internetseiten.
2. Verzeichnisse.
Zum Sammeln der Adressen kommen sogenannte Bots zum Einsatz. Bots sind kleine
Programme, die automatisch im Internet nach Adressen suchen. Sie verfolgen beispielsweise
die Links, um auf weiteren Internetseiten suchen zu können.
Zumindest in Deutschland, ist das Sammeln der Adressen über die Internetseiten ein
sehr vielversprechender Ansatz. Denn das deutsche Gesetz [BMJ-2008b, § 5 Abs. 1 Nr. 2]
verpflichtet die Inhaber von kommerziell genutzten Internetseiten zur Angabe einer elektronischen Kontaktadresse, insbesondere mittels elektronischer Post. Diese elektronische
Kontaktaufnahme läuft in der Regel auf eine E-Mail-Adresse hinaus. Durch dieses Gesetz
muss auf jeder kommerziell genutzten Internetseite mindestens eine E-Mail-Adresse hinterlegt sein. Setzt sich VoIP flächendeckend durch, kann davon ausgegangen werden, dass eine
Kontaktmöglichkeit mittels VoIP in die Kontaktangaben aufgenommen wird.
Eine weitere interessante Quelle für Adressen sind elektronische Verzeichnisse. Für SIPAdressen ist das klassische Telefonbuch die beste Datenquelle. In ihm stehen überwiegend
valide Nummern. Es handelt sich zwar bisher nur um klassische Festnetznummern, doch
zukünfigt wird sich dieses Problem sicherlich ändern. Zum einen, weil durch das E.164 Number
Mapping (ENUM) [RFC-3761] ein Mechanismus bereit steht, um Festnetznummern in EMail-Adressen, Session Initiation Protocol Uniform Ressource Identifier (SIP
URI) usw. umzuwandeln. Aus diesem Grund wird ENUM als potentielle Goldgrube für
Spammer bezeichnet [RFC-5039, S. 14]. Ungeachtet vom ENUM könnten manche VoIPProvider die normale Festnetznummer als User-Teil für ihre SIP URI einsetzen.
42
3.3. Vorgehen
Aktiver Scan
Bei einem aktiven Adressscan versucht der Angreifer durch Ausprobieren die zugeteilten
SIP URI zu erraten. Da SIP zwei Arten von SIP URI bereitstellt, kann der Scan auf zwei
Weisen durchgeführt werden.
1. Aktiver Scan nach permanenten SIP URI.
2. Aktiver Scan nach temporären SIP URI.
Diese beiden Varianten unterscheiden sich leicht in ihrer Ausführung. Aus diesem Grund
werden sie nacheinander vorgestellt. Zunächst wird auf den aktiven Scan nach permanenten
SIP URI eingegangen, da hierdurch Vorarbeit für die temporären SIP URI geleistet werden
kann. Um effizient nach permanenten SIP URI scannen zu können, benötigt ein Angreifer
zunächst zwei Dinge:
1. Mindestens einen gültigen Account.
2. Wissen über den Aufbau des SIP URI des Betreibers.
Ein gültiger Account ist leicht eingerichtet. Angenommen der Angreifer hat bei einem
Anbieter namens beispiel.de einen Account. Bei beispiel.de haben alle SIP URI bsp“ als
”
Präfix, gefolgt von einer 5-stelligen Zahl. Somit können 100.000 Adressen von sip:bsp00000@
beispiel.de bis sip:[email protected] zugeordnet werden.
Der Angreifer weiß nicht, welche dieser Adressen zugeordnet sind und welche nicht. Bei
einem aktiven Scan versucht er dies herauszufinden, indem er jeden möglichen Account
ausprobiert. Am geeignetsten dafür ist das Senden eines INVITE-Requests, da dieser im
Erfolgsfall direkt in einer Kommunikation endet [ElK-2008, S. 38]. Je nachdem, ob der SIP
URI vergeben ist oder nicht, ergeben sich daraus drei Szenarien:
1. SIP URI ist zugewiesen: In diesem Fall sendet der UAS ein 200 OK an den UAC
zurück. Es kann eine Verbindung direkt aufgebaut und der SIP URI als zugewiesen
gespeichert werden.
2. SIP URI ist zugewiesen, momentan aber nicht registriert: In diesem Fall sendet
der Proxy ein 480 Temporarily Unavailable zurück. Der SIP URI kann als zugewiesen
aber nicht erreichbar gespeichert werden.
3. SIP URI ist nicht zugewiesen: In diesem Fall sendet der Proxy ein 404 Not Found
an den UAC zurück. Dieser SIP URI kann als nicht zugewiesen separat gespeichert
werden.
Auf diese Weise erhält der Angreifer drei Listen mit SIP URI. Eine Liste mit zugeordneten Adressen, die sofort angerufen werden können. Eine Liste mit zugeordneten Adressen,
43
Kapitel 3. Spam over Internet Telephony
die momentan nicht registriert sind. Sowie eine Liste mit nicht zugeordneten Adressen. Wobei
die letzte Liste für zukünftige Scans genutzt werden kann.
Will der Angreifer temporäre anstatt permanente SIP URI muss er etwas anders vorgehen. Doch warum sollte er versuchen, temporäre SIP URI zu erlangen? Normalerweise reicht
ein permanenter SIP URI völlig aus, um einen Teilnehmer zu kontaktieren.
Der Vorteil des temporären SIP URI liegt in der Möglichkeit, den Teilnehmer unter Ausschluss der Proxy direkt anzurufen. Da der Proxy umgangen wird, können die Nachrichten nicht von ihm auf SPIT untersucht werden. Somit kann er durch den Ausschluss der
Proxy jeden beliebigen Namen als Absender eingeben. Außerdem ist es nicht mehr nötig, das
der Angreifer selbst einen validen Account des Betreibers hat.
Wurde vor dem Scan nach temporären SIP URI nach permanenten SIP URI gesucht, kann
dies vorteilhaft sein. Denn in der Implementierung mancher Proxy wird in der Response das
Contact-Header-Feld mit eingefügt [ElK-2008, S. 38]. Somit erhält ein Angreifer praktisch
gratis den temporären SIP URI dazu.
Wird nur nach temporären SIP URI gescannt, muss der Angreifer mehr Aufwand betreiben
als im obigen Fall. Der Angreifer braucht nach wie vor die Information über den Aufbau
eines SIP URI, wenn er keinen eigenen Account beim Anbieter hat. Sei beispiel.de nicht nur
ein VoIP-Provider, sondern zusätzlich ein ISP. Er verteilt für alle seine Kunden IP-Adresse
von 192.0.2.0 bis 192.0.2.255. Ein Angreifer muss für jeden möglichen Benutzernamen
(bsp00000 bis bsp99999) ein INVITE-Request an jede mögliche IP-Adresse senden, bis er
Erfolg hat. Den Request sendet er, je nach Transportprotokoll, an den korrespondierenden
Port.
Passiver Scan
Das aktive Sammeln ist eine sehr effektive Quelle für valide SIP URI. Der Angreifer geht
jedoch das Risiko ein, entdeckt zu werden. Alternativ dazu kann er durch einen passiven
Scan an SIP URI gelangen.
Bei einem passiven Scan veröffentlicht der Angreifer einen Service, beispielsweise auf einer Internetseite. Um diesen Service nutzen zu können, muss sich der Interessent entweder
registrieren oder eine Hotline anrufen. Der Angreifer merkt sich alle SIP URI der
Hotline-Anrufer und der registrierten Nutzer.
Solange der Service interessant genug ist, sammelt der Angreifer auf diese Weise jede Menge
SIP URI. Normalerweise erlangt der Angreifer dadurch permanente SIP URI. Handelt es sich
jedoch um eine Hotline, werden ihm zusätzlich die temporären SIP URI übermittelt. Diese
Adressen erhält der Spammer, da im Standard das Contact-Header-Feld für eine INVITERequest vorgeschrieben ist [RFC-3261, S. 162]. Da temporäre SIP URI maximal 24 Stunden
gültig sind, müssen diese zeitnah für die SPIT-Zustellung genutzt werden.
44
3.3. Vorgehen
3.3.2 Sitzung etablieren
Hat der Spammer genügend Adressen gesammelt, kann er beginnen das Spam zu verteilen. Dazu muss er eine Verbindung mit den potenziellen Opfern herstellen. Aufgrund der
gesammelten Listen bieten sich dem Spammer zwei Möglichkeiten die Anrufe zu initiieren
[ElK-2008, S. 39]:
1. SPIT via Proxy: Hierbei greift der Spammer auf die Liste mit den permanenten SIP
URI zu. Die Verbindung wird über die Infrastruktur des VoIP-Betreibers aufgebaut.
Dies ermöglicht dem Betreiber, die Nachrichten mit geeigneten Anti-Spam-Maßnahmen
abzuwehren. Außerdem kann er den Spammer bestrafen, da dessen Identität dem Betreiber bekannt ist.
2. Direct-IP-SPIT: Hierbei greift der Spammer auf die Liste mit den temporären SIP
URI zu. Die Verbindung wird direkt mit dem Spamopfer hergestellt. Dadurch können
keine serverseitigen Anti-Spam-Maßnahmen des VoIP-Betreibers eingreifen. Somit gibt
es keine Instanz, die den Spammer durch Analysen erkennen und identifizieren kann.
3.3.3 Nachricht übertragen
Der letzte Schritt, den der Angreifer durchführen muss, ist das Senden der Nachricht. Je nach
Art der Nachricht lassen sich drei Szenarien unterscheiden [Han-2006, S. 1–2]:
• Callcenter: In einem Callcenter sind mehrere Personen angestellt, die telefonische
Werbeanrufe durchführen. Ein Computer sorgt dafür, dass jeder Mitarbeiter mit Kunden versorgt wird. Ein Callcenter benötigt viel Geld für Mitarbeiter, Räume und Technik, kann aber sehr viel SPIT produzieren.
• Calling-Bots: Calling-Bots bauen automatisch eine Verbindung zum Zielteilnehmer
auf. Sobald eine Verbindung steht, übertragen sie eine vorher aufgezeichnete Werbebotschaft und beenden das Gespräch wieder. Sie sind deutlich günstiger als Callcenter,
da sie keine Gehälter, Räumlichkeiten oder größere Technik benötigen. Trotzdem kann
durch sie ein sehr großer Durchsatz erzielt werden.
• Ringtone-SPIT: Einige Telefone sind werksmäßig in der Lage, das Alert-Info-HeaderFeld auszuwerten. Der dort angegebene URI enthält dann einen Link zu einer Audiodatei mit der Werbebotschaft. Die Werbung wird in Form des Klingeltons abgespielt.
Dadurch verbreitet das Telefon den SPIT, bevor der Teilnehmer den Hörer abnimmt.
Wenn das Header-Feld Altert-Info nicht unterstützt wird, ist diese Form des SPIT die
störendste. Der SPIT ist dann nur dazu da, den Teilnehmer zu stören. Da durch dieses Header-Feld kein wirklicher Mehrwert produziert wird, empfiehlt es sich, dessen
Auswertung zu deaktivieren.
45
Kapitel 3. Spam over Internet Telephony
3.4 Kostenberechnung
Durch den Versuch der Universität Duisburg-Essen [Hof-2009, S. 7–9] ist mittlerweile klar,
das SPIT ein reales Problem ist. Bleibt zu klären, ob sich SPIT gegenüber der normalen
Telefonwerbung durchsetzen wird. Zwischen diesen beiden gibt es zwei wesentliche Unterschiede. Das Netz ist nicht IP-basiert und die Häufigkeit ist deutlich geringer. Trotz der
geringeren Quantität fühlen sich bereits dadurch viele Teilnehmer gestört.
Das SPIT mit großer Sicherheit aufkommen wird, liegt genau an dieser niedrigen Quantität.
Das Problem an der Telefonwerbung sind die Kosten. Ein Anruf aus dem deutschen Festnetz,
in das deutsche Festnetz ist relativ teuer. Somit ist es eine reine Frage des Geldes, wie viel
Telefonwerbung es gibt.
Und genau dort setzt SPIT an. Viele VoIP-Telefonate sind kostenfrei. Das ermöglicht
den Werbeagenturen deutlich höhere Gewinnmargen. Doch warum haben die Werbeagenturen
nicht bereits auf VoIP umgestellt? Momentan sind noch viele Anschlüsse am Festnetz angemeldet. Und Telefonate aus dem VoIP-Netz ins Festnetz kosten ebenfalls Geld (ca. 0,029 e).
Aber wenn in Zukunft mehr Teilnehmer auf VoIP wechseln, lohnt sich das Geschäft mehr.
Um die Kosten zu verdeutlichen, wird im Folgenden ein kurzes Rechenbeispiel eingeführt.
Die Preise sind aus einem Memo der Internet Engineering Task Force (IETF) entnommen
[RFC-5039, S. 4–6]. Die Kosten von Spam drücken sich im Preis pro Anruf pc aus. Für die
Berechnung werden folgende Informationen benötigt:
• ns :
Die Anzahl an Anrufen, die parallel abgeschlossen werden können.
• pm :
Der monatliche Preis für die Bereitstellung der Telefon- oder Internetleitung.
• ps :
Die Gebühr, die pro Sekunde eines Telefonats berechnet wird.
• sc :
Die Anzahl der Sekunden, die eine Nachricht dauert.
• sm :
Die Anzahl der Sekunden, die ein Monat hat.
Spam wird günstiger, je mehr Anrufe getätigt werden, denn dadurch sinkt der Anteil
der Fixkosten pro Anruf. Für dieses Beispiel wird eine Monatslänge von 30 Tagen und eine
Anruflänge von 10 Sekunden je durchgeführten SPIT-Anruf angenommen. Sobald alle Informationen vorhanden sind, kann der Wert pc mit der folgenden Formel berechnet werden:
pm
+ ps = pc
(3.1)
sc ·
s m · ns
Um SPIT über das Festnetz zu verteilen, empfiehlt es sich, eine T1- oder T3-Leitung zu
mieten. Mit einem analogen Telefonanschluss sind nur ein und bei Integrated Service Digital
Network (ISDN) zwei Telefonate parallel möglich. Mit einer T1-Leitung können 24 Anrufe
simultan durchgeführt werden. Je mehr Anrufe gleichzeitig laufen können, je geringer fallen
die Kosten pro Anruf aus. Eine T1-Leitung kostet pro Monat ungefähr 250 $. Eine Sekunde
46
3.4. Kostenberechnung
Telefonieren wird mit 0,025 Cent berechnet. Werden alle diese Informationen in die Formel
(vgl. Formel 3.1, S. 46) eingesetzt, berechnet sich folgender Wert:
250 $
$
+ 0, 00025 /s = 0, 00254019 $
10 s ·
2.592.000 s · 24
(3.2)
Durch den Einsatz von SIP können diese Kosten deutlich gesenkt werden. Angenommen
ein INVITE-Request benötigt ungefähr 1 KB. Zur Übertragung der Sprache wird eine starke Kompression wie z. B. G.723.1 [ITU-2006b] mit 5,3 Kbps genutzt. Zusammen mit dem
Overhead durch das Real-time Transport Protocol (RTP), User Datagram Protocol (UDP)
und Internet Protocol (IP) benötigt ein Anruf 16 Kbps. Mit einem Upstream von ungefähr
1000 Kbps können 62 Anrufe parallel durchgeführt werden. Ein Internetanschluss kostet
durchschnittlich 50 $ im Monat. Da keine Gebühren für eine Telefoneinheit anfallen, entsteht
nach vorher beschriebender Formel (vgl. Formel 3.1, S. 46) folgender Preis:
50 $
$
+ 0, 00000 /s = 0, 00000311 $
10 s ·
2.592.000 s · 62
(3.3)
Offensichtlich ist die Festnetz-Telefonwerbung mit 254.019 µCent, runde 800-mal teurer
als SPIT mit 311 µCent. Zu den Telefonkosten kommen die Kosten für die Hardware. Wobei
dort VoIP ebenfalls günstiger ist, da es mit einem einfachen Computer durchgeführt werden
kann. Wie zu erkennen ist, sind die Kosten bei der Festnetz-Telefonwerbung im Wesentlichen von der Gebühr für eine telefonierte Sekunde abhängig. Die Fixkosten rücken in den
Hintergrund. Sie können somit vernachlässigt werden, da sie weit seltener anfallen, als der
Monatsmietpreis.
In dieser Berechnung wird jedoch nicht berücksichtigt, dass viele Spammer sogenannte Botnetze aufbauen, um Spam zu versenden [Bru-2003][ENI-2007, S. 3]. Bei einem
Botnetz versucht der Spammer, die Steuerung über einen am Internet angeschlossenen Computer zu erlangen. Dies geschieht beispielsweise durch die Einschleusung eines Trojaners.
Dadurch wird der Computer zu einem sogenannten Zombie“. Der Spammer nutzt anschlie”
ßend sein Botnet zum Versenden von Spam. Ein Spammer ist jedoch nicht darauf angewiesen,
sich die Arbeit zu machen, selbst ein Botnetz aufzubauen. Mittlerweile können fertige Botnetze im Internet für 5 bis 100 $ für 1.000 Zombie“-Rechner gekauft werden [Fin-2009, S. 3].
”
Dadurch sinken die Kosten für SPIT nahezu auf die Kosten das Botnet.
Telefonwerbung ist allerdings nicht die einzige Konkurrenz zu SPIT. Im Internet wird
Werbung bereits mittels E-Mail übertragen. Da E-Mails deutlich weniger Bandbreite als
ein Telefonat benötigen, können mehr Nachrichten versendet werden. Bei einem Telefonat
ist die Verbindung für die Dauer des Gesprächs für weitere Telefonate blockiert. E-Mails
können parallel gesendet werden und blockieren die Leitung anschließend nicht. E-MailSpam ist aber leichter zu entdecken und abzuwehren. Dadurch durchqueren nur sehr
wenige Nachrichten die Spamfilter. In diesem Sinne kann SPIT deutlich attraktiver sein, da
es wahrscheinlicher ist, jemanden zu erreichen.
47
Kapitel 3. Spam over Internet Telephony
3.5 Gesetzeslage
Da Gesetze grundsätzlich eine Angelegenheit der Nationen sind, gibt es keine einheitliche
Regelung. Dieser Abschnitt beschränkt sich daher nur auf in Deutschland direkt anwendbare
Gesetze. Darunter fallen die Vorgaben der Europäischen Union (EU) sowie die deutschen
Gesetzestexte und Rechtssprechungen.
Innerhalb der EU spielt nur eine geringe Rolle, in welchem Land sich der Versender des
Spams befindet, da die EU einheitliche Richtlinien erlassen hat. Daher greift das sogenannte Herkunftslandprinzip [BMJ-2008b, § 3 Abs. 4 Nr. 3]. Das bedeutet, dass immer der
Rechtsrahmen des Landes angewendet wird, in dem sich der Empfänger der Nachrichten
befindet.
Bisher wird der Versender von unerwünschten Nachrichten stets als Spammer bezeichnet.
Dieser Ausdruck ist jedoch nur treffend, sofern es sich um rechtswidrige Werbung handelt. Um
in die Gesetzeslage einzuführen, muss von einem rechtmässigen Werber ausgegangen werden.
Aus diesem Grund wird für diesen Abschnitt der Ausdruck Direktmarketing verwendet.
Direktmarketing ist eine Form des Marketing, bei dem der Kontakt zum Kunden direkt hergestellt wird. Für Direktmarketing gibt es Gesetze, die ihr einen rechtlichen Rahmen geben.
Missachtet das ausführende Marketingcenter diese Gesetze, kann die durch diese Marketingform versandte Werbung als Spam bezeichnet werden. Aus diesem Grund wird in diesem
Abschnitt geklärt, was rechtmäßiges Direktmarketing ist.
3.5.1 Begriffserklärung
Der Gesetzgeber verwendet in seinen Texten einige Worte, die einer genaueren Definition
bedürfen. Um diese Informationen dem Leser nicht vorzuenthalten, werden hier die wichtigsten Begriffe kurz vorgestellt [Kar-2006, S. 8–22].
• Diensteanbieter [BMJ-2008b, § 2 Abs. 1]: Mit einem Diensteanbieter ist jede juristische oder natürlich Person gemeint, die eigene oder fremde Telemedien zur Nutzung
bereithält oder einen Zugang zu diesen ermöglicht.
• Personenbezogene Daten [BMJ-2009a, § 3 Abs. 1]: Mit personenbezogenen Daten werden Einzelangaben über die persönlichen oder sachlichen Verhältnisse einer
bestimmten oder bestimmbaren natürlichen Person bezeichnet.
3.5.2 Rechtmäßiges Direktmarketing
Der Unterschied zwischen Marketing und Spam ist in großem Maße von der Rechtmäßigkeit
abhängig. Ein betroffener Teilnehmer muss in der Regel der Nutzung seiner Daten zustimmen. Wann und in welcher Art und Form diese Zustimmung sein muss, ist von dem
48
3.5. Gesetzeslage
jeweiligen Land abhängig. Generell existieren zwei gegensätzliche Ansätze, um die Einwilligung eines Teilnehmers einzuholen:
• Opt-IN.
• Opt-OUT.
Das Opt-OUT-Verfahren wird hauptsächlich in Amerika eingesetzt. Dieses Verfahren
basiert auf einer nachträglichen Entfernung aus der Verteilerliste des Werbers. Das bedeutet,
dass die initiale Werbebotschaft rechtlich erlaubt ist. Erst wenn sich der Empfänger
der Botschaft beim Werber meldet und ihm mitteilt, dass er keine Werbung mehr erhalten
will, ist die Werbung verboten.
Dieses Prinzip hat im Kontext von Spam einen gravierenden Nachteil. Angenommen der
Spammer befindet sich nicht in Amerika, dann braucht er dass dort geltende Gesetz nicht
zu fürchten. Wenn sich ein Teilnehmer bei ihm meldet, weil er keine Werbung mehr erhalten
möchte, kann er dies als Bestätigung ansehen, dass die Adresse genutzt wird.
In der EU [EPR-2002, § 13 Abs. 1] und somit in Deutschland [BMJ-2008a, § 7 Abs. 2 Nr. 3]
wird allerdings das Opt-IN-Verfahren verwendet. Hier ist der Versand der Werbung erst
nach einer vorhergehenden Zusage des Empfängers erlaubt. Wenn sich der Empfänger
selbst in die Verteilerliste eingetragen hat, darf er beworben werden. Hierbei muss beim Versenden der Werbung immer eine gültige Identität des Absenders angeführt werden. Demnach
darf die Identität des Absenders weder verschleiert, verheimlicht oder unterschlagen werden
[EPR-2002, § 13 Abs. 4][BMJ-2008a, § 7 Abs. 2 Nr. 4].
Für bestehende Geschäftsbeziehungen existieren besondere Richtlinien. Im Rahmen bestimmter Umstände ist es demnach möglich zusätzliche Werbung zuzustellen. Dafür müssen
allerdings alle der folgenden Punkte erfüllt sein [EPR-2002, § 13 Abs. 2][BMJ-2008a, § 7
Abs. 3]:
• Dem Kunden wurde ein Produkt oder eine Dienstleistung verkauft.
• Im Zusammenhang mit diesem Verkauf wurde die Kontaktadresse erworben.
• Der Kunde muss die klare und deutliche Möglichkeit erhalten haben, gebührenfrei und
problemlos den Versand von Werbung abzulehnen.
• Es wird nur mit ähnlichen Produkten oder Dienstleistungen geworben.
Die Einwilligung muss freiwillig erteilt worden sein [BMJ-2009a, § 4a Abs. 1][BMJ-2009e,
§ 95 Abs. 1] und darf nicht an die Nutzbarkeit des Dienstes gekoppelt sein [BMJ-2008a, § 4
Abs. 6]. Anschließend muss dem Kunden jederzeit die Möglichkeit angeboten werden, sich
wieder abzumelden [BMJ-2008b, § 13 Abs. 4 Nr. 1][BMJ-2008b, § 13 Abs. 4 Nr. 1].
Im Streitfall muss der Versender der Werbung nachweisen können, dass eine Einwilligung
zum Erhalt von Werbung vorlag [LG-2008]. Dies zu beweisen ist nicht ganz einfach. Das die
49
Kapitel 3. Spam over Internet Telephony
betreffende Adresse in die Liste eingetragen ist beweist nicht, dass dies vom Besitzer der
entsprechenden Adresse kommt.
Aus diesem Grund empfiehlt sich für den Versender der Werbung der Einsatz des DoubleOpt-IN-Verfahrens [Kar-2006, S. 13]. Dieses Verfahren setzt sich aus den folgenden Schritten zusammen (vgl. Abb. 3.2, S. 50):
1. Der Diensteanbieter erhält eine Nachricht, dass die Teilnehmerin Alice in die Liste
eingetragen werden will.
2. Automatisch wird eine Nachricht an Alice gesendet, in der sie aufgefordert wird, die
Eintragung zu bestätigen.
3. Trifft die Bestätigung beim Diensteanbieter ein, kann er von einem ehrlichen Interesse
an der Werbung ausgehen.
Alice
Diensteanbieter
Registrierung
Nachfrage
Bestätigung
Abb. 3.2: Ablauf beim Double-Opt-IN.
3.5.3 Möglichkeiten der Strafbarkeit
Handelt ein Teilnehmer den beschriebenen Regelungen zuwider, kann gegen ihn rechtlich vorgegangen werden. Die Möglichkeiten ergeben sich in Abhängigkeit vom konkreten Spamopfer.
Eine Privatperson kann nur seine bürgerlichen Rechte geltend machen, da das Wettbewerbsrecht nicht für Privatpersonen gilt [BMJ-2008a, § 8 Abs. 3]. Somit steht ihm eine Klage auf
Unterlassung [BMJ-2009b, § 1004 Abs. 1] und Schadensersatz [BMJ-2009b, § 823 Abs. 1]
zu. Unternehmen haben dementsprechend zusätzlich die Möglichkeit, aufgrund des Wettbewerbsrechts auf Unterlassung [BMJ-2008a, § 8] und Schadensersatz [BMJ-2008a, § 9] zu
klagen.
Da sich Spam, nach der Deutung im Kontext dieser Arbeit, nicht nur auf Werbung beschränkt, ergeben sich zusätzliche Möglichkeiten. Diese Möglichkeiten hängen von der Art
des Spams ab und werden im Folgenden kurz vorgestellt:
• Phishing / Vishing: Verschafft sich der Spammer selbst oder für einen Dritten durch
Phishing-E-Mails oder Vishing-Anrufen einen Vermögensvorteil, ist dies rechtswidrig.
Bereits der Versuch dies zu unternehmen, ist strafbar [BMJ-2009d, §§ 263, 263a].
50
3.5. Gesetzeslage
• Pornografie: Das Verbreiten von pornografischen Materialien erfordert die Aufforderung des Empfängers, das im Falle von Spam nicht vorliegt [BMJ-2009d, § 184 Abs. 1
Nr. 6]. Des Weiteren kann der Spammer nicht sicher stellen, dass seine Mails nicht von
Minderjährigen eingesehen werden können [BMJ-2009d, § 184 Abs. 1 Nr. 5].
• Schadsoftware: Abhängig von der Art der Schadsoftware (z. B. Viren und Würmer),
kommen unterschiedliche Gesetzestexte zur Geltung. Deshalb wird im Folgenden einzeln auf die verschiedenen Ausprägungen von Schadsoftware eingegangen:
– Wird über die Schadsoftware der Inhalt von persönlichen Schriftstücken erspäht,
verletzt dies das Briefgeheimnis [BMJ-2009d, § 202].
– Verändert die Schadsoftware das Erscheinungsbild beim Opfer, wird dies als Sachbeschädigung oder Computersabotage gewertet. Analog zum Phishing / Vishing
ist hier bereits der Versuch dies zu tun strafbar [BMJ-2009d, §§ 303, 303b].
– Werden durch die Schadsoftware Daten gelöscht, unterdrückt oder unbrauchbar
gemacht, fällt dies unter Datenveränderung. Hier ist ebenfalls der Versuch bereits
strafbar [BMJ-2009d, § 303a].
– Durch den massenhaften Versand von Spam kann es zu Störungen bis hin zu
Zusammenbrüchen von Telekommunikationsanlagen kommen. Dieser Tatbestand
liegt vor, wenn der Spammer fahrlässig handelt [BMJ-2009d, § 317].
Um den Spammer belangen zu können, muss der Empfänger zunächst die Anschrift des
Versenders ermitteln. Ist dies nicht direkt möglich, ergibt sich die Möglichkeit, die Anschrift
beim Betreibers des Dienstes zu erfragen [BMJ-2009c, § 13a].
3.5.4 Regelungen für Internet Service Provider
Sofern der ISP Maßnahmen gegen Spam ergreift, muss er bestimmte Gesetzeslagen beachten.
Die Problematik ist insbesondere bei falschen Positiven der Fall. Falsche Positive sind
erwünschte Nachrichten, die nicht zugestellt werden, da sie für Spam gehalten werden.
Wird eine Nachricht auf Spam untersucht, wird zumindest bei E-Mails in der Regel der
Inhalt der Nachricht ermittelt. Daraus kann sich eine Verletzung diverser Gesetze ergeben.
Zunächst betrifft dies das Brief- [BMJ-2009d, § 202] und Post- und Fernmeldegeheimnis
[BMJ-2009d, § 206][BMJ-2009e, § 88]. Hier kann der ISP eventuell aufgrund des Ausspähens
von Daten belangt werden [BMJ-2009d, § 206]. Wird die Nachricht verändert (z. B. als
Spam markiert), ist dies eine Datenveränderung [BMJ-2009d, § 303a] und ein Eingriff in den
Datenschutz des betreffenden Teilnehmers [BMJ-2009a, § 4 Abs. 1].
Um derartige Probleme zu verhindern, ist es daher ratsam, im Voraus die Einwilligung
des Teilnehmers einzuholen. Im Idealfall kann der ISP die Einwilligung beim Vertragsabschluss einholen [BSI-2005, S. 28]. Hierbei muss der Betreiber jedoch das Kopplungsverbot
51
Kapitel 3. Spam over Internet Telephony
[BMJ-2008a, § 4 Abs. 6] beachten. Das heißt, der Zugang zu seinem Dienst darf nicht von
dieser Einwilligung abhängig sein.
Unproblematisch sollten Filtermaßnahmen sein, wenn sie dazu da sind, Schadsoftware abzuwehren. Denn der Betreiber hat die Pflicht, geeignete Maßnahmen zum Schutz seiner Systeme zu ergreifen [BMJ-2009e, § 109].
3.6 Zusammenfassung
Das neuartige Problem SPIT, lässt sich als das massenhafte Aussenden von unerwünschter
Werbung definieren. Um eine globalere Betrachtung dieses Phänomens bieten zu können, wird
im Rahmen dieser Arbeit zusätzlich das generelle massenhafte Senden von Nachrichten
als SPIT definiert.
Dass diese neue Form von Spam aufkommen wird, kann aufgrund bestehender Versuche
nicht mehr angezweifelt werden. Darüber hinaus hat sich gezeigt, dass es deutlich Kostengünstiger ist, als konventionelle Telefonwerbung. Mit steigender Zahl VoIP-Nutzer wird
demnach immer häufiger mit SPIT zu rechnen sein.
Normale Telefonwerbung wird aufgrund der Kosten eher selten international getätigt. Mit
VoIP kann der potenzielle Kunde Werbeanrufe in einer fremden Sprache und zu jeder Uhrzeit
erhalten. Dadurch wird SPIT deutlich störender werden als klassische Telefonwerbung es
heute ist.
Da sich E-Mail-Spam und SPIT im Kern ähneln, wird erwartet, dass viele Anti-E-MailSpammaßnahmen auf SPIT angewendet werden können. Da jedoch bei einem Anruf
bereits das Klingeln des Telefons störend sein kann, ist es bei SPIT nicht möglich Inhaltsfilter
zu Abwehr einzusetzen.
Trotz der vielen Gesetze, die Spam einschränken oder verbieten, können nur in wenigen
Fällen Gesetze zum Einsatz kommen. Meist müssen sich Opfer, Täter und der ISP im selben
Land oder innerhalb der EU befinden. Somit kann nichts gegen international arbeitende
Spammer unternommen werden. Selbst wenn es entsprechende Gesetze geben würde, können
die Spammer ihre Identität verschleiern, indem sie z. B. Botnets einsetzen.
Aus diesem Grund ist es wichtig, jetzt etwas gegen SPIT zu unternehmen. Wir hätten
heute weniger E-Mail-Spam, wenn schon vorher geeignete Gegenmaßnahmen existiert hätten
[RFC-5039, S. 3]. Wenn jetzt ein guter Schutz vor SPIT erarbeitet wird, werden Ausmaße
wie beim E-Mail-Spam möglicherweise verhindert.
52
Kapitel
4
Abwehrmaßnahmen
Nachdem das Problem beschrieben wurde, wird in diesem Kapitel auf die Abwehr von Spam
over Internet Telephony (SPIT) eingegangen. Da eine große Ähnlichkeit zum E-Mail-Spam
besteht, können bisherige Abwehrmaßnahmen übernommen werden.
In der Regel handelt es sich dabei um Ansätze, die für einen Einsatz im IMS konzipiert
sind. Wenige Maßnahmen können zusätzlich in einem Endgerät realisiert werden und andere
wirken vorbeugend. Zusammen mit der Überprüfung des Nachrichteninhalts, lassen sich die
Verfahren in vier Gruppen einteilen (vgl. Abb. 4.1, S. 53):
Abwehrmaßnahmen
Identität
Inhalt
Interaktiv
Präventiv
Intrusion Detection
Adressen verbergen
Whitelists
Payments at Risk
Adressen streuen
Graylists
Turingtests
Teilnehmerverhalten
Device Fingerprinting
Computational Puzzle
Reputationssysteme
Honeypots
Blacklists
Inhaltsfilter
Abb. 4.1: Kategorisierung der Abwehrmaßnahmen [Sis-2009, S. 300].
Als Erstes wird in diesem Kapitel auf identitätsbasierte Abwehrmaßnahmen eingegangen. Sie versuchen, SPIT aufgrund verschiedener Werte (z. B. dem Session Initiation Protocol Uniform Ressource Identifier (SIP URI)) als Spam zu identifizieren (vgl. Abschn. 4.1,
S. 54). Das Inhaltsfilter bei SPIT nicht eingesetzt werden können, wurde zwar bereits
erwähnt, wird in diesem Abschnitt jedoch nochmals ausgeführt (vgl. Abschn. 4.2, S. 59). Interaktive Abwehrmaßnahmen versuchen die Kosten für die Spamzustellung zu erhöhen.
Durch die gestiegenen Kosten soll der finanzielle Anreiz für Spammer geschmälert werden
(vgl. Abschn. 4.3, S. 60). Ergänzend zu allen anderen Maßnahmen sind die präventiven
53
Kapitel 4. Abwehrmaßnahmen
Ansätze zu sehen. Hier werden Möglichkeiten beschrieben, die eine Zustellung des SPIT
im Vorfeld erschweren. In der Regel bedeutet dies, zu verhindern, das der Spammer an eine
valide Adresse gelangt (vgl. Abschn. 4.4, S. 64).
Wird ein serverseitiges Verfahren gewählt, muss ein ISP immer beachten, dass vorher
eine Einwilligung des Teilnehmers vorliegen muss. Handelt er dieser Aufforderung zuwider,
macht er sich strafbar. Das gilt auch, wenn kein Zweifel besteht, dass es sich um Spam handelt.
4.1 Identität
Identitätsbasierte Abwehrmaßnahmen entscheiden je nach Maßnahme aufgrund unterschiedlicher Identitätswerte, ob der Anruf abgelehnt oder durchgestellt wird. Beispielsweise kann
ein bestimmter SIP URI als Quelle für SPIT bekannt oder der Nachrichtenaufbau untypisch
sein. Diese Art der Abwehrmaßnahmen verbraucht nur sehr wenig Rechenaufwand, da in
der Regel einfache Vergleiche durchgeführt werden. Außerdem kann hiermit das SPIT bereits
auf der Call Control und Sitzungssteuerungsebene abgewehrt werden.
4.1.1 Blacklists
Der Einsatz von Listen [RFC-5039, S. 9–10] zur Abwehr von Spam gehört zu den ältesten
und bekanntesten Ansätzen. Die Funktionsweise ist simpel, abhängig vom Eintrag in einer
Liste wird eine Nachricht weitergeleitet oder nicht.
Die Funktionsweise einer Blacklist kann sehr anschaulich mit einem Casino verglichen
werden. Wenn ein Gast in einem Casino oft unangenehm auffällt, bekommt er Hausverbot.
Versucht er daraufhin erneut in das Casino zu gehen, wird er nicht mehr hineingelassen, weil
sein Name auf einer Blacklist steht.
Im konkreten Fall der Spamabwehr bedeutet dies, dass die Quelle einer empfangenen
Spamnachricht auf die Blacklist gesetzt wird. Eine E-Mail von einer gelisteten Adresse oder
aus einer gelisteten Domain wird anschließend nicht mehr in den Posteingang geleitet. Dafür kommen prinzipiell zwei Möglichkeiten in Betracht. Es gibt lokale Blacklists,
sie werden auf dem Endgerät des Teilnehers hinterlegt. Welcher Absender auf dieser Liste
steht, entscheidet der jeweilige Nutzer. Globale Blacklists werden auf einem Internetserver
zur Verfügung gestellt. Sie sind immer aktuell gehalten und können von der Filtersoftware
abonniert werden.
Die Auswahl beim Blacklisting findet im Voraus statt, womit das Klingeln des Telefons
gut verhindert werden kann. Im Falle von erfolgreich erkanntem Spam bedeutet dies keine
Störung für den Teilnehmer. Außerdem benötigt die Spambewertung nur sehr wenig Rechenaufwand, da nur ein Vergleich stattfindet.
54
4.1. Identität
Durch den Einsatz von gobalen Listen ist dieses Verfahren mit wenig Aufwand vom Teilnehmer einsetzbar. Die lokalen Listen können leicht nach den persönlichen Neigungen der
Kunden eingestellt werden.
Der Nachteil ist, dass der Schutz durch eine Blacklist einsetzt, nachdem Spam vom
angegebenen Teilnehmer entdeckt wird. Insbesondere bei einer lokalen Liste bedeutet
dies, dass kein 100%iger Spamschutz gewährleistet werden kann. Da es fraglich ist, ob ein
zweites mal Spam vom selben Absender an den jeweiligen Teilnehmer gesendet wird, kann
selbst dieser Eintrag zwecklos werden.
Da serverseitige Blacklists durch Direct-IP-SPIT umgangen werden, kann eine Blacklist
nur auf der Clientseite greifen. Durch das Auslassen der Proxy ist der Spammer nicht mehr
verpflichtet einen gültigen SIP URI anzugeben. Da er in der Lage ist jeden beliebigen Absender einzutragen, kann er nicht durch die Blacklist abgewehrt werden.
Ohne Direct-IP-SPIT lässt sich Blacklisting in gleicher Weise leicht umgehen. Bemerkt
ein Spammer, dass seine E-Mails durch Blacklists abgewehrt werden, legt er sich eine neue
Adresse zu. Da diese Adresse neu und somit für Spam nicht bekannt ist, kann er erneut
Spam versenden. Diese Strategie erfordert jedoch viel Aufwand, weshalb sich der Einsatz
einer Blacklist trotzdem lohnen kann.
4.1.2 Whitelists
Über eine Whitelist wird definiert, von welchem Absender Nachrichten entgegengenommen
werden. Eine ähnliche Liste wie die Whitelist kommt häufig bei speziellen Anlässen zum
Einsatz. Angenommen, ein normaler Bürger versucht auf die Geburtstagsfeier von einem
Prominenten zu gehen. Dann wird er am Eingang nicht mehr weiterkommen, da sein Name
nicht auf der Gästeliste oder Whitelist steht.
Anders als bei der Blacklist, muss der Vermerk in einer Whitelist eingetragen werden,
bevor die Nachricht ankommt. Nur wenn der Teilnehmer auf der Liste steht, wird seine
Nachricht zugestellt.
Zusätzlich zur eigenen Whitelists ist es möglich, die Whitelists ausgewählter Teilnehmer
über sogenannte Vertrauensnetze [TNG-2006, S. 11] heranzuziehen. Insbesondere eignen
sich dafür Teilnehmer, die auf der eigenen Whitelist gelistet sind. Somit werden Nachrichten
von Teilnehmern akzeptiert, denen die eigenen akzeptierten Teilnehmer vertrauen.
Wie das Blacklisting findet das Whitelisting im Voraus statt und erspart somit dem Teilnehmer das klingelnde Telefon. Gleiches gilt für den Rechenaufwand. Da nur ein Adressvergleich notwendig ist, benötigt dieses Verfahren kaum Rechenleistung.
Da der Angreifer keinerlei Kenntnisse über die gelisteten Adressen hat, kann er die Liste mit
vorgetäuschten SIP URI nicht einfach umgehen. Die einzige Lösung für den Spammer bleibt
ein Brute-Force-Angriff , indem er alle möglichen SIP URI ausprobiert. Das ist jedoch sehr
unwahrscheinlich, da für diesen hohen Aufwand zu wenig Spam zugestellt werden kann.
55
Kapitel 4. Abwehrmaßnahmen
Eine Whitelist ist leider etwas zu effektiv. Da der Absender bei Eingang der Nachricht
auf der Liste stehen muss, ergibt sich die Frage nach der initialen Kontaktaufnahme. Beispielsweise kennt ein Bewerber nicht den SIP URI des Personalbeauftragten. Somit kann
dessen Adresse nicht auf der Liste stehen und keine Nachricht von ihm eingehen. Besonders
kritisch sind in diesem Kontext anonyme Anrufe. Entweder können sie gar nicht durchgestellt
werden oder sie bedürfen einer Sonderregelung, die wieder von Spammern ausgenutzt werden
kann. Diese als Einführungsproblem bekannte Schwierigkeit kann durch den Einsatz einer
interaktiven Abwehrmaßnahme gelöst werden. Hier wird vorgeschlagen, solche Teilnehmer
einem Turingtest (vgl. Abschn. 4.3.3, S. 62) zu unterziehen [RFC-5039, S. 10].
Werden die Whitelists von anderen Teilnehmern genutzt, kann ein Angreifer die Whitelists
umgehen [Han-2006, S. 3]. Dafür muss er sich einen gültigen Account beim Betreiber zulegen
und den Zielteilnehmer auf seine eigene Whitelist setzen. Somit kann er die Whitelist dieses
Teilnehmers nutzen, wodurch er die Informationen über diese Liste erhält. Durch die somit
errungenen Adressen kann er Direct-IP-SPIT zustellen.
Der Einsatz von verteilten Whitelists wird jedoch vom europäischen Recht eingeschränkt. Für die Weitergabe der gelisteten Adressen muss die Erlaubnis der betreffenden
Personen vorliegen. Ist dies nicht der Fall, kann somit das Verfahren der verteilten Whitelists
nur eingeschränkt eingesetzt werden.
4.1.3 Graylists
Weniger anschaulich ist die Funktionsweise einer Graylist. Bei einer Graylist wird jeder Kontaktversuch beim ersten mal geblockt. Meldet sich dieser Teilnehmer innerhalb einer festgelegten Zeit erneut, wird unterstellt, dass ein ernsthafter Kontaktversuch vorliegt. Die Adresse
des Teilnehmers wird in die Liste aufgenommen und er kann in Zukunft ohne dieses Verfahren
Kontakt aufnehmen.
Anders als Black- oder Whitelists sind Graylists weniger streng in ihrer Durchführung. Dies
hat Vorteile. Sie ermöglichen anders als Whitelists unbekannten Teilnehmern, ein Telefonat
aufzubauen. Trotzdem sind sie in der Lage Spamversender zurückzuweisen.
Eine Graylist kann durch eine geringe Anpassung der Spambots oder der Anweisungen in
den Callcentern leicht umgangen werden. Wird der Spamversuch beim ersten Anlauf abgewiesen, müssen die Spambots oder Callcenter-Mitarbeiter einen zweiten Versuch initiieren.
Eine Variante der Graylist ist das Consent-Based Communications [RFC-5039, S. 10–
12]. Hier wird der Anruf eines unbekannten Teilnehmers immer abgewiesen. Der Anrufversuch
wird jedoch in der Graylist notiert. Anschließend muss der angerufene Teilnehmer manuell
entscheiden, ob er in Zukunft Anrufe von diesem Teilnehmer erhalten möchte oder nicht. Bis
zu einer manuellen positiven Entscheidung des angerufenen Teilnehmers wird jeder weitere
Kontaktversuch des Anrufers unterbunden.
56
4.1. Identität
4.1.4 Device Fingerprinting
Unter der Annahme, dass die VoIP-Software von Spammern eine andere Implementierung aufweist, wurde das Konzept des Device Fingerprintings [Yan-2006] entwickelt. Die
Vermutung wird darin begründet, dass Spammer mehr Wert auf hohen Durchsatz legen und
deshalb den Programmcode ihrer Spamsoftware (in diesem Fall des UA) klein halten.
Dieses Verfahren versucht, die Spamsoftware zu erkennen. Dafür wird im ersten Verfahren
der Aufbau des INVITE-Request untersucht. Im zweiten Ansatz wird das Verhalten der
VoIP-Software getestet.
Um die Anwendbarkeit dieses Verfahrens zu untersuchen, wurde das Verhalten von 20
verschiedenen Programmen verglichen. Hierbei wurde herausgefunden, dass sich alle 20 Programme unterschiedlich verhalten. Um dies herauszufinden, waren nur wenige Tests notwendig.
Beim Passive Fingerprinting [Yan-2006, S. 5] wird der Aufbau eines empfangenen
INVITE-Request untersucht. Angenommen der Fingerprinter-Dienst hat Kenntnis über den
Aufbau des INVITE-Request-Header aller UA. Dann findet die Klassifikation anhand der
Reihenfolge der Header-Felder statt. Stimmt die Reihenfolge mit der einer bekannten SIPSoftware überein, wird die Nachricht weitergeleitet. Andernfalls wird sie als SPIT deklariert.
Beim Active Fingerprinting [Yan-2006, S. 6–10] wird die kontaktierende VoIP-Software
auf ihr Reaktionsverhalten untersucht. Wie beim Passive Fingerprinting benötigt dafür der
Fingerprinter-Dienst Informationen über das Verhalten bekannter VoIP-Lösungen. Um die
Software auf ihr Antwortverhalten zu testen, werden ihr mehrere OPTIONS-Request Variationen zugesandt. Für jede Nachricht wird die Antwort mit dem Verhalten aller bekannten
VoIP-Lösungen verglichen. Die Requests können die folgenden Eigenschaften haben:
• RFC-Kompatibel.
• Falsche SIP-Version (z. B. SIP/99.9).
• Ungültige Via-Adresse (z. B. via="localhost").
• Falsche Content-Length (z. B. Länge angegeben, aber kein Body enthalten).
• Ungültige CSec (z. B. ohne den Eintrag OPTIONS).
• Fehlende Call-ID (kein Call-ID-Feld).
• Fehler im Transportprotokoll (z. B. UDP verwendet, aber TCP angegeben).
Beide Verfahren überprüfen den Anruf während er eingeht. Somit ist eine Entscheidung
möglich, bevor das Telefon klingelt und der Teilnehmer gestört wird. Das Passive Fingerprinting lässt sich mit geringem Wissen sehr schnell durchführen. Der Aufwand beim Active
Fingerprinting ist durch den zusätzlichen Nachrichtenaustausch zwar etwas höher, aber nach
wie vor schnell zu bewältigen.
57
Kapitel 4. Abwehrmaßnahmen
Wie die Autoren selbst erwähnen [Yan-2006, S. 5], ist das Passive Device Fingerprinting
leicht zu umgehen. Der Angreifer muss den Aufbau seiner Nachrichten nur entsprechend
gestalten, wie es bei einer bekannten Software der Fall ist. Diese Schwäche betrifft aber
ebenfalls das Active Fingerprinting [ElK-2008, S. 45]. Die Spamsoftware muss sich nur wie
eine bekannte VoIP-Lösung verhalten, um nicht entdeckt zu werden.
Besonders problematisch an diesem Verfahren ist, dass es nur anwendbar ist, solange es
begrenzt viele UAs gibt [ElK-2008, S. 45–46]. Bereits eine aktuellere Software-Version hat
unter anderem eine Änderung der Reihenfolge in den Header-Feldern sowie des Antwortverhaltens zur Folge. Da die Vorgängerversionen trotz alledem weiterhin in Betrieb bleiben, erhöht sich somit der Zeit die Anzahl möglicher Kombinationen. Angesichts der großen
Vielfalt an E-Mail-Client-Lösungen ist zu erwarten, dass die Anzahl der SIP-Lösungen in
Zukunft zunehmen wird. Mit der Zeit gibt es somit mehr gültige als ungültige Kombinationsmöglichkeiten, bis es theoretisch nur noch valide Kombinationen gibt.
Das Fingerprinting-Verfahren kann nur serverseitig zum Einsatz kommen, da ein Endkunde
in der Regel nicht aktuell über das benötigte Wissen über valide Clients verfügt.
4.1.5 Reputationssysteme
Wenn eine Nachricht von einem unbekannten Teilnehmer ankommt, ist in der Regel nicht
bekannt, ob es sich um einen normalen Anrufer oder Spam handelt. Um dem Angerufenen eine Entscheidungsgrundlage zu bieten, wurde das Reputationssystem-Verfahren
[Nic-2007][RFC-5039, S. 12–13] entwickelt. Dieses Verfahren kann dem Teilnehmer in Form
einer Bewertung eine Information über den Anrufer auf dem Display angeben.
Die Bewertung der Teilnehmer ergibt sich aus dem Feedback anderer Teilnehmer, die
bereits mit dem Anrufer telefoniert haben. Beispielsweise kann dafür eine Taste vorgesehen
werden, über die der Teilnehmer während oder nach dem Telefonat seine Bewertung abgeben
kann. Die Bewertung kann auf Basis zweier Ansätze geschehen.
Bei einem negativen Feedback werden störende Teilnehmer mit schlechten Wertungen
versehen. Somit weiß der angerufene Teilnehmer, ab einem gewissen Wert, das der anrufende Teilnehmer negativ aufgefallen ist. Eine schlechte Gesamtwertung darf nie auf nur einer
schlechten Wertung basieren, sondern die Meinung mehrerer Teilnehmer wiederspiegeln.
Alternativ dazu kann ein positives Feedback gegeben werden. Hier wird über die Wertung ausgedrückt, dass der Anruf angenommen werden kann, da er bisher nicht negativ
aufgefallen ist. Dieses Verfahren kommt hauptsächlich beim Instant Messaging (IM) zum
Einsatz.
Eine Bewertung über einen Teilnehmer bietet anderen Teilnehmern ein subjektives Kriterium, welchen Anrufern vertraut werden kann. Da der Kunde selbst eine Bewertung abgeben kann, ist der Mechanismus für ihn transparent.
58
4.2. Inhalt
Beim IM kommt durch die Freundeslisten eine Whitelist zum Einsatz. Dieser Umstand
kann als automatische Bewertung integriert werden. Teilnehmer auf der Freundesliste sind
in der Regel solche, denen ein Teilnehmer vertraut. Ähnlich wie bei Whitelists können die
Freundeslisten der Freunde mitbewertet werden. Dadurch kann eine automatische Bewertung
erzielt werden, die den sozialen Netzwerken entspricht.
Reputationssysteme mit negativen Bewertungen haben dieselben Schwächen wie Blacklists.
Effektiv bedeutet eine sehr negative Bewertung dasselbe wie auf einer Blacklist zu stehen.
Weiterhin muss ein Teilnehmer sehr gestört werden, bis er die Bewertungstaste nutzt. Um
das Konzept zu unterwandern haben sich sogenannte Reputations Mafias [RFC-5039, S. 13]
gebildet. Dort sammeln sich viele Teilnehmer, um in der Masse einen anderen Teilnehmer
zu bewerten. Diese versuchen entweder eine Bewertung zu maximieren (Ballot Stuffing) oder
zu minimieren (Bad Mouthing) [Del-2000, S. 2]. Das Konzept der Bewertung wird somit
unwirksam.
Basiert die Bewertung auf einem positivem Feedback, ergibt sich ein Problem mit neuen
Teilnehmern. Da diese bisher nicht bewertet sind, haben sie keine gute Wertung. Um dieses Problem zu umgehen, kann eine Art Schutzmechanismus für neue Mitglieder eingeführt
werden. Das bewirket, dass neue Teilnehmer als solche gekennzeichnet sind und somit für
andere Teilnehmer die fehlende gute Bewertung transparent wird. Diesen Umstand können
Spammer jedoch für sich ausnutzen.
Reputationssysteme können jedoch nicht als SPIT-Abwehrmaßnahme angesehen werden,
da eine Bewertung erst einsehbar wird, sobald das Telefon klingelt. Es kann trotzdem als gute
Ergänzung genutzt werden, um mit Anrufern umzugehen, die durch andere Maßnahmen nicht
klassifiziert werden konnten.
4.2 Inhalt
Viele der im E-Mail-Spam-Bereich eingesetzten Ansätze basieren darauf, Spam am Inhalt
einer Nachricht zu erkennen. Manche Autoren sind sogar der Ansicht, dass das Filtern des
Nachrichteninhalts bis heute der einzige gut funktionierende Schutzmechanismus ist
[Ble-2005, S. 478]. Der Inhalt der Nachricht wird auf verschiedene Eigenschaften untersucht.
Anhand einer Klassifikation wird anschließend entschieden, ob die Nachricht normal zugestellt
wird oder andere Maßnahmen getroffen werden.
Leider ist dieses Verfahren im SPIT-Bereich vollkommen nutzlos. Für die Untersuchung von SPIT kommen zwei Szenarien in Frage [RFC-5039, S. 8].
1. Untersuchung des laufenden Telefonats: Das Untersuchen des laufenden Telefonats auf SPIT kann erst stattfinden, wenn das Telefonat durchgestellt wurde. SPIT
muss jedoch erkannt werden, bevor der Teilnehmer gestört wird.
59
Kapitel 4. Abwehrmaßnahmen
2. Zwischenspeichern der Nachricht: Bevor ein Teilnehmer eine Nachricht erhält,
kann diese zwischengespeichert werden. Dies kann beispielsweise in Form eines Anrufbeantworters realisiert werden. Die gespeicherte Nachricht kann dann untersucht
und anschließend weitergeleitet werden. Dieser Ansatz ist für normale Gespräche nicht
umsetzbar, da hiermit nur eine unidirektionale Kommunikation möglich ist.
Selbst wenn einer der beiden Ansätze verfolgt wird, ist die Erfolgschance eher gering. Der
Spammer muss nur genügend Hintergrundgeräusche, mit Akzent oder schlechtem Deutsch
senden und die automatische Untersuchung gestaltet sich nach heutigen Maßstäben als zu
schwierig.
4.3 Interaktiv
Die große Verbreitung des Spams liegt an den geringen Kosten für den Versand. Mit interaktiven SPIT-Abwehrmaßnahmen wird erreicht, dass diese Kosten steigen. Auf diese Weise
wird SPIT eingedämmt [Sis-2009, S. 307].
Dies wird erreicht, indem der Spammer gezwungen wird, rechenintensive Aufgaben zu lösen
oder Geld zu bezahlen. Diese können idealerweise den identitätsbasierten Abwehrmaßnahmen
nachgeschaltet werden, um SPIT zu erkennen, der durch diese Verfahren nicht erkannt wird.
4.3.1 Intrusion Detection
Ein Intrusion Detection Mechanism [ElB-2006] ist ein System, mit dem das Teilnehmerverhalten innerhalb eines Netzwerks überwacht werden kann. Mit diesem System können
verschiedene Angriffe erkannt werden. Beispielsweise äußert sich ein Scan-Angriff durch
eine große Anzahl angesprochener Ziele. Um einen Angriff zu klassifizieren, werden gewisse
Eigenschaften definiert und in eine CPT eingetragen.
In einer CPT sind neben den Eigenschaften eines normalen Anrufs, die Eigenschaften
verschiedener Angriffe eingetragen. Die Autoren definieren sieben Eigenschaften zur Charakterisierung der Angriffe.
• Anzahl der Requests.
• Anzahl der 4xx- bis 6xx-Responses.
• Anzahl unterschiedlicher Ziele.
• Maximale Anzahl an Dialogen im Wartestatus.
• Anzahl offener Ports.
• Die Verteilung der Request-Methoden.
60
4.3. Interaktiv
• Die Verteilung der Response-Codes.
Beispielsweise wird bei der CPT für die Verteilung der Request-Methoden die prozentuale Verteilung ausgewählter Request-Methoden eingetragen (vgl. Tab. 4.1, S. 61). Hier ist
bei SPIT besonders auffällig, dass im Verhältnis zur Gesamtheit aller Nachrichten, keine
REGISTER- und CANCEL-Requests vorkommen.
Request
INV
REG
ACK
CAN
BYE
Normaler Anruf
0,30
0,10
0,30
0,10
0,10
Scan-Angriff
0,40
0,05
0,40
0,10
0,05
SPIT
0,40
0,00
0,40
0,00
0,20
Denial of Service (DoS)
0,90
0,10
0,00
0,00
0,00
Passwort Cracking
0,10
0,40
0,40
0,00
0,00
Firewall Traversion
0,40
0,00
0,40
0,00
0,20
Tab. 4.1: CPT für die Request-Methoden-Verteilung [ElB-2006, S. 5].
Mit einer guten Eigenschaftsdefinition ließe sich SPIT effektiv serverseitig abwehren. Außerdem ist dieses Verfahren nicht nur auf die SPIT-Bekämpfung beschränkt, sondern kann
vielmehr generell für die Sicherheit eingesetzt werden.
Die große Schwierigkeit besteht in der Erstellung der CPT. Da für SPIT noch keine empirischen Werte vorliegen, existieren noch keine realen Verhaltensmuster. Die von den Autoren vorgeschlagenen Werte (vgl. Tab. 4.1, S. 61) erscheinen zwar schlüssig, entspringen
jedoch keiner empierischen Untersuchung. Insbesondere muss es eine Möglichkeit geben, legale Call-Center vor einer negativen Bewertung zu schützen. Andererseits muss
eine Möglichkeit existieren, sogenannte schwarze Schafe“ unter den legalen Call-Centern zu
”
erkennen.
Desweiteren kann der Angreifer das Verhalten seiner Bots anpassen [ElK-2008, S. 52]. Im
obigen Beispiel (vgl. Tab. 4.1, S. 61) bedeutet das, dass die Bots sich gelegentlich neu regestrieren und manche Anrufversuche durch einen CANCEL-Request abbrechen. Der Durchsatz
des Spammers wird sich dadurch zwar senken, ist aber schwerer zu entdecken.
4.3.2 Payments at Risk
Payments at Risk [Aba-2003] ist ein Ansatz aus der E-Mail-Spam-Bekämpfung. Dieser Ansatz
kann auf Voice over IP (VoIP) übertragen werden [RFC-5039, S. 17–18]. Möchte beispielsweise
Alice Bob anrufen, überweist sie einen kleinen Geldbetrag auf sein Konto. Bestätigt Bob
den Anruf im Nachhinein als normal, erhält Alice ihr Geld zurück. Markiert Bob den Anruf
als SPIT, behält er den Betrag.
61
Kapitel 4. Abwehrmaßnahmen
Payment at Risk kann der Lösung des Einführungsproblems einer Whitelist dienen.
Ein genereller Einsatz zieht zu viele Transaktionen nach sich und bringt keinen Mehrwert. Ist
ein Teilnehmer auf der Whitelist, gibt es in der Regel keinen Grund mehr, ihm zu misstrauen.
Zur Durchführung des Payment at Risk ist seitens des Anrufers kein Aufwand nötig. Einzig
der angerufene Teilnehmer muss anschließend eine Bewertung abgeben.
Ob der Anruf SPIT enthält, kann erst festgestellt werden, nachdem das Telefonat begonnen
wird. Somit kann hiermit der initiale SPIT nicht verhindert werden.
Anders als die bisherigen Ansätze ist dieses Verfahren besonders kritisch zu betrachten,
wenn der SPIT von einem sogenannten Zombie“-Rechner gesendet wird. Mit Payment at
”
Risk muss der Eigentümer des Rechners für die Zahlung aufkommen.
4.3.3 Turingtests
Den Turingtest hat Alan M. Turing [Tur-1950] im Jahr 1950 entwickelt. Mit ihm sollte die
Frage geklärt werden, ob es möglich ist, Maschinen und Menschen über ein Frage-AntwortSpiel zu unterscheiden. Beim Test muss ein Fragesteller anhand der Antworten herausfinden,
ob eine Maschine oder ein Mensch antwortet. Kann er beide nicht unterscheiden, ist der Test
bestanden.
Abb. 4.2: Ein Beispiel für ein bildbasiertes CAPTCHA.
Um das Einführungsproblem der Whitelists zu lösen wurde der Einsatz von Completely Automated Public Turing Tests to Tell Computers and Humans Apart (CAPTCHAs)
[Ahn-2003] (vgl. Abb. 4.2, S. 62) vorgeschlagen [Tsc-2008]. Bei einem CAPTCHA wird dem
aufrufenden Teilnehmer eine Aufgabe gestellt, die er lösen muss. Diese Aufgabe muss derart konzipiert sein, dass sie leicht vom Menschen aber schwer vom Computer lösbar ist.
Bei VoIP kommen akustische CAPTCHAs zum Einsatz. Beispielsweise muss der Teilnehmer
die genannten Ziffern in sein Telefon eingeben. Um eine automatische Spracherkennung zu
verhindern, werden Störgeräusche oder Musik eingespielt.
Es gilt als sehr vielversprechender Ansatz, Probleme aus der Künstlichen Intelligenz (KI)
auf Probleme der Internet Protocol Security (IPsec) anzuwenden. Schließlich ist es unmöglich,
dass Bots Probleme lösen, die bisher in der KI ungelöst sind. Hätte der Spammer doch die
Fähigkeiten, solche Bots zu programmieren, wäre er nicht mehr auf das Geld durch Spam
angewiesen.
Der Einsatz von CAPTCHAs schützt jedoch nur vor Bots. Wird der SPIT über ein
Call-Center vertrieben, ist dieser Ansatz wirkungslos.
62
4.3. Interaktiv
Dienst
Nutzer
Spammer
Starten der Malware
Zugriff auf den Dienst
CAPTCHA
CAPTCHA
Lösung
Lösung
Zugang erteilt
Abb. 4.3: Umgehung eines CAPTCHAs.
Von Trend Micro wurde eine CAPTCHA-Relaytechnik entdeckt [Ord-2007]. Für die
Lösung der CAPTCHAs wurde Malware verteilt. Diese Malware beinhaltet ein Spiel. Der
Nutzer musste in diesem Spiel CAPTCHAs lösen. Für jeden erfolgreich beantworteten CAPTCHA kam der Spieler eine Stufe weiter. Der Trick war, dass dem Nutzer CAPTCHAs von
echten Internetseiten vorgelegt werden. Seine Lösung wird anschließend zum Umgehen des
CAPTCHAs genutzt (vgl. Abb. 4.3, S. 63).
Diese Anwendung ließe sich leicht auf ein VoIP-Szenario übertragen. Angenommen der
Angreifer hat eine gut genutzte kostenpflichtige Hotline. Dann kann er dort die akustischen
CAPTCHAs wiedergeben und die dortigen Kunden lösen die Aufgaben.
4.3.4 Computational Puzzles
Für die Abwehr von SPIT wird der Einsatz von sogenannten computational Puzzles vorgeschlagen [RFC-5039, S. 17]. Hierbei wird dem UAC eine Aufgabe gesendet, die dieser beantworten muss und an den UAS oder Proxy zurücksendet. Diese Aufgabe ist derart konzipiert,
dass sie von keinem Menschen gelöst werden kann. Zusätzlich muss es aufwendig genug
sein, um den Durchsatz des Spammers zu senkt und somit seine Kosten zu steigern.
Bei diesem Verfahren handelt es sich jedoch nicht um eine SPIT-Abwehrmaßnahme.
Selbst wenn der Anruf von einem Spammer kommt, wird er durchgestellt. Deshalb werden
Computational Puzzles in dieser Arbeit nicht weiter betrachtet.
4.3.5 Honeypots
Spam funktionert, weil die Kosten pro durchgesetzter Nachricht sehr gering sind. Mit Hilfe von Honeypots wird versucht, diesen Durchsatz zu senken. Wenn die Spammer weniger
durchsetzen, lohnt es sich eventuell ihn nicht mehr.
Zusätzlich ist es mit Honeypots möglich herauszufinden, woher das Spam stammt. Diese
Informationen können anschließend in einer Blacklist vermerkt werden. Befindet sich der
63
Kapitel 4. Abwehrmaßnahmen
Spammer in einem Land mit gültigem Anti-Spam-Gesetz kann er rechtlich zur Verantwortung
gezogen werden.
Um diese Funktionen zu realisieren, werden viele solcher Honeypot-Server im Netz verteilt.
Sie bearbeiten eingehende Requests möglichst langsam. Dadurch werden die Ressourcen der Spammer gebunden und der Durchsatz sinkt. Jede Verbindung wird protokolliert,
sodass anschließend nach Spam-Quellen für die Blacklists gesucht werden kann.
Es bleibt die Frage zu klären, wie ein Spammer in einen Honeypot geleitet werden kann. Die
Grundidee des Honeypot-Verfahrens ist analog zum Prinzip vom Bären und dem Honigtopf.
Der Bär (Spammer) sucht, anders als die anderen Tiere, gezielt nach Honig (Adressen). Aus
diesem Grund werden die Adressen der Honeypots großflächig im Internet verteilt. Um zu
verhindern, dass normale Teilnehmer diese Adressen nutzen, werden sie im Browser nicht
dargestellt. Nur die auf HTML-Code-Ebene arbeitenden Harvester können sie erreichen.
4.4 Präventiv
Präventive Maßnahmen dienen eigentlich nicht der Abwehr, sondern der Vorbeuge. Sie verhindern im Voraus, dass SPIT aufkommt. Dies wird erreicht, indem das Sammeln oder
Validieren der URI erschwert wird.
4.4.1 Adressen verbergen
Da SIP URI dieselbe Syntax haben wie eine E-Mail-Adresse, können die Bots diese ohne
große Modifikationen zusätzlich sammeln. Bisher ist unklar, ob Bots dies nicht schon längst
tun. Gleiches gilt für das Sammeln von Telefonnummern.
Dies wirkt zunächst nachteilig. Eine gemeinsame Syntax ermöglicht jedoch auch die
Nutzung der Vorteile. SIP URI können dadurch auf die gleiche Weise vor Harvestern versteckt
werden, wie E-Mail-Adressen. Es ist zu erwarten, dass auch der Erfolg derselbe ist.
Es ist wichtig, dass der SIP URI nach wie vor für den Menschen gut leserlich bleibt.
Nur Bots dürfen sie nicht lesen können. Internetseiten werden von den Harvestern auf der
Ebene der Hypertext Markup Language (HTML) [W3C-1999][W3C-2001] durchsucht. Die
Schreibweise eines Textes in HTML ist aber nicht identisch mit dem, was der Teilnehmer
sieht.
Die Adresse kann im HTML-Code in Form von Unicode-Zeichen hinterlegt werden.
Da das @-Symbol für die Harvester das wichtigste Merkmal ist, muss zumindest dieses als
&#064; [Dix-2008, S. 7][CDT-2003, S. 2] codiert werden. Eine Modifikation der Harvester
dahingehend, dass sie Unicode-Zeichen übersetzen, ist jedoch kein großer Aufwand.
64
4.4. Präventiv
Schreibweise
Zu den beliebtesten Verfahren, eine Adresse für einen Bot unlesbar zu machen, zählt die
Änderung der Schreibweise. Da SIP URI dieselbe Syntax wie E-Mail-Adressen haben, kann
davon ausgegangen werden, dass derselbe Nutzen erzielt wird [RFC-5039, S. 14]. Nehmen
wir an, der zu sichernde URI lautet sip:[email protected]. Man kann diese Adresse z. B. wie
folgt umschreiben:
• sip:bob[at]biloxi.com.
• sip[doppelpunkt]bob[at]biloxi.com.
• s i p : b o b @ b i l o x i . c o m.
Die Änderung der Schreibweise bewirkt einen Schutz vor dem automatischen Finden durch
Bots. Ein SIP URI kann an zwei Merkmalen erkannt werden.
1. Das sip:-Präfix.
2. Dem @-Zeichen.
Diese Suchweise muss gestört werden. Bei der ersten Schreibweise wird nur das @-Zeichen
durch die Zeichenkette [at]“ ersetzt. Dieses sehr verbreitete Vorgehen verhindert jedoch
”
nicht, dass der Bot diese Adresse sammelt, da das Präfix vorhanden bleibt. Der SIP URI
ist zwar durch die Ersetzung des @-Zeichens ungültig, dieser Fehler kann jedoch durch den
Einsatz von Grammatiken korrigiert werden.
Eine Erweiterung der ersten Schreibweise ergibt sich aus der Entfernung des Präfixes.
Analog zum @-Zeichen kann dies wie im zweiten Fall durch die Zeichenkette [doppelpunkt]“
”
geschehen. Dieses Verfahren bleibt jedoch vor regulären Ausdrücken ungeschützt.
Um den SIP URI vor regulären Ausdrücken zu schützen, empfiehlt es sich die Bestandteile
des SIP URI mit ertkeerzeichen separiert zu schreiben. Ein Bot kann die Leerzeichen entfernen
und das @-Zeichen sowie das Präfix umwandeln. Da er jedoch nicht weiß, wo der URI beginnt
und aufhört, ist das nicht praktikabel. Wenn nur ein Buchstabe zu viel oder zu wenig in die
Zeichenkette eingefügt wird, ist sie ungültig.
Problematisch ist bei allen bisherigen Schreibweisen, dass sie nicht für blinde Teilnehmer
geeignet sind. Da die Barrierefreiheit des Internets nicht reduziert werden darf, können die
genannten Schreibweisen nicht zur Anwendung kommen. Selbst ohne die Berücksichtigung
von blinden Teilnehmern ist es Möglich, dass manche Internetbenutzer die Ersetzung der
Sonderzeichen nicht verstehen. Aus diesem Grund sind in der letzten Schreibweise die Sonderzeichen nicht ersetzt. Dafür sind alle Zeichen durch Leerzeichen getrennt. Somit bleiben
sie für jeden Menschen gut lesbar und aufgrund der oben genannten Problematik für Bots
nicht erkennbar.
65
Kapitel 4. Abwehrmaßnahmen
JavaScript
Für dieses Verfahren wird die Tatsache genutzt, dass Bots in der Regel nur auf der Textebene arbeiten. Die Konsequenz daraus ist, dass dieses Verfahren nicht darin besteht, die
Adresse im Text zu verbergen. Mit der Unterstützung von JavaScript bietet HTML eine
solche Möglichkeit.
Die Adresse wird erst durch die Ausführung eines JavaScript-Skripts [Wes-2007] zusammengesetzt (vgl. Notation 4.1, S. 66). Der größte Vorteil an diesem Verfahren ist, dass die
hierdurch erzeugten Adressen verlinkt werden können. Selbst wenn ein Bot den JavaScriptCode liesst, kann er die Adresse darin nicht finden.
< script language = " JavaScript " type = " text / javascript " >
var username = " bob " ;
var hostname = " biloxi . com " ;
documte . write ( " <a href = " + " mail " + " to : " + username + " @ " +
hostname + " >" + username + " @ " hostname + " <\/a > " ) ;
</ script >
Notation 4.1: Adresse mit JavaScript verbergen.
Der Einsatz von JavaScript zur Verbergung der Adresse hat jedoch Nachteile. Aus Sicherheitsgründen wird Anwendern oft empfohlen, die JavaScript-Unterstützung in ihren Browsern zu deaktivieren. Ist JavaScript deaktiviert, ist der Nutzer nicht mehr in der Lage
die Adresse zu lesen. Hinzu kommt, dass die Bots nach wie vor angepasst werden können.
Der Aufwand dafür ist zwar beträchtlich größer, aber bei geeigneter Verbreitung wird diese
Funktion mit großer Wahrscheinlichkeit in die Bots integriert werden.
Bilder
Adressen können nicht langfristig unter Einsatz von Webtechnologien geschützt werden. Das
gilt für alle Maßnahmen, die Adressen mittels einer Technik präsentieren, die ein Browser
inhaltlich versteht. Egal wie aufwendig das eingesetzte Verfahren ist, müssen die Bots nur
das lernen, was Browser heute schon können. Um die Adressen wirklich effektiv vor den Bots
zu verbergen, darf keine Webtechnologie eingesetzt werden.
Aus diesem Grund empfiehlt es sich, die Adressen in eine Art Umschlag zu packen. Dieser
wird vom Browser nur gezeigt, kann aber nicht von ihm verstanden werden. Hierfür eignet
sich insbesondere der Einsatz von Bildern.
Anstelle einer textuellen Adresse wird ein Bild gezeigt, auf dem eine Adresse zu lesen
ist. Natürlich kann Text durch den Einsatz von Optical Character Recognition (OCR) aus
Bildern erkannt werden. Ein Spammer kann das Bild herunterladen und mit einem OCR-
66
4.4. Präventiv
Programm auslesen. In naher Zukunft dürfte solch ein Verhalten allerdings nicht zu erwarten
sein. Grundsätzlich stellen sich dem Spammer bei einem solchen Vorgehen die folgenden
Probleme:
1. Weiß er nicht, in welchem Bild die Adresse ist, muss er demnach alle Bilder der Internetseite herunterladen und analysieren. Da Bilder zu den größeren Inhalten einer
Internetseite gehören, bedeutet dies ein sehr großes Downloadvolumen.
2. Der Spammer muss alle Bilder nach möglichen Adressen durchsuchen. Durch die große
Masse an Bildern benötigt dieser Vorgang sehr viel Rechenzeit und -leistung.
Die Probleme beruhen auf Einschränkungen in der Leistung, einerseits des Internetzugangs,
andererseits des verarbeitenden Computers. Moores Law [Moo-1965] sagte alle 18 Monate eine
Verdopplung der Rechenkapazität voraus. Da dieses Gesetz ungebrochen scheint [Sch-1997,
S. 59], handelt es sich nur um einen Vorteil auf Zeit. Aber anders als bei textuellen Lösungen
kann dieses Verfahren weiter erschwert werden.
sip:[email protected]
Abb. 4.4: Explosionsskizzenbeispiel einer Bild-Adresse aus mehreren Teilen.
Für diese Steigerung wird das Bild mit dem Text in mehrere Teile getrennt (vgl.
Abb. 4.4, S. 67). Das Bild sollte derart unterteilt werden, dass die Buchstaben geteilt sind.
Daraus ergeben sich mehrere Vorteile gegenüber der Variante mit einem ganzen Bild.
1. Der Bot muss auf der Internetseite die Bilder herausfinden, die zum Adressbild gehören.
2. Er muss die korrekte Reihenfolge der Bilder herausfinden.
Möchte mit dieser Erweiterung ein Spammer die Adresse sammeln, benötigt er viele Zusatzinformationen und entsprechende Ressourcen. Dieses Verfahren funktioniert nur, weil der
Gesetzgeber keine Verlinkung der Adresse vorschreibt [BMJ-2008b, § 5 Abs. 1].
4.4.2 Adressen streuen
Nutzt ein Teilnehmer nur eine Adresse, kann er leicht Opfer von SPIT werden [CDT-2003,
S. 3]. Dies liegt daran, dass er bei jeder Aufforderung genau diese Adresse eingeben muss.
67
Kapitel 4. Abwehrmaßnahmen
Durch die hohe Verteilung dieser Adresse ist es für Spammer leichter, auf sie aufmerksam
zu werden. Wird ein Spammer auf diese Adresse aufmerksam, bleibt sie ein valides Ziel von
SPIT.
Fiktive Adressen nutzen
Die Eingabe einer fiktive Adresse ist ein sehr effektives Mittel, um selbst kein Spam zu erhalten. Diese Vorgehensweise ist jedoch nicht empfehlenswert und es wird davon abgeraten.
Selbst wenn die Adresse nur ausgedacht ist, kann es trotzdem vorkommen, dass diese
Adresse vergeben ist. Das Spam wird entsprechend an einen unbekannten Dritten zugestellt,
der davon nichts weiß.
Im schlimmsten Fall gibt der Versender des E-Mail-Spam eine nicht existente Adresse
als Absender an. Existiert die angesprochene fiktive Adresse nicht, kann es zu Endlosschleifen
zwischen den beteiligten Mailservern kommen. Beide Server versuchen, sich dann gegenseitig
die Fehlermeldungen zuzustellen [Egg-2005, S. 38].
Spam Sammeldienste nutzen
Bei manchen Internetseiten ist oft im Voraus klar, dass die Angabe einer Adresse Spam zur
Folge hat (z. B. Gewinnspiele). Da aber einige Dienste ohne die Angabe der E-Mail-Adresse
oft gar nicht nutzbar sind, muss eine Adresse angegeben werden. Aus dieser Motivation
wurden Spam Sammeldienste entwickelt.
Der Betreiber eines solchen Dienstes bietet dem Nutzer kostenlos beliebige Adressen. Diese Adressen können auf spamverdächtigen Seiten eingetragen werden. Kommt anschließend
Spam ist das nicht schlimm, da die Adresse keinen weiteren Nutzen hat als Spam zu sammeln.
Teilweise müssen die Adressen nicht registriert werden und sind ohne Passwort zugänglich
[Man-2009]. Da ohne Passwortschutz jeder beliebige Teilnehmer auf die Adresse zugreifen
kann, können auch Dritte diese lesen. Um dem vorzubeugen, können alternative Adressen angeboten werden. Anstatt [email protected] kann die alternative Adresse M8R-rmtci4@
mailinator.com eingetragen werden. Alle E-Mails, die an die alternative Adresse gesendet
werden, landen im Postfach der Originaladresse.
Manche Portalanbieter wollen nicht, dass sich ein Teilnehmer mit einer solchen Adresse
registriert. Aus diesem Grund filtern sie die Domains von bekannten Sammeldienstanbietern
und sperren sie für die Registrierung. Als Reaktion darauf bieten manche Anbieter alternative Domainnamen an. Sie werden anstelle der eigentlichen Hauptdomain angegeben,
verweisen jedoch auf dasselbe Postfach.
68
4.4. Präventiv
Limited-Use-Adressen nutzen
Verwendet ein Teilnehmer nur eine E-Mail-Adresse, ist nicht nachvollziehbar, wo das Spam
herkommt. Somit kann keine Quelle identifiziert werden, die für das Spam verantwortlich
sein könnte.
Da E-Mail-Adressen meistens kostenfrei sind, kann jeder Teilnehmer mehrere Adressen
anmelden und diese entsprechend verwalten [RFC-5039, S. 14–15]. Somit lassen sich mehrere
Verhaltensweisen realisieren.
• Eine Adresse pro soziale Gruppe (Firma, Universität, Freundeskreis).
• Eine Adresse pro Teilnehmer.
• Zeitlich beschränkt gültige Adressen.
Wenn eine spezielle Adresse nur für eine bestimmte soziale Gruppe gültig ist, muss im
Spamfall nur ein Teil der E-Mail-Nutzung eingestellt werden. Kommt das Spam von
Firmamenkontakten, sind nach einer Deaktivierung der Adresse die Freunde oder Kommilitonen nach wie vor in der Lage Nachrichten zu senden. Nur die Kollegen müssen neu informiert
werden.
Wird dieses Konzept auf die Spitze getrieben, erhält jeder Teilnehmer eine eigene Adresse.
Dadurch ist im Spamfall nur der entsprechende Teilnehmer betroffen, der das Spam verursacht
hat.
Für die Nutzung bei Gewinnspielen und dergleichen kann es sinnvoll sein, zeitlich beschränkt gültige Adressen anzulegen. Diese können ohne Schwierigkeiten bei Gewinnspielen etc. eingetragen werden. Beispielsweise werden diese Adressen quartalsweise deaktiviert
und durch neue Adressen ersetzt.
Wenn jede Adresse nur begrenzt weitergegeben wird, kann die Spamquelle genauer bestimmt werden. Die Spamzustellung kann sehr effektitv unterbunden werden, indem die betroffene Adresse wieder deaktiviert wird.
Da die weitergegebene Adresse ungültig wird, sobald Spam eintrifft, kann eine soziale
Gruppe oder ein Teilnehmer keine Nachrichten mehr zustellen. Insbesondere wenn die Adresse
für eine soziale Gruppe war, muss sehr vielen Teilnehmern eine neue Adresse bekannt
gegeben werden.
Mit steigender Granularität der Adressverteilung, steigt der Aufwand den Überblick zu
behalten. Was für Adressen gibt es, wohin wurden sie publiziert? Die Verwaltung dieser
Zusammenhänge kann bei vielen Teilnehmern sehr umständlich und den Aufwand nicht Wert
sein. Zur Lösung dieses Problems, wird die Verwendung eines Presence-URI vorgeschlagen
[RFC-5039, S. 15]. Ein Presence-URI ermöglicht den Zugriff auf den aktuellen Presence-Status
des betroffenen Teilnehmers. Bevor ein Teilnehmer eine Nachricht senden will, fragt er über
den Presence-URI die Adresse des Teilnehmers ab, unter der er gegenwärtig zu erreichen ist.
69
Kapitel 4. Abwehrmaßnahmen
4.4.3 Teilnehmerverhalten
Um SPIT zu verhindern, sind nicht unbedingt algorithmische Lösungen notwendig. Die besten
Schutztechniken haben keinen Effekt, wenn die Nutzer sich unvorsichtig verhalten. Diese
Nachlässigkeit beruht nicht auf Absicht, sondern oft auf Unwissen.
Grundsätzlich besteht die Gefahr, dass gültige E-Mail-Adressen in gültige SIP URI umgewandelt werden können. Beispielsweise wird die Adresse [email protected] mit ziemlicher
Sicherheit beim Session Initiation Protocol (SIP) unter sip:[email protected] ebenfallls eingesetzt werden. Aus diesem Grund wird hier auf Maßnahmen eingegangen, die nur auf E-Mails
anwendbar sind.
Wahl der Adressen
Zunächst erscheint die Art oder der Aufbau der Adresse als irrelevant. Untersuchungen
[CDT-2003, S. 3–4] haben jedoch ergeben, dass kurze URI mehr Spam erhalten. Insbesondere solche Adressen, die aus einem Wörterbuch entnommen sind oder aus einem Akronym
bestehen, erhalten besonders viel Spam.
Abgesehen von der Länge der Adresse ist die Einfachheit ein wichtiges Kriterium.
Wie bereits erwähnt, sind sie besonders anfällig, wenn sie über einen Wörterbuchangriff zu
erreichen sind. Dies gilt ebenfalls für eine Aneinanderreihung von solchen Wörtern. Analog
zu einem guten Passwort, darf eine spamsichere Adresse nicht zu nah an einem echten Wort
oder Satz sein und möglichst Sonderzeichen und Zahlen enthalten.
Adressen nicht unachtsam verteilen
Viele Anwender geben ihre Adressen freiwillig in die Hand potenzieller Spammer.
Ein sehr beliebtes Mittel dazu ist die Aussicht auf einen Gewinn bei einem Gewinnspiel. Der
Nutzer kann nur am Gewinnspiel teilnehmen, wenn er seine personenbezogenen Daten angibt.
Momentan ist die E-Mail-Adresse und die Festnetznummer oft gefragt. Je verbreiteter SIP
sein wird, je wahrscheinlicher wird in Zukunft zusätzlich nach dem SIP URI gefragt werden.
Insgesamt ließen sich die folgenden Orte identifizieren und gruppieren, an denen Nutzer ihre
Adresse freiwillig bekannt geben:
• Foren und Gästebücher.
• Gewinnspiele, Newsletter und Messestände.
• Internetseiten und soziale Netzwerke.
• Homepage-Empfehlungen und Grußkarten.
In vielen Foren und Gästebüchern ist es verpflichtend seine Kontaktdaten zu hinterlegen.
Nach Möglichkeit müssen diese vor der Einsicht Dritter unzugänglich gemacht werden. Hier
70
4.4. Präventiv
ist das ohne große Schwierigkeiten möglich, da das Verbergen der Adresse die Nutzung der
Plattform nicht beeinträchtigt.
Bei der Teilnahme an einem Gewinnspiel sieht dies etwas anders aus. Hier wird dem Teilnehmer ein Gewinn in Aussicht gestellt, wenn er seine personenbezogenen Daten preisgibt.
Ähnlich verhält es sich an einem Messestand oder beim Abonnement eines Newsletters, auf
dem Teilnehmer ihre Daten angeben können. Der potenzielle Gewinn steht jedoch in
keinem Verhältnis zum Risiko, dass eingegangen wird. Entweder muss das Ausfüllen solcher Bögen unterlassen werden, oder es sollten Limited-Use-Adressen angegeben werden. Das
größte Problem an dieser Quelle ist, dass rechtlich gesehen die Erlaubnis zum Zusenden
von Nachrichten erteilt ist [Egg-2005, S. 33]. Subjektiv wird es als Spam empfunden,
jedoch rechtlich als angefordert und somit gewollt definiert.
Wie bereits beschrieben, ist die Angabe einer Adresse, auf einer Internetseite ein Risiko.
Internetseiten werden hauptsächlich von Spammern durchsucht und somit ist die Gefahr
Spam zu erhalten sehr groß. Kritischer ist die Angabe in einem sozialen Netzwerk. Hier
können einige präventive Schutzmaßnahmen nicht eingesetzt werden. Viele Nutzer
fühlen sich in sozialen Netzwerken sicher, da diese nur für Mitglieder einsehbar sind. Sich bei
einem sozialen Netzwerk anzumelden, ist jedoch kein Hindernis für einen Spammer.
Eine der gefährlichsten Quellen sind elektronische Grußkarten. Eine Person erstellt auf einer Internetseite eine Grußkarte und lässt diese an andere Personen schicken. Ähnlich verhält
es sich, wenn ein Freund auf einer dubiosen Internetseite über Einem Freund empfehlen“ die
”
Adresse eingibt. Gefährlich hieran ist, dass der Empfänger der Grußkarte nichts gegen den
Spam tun kann, da er selbst die Adresse nicht veröffentlicht hat.
Umgang mit Adressen von Dritten
Ist die eigene Adresse in den Verzeichnissen von Spammern, hat man keinen Einfluss mehr
darauf, wer sie bekommt. Hierzu muss die Adresse nicht zwingendermaßen in den Händen
dubioser Gesellschaften oder Personen sein. Manche Harvester werden in Form eines Trojaners
auf den Computer eines Nutzers platziert. Dort untersuchen sie das Adressbuch und das
Postfach nach Adressen.
Das Adressbuch ist sicherlich kein Punkt, in dem Adressen reduziert werden können. Aber
das Postfach ist oft eine sehr gute Quelle für Adressen. Viele Anwender versenden Rundmails
an eine ganze Liste von Personen. Diese Liste ist für jeden Empfänger sichtbar und somit
vom Harvester aus dem Postfach auslesbar.
Das Oberlandesgericht Düsseldorf hat ein Urteil [OLG-2006] ausgesprochen, indem einer
Angeklagten untersagt wird, Newsletter direkt an alle Empfänger zu senden. Aus Gründen des
Datenschutzes und der Sicherheit ist es notwendig, die Empfänger per BCC zu adressieren.
Wird dem genüge getan, können Spammer weniger Adressen über die Postfächer sammeln.
71
Kapitel 4. Abwehrmaßnahmen
4.4.4 Umgang mit empfangenem Spam
Jeder Teilnehmer muss vorsichtig mit eingegangenem Spam umgehen. Dies betrifft zwar vorrangig E-Mail-Spam und Spam over Instant Messaging (SPIM), trotzdem kann eine bestätigte
Adresse auch für SPIT genutzt werden. Im Falle von SPIM sogar direkt, da es sich um einen
SIP URI als Ziel handelt.
Deshalb dürfen Nachrichten nie im HTML-Format, sondern immer in Textformat
dargestellt werden. Spammer gestalten Spam oft derart, dass durch die HTML-Darstellung
Bilder aus dem Internet nachgeladen werden. Anhand des Zugriffs erkennt der Spammer,
dass das Zielkonto genutzt wird und somit gültig ist.
Gleiches gilt für das Aktivieren der Links in einer Spamnachricht. Per Gesetz ist der
Versender dazu verpflichtet, dem Empfänger jederzeit die Möglichkeit zu geben, den Dienst
wieder abzumelden. Dieser Mechanismus wird jedoch von Spammern missbraucht [Kar-2006,
S. 25]. Sobald der Newsletter vermeintlich abbestellt wird, registriert der Spammer das Nutzerkonto als genutzt und gültig.
Auf keinen Fall darf auf Spam geantwortet werden. Einerseits wird diese Handlung
als Bestätigung des Nutzerkontos angesehen, andererseits können dadurch Kosten entstehen.
Insbesondere im Bereich SPIT können ahnungslose Teilnehmer auf kostenpflichtige Nummern
gelockt werden.
Beinhaltet eine Spam-E-Mail einen Anhang, darf dieser niemals geöffnet werden.
Anlagen können Spammern zur Verbreitung von Schadsoftware wie Viren und Würmer dienen.
4.5 Zusammenfassung
Es gibt kein sicheres Mittel gegen SPIT. Doch diese Erkenntnis ist nicht neu, da es für
die Bekämpfung von E-Mail-Spam ebenfalls kein sicheres Mittel gibt. Dementsprechend ist
die beste Option eine Kombination der verfügbaren Mittel zur Reduktion des Aufkommens.
Beispielsweise kann durch den dualen Einsatz von White- und Blacklists eine recht
gute Vorabfilterung durchgeführt werden. Das durch diese beiden Verfahren übrig bleibende
SPIT kann anschließend von einer weiteren Maßnahme untersucht werden. Unsichere Kandidaten können z. B. einem Turingtest unterzogen werden.
Dieser Ansatz kann jedoch nur funktionieren, wenn der Spammer mit einer korrekten
Identität anruft. Gibt er einen beliebigen SIP URI an, ist die Wahrscheinlichkeit gering, dass
er auf der Blacklist steht. Im ungünstigsten Fall ist er in der Lage, Zugang zu einer SIP URI
der Whitelist zu erhalten.
Das verdeutlicht, dass alleine durch den Einsatz von Abwehrmaßnahmen das SPIT nicht
effektiv abgewehrt werden kann. Aus diesem Grund werden in einem Bericht [RFC-5039, S. 23]
72
4.5. Zusammenfassung
der Internet Engineering Task Force (IETF) vier Punkte aufgelistet, die zur erfolgreichen
Abwehr von SPIT sehr wichtig sind. Diese Punkte werden im Folgenden kurz vorgestellt:
• Whitelists: Durch den Einsatz von Whitelists kann sehr ressourcenschonend entschieden werden, ob eine Nachricht zugestellt wird. Analog werden alle Nachrichten der
übrigen Teilnehmer weiter auf SPIT untersucht. Die Whitelist kann entweder automatisch aufgrund positiver Erfahrungen oder manuell auf Basis der Entscheidung des
Teilnehmers gepflegt werden.
• Starke Identitäten: Der Einsatz identitäsbasierter Abwehrmaßnahmen nutzt jedoch
nichts, wenn der Spammer einen beliebigen Absender wählen kann. Somit können Whitelists nicht effektiv eingesetzt werden, um Nachrichten auszuwählen, die geprüft werden müssen. Ergo muss die Identität des Anrufers sichergestellt sein. Es muss verhindert
werden, dass unautorisierte Teilnehmer Zugang zu anderen Identitäten erhalten.
• Lösung des Einführungsproblems: Die größste Herausforderung ist die Lösung des
Einführungsproblems. Vertrauenswürdige Teilnehmer müssen auf die Whitelist gelangen. Beispielsweise können Teilnehmer automatisch auf die Whitelist gestetzt werden,
sobald sie eine Aufgabe gelöst haben.
• Nicht warten, bis es zu spät ist: Die Provider dürfen das SPIT-Problem nicht
ignorieren bis es zu spät ist. Sobald ein Provider Anrufe aus den Netzen von anderen
Providern sowie dem Internet zulässt, muss er sich Gedanken um SPIT machen.
Sehr problematisch bleibt weiterhin die Abwehr von Direct-IP-SPIT. Da das SPIT hier
an den Proxyservern vorbeigeschleust wird, können sämtliche serverseitige Schutzmechanismen umgangen werden. Zwar ist die Filterung im UE denkbar, für viele Abwehrmaßnahmen
fehlen jedoch entweder die benötigten Informationen oder die Rechenleistung. Eine adäquate
Maßnahme gegen Direct-IP-SPIT existiert bislang nicht. Aus diesem Grund bleibt dem Teilnehmer hier nur der Einsatz von Listenverfahren (z. B. Whitelists).
73
Kapitel 4. Abwehrmaßnahmen
74
Kapitel
5
Sicherheitsverfahren
Wie im vorhergehenden Kapitel beschrieben, ist eine starke Identität unumgänglich,
um Spam over Internet Telephony (SPIT) effektiv zu unterbinden. Dieses, als Authentizität
bekannte Sicherheitsziel, kann im Kontext des IMS mit mehreren Verfahren sichergestellt
werden.
Im Rahmen dieses Kapitels werden Verfahren vorgestellt, die über die Gewährung einer starken Identität hinaus gehen. Insbesondere die Sicherung der Vertraulichkeit muss
gewährleistet werden. Denn durch das Mitlesen der ausgetauschten Daten kann ein
Angreifer Rückschlüsse auf den Inhalt der Whitelist eines Teilnehmers ziehen.
Die in dieser Arbeit vorgestellten Sicherheitsverfahren können nach dem Open Systems
Interconnection (OSI)-Referenzmodell [ISO-1996] in zwei Gruppen untergliedert werden (vgl.
Abb. 5.1, S. 75). Im Gegensatz zum vorherigen Kapitel, werden die Sicherheitsverfahren ohne
diese Unterteilung vorgestellt. Anders als bei den Abwehrmaßnahmen ergeben sich in Bezug
auf SPIT keine derart relevanten Unterschiede zwischen den Gruppen.
Sicherheitsverfahren
Anwendungsschicht
HTTP Autentication
Vermittlungsschicht
IPsec
AKA
SIPS
S/MIME
Abb. 5.1: Kategorisierung der Sicherheitsverfahren [ElK-2008, S. 31].
75
Kapitel 5. Sicherheitsverfahren
5.1 Hypertext Transport Protocol Authentication
Die Hypertext Transport Protocol (HTTP) Authentication [RFC-2617][RFC-3261, S. 193–
210] authentifiziert einen Teilnehmer mittels Challenge-Response-Verfahren. In der Regel
geschieht dies bei der Registrierung oder bei einem Sitzungsaufbau, es ist aber ebenfalls
eine Authentifizierung zwischen zwei Nutzern möglich. HTTP Authentication bietet generell
mehrere Authentifikationsschemata. Für das Session Initiation Protocol (SIP) wird aufgrund
der Sicherheit nur das Digest-Schema [RFC-3261, S. 193] genutzt.
Beim HTTP Authentication-Verfahren wird die Authentifizierung über ein ausgetauschtes
gemeinsames Geheimnis erzielt. Zur Generierung des Geheimnis wird ein einmalig gültiger
Nonce-Wert an den UAC übertragen. Das gemeinsame Geheimnis wird in verschlüsselter
Form an den UAS zurückgemeldet.
Um das HTTP Authentication-Verfahren durchführen zu können, muss zwischen dem
Teilnehmer und dem Infrastrukturbetreiber ein Vertragsverhältnis bestehen. Denn zur
Authentifizierung eines Teilnehmers ist ein Benutzername sowie ein Passwort nötigt. Diese werden nie im Klartext übertragen, sondern fließen in die Berechnung des gemeinsames
Geheimnis ein.
5.1.1 Challenge
Ist beim Zielnetzelement eine Authentifizierung notwendig, antwortet das Netzelement je
nach Typ mit einem entsprechenden Response von Typ 4xx. Diese Antwort beinhaltet ein
zusätzliches Header-Feld, das die für das gemeinsame Geheimnis notwendigen Informationen
überträgt:
• Realm: Benennt den Gültigkeitsbereich für die Authentifizierung. Dies kann beispielsweise durch einen Domain-Namen geschehen.
• Nonce: Dies ist der einmalige und eindeutige Wert, der anfangs erwähnt wird. Es ist
entweder ein base64 [RFC-4648, S. 5–7] oder hexadezimal codierter Wert.
Darüber hinaus sind weitere optionale Felder möglich. Unter anderem kann angegeben werden, welcher Algorithmus zur Verschlüsselung der Prüfsumme verwendet werden soll. Ist
kein Algorithmus angegeben, wird standardgemäß der Message Digest 5 (MD5)-Algorithmus
[RFC-1321] eingesetzt.
5.1.2 Response
Sobald der UAC diese Nachricht erhalten hat, ist er in der Lage, das gemeinsame Geheimnis
zu berechnen. Für die Berechnung werden die folgenden Bestandteile verwendet:
76
5.1. Hypertext Transport Protocol Authentication
• Benutzername: Der Benutzername nennt die Kennung des zu authentifizierenden
Teilnehmers. Er wird im Rahmen einer Teilnehmervereinbarung im Voraus zugewiesen.
Im IMS wird die IMPI als Benutzername genutzt.
• Realm: Dies ist der zuvor über den 4xx-Response dem Teilnehmer zugesandte Realm.
• Passwort: Das zum Benutzernamen gehörende Passwort, das entweder vom Betreiber
zugewiesen oder nach der Nutzungsvereinbarung vom Teilnehmer gewählt wird.
• Nonce: Dies ist der zuvor über den 4xx-Response dem Teilnehmer zugesandte NonceWert.
• Methode: Dies gibt die zu authentifizierende Request-Methode an. Im Fall einer Registrierung ist die Methode REGISTER enthalten.
• Request-URI: Dies gibt die Zieladresse des gesendeten Request an. Falls Alice versucht Bob anzurufen, wird hier z. B. der Wert sip:[email protected] eingetragen.
Benutzername
Realm
Passwort
SIP-Methode
Nonce-Wert
A1
Request-URI
A2
Response
Abb. 5.2: Berechnung des gemeinsamen Geheimnises mittels MD5-Algorithmus.
Zur Berechnung mit dem MD5-Algorithmus werden zunächst zwei Zeichenketten gebildet (vgl. Abb. 5.2, S. 77). Zum einen werden Benutzername, Realm und Passwort zum Wert
A1 [RFC-2617, S. 13] zusammengefasst, wobei die Anführungszeichen vom Benutzernamen
und dem Realm entfernt werden (vgl. Formel 5.1, S. 77).
A1 = Benutzername:Realm:Passwort
(5.1)
Außerdem fließen die Methode und der Request-URI in den Wert A2 [RFC-2617, S. 14] ein
(vgl. Formel 5.2, S. 77). Wie beim Wert A1 werden die Anführungszeichen von der Methode
und dem Request-URI entfernt.
A2 = Methode:Request-URI
(5.2)
Abschließend werden die Zeichenketten A1 und A2 mit dem MD5-Algorithmus verarbeitet
und zusammen mit dem Nonce-Wert verkettet. Die daraus resultierende Zeichenkette wird
77
Kapitel 5. Sicherheitsverfahren
wiederum mit dem MD5-Algorithmus verarbeitet (vgl. Formel 5.3, S. 78). Das Ergebnis dieser
Berechnung ist das gemeinsame Geheimnis [RFC-2617, S. 13].
Response = MD5[MD5(A1):Nonce-Wert:MD5(A2)]
(5.3)
Das Endgerät des Teilnehmers kann den Benutzer gegebenenfalls dazu auffordern, den
Benutzernamen und das Passwort manuell einzugeben. Nach der Verschlüsselung sendet
der UAC seinen Request erneut. In einem zusätzlichen Header überträgt er die folgenden
Informationen:
• Benutzername: Der zur Berechnung der Prüfsumme verwendete Benutzername.
• Realm: Eine Wiederholung des Gültigkeitsbereichs, der in der Nachricht des Netzelementes enthalten war.
• Nonce: Eine Wiederholung des Nonce-Wertes, der vom Netzelement zugesandt wurde.
• Request-URI: Der zur Berechnung der Prüfsumme verwendete Request-URI, der den
UAS adressiert.
• Response: Das gemeinsame Geheimnis, das aus den obigen sechs Komponenten besteht.
Nach Erhalt des wiederholten Request vergleicht das Netzelement den gesendeten und empfangenen Nonce-Wert. Außerdem führt er seinerseits die Berechnung der Prüfsumme durch
und verschlüsselt diese entsprechend. Stimmt das Ergebnis mit dem empfangenen ResponseWert überein, wird der Request des UAC bearbeitet. Ansonten wird der Request erneut mit
einer Nachricht vom Typ 4xx abgelehnt.
5.1.3 Anwendungsszenarien
Der Standard sieht drei Szenarien zur Anwendung von HTTP Authentication vor [RFC-3261,
S. 193–210]. Die Authentifizierung gegenüber eines Registrar- oder Proxy-Servers und zwischen zwei Teilnehmern. Im Folgenden werden diese drei Szenarien näher vorgestellt.
Authentifizierung der Registrierung
Um zu verhindern, dass sich unberechtigte Teilnehmer Zugang zu einem Teilnehmerkonto
verschaffen, ist hier eine Authentifizierung notwendig. Im Rahmen dieser Authentifizierung
müssen zwei Faktoren überprüft werden.
1. Ist der Teilnehmer derjenige, für den er sich ausgibt.
2. Ist der Teilnehmer berechtigt, sich an diesem Registrar anzumelden.
78
5.1. Hypertext Transport Protocol Authentication
Fremdnetz
UE
Heimatnetz
P-CSCF
REGISTER
HSS
I-CSCF
REGISTER
S-CSCF
UAR
UAA
REGISTER
MAR
MAA
401 Unauthorized
401 Unauthorized
401 Unauthorized
REGISTER
REGISTER
UAR
UAA
REGISTER
SAR
SAA
200 OK
200 OK
200 OK
Abb. 5.3: Registrierung mit HTTP Authentication.
Für diese Authentifizierung wird im Standard [RFC-3261, S. 64] das HTTP AuthenticationVerfahren vorgeschrieben.
Um sich zu registrieren, sendet der Teilnehmer zunächst einen normalen REGISTERRequest an den Registrar (vgl. Abb. 5.3, S. 79). Der Registrar weist diesen REGISTERRequest mit einem Response vom Typ 401 Unauthorized (vgl. Notation 5.1, S. 79) zurück.
Nach Erhalt dieser Nachricht berechnet der UAC aus den mitgelieferten Informationen das
gemeinsame Geheimnis. Anschließend sendet der UAC einen erneuten REGISTER-Request
(vgl. Notation 5.2, S. 80) an den Registrar. Diese enthält im Header-Feld Authorization
das berechnete gemeinsame Geheimnis sowie weitere Informationen, wie oben beschrieben.
Stimmt das übermittelte gemeinsame Geheimnis mit den Berechnungen des Registrar-Servers
überein, wird die Registration mit einer Nachricht vom Typ 200 OK bestätigt.
SIP /2.0 4 01 Unauthorized
CSeq : 1 REGISTER
WWW - Authenticate : Digest
79
Kapitel 5. Sicherheitsverfahren
realm =" atlanta . com " ,
nonce =" e a 9 c 8 e 8 8 d f 8 4 f 1 c e c 4 3 4 1 a e 6 c b e 5 a 3 5 9 "
[...]
Notation 5.1: 401 Unauthorized-Response.
REGISTER sip : scscf . biloxi . com SIP /2.0
CSeq : 2 REGISTER
Authorization : Digest
username =" bob " ,
realm =" atlanta . com " ,
nonce =" e a 9 c 8 e 8 8 d f 8 4 f 1 c e c 4 3 4 1 a e 6 c b e 5 a 3 5 9 " ,
uri =" sip : scscf . biloxi . com " ,
response =" d f e 5 6 1 3 1 d 1 9 5 8 0 4 6 6 8 9 d 8 3 3 0 6 4 7 7 e c c "
[...]
Notation 5.2: REGISTER-Request inklusive Authentifizierungsinformationen.
Authentifizierung gegenüber einem Proxy
Beim Kontakt zu einem Proxy-Server kann eine Authentifizierung sinnvoll sein. Der Betreiber
des durch den Proxy angebotenen Service kann ein Interesse daran haben, dass nur bestimmte
Teilnehmer diesen verwenden können. Um einen solchen Dienst möglich zu machen, muss der
Betreiber einen Statefull-Proxy einsetzen. Der Proxy muss nämlich für die Authentifizierung
unter anderem den gesendeten Nonce-Wert zwischenspeichern. In der Regel wird vorher eine
solche Nutzungsvereinbarung zwischen dem Teilnehmer und dem Betreiber abgeschlossen.
Alice
Bob
Proxy
INVITE
407 Proxy Authent...
ACK
INVITE
100 Trying
180 Ringing
200 OK
ACK
INVITE
100 Trying
180 Ringing
200 OK
ACK
Abb. 5.4: Proxy-Sitzungsaufbau mit HTTP Authentication.
80
5.1. Hypertext Transport Protocol Authentication
Will beispielsweise ein berechtigter Teilnehmer einen Anruf über einen gesicherten Proxy
tätigen, sendet er zunächst einen normalen INVITE-Request an den zuständigen Proxy (vgl.
Abb. 5.4, S. 80). Analog zum Registrar weist der Proxy diesen Request mit einem Response
vom Typ 407 Proxy Authorization Required (vgl. Notation 5.3, S. 81) ab. Im Sinne des ThreeWay-Handshakes bestätigt der UAC diese Nachricht zunächst mit einem ACK-Request. Anschließend erfolgen dieselben Berechnungen wie bei der Registrierung gegenüber dem Registrar. Im erneut gesendeten INVITE-Request (vgl. Notation 5.4, S. 81) wird ein zusätzliches
Header-Feld namens Proxy-Authorization mit dem gemeinsamen Geheimnis usw. eingefügt.
War die Berechnung korrekt, wird die Verbindung unter Teilnahme des Proxys aufgebaut.
SIP /2.0 4 07 Proxy Authorization Required
CSeq : 1 INVITE
Proxy - Authenticate : Digest
realm =" atlanta . com " ,
nonce =" f 8 4 f 1 c e c 4 1 e 6 c b e 5 a e a 9 c 8 e 8 8 d 3 5 9 "
[...]
Notation 5.3: 407 Proxy Authorization Required.
INVITE sip : bob@biloxi . com SIP /2.0
CSeq : 2 INVITE
Proxy - Authorization : Digest
username =" alice " ,
realm =" atlanta . com " ,
nonce =" w f 8 4 f 1 c e c z x 4 1 a e 6 c b e 5 a e a 9 c 8 e 8 8 d 3 5 9 " ,
uri =" sip : bob@biloxi . com " ,
response ="42 c e 3 c e f 4 4 b 2 2 f 5 0 c 6 a 6 0 7 1 b c 8 "
[...]
Notation 5.4: INVITE-Request inklusive Authentifizierungsinformationen.
Authentifizierung zwischen zwei Teilnehmern
Da beim Einsatz von Peer-to-Peer-Anrufen kein Proxy zwischengeschaltet ist, der den Anrufer authentifizieren kann, sollte dies der Nutzer übernehmen. Die Authentifizierung verläuft
analog zur Authentifizierung gegenüber eines Registrars, nur dass anschließend eine Sitzung
aufgebaut wird (vgl. Abb. 5.5, S. 82).
In der Praxis kommt dieses Verfahren bisher kaum zum Einsatz [TW-2007, S. 364]. Das
liegt vor allem daran, dass die meisten Teilnehmer keine Zertifikate haben. Im Kontext der
81
Kapitel 5. Sicherheitsverfahren
SPIT-Bekämpfung empfiehlt es sich jedoch sie durchzuführen, um gegen Direct-IP-SPIT
vorgehen zu können.
Alice
INVITE
Bob
401 Unauthorized
ACK
INVITE
200 OK
ACK
Abb. 5.5: Peer-to-Peer-Sitzungsaufbau mit HTTP Authentication.
5.1.4 Authentication and Key Agreement
Befindet sich im UE eine UICC, kann die HTTP Digest Authentication using Authentication and Key Agreement (AKA) [RFC-3310] eingesetzt werden. Dieses Verfahren wird
hauptsächlich für mobile Zugangsgeräte verwendet. Anstelle des regulären Benutzernamens und Passworts werden hier die Daten der UICC genutzt.
Da zum Zugang in das IMS entweder ein ISIM oder ein USIM auf der UICC vorhanden
sein muss, können prinzipiell zwei Authentifikationsszenarien eintreten. Eines mit ISIM und
eines mit USIM. Da das ISIM auf das IMS zugeschnitten ist, beschränken wir uns diesem
Abschnitt auf die Authentifikation mittels ISIM.
Erhält die S-CSCF einen Registrierungswunsch, besorgt sie sich mehrere Authentifikations Vektoren vom Home Subscriber Server (HSS). Für eine Registrierung wird zwar nur ein
Vektor benötigt, aber um den Kontakt zum HSS gering zu halten, werden mehrere gesendet.
Ein solcher Vektor beinhaltet die folgenden Informationen [RFC-3310, S. 4]:
• Random Challenge (RAND): Die RAND wird vom HSS generiert und basiert auf
einer SQN.
• AUTN: Das AUTN wird vom HSS für jeden Vektor neu berechnet. Es beinhaltet das
gemeinsame Geheimnis und die SQN. Durch die SQN gibt es niemals zweimal denselben
Vektor.
• Expected Response (XRES): Die vom UE erwartete Response (RES) innerhalb
des nächsten REGISTER-Requests.
• IK: Ein Sitzungsschlüssel, der für die Verschlüsselung der Kommunikation benötigt
wird.
82
5.1. Hypertext Transport Protocol Authentication
• CK: Ein Sitzungsschlüssel, der für die Überprüfung der Integrität der Kommunikation
benötigt wird.
Die S-CSCF nutzt den ersten Vektor, um die Authentifikation durchzuführen. Zur Generierung des 401 Unauthorized-Responses wird die Base64-Repräsentation der RAND mit dem
AUTN als Nonce-Wert eingefügt [RFC-3310, S. 6–7] (vgl. Abb. 5.6, S. 83 und Formel 5.4,
S. 83)[RFC-3310, S. 6–7].
Geheimnis
RAND
SQN
AUTN
Nonce
Abb. 5.6: Berechnung des Nonce-Wertes mit AKA.
Nonce = Base64(RAND:AUTN)
(5.4)
Um klarzustellen, dass die Berechnungen auf Basis der AKA durchgeführt werden sollen,
wird der optionale Parameter algorithm“ in das Header-Feld eingefügt (vgl. Notation 5.5,
”
S. 83). Dieser beinhaltet den Wert AKAv1-MD5“, womit der Einsatz der AKA angegeben
”
wird.
SIP /2.0 4 01 Unauthorized
CSeq : 1 REGISTER
WWW - Authenticate : Digest
realm =" atlanta . com " ,
nonce =" e a 9 c 8 e 8 8 d f 8 4 f 1 c e c 4 3 4 1 a e 6 c b e 5 a 3 5 9 "
algorithm = AKAv1 - MD5
[...]
Notation 5.5: 401 Unauthorized-Response mit AKA.
Wenn der Client den 401 Response erhält, berechnet er aus dem Nonce-Wert wieder das
AUTN. Das AUTN verifiziert er anschließend mit dem gemeinsamen Geheimnis und der
SQN. Stimmt die Berechnung überein, ist das IMS seitens des UE authentifiziert.
Nachdem das IMS authentifiziert wird, berechnet der Client die RES und sendet sie an die
S-CSCF zurück. Diese Berechnung wird analog zu der ohne AKA durchgeführt. Zusätzliche
berechnet der Client mit dem AUTN und dem gemeinsamen Geheimnis die Sitzungsschlüssel
83
Kapitel 5. Sicherheitsverfahren
CK und IK. Diese werden für zukünftige Kommunikationen mit dem IMS zum Schutz der
Kommunikation verwendet.
Nachdem die RES über einen erneuten Registrationsversuch an die S-CSCF zurückgesendet
wird, vergleicht die S-CSCF die Werte von der RES und der XRES. Stimmen beide Werte
überein, ist der Client authentifiziert und die Registration wird durchgeführt.
Erreichter Schutz:
• Authentitizität: Durch den Einsatz der Benutzernamen und Passwörter zur Berechnung des gemeinsamen Geheimnises.
• Verbindlichkeit: Da Statefull-Proxy an der Kommunikation beteiligt sind und eine
Zuordnung zum Benutzerprofil durchführen können.
• Zugriffskontrolle: Nur Teilnehmer mit einem gültigen gemeinsamen Geheimnis
können eine Kommunikationsverbindung aufbauen.
5.2 Session Initiation Protocol Security
Beim Transfer der Nachrichten ist prinzipiell ein Mitlesen möglich, da das SIP im Klartext übertragen wird. Diese Nachrichten enthalten oft sensible Daten wie Session Initiation
Protocol Uniform Ressource Identifier (SIP URI), IP-Adressen oder Benutzernamen. Daher
empfiehlt sich eine Verschlüsselung der Nachrichtenübertragung durchzuführen.
Dafür kann das durch Session Initiation Protocol Security (SIPS) [RFC-3261, S. 239–240]
bereitgestellte SIPS-URI-Schema verwendet werden. Die Bezeichnung lehnt sich an die
Hypertext Transport Protocol Security (HTTPS) [RFC-2818] (eine verschlüsselte Variante
von HTTP) an. Analog zu HTTPS unterscheiden sich SIP URI und SIPS-URI im Präfix.
• sip:[email protected].
• sips:[email protected].
Jeder SIP URI mit dem Präfix sips erzwingt eine Verschlüsselung mit SIPS. Gibt der
Teilnehmer einen Session Initiation Protocol Security Uniform Ressource Identifier (SIPS
URI) in seinen UA ein, wird automatisch eine SIPS-geschützte Verbindung hergestellt.
5.2.1 Transport Layer Security
Analog zu HTTPS nutzt SIPS die Transport Layer Security (TLS)-Protokollkombination
[RFC-4346]. Da TLS ein verbindungsorientiert arbeitendes Protokoll benötigt, können nur
Transmission Control Protocol (TCP) und Session Control Transmission Protocol (SCTP)
[RFC-3436] eingesetzt werden.
84
5.2. Session Initiation Protocol Security
Zur Durchführung der Verschlüsselung bedient sich TLS mehrerer Subprotokolle (vgl.
Abb. 5.7, S. 85). Diese werden im Folgenden kurz vorgestellt:
• Application Data Protocol [RFC-4346, S. 53]: Das Application Data Protocol bildet
die Schnittstelle zur Anwendung. Es leitet die gesendeten und empfangenen Daten an
die Anwendung weiter und nimmt sie entgegen.
• Alert Protocol [RFC-4346, S. 26–31]: Kommt es zu einem Fehler, versendet das Alert
Protocol entsprechende Fehler- oder Statusnachrichten.
• Handshake Protocol [RFC-4346, S. 31–52]: Zur Aushandlung der Schlüssel wird das
Handshake Protocol eingesetzt. Optional kann das Handshake Protocol zur Authentifizierung der beteiligten Teilnehmer eingesetzt werden.
• Change Cipher Spec Protocol [RFC-4346, S. 25–26]: Das durch das Handshake
Protocol ausgehandelte Schlüsselmaterial wird durch das Change Cipher Spec Protocol
aktiviert.
• Record Layer [RFC-4346, S. 17–23]: Die Record Layer empfängt die unverschlüsselten
Daten und sorgt für eine Fragmentierung, Kompression und Dekompression sowie eine
Verschlüsselung.
Anwendungsdaten
Transport Layer Security (TLS)
Application Data
Alert
Handshake
Change Cipher Spec
Record Layer
Transmission Control Protocol (TCP)
Abb. 5.7: Transport Layer Security-Schichtenmodell [Ble-2005, S. 279].
5.2.2 Anwendungsszenario
Will ein Teilnehmer, dass seine Verbindungen mit TLS verschlüsselt werden, muss er seinen
SIPS URI bekannt geben. In dem Moment, indem ein UA eine SIPS URI-Adresse kontaktieren will, baut er eine SIPS-Verbindung zu seinem P-CSCF auf (vgl. Abb. 5.8, S. 86). TLS ist
allerdings nur ein Hop-by-Hop arbeitendes Protokoll. Das heißt, zwischen jedem Netzelement auf dem Weg zum UAS wird eine separate SIPS-Verbindung aufgebaut. Dies gilt
85
Kapitel 5. Sicherheitsverfahren
atlanta.com
Alice
Bob
biloxi.com
TCP
TLS
INVITE
100 Trying
TCP
TLS
INVITE
100 Trying
Verschlüsselung
INVITE
180 Ringing
200 OK
ACK
180 Ringing
200 OK
ACK
180 Ringing
200 OK
ACK
Abb. 5.8: Domainübergreifender SIPS-Verbindungsaufbau.
allerdings nur bis zum I-CSCF der Zieldomain. Dort kann ein für diese Domain übliches Verschlüsselungsverfahren genutzt werden. Die Nutzung von TLS wird allerdings bis zum UAS
empfohlen [Aud-2008, S. 7–9].
Erreichter Schutz:
• Datenintegrität: Durch die Verschlüsselung der Daten zwischen zwei Netzelementen.
• Vertraulichkeit: Durch die verschlüsselte Übertragung der Daten zwischen zwei
Netzelementen.
5.3 Privacy-Service
Da einige personenbezogene Daten beim SIP beispielsweise für das Routing benötigt werden,
können diese nicht ohne verschlüsselt werden. Um zu verhindern, dass selbst diese Informationen durch Mithören gesammelt werden, wurde von der Internet Engineering Task Force
(IETF) ein Privacy-Service [RFC-3323] definiert. Dieser Privacy-Service bietet dem Nutzer
einen Anonymisierungsdienst.
86
5.3. Privacy-Service
5.3.1 Anonymisierungsstufen
Die Anonymisierung erfolgt durch die Nutzung des neu definierten Privacy-Header-Feldes.
Es kann entweder von einem UA oder von einem Server in den Header integriert werden und
gewährt je nach zugeordnetem Wert Anonymität. Für den Anonymisierungsdienst werden
die folgenden Feldwerte definiert [RFC-3323, S. 11–12]:
• Header: Es muss sichergestellt werden, dass keinerlei Rückschlüsse auf die bisher
durchlaufenen Netzknoten getroffen werden können. Konkret bedeutet dies eine Anonymisierung der Header-Felder Via, Contact und Route. Am besten eignet sich hierfür
der Einsatz eines B2BUA [TW-2007, S. 377], da dieser die Nachrichten terminiert. Außerdem wird unter Einsatz eines B2BUA gewährleistet, dass das Routing der Nachricht
nicht negativ beeinträchtigt wird.
• None: Die durch den Provider zur Verfügung gestellten Privacy-Services dürfen explizit
nicht zur Anwendung kommen.
• Session: Für den Austausch der Mediendaten werden sensible Informationen in Form
von IP-Adressen sowie Port-Nummern übermittelt. Sollen diese anonymisiert werden,
muss der Privacy-Service dies tun. Dies geschieht in der Regel, indem der PrivacyService eine eigene Schnittstelle zum Empfang der Daten bereitstellt und diese anschließend an das korrekte Ziel weiterleitet. Analog zum Wert Header eignet sich hierfür ein
B2BUA am besten.
• User: Alle Informationen der Nachricht, die eine Identifizierung des Teilnehmers zulassen, werden anonymisiert. Insbesondere betrifft dieser Feldwert die Angaben in den
beiden Header-Feldern From und To.
Außerdem kann eingestellt werden, dass eine Transaction nur zustande kommen, wenn der
angefragte Anonymisierungsdienst zur Verfügung gestellt werden kann. Um dies zu fordern,
muss zusätzlich zum Inhalt des Privacy-Headers der Wert critical“ eingetragen werden. Kann
”
diese Anonymisierung nicht zur Verfügung gestellt werden, muss der Privacy-Service
das Zustandekommen der Transaction mit einem 5xx-Response ablehnen.
5.3.2 Anonymisierungsverhalten
Abhängig von der angeforderten Anonymisierungsstufe, agieren die Proxy unterschiedlich.
Header-Felder können anonymisiert, gelöscht oder nicht hinzugefügt werden. In der hier aufgeführten Tabelle (vgl. Tab. 5.1, S. 88) werden nur diejenigen Header-Felder betrachtet, die
im Rahmen dieser Arbeit relevant sind.
Für das genaue Verhalten eines Proxy gibt es keine starren Regelungen. Es gibt nur eine Empfehlung seitens der IETF, wie bestimmte Header-Felder behandelt werden sollen
[Mun-2008, S. 6] (vgl. Tab. 5.1, S. 88).
87
Kapitel 5. Sicherheitsverfahren
Header-Feld
User
Header
Session
Call-ID
Anonym
–
–
Contact
–
Anonym
–
From
Anonym
–
–
P-Asserted-Identity
Löschen
–
–
–
Anonym
–
Via
Tab. 5.1: Verhalten beim Privacy-Service [Mun-2008, S. 6].
Erreichter Schutz:
• Privatsphäre: Durch Anbieten eigener neutraler Schnittstellen und anonymer Zuordnung.
5.4 Secure/Multipurpose Internet Mail Extensions
Mit SIPS ist zwar bereits die Verschlüsselung der Nachrichten möglich, doch erfolgt diese
nur zwischen zwei Netzelementen. Falls der Angreifer über die Steuerung eines Netzelementes
verfügt, kann mit SIPS nicht verhindert werden, dass dieser die Nachricht lesen kann. Deshalb
empfiehlt sich eine Ende-zu-Ende-Verschlüsselung.
Muss die Nachricht keine nachrichtenterminierenden Netzelemente (z. B. B2BUA) durchlaufen, eignet sich der Einsatz der Secure/Multipurpose Internet Mail Extensions (S/MIME)
[RFC-3851].
5.4.1 Schlüsselaustausch
Um den Body der Nachricht mit S/MIME zu verschlüsseln, benötigen beide beteiligten
Teilnehmer ein Zertifikat. Der Sender benötigt dann Kenntnis über den Public Key des
Empfängers. Diesen verwendet er für die Verschlüsselung des Body. Anschließend signiert
der Sender die Nachricht mit seinem Private Key und codiert ihn anschließend mit dem
Public Key des Empfängers.
Das größte Problem bei S/MIME ist der Erwerb des Zertifikats des Zielteilnehmers. Es
kann zwar mittels des SIP übertragen werden, dies ist jedoch unsicher. Ein Angreifer kann
die Nachricht abfangen und mit einem gefälschten Zertifikat modifizieren. Aus diesem Grund
emphielt sich der Einsatz einer Public-Key-Infrastruktur (PKI). Eine PKI zu implementieren ist jedoch ein sehr großer Aufwand.
Ein weiteres Problem ist die Vertrauenswürdigkeit des Ausstellers der Zertifikate.
Daher wird die Nutzung von Zertifikaten von autorisierten Betreibern empfohlen. Die Bun-
88
5.5. Internet Protocol Security
desnetzagentur nennt auf ihrer Internetpräsenz alle in Deutschland akkreditierten Aussteller
[Bun-2009].
5.4.2 Authentifizierung
Da S/MIME nur den Message-Body verschlüsselt kann der Sender eigentlich nicht Authentifiziert werden. Um eine Authentifizierung zu erzielen, können die Header-Felder zusätzlich in
den Message-Body geschrieben werden. Der UAS kann dann die empfangenen Header-Felder
mit jenen im Message-Body vergleichen, um herauszufinden, ob sie verändert wurden.
Erreichter Schutz:
• Authentizität: Durch das verschlüsselte Senden der Header-Felder im MessageBody.
• Datenintegrität: Durch die Verschlüsselung der Nutzdaten.
• Privatsphäre: Die in den Nutzdaten transportieren Informationen bleiben vor Angreifern geheim.
• Verbindlichkeit: Durch den Einsatz der Zertifikate.
• Vertraulichkeit: Durch das Verschlüsseln der Nachricht.
• Zugriffskontrolle: Nur Teilnehmer mit einem gültigen Zertifikat und beteiligtem
Schlüssel können auf S/MIME-Daten zugreifen.
5.5 Internet Protocol Security
Die Sicherheitsmaßnahmen müssen sich zur Spambekämpfung nicht nur auf das SIP beschränken. Da das SIP mittels Internet Protocol (IP) übertragen wird, können IP-basierte
Schutzmechanismen eingesetzt werden. Dies ist sinnvoll, da das Internet Protocol Version
4 (IPv4) momentan das Basisprotokoll für das Internet darstellt. In Zukunft wird sich das
nicht ändern, da das Internet Protocol Version 6 (IPv6) als neuer Standard verabschiedet ist.
Für das IMS wird das IPv6 als Standardprotokoll definiert.
Jedoch stellen weder das IPv4 noch das IPv6 eigene Sicherheitsverfahren zur Verfügung.
Zwar werden die Nachrichten über eine Checksumme geschützt, diese beschränkt sich aber
auf die Erkennung von Übertragungsfehlern. Aus diesem Grund ist es sinnvoll, die Internet
Protocol Security (IPsec) [RFC-2401] einzusetzen. Die IPsec erweitert das IP um kryptografische Verfahren zur Authentifizierung der Teilnehmer, Überprüfung der Datenintegrität und
der Datenvertraulichkeit.
89
Kapitel 5. Sicherheitsverfahren
5.5.1 Sicherheitsassoziationen
Bevor die IPsec eingesetzt werden kann, müssen sich die beteiligten Endpunkte zunächst
über die Sicherheitsvereinbarungen einigen. Diese Sicherheitsvereinbarungen werden bei der
IPsec über sogenannte Sicherheitsassoziationen (SA) [RFC-2401, S. 8–9] definiert. SA
werden unidirektional definiert, für einen kompletten Schutz müssen sie folglich von beiden
Richtungen gesetzt werden. Dieses anscheinend umständliche Verfahren wird auf diese Weise
eingerichtet, um den Endsystemen mehr Flexibilität zu bieten [Ble-2005, S. 211]. In einer SA
werden die folgenden Vereinbarungen getroffen:
• Der zu verwendende Übertragungsmodus.
• Die zu verwendenden Verfahren für die Prüfsummenbildung und Verschlüsselung.
• Das zugehörige Schlüsselmaterial.
• Die aktuell gültige Sequenznummer.
• Die Gültigkeitsdauer der SA.
Eine SA wird über das Tripel aus Zieladresse, Nummer des IPsec-Protokolls (ESP=50,
AH=51) und dem Security Parameter Index (SPI) gebildet. Auf die IPsec-Protokolle wird
weiter unten in diesem Abschnitt ausführlicher eingegangen. Der SPI [RFC-2401, S. 21] ist
ein 32-bit-Wert zur Unterscheidung mehrere SA, zwischen denselben Endpunkten.
5.5.2 Sicherheitsmodi
Mit der IPsec sind zwei Sicherheitsmodi [RFC-2401, S. 7] unterstützt, die im Folgenden kurz
vorgestellt werden:
• Transportmodus (vgl. Abb. 5.9, S. 90): Dieser ist der einfachere der beiden Modi. Die
Nachrichten werden zwischen den beiden Endgeräten geschützt. Dieser Modus fügt nur
einen zusätzlichen IPsec-Header zwischen IP-Header und Nutzdaten ein, sodass kaum
Overhead entsteht.
Alice
IPsec-Sicherung
Bob
Abb. 5.9: Ende-zu-Ende-Sicherung [Ble-2005, S. 212].
• Tunnelmodus (vgl. Abb. 5.10, S. 91): In diesem Modus werden die Nachrichten zwischen zwei Security-Gateways geschützt. Dadurch ist es nicht mehr notwendig, dass
die Endsysteme IPsec-fähig sind. Andererseits erstreckt sich die Sicherheit nur für die
90
5.5. Internet Protocol Security
Carol
Alice
Security
Gateway
IPsec-Sicherung
Security
Gateway
Bob
Dave
Abb. 5.10: Netz-zu-Netz-Sicherung [Ble-2005, S. 212].
Inter-Gateway-Verbindung. Im Gegensatz zum Transportmodus ist hier ein deutlich
höherer Overhead nötig, da das gesamte IP-Paket gekapselt werden muss.
Der Tunnelmodus ist für den Einsatz gegen Spam nicht weiter relevant. Das Einrichten
eines VPN ist nur für lokale Netze eine Lösung, die nicht ans Internet angeschlossen sind. Es
kann nicht davon ausgegangen werden, dass im Internet Tunnel zwischen allen Teilnehmern
eingerichtet werden und somit die Spammer ausgesperrt werden.
5.5.3 Protokolle
Wie bereits erwähnt, bietet die IPsec zwei Protokolle [RFC-2401, S. 6–7]. Sie unterscheiden
sich in der Art des zur Verfügung gestellten Schutzes.
• Authentication Header [RFC-2402]: Dieses Protokoll dient der Sicherung der Authentizität des Senders und der Integrität der Nutzdaten.
• Encapsulating Security Payload [RFC-2406]: Dieses Protokoll dient zusätzlich dem
Schutz der Vertraulichkeit.
Da die Zielsetzung dieses Kapitels in der Einführung in Sicherheitsmaßnahen zur Erbringung einer starken Identität liegt, wird das ESP nicht weiter untersucht. Des Weiteren ist
die Vertraulichkeit der Daten für die Abwehr von SPIT nicht weiter relevant, da keines der
vorgestellten Verfahren auf die Nutzdaten zugreift.
Zur Sicherung der Authentizität des Senders kann der AH eingesetzt werden. Zusätzlich
zur Authentizität wird hierbei eine Datenintegrität geboten, die für die Betrachtungen hier
jedoch nicht weiter relevant ist.
Setzt die IPsec den AH ein, wird zwischen die Nutzdaten und den IP-Header des IP-Pakets
der IPsec-Header eingefügt (vgl. Abb. 5.11, S. 92). Zur Berechnung der Prüfsumme werden
nicht nur die Nutzdaten, sondern Teile des IP-Headers und des IPsec-Headers mit einbezogen.
Der Empfänger berechnet eine Prüfsumme und vergleicht sie mit der mitgesendeten Summe.
Stimmen sie überein, wird das Paket weiterverarbeitet. Die Authentizität des Senders wird
durch die Einbeziehung der Header in die Prüfsumme gewährleistet.
91
Kapitel 5. Sicherheitsverfahren
IP-Header
IP-Header
IPsec-Header
IP-Nutzdaten
IP-Nutzdaten
Abb. 5.11: Integration des AH-Headers in ein IP-Paket [Ble-2005, S. 215].
In die Berechnung der Prüfsumme wird jedoch nur ein Teil des IP-Headers einbezogen
(vgl. Abb. 5.11, S. 92). Das liegt daran, dass einige Header-Felder während des Transports
verändert werden müssen. Beispielsweise reduziert jedes durchlaufene Netzelement das Time
to Live (TTL)-Feld. Wird dieses Feld mit verrechnet, kann auf der Empfängerseite kein
korrekter Prüfsummenvergleich stattfinden, da unterschiedliche Header vorliegen.
Zur Berechnung der Prüfsumme wird die Verwendung von Message Digest 5 (MD5)
[RFC-1321] oder Secure Hash Algorithm 1 (SHA-1) [NIS-2008][RFC-3174] vorgeschrieben.
Da jedoch sowohl der MD5- [Wan-2004] als der SHA-1-Algorithmus [McD-2009] nicht mehr
lange als sicher angesehen werden können, startete das National Institute of Standards and
Technology (NIST) einen Wettbewerb [NIS-2007], um einen Nachfolger unter dem Namen
Secure Hash Algorithm 3 (SHA-3) zu finden. Der Einsendeschluss für Vorschläge ist mittlerweile verstrichen, ein Sieger steht jedoch noch nicht fest. Sobald dieser feststeht, wird der
SHA-3 vermutlich anstelle vom MD5-Algorithmus und dem SHA-1 für die IPsec eingesetzt.
Erreichter Schutz:
• Authentizität: Durch das verschlüsselte Senden der Header-Felder.
• Datenintegrität: Durch die Verschlüsselung der Nutzdaten.
• Privatsphäre: Die in den Nutzdaten transportieren Informationen bleiben vor Angreifern geheim.
• Vertraulichkeit: Durch das Verschlüsseln der Nachricht.
5.6 Zusammenfassung
Durch die in diesem Kapitel vorgestellten Verfahren kann eine starke Identität für einen
Teilnehmer sichergestellt werden. Bei einer standardkonformen Umsetzung des IMS werden
zwei der vorgestellten Verfahren ohnehin unterstützt. Der Standard schreibt die Nutzung
der HTTP Digest Authentication für die Registrierung vor [RFC-3261, S. 64]. Des Weiteren richtet eine P-CSCF standardgemäß einen IPsec-Tunnel zwischen sich und dem UE ein
[TSG-2009a, S. 23].
Durch das Mitlesen der ausgetauschten Nachrichten können Spammer Aufschluss über die
Einträge von Whitelists erhalten. Aus diesem Grund empfiehlt es sich, die gesendeten Nach-
92
5.6. Zusammenfassung
richten zu verschlüsseln oder zu anonymisieren. Zur Anonymisierung kann der Privacy-Service
eingesetzt werden, wodurch ein Spammer nur noch schwer Rückschlüsse auf die tatsächlich
beteiligten Teilnehmer ziehen kann. Um eine höhere Sicherheit zu erzielen, können die Nachrichten mittels IPsec verschlüsselt werden. Der Einsatz von S/MIME empfiehlt sich nicht, da
dieser Ansatz am Aufwendigsten ist und selten unterstützt wird.
Trotzdem bleibt weiterhin der Umgang mit Direct-IP-SPIT ungeklärt. Zwar kann das
HTTP Digest Authentication-Verfahren zwischen zwei Teilnehmern eingesetzt werden, doch
dafür fehlen ihnen in der Praxis die nötigen Informationen. Außerdem fehlt insbesondere den
Hard-Phones oft die nötige Rechenleistung für die Berechnungen.
93
Kapitel 5. Sicherheitsverfahren
94
Kapitel
6
Direct-IP-SPIT-Schutz
Die im Rahmen dieser Arbeit vorgestellten Sicherheitsverfahren und Abwehrmaßnahmen bieten bereits einen guten Schutz gegen Spam over Internet Telephony (SPIT). Wie sich jedoch
gezeigt hat, sind sie in der Regel nur im IMS einsetzbar. Findet die SPIT-Übertragung direkt
zwischen den Endgeräten statt, kann kein Schutz mehr gewährleistet werden.
Gegen dieses Direct-IP-SPIT können, auf der Seite des Endgerätes, meist nur die Listenverfahren (z. B. Whitelists) eingesetzt werden. Vor allem Whitelists eignen sich zur
Bekämpfung von SPIT besonders. Sie sind jedoch ohne starke Identitäten wirkungslos. Außerdem bedürfen sie eines Verfahrens, die Liste mit neuen Einträgen automatisch zu
ergänzen.
Hierfür wird oft der Einsatz eines Turingtests angeregt. Um diesen Test durchzuführen,
fehlt es in den User Equipments (UEs) meist an Rechenleistung. Darüber hinaus konnte kein
Verfahren erarbeitet werden, das diese Aufgabe mit den Mitteln eines UE bewältigen kann.
Aus diesem Grund wird im Rahmen dieser Arbeit ein Konzept entworfen, das die Vertrauenswürdigkeit eines unbekannten Teilnehmers verifizieren kann. Damit dieses Konzept
in das Next Generation Telecommunication Factory (NextFactor)-Projekt problemlos integriert werden kann, werden einige Bedingungen definiert (vgl. Abschn. 6.1, S. 95). Auf Basis
dieser Anforderungen wird das Konzept entwickelt (vgl. Abschn. 6.2, S. 96) und im Rahmen einer Machbarkeitsstudie testweise realisiert (vgl. Abschn. 6.3, S. 98) und anschließend
Bewertet (vgl. Abschn. 6.4, S. 107).
Um die Übersichtlichkeit in den ab sofort dargestellten Sequenzdiagrammen zu wahren,
wird der Ablauf innerhalb des IMS nicht mehr detailiert dargestellt. Die interne Weiterleitung
der Nachrichten ist für das Verständnis dieses Konzeptes nicht weiter von Bedeutung.
6.1 Anforderungen
Für die Entwicklung und Umsetzung des Konzeptes werden drei Anforderungen definiert.
Ihr Ziel ist es z. B. eine mögliche Integration in das NextFactor-Projekt zu erleichtern. Die
95
Kapitel 6. Direct-IP-SPIT-Schutz
Entwürfe für das Konzept sowie dessen Implementierung müssen diese Bedingungen erfüllen.
Nachfolgend werden diese Anforderungen kurz erklärt:
• Kompatibilität: Das Konzept muss allgemein funktionsfähig sein. Somit dürfen keine
Anpassungen im anrufenden UA sowie im IMS nötig sein. Funktioniert das Konzept
nur, wenn der anrufende UA angepasst ist, wird ein Spammer einen konventionellen
UA einsetzen. Sind Änderungen im IMS nötig, kann das Konzept nur unter diesen
Netzen arbeiten.
• Open Source: Mit der Gründung des Masterprojekt Systementwicklung [Mas-2009]
wird auf Open Source-Systeme gesetzt. Diese Vorgehensweise wird mit dem Konzept
beibehalten. Open Source-Lizenzen sind jedoch nicht immer miteinander kompatibel.
Als Kern wird im Projekt der Open IMS Core [FHG-2009] genutzt.
• Demonstrierbarkeit: Das hier entwickelte Konzept soll für weitere Veröffentlichungen
genutzt werden und auf Fachveranstaltungen vorführbar sein. Daher ist es sinnvoll, eine
Plattform zu wählen, die problemlos transportiert werden kann.
6.2 Konzept
Auf Basis der Anforderungen wird in diesem Abschnitt das Konzept für eine Direct-IP-SPITAbwehr erarbeitet. Für die Entwicklung eines Konzeptes muss nur die Forderung nach einer
hohen Kompatibilität berücksichtigt werden, da hierfür weder eine konkrete Software noch
eine Plattform definiert wird.
Um einen effektiven Schutz gegen Direct-IP-SPIT zu erarbeiten, muss zunächst nachvollzogen werden, warum diese Art Spam so problematisch ist. Danach kann der Entwurf angefertigt
werden, der die analysierten Problemstellen anspricht.
6.2.1 Analyse
Trotz der vielen Möglichkeiten durch Sicherheitsverfahren und Abwehrmaßnahmen, kann
Direct-IP-SPIT nicht effektiv abgewehrt werden. Die meisten Verfahren werden im IMS bereitsgestellt. Dieses wird jedoch beim Direct-IP-SPIT umgangen. Somit muss SPIT nur mit
den Mitteln eines UE erkannt und unterbunden werden.
Ein Problem der meisten Ansätzen, ist der Mangel an Informationen im UA. Im UA
können unmöglich alle Informationen persistent gespeichert werden, die für eine qualifizierte
Bewertung des Anrufers nötig sind. Aus diesem Grund muss der UA mit einem Minimum an
Wissen eine Reaktion auf den Anruf generieren.
Dafür bleibt dem UA jedoch keine Zeit. Ein eingehender INVITE-Request wird in der
Regel sofort mit den beiden Responses 100 Trying und 180 Ringing beantwortet (vgl.
96
6.2. Konzept
Alice
INVITE
Bob
100 Trying
180 Ringing
200 OK
ACK
Abb. 6.1: Abfolge der Responses 100 Trying und 180 Ringing.
Abb. 6.1, S. 97). Das bedeutet, dass das UE direkt zu klingeln anfängt. Genau dieser Zustand
darf erst erreicht werden wenn sichergestellt ist, dass der Anrufer vertrauenswürdig ist.
Angenommen der UA hätte genügend Zeit, eine Untersuchung durchzuführen. Sofern keine
weiteren Abwehrmaßnahmen (z. B. Device Fingerprinting) vorhanden sind, kann der UA nur
die folgenden zwei Informationen zur Bewertung nutzen:
1. Der Teilnehmerkennung des Anrufers (z. B. der Session Initiation Protocol Uniform
Ressource Identifier (SIP URI)).
2. Der Betreibername des Anrufers (z. B. die Internet Protocol (IP)-Adresse oder der
URI).
Da der UA diese beiden Informationen nicht direkt verifizieren kann, muss er versuchen
herauszufinden, ob sie authentisch sind. An dieser Stelle tritt das zweite Problem vieler
Ansätze auf. Um diese Verifikation durchzuführen, stehen dem UA oft nur beschränkte
Leistungskapazitäten zur Verfügung.
Authentisch bedeutet in diesem Kontext, dass der Anrufer derjenige ist, für den er sich
ausgibt. Das ist aus zwei Gründen wichtig:
1. Angenommen der Anrufer ist wirklich beim angegebenen Betreiber registrierter Kunde.
Dann kann und wird der Betreiber selbst gegen den Spammer vorgehen.
2. Spammer verwenden gerade aus diesem Grund Direct-IP-SPIT. Auf diese Weise können
sie schwerer entdeckt werden und die Filterwahrscheinlichkeit ist geringer.
Das Ziel dieses Konzeptes muss demnach sein, die Echtheit des Anrufers zu überprüfen.
Um es zu erreichen, steht kein zusätzliches Wissen zu Verfügung. Die für die Validierung
benötigten Informationen müssen in der geringen vorhandenen Zeit ermittelt werden.
6.2.2 Entwurf
In diesem Abschnitt wird ein Entwurf entwickelt, der unter Nutzung der Teilnehmerkennung
und des Betreibernamens in der Lage ist, Direct-IP-SPIT abzuwehren.
97
Kapitel 6. Direct-IP-SPIT-Schutz
Um dem UA Zeit zu verschaffen, eine Untersuchung durchzuführen, ist es notwendig das
Aussenden der beiden Responses voneinander zu trennen. Der UA kann zunächst einen
100 Trying-Response senden, um dem Anrufer mitzuteilen, dass sein Anruf eingegangen ist
und weitere Bearbeitungen durchgeführt werden. Somit hat der UA etwas Zeit, zur Verifikation. Ist die Identität des Anrufers bestätigt, kann ein 180 Ringing-Response ausgesendet
werden.
Alice
IMS
Bob
Anrufversuch
In Bearbeitung
Existiert Alice?
Antwort
Existiert Alice?
Antwort
Telefon klingelt
Anruf angenommen
Abb. 6.2: Konzeptionelle Änderung im Ablauf eines Direct-IP-Calls.
Bis dahin muss der UA in Erfahrung bringen, ob der Anrufer unter der angegebenen
Adresse tatsächlich beim angegebenen Betreiber registriert ist. Eine Liste mit registrierten
Teilnehmern zu speichern ist unmöglich, deshalb muss der UA die Existenz im akuten Fall
selbst ermitteln.
Angenommen der Betreiber kann die Existenz des Anrufers bestätigen, ist noch nicht
sichergestellt, dass der Anruf tatsächlich von diesem Teilnehmer kommt. Ein Kontaktversuch
über den temporären SIP URI ist nicht vielversprechend, da hierdurch zwar die Erreichbarkeit
bestätigt wird, nicht aber der Zusammenhang zum permanenten SIP URI. Deshalb kann
versucht werden, eine Nachricht an den permanenten SIP URI des Betreibers zu senden. Nach
Erhalt einer Rückmeldung kann die enthaltene Adresse im Contact-Header-Feld mit der aus
dem initialen Anruf verglichen werden. Stimmen beide überein, handelt es sich anscheinend
um einen beim angegebenen Betreiber registrierten Teilnehmer.
Wie bereits erwähnt, gewährleistet dieser Zusammenhang nicht, dass kein SPIT übertragen
wird. Das der Anrufer tatsächlich beim angegebenen Betreiber registriert ist, senkt nur die
Wahrscheinlichkeit, das SPIT versendet wird.
6.3 Machbarkeitsstudie
Bevor das Konzept umgesetzt werden kann, müssen die folgenden beiden Punkte weiter
konkretisiert werden:
98
6.3. Machbarkeitsstudie
1. Womit wird die Existenz des Anrufers beim Betreiber überprüft?
2. Womit wird die direkte Existenzüberprüfung des Anrufers durchgeführt?
Auf beide Fragestellungen wird im Laufe dieses Abschnitts eine Antwort erarbeitet. Sind
beide Schritte geklärt, kann die Implementierung des Konzeptes durchgeführt werden.
6.3.1 Existenz des Anrufers beim Betreiber überprüfen
Zunächst muss analysiert werden, mit welchen Mitteln die Existenz des Teilnehmers beim
angegebenen Betreiber überprüft werden kann. In Frage kommen Requests, Sonderfunktionen wie die Event Packages und weitere Entwicklungen und Standards. Das ausgewählte
Verfahren muss in der Lage sein, eine Antwort einzufordern. Anhand dieser Rückmeldung
wird anschließend versucht, die Existenz des Teilnehmers zu verifizieren.
Gegenwärtig existieren für das Session Initiation Protocol (SIP) insgesamt vierzehn verschiedene Requests-Arten. Einige dieser Nachrichten können nicht eingesetzt werden, da sie
entweder nicht beantwortet werden (z. B. ACK) oder im Abbruch der Verbindung enden
(z. B. CANCEL). Das Hauptproblem der meisten Requests ist, dass sie zum zugehörigen
Teilnehmer durchgestellt werden (z. B. MESSAGE) oder der Einsatz nicht standardkonform
ist (z. B. NOTIFY). Außerdem muss der Standard die Angabe des Contact-Header-Feldes
vorschreiben um an den benötigten temporären SIP URI zu gelangen. Das größte Potenzial bietet der SUBSCRIBE-Request, da dieser in der Regel vom IMS beantwortet wird. Die
Antwort auf einen SUBSCRIBE-Request muss das Contact-Header-Feld jedoch nur optional
enthalten (vgl. Tab. 2.1, S. 16). Der Standard schreibt bei einem erfolgreichen Abonnement
jedoch das sofortige Aussenden eines NOTIFY-Requests vor [RFC-3265, S. 14]. Im NOTIFYRequest muss wiederum das Contact-Header-Feld enthalten sein.
Zusammen mit einem Vorschlag der Internet Engineering Task Force (IETF) werden
zwei Event Packges ausgewählt, die Aufschluss über die Existenz des Anrufers ermitteln
können. Im Folgenden werden diese Ansätze genauer vorgestellt und auf ihre Anwendbarkeit
überprüft.
Presence Event Package
Das Presence Event Package [RFC-3856] ermöglicht die Veröffentlichung sowie Abfrage des aktuellen Presence-Status. Presence wird im Rahmen dieses Event Packages als
die Bereitwilligkeit zur Kommunikation mit anderen Teilnehmern definiert. Die PresenceFunktion ist im Instant Messaging (IM)-Bereich sehr verbreitet und in Form von Freundeslisten umgesetzt.
Ursprünglich wird bei der Presence nur zwischen Online“ und Offline“ unterschieden.
”
”
Mit der Zeit wurde eine feinere Granularität erreicht, sodass mittlerweile in der Regel Status
wie z. B. Abwesend“, Beschäftigt“ oder Unsichtbar“ unterstützt werden.
”
”
”
99
Kapitel 6. Direct-IP-SPIT-Schutz
Um seinen Status dem Betreiber mitzuteilen, bieten sich dem Teilnehmer die folgenden
Möglichkeiten.
1. REGISTER-Request [RFC-3856, S. 16–17]: Im REGISTER-Request werden die aktuellen Presence-Informationen mitgesendet.
2. Presence-Dokument hochladen [RFC-3856, S. 17]: Der Teilnehmer kann seinen
Presence-Status selbst manipulieren. Wie dies geschieht, ist vom Betreiber abhängig.
Der konkrete Status des Anrufers ist für die Ermittlung im Rahmen des hier vorgestellten
Konzeptes weniger interessant. Doch kann über die Presence-Funktion herausgefunden werden, ob der Teilnehmer online ist. Diese Information darf jedoch nur optional ausgewertet
werden, da sie keine verbindliche Aussage über den tasächlichen Zustand trifft. Letzten Endes kann der Status Offline“ bedeuten, dass der Teilnehmer zwar online ist, dies aber nicht
”
angegeben hat oder das er sich als Unsichtbar“ eingetragen hat. Es ist jedoch denkbar, dem
”
Teilnehmer die Wahl zu lassen, wie streng diese Information bewertet wird.
Dialog Event Package
Das Dialog Event Package [RFC-4235] ermöglicht es anderen Teilnehmern Informationen
über die aktiven Dialogs eines weiteren Teilnehmers zu erhalten. Insbesondere betrifft
dies den INVITE-Dialog, es kann aber auf jede Art von Dialog (z. B. SUBSCRIBE-Dialog)
angewandt werden.
Durch den Einsatz dieses Event-Packages lassen sich diverse Komfortfunktionen realisieren.
Wenn ein Teilnehmer einen anderen nicht erreicht, da dieser momentan telefoniert, kann
das Dialog Event Package dazu eingesetzt werden, einen automatischen Rückruf einzuleiten.
Sobald der INVITE-Dialog des angerufenen Teilnehmers beendet ist, wird erneut versucht
eine Verbindung aufzubauen [RFC-4235, S. 3].
Das Abonnement kann sich auf einen bestimmten Dialog oder allgemein auf einen Teilnehmer beziehen [RFC-4235, S. 4–5]. Wird ein bestimmter Dialog abonniert, endet das Abonnement entweder mit diesem Dialog oder nach Ablauf einer angegebenen Dauer. Wird der
generelle Dialog-Status eines Teilnehmers abonniert, sollte keine zu lange Dauer angegeben
werden. Der Standard empfiehlt hier die Angabe einer Stunde [RFC-4235, S. 6].
Dialog Event for Identity Verification
Mit dem Dialog Event for Identity Verification (DERIVE)-Verfahren [Kut-2008] kann ein angerufener Teilnehmer über den Betreiber ermitteln, ob sich der potenzielle Anrufer wirklich
im Zustand
anrufend“ befindet. Dadurch lässt sich sicher Stellen, das der angegebe”
ne Teilnehmer dem Betreiber bekannt ist und das dieser gegenwärtig versucht einen Anruf
zu initiieren. Somit ermittelt dieses Verfahren eine zusätzliche Information, die Aufschluss
100
6.3. Machbarkeitsstudie
über die Korrektheit der Angaben geben kann. Diese Aufgabe wird unter Einsatz des Dialog
Event Package [RFC-4235] durchgeführt.
Alice
Bob
IMS
INVITE
100 Trying
SUBSCRIBE
200 OK
NOTIFY
200 OK
180 Ringing
200 OK
ACK
INVITE
100 Trying
INVITE-Dialog
(Teil 1)
SUBSCRIBE
200 OK
NOTIFY
SUBSCRIBEDialog
200 OK
180 Ringing
200 OK
INVITE-Dialog
(Teil 2)
ACK
Abb. 6.3: Ablauf eines verifizierten Anrufs mit DERIVE [Kut-2008, S. 5].
Erhält ein Teilnehmer einen Anruf versucht er zunächst herauszufinden, ob der potenzielle Anrufer im entsprechenden Zustand ist (vgl. Abb. 6.3, S. 101). Dazu sendet er einen
SUBSCRIBE-Request an diesen Teilnehmer. Daraufhin können drei Fälle eintreten:
1. Der Anruf wird verifiziert [Kut-2008, S. 9–12]: Bei einem verifizierten Anruf wird
der SUBSCRIBE-Request mit einem 200 OK-Response beantwortet. Im darauf eintreffenden NOTIFY-Request wird der Dialog-Status des Anrufers bestätigt.
2. Der Anruf kann nicht verifiziert werden [Kut-2008, S. 12–13]: Dann wird der
SUBSCRIBE-Request mit einem 489 Bad Event-Response abgelehnt. Da der Einsatz
des Event-Package optional ist, wird ohne Einsatz der DERIVE fortgefahren. Demzufolge wird der Anruf angenommen.
3. Der Anruf ist suspekt [Kut-2008, S. 14–15]: Dies ist z. B. der Fall, wenn der UA
des angeblich anrufenden Teilnehmers nicht im entsprechenden Zustand ist. Dann wird
der SUBSRIBE-Request mit einem 481 Call Does Not Exist-Response abgelehnt. Da
hier anzunehmen ist, dass der INVITE-Request von einem Angreifer kommt, wird er
mit einem 434 Suspicious Call-Response abgelehnt.
Dieses Verfahren ist zwar nicht für Direct-IP-SPIT konzipiert, jedoch dem hier vorgestellten
Konzept recht ähnlich. Es weißt jedoch eine essenzielle Schwachstelle auf. Der UA des
101
Kapitel 6. Direct-IP-SPIT-Schutz
Anrufers muss das Dialog Event Package unterstützen. Hier widerspricht es einer der für die
hier vorgestellte Lösung aufgestellte Anforderungen. Um DERIVE einsetzen zu können, ist
bei beiden UAs ein Änderungsaufwand nötig.
Somit können keine Teilnehmer verifiziert werden, die dieses Event-Package nicht unterstützen. Problematisch ist es nur im folgenden Szenario (vgl. Abb. 6.4, S. 102):
Angreifer
Alice
Bob
IMS
INVITE
INVITE
SUBSCRIBE
489 Bad Event
200 OK
ACK
SUBSCRIBE
489 Bad Event
200 OK
ACK
Abb. 6.4: Erfolgreicher Angriff trotz DERIVE [Kut-2008, S. 15–16].
Ein Angreifer sendet einen INVITE-Request unter dem Namen Alice an den Zielteilnehmer.
Der UA des angeblichen Anrufers unterstützt das Event-Package jedoch nicht. Aus diesem
Grund wird der Anruf normal (ohne DERIVE) eingeleitet.
Einen solchen Teilnehmer zu finden erfordert wenig Aufwand, im einfachsten Fall ist dies
ein auf den Angreifer angemeldeter Account. Somit ist es für einen Angreifer sehr leicht
DERIVE zu umgehen.
6.3.2 Direkte Überprüfung der Existenz des Anrufers
Als nächstes muss überprüft werden, ob der anrufende Teilnehmer tatsächlich unter dem
angegebenen temporären SIP URI erreichbar ist. Dafür wird ein Request an diesen SIP URI
gesendet. Es ist völlig ausreichend, wenn der entsprechende Request einen Response produziert, um die Existenz zu bestätigen. Die Verwendung dieses Requests darf den Regelungen
der betreffenden Request for Commentss (RFCs) nicht wiedersprechen. Aus diesem Grund
kommen die folgenden Nachrichtentypen in Frage:
• INVITE: Wird bei einem eingehenden Direct-IP-Call ein INVITE ausgesendet, kann
die Korrektheit des Anrufers sehr direkt verifiziert werden. Dieses Vorgehen birgt jedoch einige Nachteile. Verwendet der Anrufer dieselbe Software, sendet sein UA ebenfalls einen INVITE-Request zur Verifikation, was zu einer Schleife führt. Andererseits
können Teilnehmer automatisch auf kostenpflichtige Rufnummern gelockt werden. Aus
diesen Gründen darf der INVITE-Request nicht eingesetzt werden.
102
6.3. Machbarkeitsstudie
• MESSAGE: Durch das Senden einer Nachricht mittels MESSAGE-Request tritt ein
ähnlicher Effekt wie beim INVITE-Request auf. Anstelle eines Anrufs erhält der Zielteilnehmer eine Nachricht. Wird vom Anrufer eine falsche Adresse angegeben, wird ein
unbeteiligter Dritter belästigt. Aus diesem Grund wird der MESSAGE-Request nicht
eingesetzt.
• OPTIONS: Beim Senden eines OPTIONS-Request tritt keine Störung beim Zielteilnehmer auf. Selbst wenn die Nachricht an einen Dritten gesendet wird, hat dies keinen
Effekt. Deshalb wird der OPTIONS-Request für die Beschaffung einer zweiten Kontaktadresse gewählt.
6.3.3 Entwicklungsumgebung
Für die Validierung des Anrufers wird das Presence Event Package und der OPTIONSRequest ausgewählt. Als Nächstes muss eine Umgebung gefunden werden, in der das Konzept
testweise realisiert werden kann. Dazu muss eine geeignete Entwicklungsumgebung gefunden
werden.
Die Entwicklungsumgebung umfasst mehrere Komponenten. Zunächst muss eine den Anforderungen entsprechende Plattform gefunden werden. Auf Basis dieser Plattform kann dann
eine VoIP-Software ausgewählt werden, in der das Konzept realisiert wird.
Entwicklungsplattform
Für eine Umsetzung des Konzepts stehen eine Vielzahl von Plattformen zur Verfügung. Aus
dieser Menge muss eine geeignete Plattform gewählt werden, die den Anforderungen gerecht wird. Zunächst betrifft dies die Forderung nach Open Source-Software. Es darf kein
Programmcode eingesetzt werden, der unter keiner GNU General Public License Version 2
(GPLv2)-konformen Lizenz steht.
Zunächst muss ein geeignetes UE ausgewählt werden. Für die Entwicklung im Rahmen
des NextFactor-Projektes kommen die folgenden Arten in Frage:
• Soft-Phone auf einem Computer: Für diesen Ansatz steht eine Vielzahl von Open
Source-Lösungen im Internet bereit. Zusätzlich wird gegenwärtig im Rahmen des Masterprojekt Systementwicklung ein solcher Client entwickelt. Dieser verfügt jedoch momentan nur über eine Basisfunktionalität.
• Soft-Phone auf einem Smartphone: Zur Erfüllung der Anforderungen Demons”
trierbarkeit“ eignet sich jedoch ein Smartphone deutlich besser als ein Computer. Aus
diesem Grund wird die Realisierung einer Lösung basierend auf Smartphones vorgezogen. Sie können leicht transportiert werden und somit gut für Demonstrationen eingesetzt werden.
103
Kapitel 6. Direct-IP-SPIT-Schutz
Da jedoch die meisten Smartphones auf proprietärer Basis laufen, ist hier die Auswahl
einer Open Source-Lösung geringer. Gegenwärtig konnten fünf Open Source-Plattformen
für Smartphones ermittelt werden:
• Qt Extended [Tro-2009]: Qt Extended ist eine von der Nokia-Sparte Trolltech entwickelte Anwendungsplattform basierend auf Linux. Jedoch wurde die Weiterentwicklung
von Qt Extended am 5. März 2009 eingestellt [Nok-2009]. Qt Extendet ist zwar weiterhin verfügbar, wird jedoch nur noch ein Jahr lang gewartet. Aus diesem Grund wird
die Verwendung von Qt Extendet für die Entwicklung verworfen.
• Openmoko [Ope-2009]: Das Openmoko-Projekt entwickelt auf Basis eines selbstentwickelten Smartphones eine Open Source-Plattform. Hier sind zwei Dinge problematisch.
Zum einen läuft Openmoko nur auf einem speziellen Smartphone, das in Deutschland
nur als Import erhältlich ist. Zum anderen wurde die Entwicklung neuer Smartphones
in diesem Jahr eingefroren [Mos-2009, S. 20–24]. Somit kann Openmoko für nicht als
Plattform genutzt werden.
• Linux Mobile [LiM-2008]: Das Betriebssystem Linux Mobile (LiMo) wird aktuell von
der LiMo-Foundation gepflegt. Es basiert vollständig auf Open Source und erfüllt somit
die wichtigste Grundvoraussetzung. LiMo-basierte Handys sind in Europa jedoch erst
seit Kurzem erhältlich und noch sehr selten. Ein weiteres Problem ist, dass es für
die LiMo-Plattform bisher keinen SIP-Client gibt. Aus diesem Grund konnte diese
Plattform nicht weiter genutzt werden.
• Symbian OS [Sym-2009]: Die Nokia Firma Symbian hat mit Symbian OS ein Open
Source Betriebssystem unter der Eclipse-Lizenz [Ecl-2004] auf dem Markt. Obwohl
Symbian OS seit mehreren Jahren erhältlich ist, existiert gegenwärtig kein SIP-Client
mit Open Source-Lizenz. Symbian OS kann daher nicht als Entwicklungsplattform
verwendet werden.
• Android [OHA-2009a]: Das von der Open Handset Alliance veröffentlichte Betriebssystem Android ist somit die einzige Plattform, die gegenwertig über einen Open Source SIP-Client verfügt. Da mehrere global tätige Telekommunikationskonzerne Mitglied
[OHA-2009b] in dieser Allianz sind, werden zukünftig voraussichtlich viele Smartphone
mit Android ausgestattet sein. Aus diesen beiden Gründen und aufgrund der Erfüllung
der Anforderungen wird für die Machbarkeitsstudie Android als Entwicklungsplattform
eingesetzt.
Client
Nachdem als Entwicklungsplattform das Betriebssystem Android ausgewählt ist, muss nun
ein SIP-Client bestimmt werden. Android selbst verfügt standardgemäß über keinen eigenen
SIP-Client. Aus diesem Grund muss eine externe Software installiert werden.
104
6.3. Machbarkeitsstudie
Gegenwärtig existiert nur ein einziger Open Source SIP-Client für die Android-Plattform.
Somit wird für die Erstellung der Machbarkeitsstudie das Projekt Sipdroid [HSC-2009] von
der Firma Hughes Systique Corporation (HSC) ausgewählt. Sipdroid basiert auf der GNU
General Public License Version 3 (GPLv3). Da die GPLv3 mit der GPLv2 kompatibel ist,
kann Sipdroid ohne Konflikt eingesetzt werden.
6.3.4 Umsetzung
Das Konzept realisiert die Validierung des Anrufers über zwei Schritte. Zunächst wird die
Existenz der Anruferdaten beim Betreiber ermittelt. Anschließend wird die Korrektheit dieser
Angaben über einen Nachrichtenaustausch verifiziert. Zusätzlich mit der zeitlichen Trennung
des Statuscodes 100 Trying und 180 Ringing ergeben sich drei zu realisierende Aufgaben.
Diese werden wie folgt realisiert (vgl. Abb. 6.5, S. 105):
Alice
IMS
Bob
INVITE
100 Trying
INVITE-Dialog
Teil 1
SUBSCRIBE
200 OK
NOTIFY
SUBSCRIBEDialog
200 OK
OPTIONS
486 Busy / 200 OK
OPTIONSTransaction
180 Ringing
200 OK
INVITE-Dialog
Teil 2
ACK
Abb. 6.5: Implementierte Änderung im Ablauf eines Direct-IP-Calls.
1. Zeitliche Trennung vom Statuscode 100 Trying und 180 Ringing: Eine Trennung der beiden Statuscodes ist sehr leicht zu realisieren. Um den UA des Anrufers über
die Bearbeitung der Nachricht zu informieren, wird vor der Überprüfung der Response
100 Trying gesendet (vgl. Abb. 6.5, S. 105). Wird der Anruf als SPIT-frei erkannt,
sendet der UA den Response 180 Ringing.
2. Existenz des Anrufers beim Betreiber überprüfen: Um die Existenz des angegebenen Teilnehmers beim Betreiber zu ermitteln, wird das Presence Event Package ausgewählt. Zur Ermittlung der Existenz des Teilnehmers wird ein SUBSCRIBE-Request
105
Kapitel 6. Direct-IP-SPIT-Schutz
auf das Presence-Event an das IMS des angegebenen Betreibers gesendet. Da kein dauerhaftes Interesse an diesem Event besteht, wird der Wert des Header-Feldes Expires
auf 0 gesetzt (vgl. Notation 6.1, S. 106). Dadurch wird bewirkt, dass nur eine Antwort
mit dem gegenwärtigen Presence-Status generiert wird [RFC-3856, S. 6].
SUBSCRIBE sip : alice@atlanta . com SIP /2.0
Event : presence
Expires : 0
[...]
Notation 6.1: SUBSCRIBE-Request an den Presence-Server des Anrufers.
Wird der SUBSCRIBE-Request mit einem 200 OK-Response beantwortet, bestätigt
dies bereits die Existenz des SIP URI beim Betreiber. Trotzdem muss auf das Eintreffen
des NOTIFY-Requests gewartet werden, da dieser das Contact-Header-Feld beinhaltet.
Der Betreiber ist jedoch nicht gezwungen, hier die Kontaktadresse des Teilnehmers zu
hinterlegen. Alternativ kann hier z. B. die Kontaktmöglichkeit zum Betreiber stehen.
Ist dies der Fall, sollte die Validierung abgebrochen werden, da ein korrekter Zusammenhang zwischen permanentem und temporärem SIP URI nicht mehr gewährleistet
werden kann. Dies kann jedoch in der jeweiligen Implementierung individuell abgewägt
und entschieden werden. Außer dem Contact-Header-Feld beinhaltet der NOTIFYRequest den Subscription-State“ des Teilnehmers (vgl. Notation 6.2, S. 106). Dieser
”
gibt bereits an, ob der Teilnehmer online ist oder nicht. Alternativ kann die Presence
Information Data Format (PIDF)-Datei im Body ausgewertet werden. Hier wird jedoch
nur die Existenz des Teilnehmers ermittelt.
NOTIFY sip : bob@192 .0.2.194 SIP /2.0
Subscription - State : active ; expires =0
Contact : Alice@192 .0.2.65
Content - Type : application / pidf + xml
[...]
Notation 6.2: NOTIFY-Request vom Presence-Server des Anrufers.
3. Korrektheit der angegebenen Adresse überprüfen: Wird die Existenz des Anrufers durch das Presence Event Package verifiziert, muss als Nächstes ein OPTIONSRequest an den temporären SIP URI des Teilnehmers gesendet werden. Der RFC
schreibt vor, dass ein OPTIONS-Request genauso beantwortet wird wie ein INVITERequest [RFC-3261, S. 68]. Demzufolge können zwei verschiedene Antworten die Nachricht bestätigen. Normalerweise wird ein 486 Busy Here-Response zurückgesendet, da
106
6.4. Bewertung
der UA gegenwärtig in einen Verbindungsaufbau verwickelt ist. Da einige UAs mehrere
Telefonleitungen zur Verfügung stellen, kann genauso ein 200 OK-Response eintreffen,
da die zweite Telefonleitung unbelegt sein kann. Da nicht immer davon auszugehen
ist, dass das SIP RFC-konform implementiert ist, können auf weitere Responses zur
Bestätigung akzeptiert werden (z. B. jeder 2xx-Response).
Anschließend kann der 180 Ringing-Response gesendet werden und das Telefon anfangen zu klingeln. Die restliche Bearbeitung des INVITE-Dialogs bleibt vom Standard
unverändert.
Kann das Presence Event Package nicht abonniert werden oder wird der OPTIONSRequest nicht korrekt beantwortet, sendet Sipdroid den Response 434 Suspicious Call
an den UA des Anrufers. Durch diese Nachricht wird zum Ausdruck gebracht, dass die Angaben des Anrufers nicht korrekt überprüft werden konnten.
6.4 Bewertung
In diesem Abschnitt wird das Konzept bewertet. Einerseits ergibt sich die Frage nach der
Performance. Der Prototyp ist zwar in der Lage einen Anrufer zu verifizieren, dies braucht
jedoch seine Zeit. Inwieweit dieser Zeitaufwand ins Gewicht fällt, wird in diesem Abschnitt
beschrieben. Ein funktionierender Prototyp ist nicht ausreichend, um die Unternehmen in
der Wirtschaft zu überzeugen, ihn einzusetzen. Aus diesem Grund werden im Anschluss
Umstänge aufgelistet, die eine Einführung dieses Konzeptes rechtfertigen. Abschließend wird
betrachtet, inwiefern das Konzept von Angreifern ausgenutzt werden kann.
6.4.1 Performance
Um Aussagen über die Performance des Prototyps treffen zu können, wurden zwei Testreihen mit je 100 Anrufen durchgeführt. Diese Anrufe wurden auf je einen Prototyp mit
aktiviertem und deaktiviertem Direct-IP-SPIT-Schutz gemessen. Es wurde die Zeit ermittelt, die der Client benötigt um nach dem Eingang des ersten INVITE-Requests eine positive
Antwort zu generieren. Eine positive Antwort ist das Senden eines 180 Ringing-Response.
Zur Durchführung der Tests wurde der Android-Emulator genutzt. Dieser lief auf eiR CoreTM 2 Duo T5450-Prozessor mit 1,66 GHz, 2048 MBnem Testsystem mit Intel
Arbeitsspeicher, 100 MB-Ethernetanschluss und 6 MB-Internetanschluss. Die Tests wurden
mit zwei Accounts bei einem amerikanischen Voice over IP (VoIP)-Anbieter durchgeführt,
dessen Proxy in Denver steht. Durch diese Entfernung sind in jeder Nachricht an den Betreiber rund 0,200 s Übertragungsdauer enthalten. Die Zeiten wurden um 12:00 Uhr deutscher
Zeit und somit zu einer Ruhezeit (4:00 Uhr amerikanische Zeit) des amerikanischen Proxys
ermittelt.
107
Kapitel 6. Direct-IP-SPIT-Schutz
Ohne Schutz
s
6,
00
0
s
5,
00
0
s
4,
00
0
s
3,
00
0
s
2,
00
0
s
00
0
1,
0,
00
0
s
Mit Schutz
Abb. 6.6: Boxplot der Messergebnisse.
xmin
x̃0.25
xmed
x̃0.75
xmax
Ohne Schutz
2,405 s
2,531 s
2,837 s
3,000 s
3,538 s
Mit Schutz
4,759 s
5,016 s
5,186 s
5,417 s
6,003 s
Tab. 6.1: Fünf-Punkte-Zusammenfassung.
Zunächst erfolgt die Interpretation der Fünf-Punkte-Zusammenfassung (vgl. Tab. 6.1,
S. 108). Zur besseren Veranschaulichung werden diese Werte in einen Boxplot übertragen (vgl.
Abb. 6.6, S. 108). Offensichtlich sind bei der Messung einige Ausreißer entstanden. Das äußert
sich im großen Abstand zwischen dem oberen Quartil x̃0.75 und dem oberen Whisker xmax .
Außerdem zeigt der hohe Median xmed bei der Messung ohne Schutz an, dass die Werte leicht
linksschief sind. Demnach sind mehr Messungen hoch als umgekehrt. Bei der Messung mit
Schutz zeigt sich ein gegenteiliges Bild. Hier ist sie leicht rechtsschief, die Verarbeitung wird
ergo eher schneller als langsam durchgeführt.
Ohne Schutz
s
0
6,
00
s
5,
00
0
s
4,
00
0
s
3,
0
00
s
0
2,
00
s
00
0
1,
0,
00
0
s
Mit Schutz
Abb. 6.7: Boxplot der Messergebnisse bis zum 90 % Perzentil.
Eine genauere Betrachtung des Bereichs zwischen oberes Quartil und oberer Whisker lohnt
sich. Dieser Bereich ist auffällig groß, was bereits zur Vermutung von Ausreißern geführt hat.
Bei großen Betreibern wird aus diesem Grund anstelle des Maximum das 80 %-, 90 %und 95 %Perzentil gefordert (vgl. Tab. 6.2, S. 109). Werden diese Perzentile berechnet und
eingesetzt bestätigt sich die Vermutung (vgl. Abb. 6.7, S. 108). Hierbei wurden das 80 % und
das 95 % Perzentil als Punkt eingezeichnet.
Nach dieser Betrachtung ergibt sich die Frage nach der Streuung. Da der Wert der empirischen Varianz s2 nicht dasselbe Vorzeichen hat, wie die vorliegenden Messwerte, wird hier
die Standardabweichung s betrachtet (vgl. Tab. 6.3, S. 109). Es wird deutlich, dass beide
108
6.4. Bewertung
80 %
90 %
95 %
Ohne Schutz
3,058 s
3,266 s
3,316 s
Mit Schutz
5,474 s
5,590 s
5,806 s
Tab. 6.2: Zusätzliche Perzentilen der Messergebnisse.
Ohne Schutz
5,
s
00
6,
0
00
00
4,
0
s
s
0
s
0
00
3,
2,
00
0
s
s
0
00
1,
0,
00
0
s
Mit Schutz
Abb. 6.8: Standardabweichung um das arithmetische Mittel.
Messreihen nahezu gleich wenig streuen. Diese Feststellung verdeutlicht sich in der visuellen
Darstellung mittels Fehlerbalken (vgl. Abb. 6.8, S. 109).
Die geringe Streuung lässt ein erwartungsgerechtes Messergebnis vermuten. Um diese Annahme zu bestätigen, wird das Konfidenzintervall berechnet. Das Konfidenzintervall gibt
an, in welchem Bereich um das arithmetische Mittel der Erwartungswert µ mit einer bestimmten Wahrscheinlichkeit α (Konfidenzniveau) liegt. Im Rahmen dieser Arbeit wird das
Konfidenzintervall für Konfidenzniveau von 0,95 % ermittelt (vgl. Tab. 6.4, S. 110).
Offensichtlich befindet sich das Konfidenzintervall ± 0,050 s um das arithmetische Mittel.
Wie nun sehr schön erkannt werden kann (farbig markierter Bereich), ist dieses Intervall
unter Einsatz des Direct-IP-SPIT-Schutzes nicht signifikant größer als ohne diesen Schutz
(vgl. Abb. 6.9, S. 110). Im Mittel handelt es sich bei beiden Messungen um ein Intervall
von rund 0,116 s Länge. Somit ist klar, dass der Einsatz des Direct-IP-SPIT-Schutzes den
Erwartungswert nur verschiebt, aber nicht vergrößert.
Abschließend lässt sich sagen, dass die Aktivierung des Direct-IP-Schutzes im Client nur
eine additive Erhöhung der Verarbeitungsdauer nach sich zieht. Nach rund drei Sekunden
mehr hat der Prototyp den Anrufer verifiziert. Wird berücksichtigt, dass der Proxy in Denver
steht, handelt es sich bei dieser Implementierung um eine sehr effiziente Lösung. Dabei leidet
x̄
s
s2
Ohne Schutz
2,821 s
0,289 s
0,083 s2
Mit Schutz
5,240 s
0,296 s
0,087 s2
Tab. 6.3: Arithmetisches Mittel, Standardabweichung und empirische Varianz.
109
Kapitel 6. Direct-IP-SPIT-Schutz
24 x
20 x
16 x
12 x
8x
s
0
6,
5,
5
5,
0
s
s
s
4,
0
4,
5
s
s
5
3,
s
0
3,
2,
5
s
4x
Abb. 6.9: Konfidenzintervall beider Messungen.
L
x̄
U
Ohne Schutz
2,764 s
2,821 s
2,879 s
Mit Schutz
5,181 s
5,240 s
5,298 s
Tab. 6.4: Konfidenzintervall zum Konfidenzniveau 95 %.
die Stabilität von Sipdroid nicht unter diesem Konzept. Dieses ist genauso streuungsarm wie
Sipdroid selbst.
6.4.2 Akzeptanz
Das hier vorgestellte Konzept sorgt für eine Reduzierung des Direct-IP-SPIT-Eingangs. Der
beste Schutz ist natürlich ein generelles Verbot von Direct-IP-Call. Wird sie erlaubt, kann
dies ein Wettbewerbsvorteil für den Anbieter sein. Für eine Akzeptanz in der Praxis, muss
es jedoch zusätzlich wirtschaftlich sein.
Dieser Schutz erwirtschaftet jedoch keinen direkten Gewinn. Ein finanzieller Vorteil lässt
sich hier nur indirekt zuordnen. Hierbei können verschiedene Gesichtspunkte berücksichtigt
werden [ITU-2008, S. 13–14], die je nach Einsatzgebiet unterschiedlich schwer wiegen.
Als unmittelbarer Schaden tritt der Verlust durch Betrug oder illegalen Aktivitäten
im Allgemeinen auf. Gibt ein Teilnehmer seine Bankdaten an einen Spammer weiter, weil er
110
6.4. Bewertung
durch einen Vishing-Anruf getäuscht wird, ist in der Regel ein direkter Geldverlust die Folge.
Entdeckt der Teilnehmer den Betrug nicht, kann der Ruf des Unternehmens darunter leiden.
Liegt ein Betrugsfall oder etwas Ähnliches vor, fallen in der Regel Anwalts- bis Gerichtskosten an. Wird SPIT unterbunden, können diese Kosten gänzlich vermieden werden.
Die Kosten für die Infrastruktur können mit diesem Ansatz gesenkt werden. Erlaubt
der Betreiber Direct-IP-Calls und ermöglicht somit Direct-IP-SPIT, gehen die Anrufer nicht
mehr durch sein Netz. Somit entfallen die Kosten für die Vermittlung, Übertragung und
Filterung. Die Kosten werden effektiv auf den Kunden ausgelagert. Es verbleiben nur die
Kosten für die Verarbeitung des SUBSCRIBE-Requests.
Gerade wenn die Kosten der Filterung usw. auf den Kunden übertragen werden, ist es für
den Betreiber äußerst wichtig einen SPIT-Schutz zu bieten. Tritt zu viel SPIT auf, kann dies
zu einem Wettbewerbsnachteil (z. B. Rufverlust) für den Betreiber führen.
Mit einem Blick auf empirische Untersuchungen (vgl. Abb. 6.10, S. 111) zeigt sich, dass
die weit größten Kosten der drohende Produktivitätsverlust sind. Demnach werden die
weltweiten Kosten für Spam im Jahr 2009 auf ungefähr 130 Mrd. $ prognostiziert [Jen-2009].
85 % dieser Kosten und somit 110,5 Mrd. $ resultieren aus dem Produktivitätsverlust. Diese
Kosten können in der Zukunft weiter steigen. Zum Vergleich betrugen die Gesamtkosten für
Spam vor vier Jahren 50 Mrd. $ [Fer-2005, S. 6].
10 %
5%
Produktivitätsverlust
Kosten für den Help Desk
Soft- und Hardwarekosten
85 %
Abb. 6.10: Verteilung der Spamkosten für das Jahr 2009 [Jen-2009].
Darüber hinaus, gibt es gegenwärtig der Europäischen Union (EU) oder in der Bundesrepublik kein explizites Anti-Spam-Gesetz. Wird ein derartiges Gesetz eingeführt, können
die ISP dazu verpflichtet werden, für Schutzmaßnahmen zu sorgen.
6.4.3 Sicherheit
Die Arbeitsweise des Prototyps kann durch einen Angreifer negativ ausgenutzt werden. Beispielsweise kann er mehrere INVITE-Requests aussenden und somit einen Denial of Service
(DoS) auslösen. Der angegebene Name ist gefälscht, jedoch einem existierenden Teilnehmer
zugeordnet und registriert. Dadurch werden alle UAs zunächst viele SUBSCRIBE-Requests
an das IMS und anschließend OPTIONS-Requests an den angegebenen Teilnehmer senden.
Der wahre Angreifer bleibt unerkannt, da er die Prototypen als Relay benutzt.
111
Kapitel 6. Direct-IP-SPIT-Schutz
Der Prototyp selbst kann gegen diese DoS-Angriffe nichts unternehmen, derselbe Request
geht doppelt ein. In solch einem Fall kann der Prototyp eine erneute Bearbeitung ausschließen. Ansonsten ließe sich nur betreiberseitig eine Abwehr realisieren. Durch den Einsatz von
Intrusion Detection kann das unnatürlich hohe Aufkommen an SUBSCRIBE-Requests auf
einen Presence-Status erkannt und blockiert werden. Da der Prototyp keine positive Antwort
vom IMS erhält, lehnt er den Anruf ab, ohne den OPTIONS-Request auszusenden.
6.5 Zusammenfassung
Um Direct-IP-SPIT abwehren zu können, musste ein Konzept entwickelt werden, das die
Echtheit des SIP URI überprüfen kann. Durch diesen Schritt kann verhindert werden, dass
Spammer ihre Identitäten beim Versand des SPIT verschleiern. Ohne verschleierte Identität,
so die Annahme, neigen Spammer weniger zum Versand von SPIT.
Die Idee für das Konzept war, die angegebene Identität über nur zwei Nachrichtenwechsel zu verifizieren. Einerseits wird beim Betreiber die Existenz des angeblichen Anrufers
überprüft, andererseits wird eine Nachricht zum angegebenen Anrufer gesendet.
Um das Konzept zu testen, wurde eine Machbarkeitsstudie entwickelt. Aufgrund verschiedener Anforderungen ist hierfür das Smartphone-Betriebssystem Android und der SIPClient Sipdroid ausgewählt worden.
Für die Überprüfung des Teilnehmers beim Betreiber wurde das Presence Event Package
genutzt. Dieses Event teilt Sipdroid bei einem erfolgreichen Abonnement den Status und
somit die Existenz des Teilnehmers mit. Um eine Nachricht zum angeblichen Anrufer zu senden, wird ein OPTIONS-Request gesendet. Werden alle Nachrichten erfolgreich ausgetauscht,
gilt der Anrufer als valide und wird angenommen. Ab diesem Punkt darf das Endgerät des
angerufenen Teilnehmers anfangen zu klingeln.
Die mit diesem Prototyp durchgeführte Analyse hat gezeigt, dass dieses Verfahren nur
einen additiven Faktor für die Verarbeitungsdauer bedeutet. Nach drei Sekunden ist mit
einer positiven Antwort zu rechnen. Bei diesem Wert sind rund 0,400 s Übetragungsdauer
für zwei Nachrichten nach und von Denver enthalten.
Der beste Schutz gegen Direct-IP-SPIT ist nach wie vor, das Verbot von Direct-IP-Calls.
Will der Betreiber seinen Kunden diesen Service trotzdem bieten, ist der vermiedene Produktivitätsverlust durch den Schutz der finanziell größte Bonus. Daher lohnt sich der
Einsatz dieses Konzeptes für die Betreiber und Endkunden.
Dank des in diesem Kapitel vorgestellten Konzeptes kann der Anrufer ohne große Rechenleistung verifiziert werden. Um dieses Verfahren effektiv einzusetzen, muss der Betreiber
jedoch starke Identitäten sicher stellen. Ist dies nicht der Fall, ist das hier vorgestellte Konzept
wirkungslos.
112
Kapitel
7
Zusammenfassung
Spam over Internet Telephony (SPIT) ist eine ernste Bedrohung für den Voice over IP (VoIP)Dienst. Da die Belästigung deutlich höher ist, als beim herkömmlichen E-Mail-Spam, müssen
Gegenmaßnahmen ergriffen werden. Dafür gilt es, zunächst die Funktionsweise des SPIT zu
verstehen.
Um SPIT durchführen zu können, ist der Spammer darauf angewiesen valide Adressen zu sammeln. Dieser Schritt betrifft das IMS zwar nicht direkt, kann jedoch bei der
SPIT-Bekämpfung nicht außer acht gelassen werden. Aus diesem Grund werden präventive
Abwehrmaßnahmen vorgestellt. Wird verhindert, dass der Spammer valide Adressen erhält,
wird somit das SPIT-Aufkommen generell reduziert.
Da nicht davon auszugehen ist, dass Spammer durch diese Maßnahmen an gar keine Adressen mehr gelangen, ist eine zusätzliche Abwehr des gesendeten SPIT notwendig. Das
Filtern des Nachrichteninhalts erweist sich bei SPIT jedoch als nutzlos. Eine Filterung ist
erst möglich, nachdem das Telefon des Opfers geklingelt und dieser abgenommen hat. Das
Klingeln des Endgerätes ist jedoch zu verhindern.
Aus diesem Grund werden identitätsbasierte und interaktive Abwehrmaßnahmen beschrieben. Die identitätsbasierten Maßnahmen können hierbei für eine rechenleistungsschonende
Vorsortierung der Anrufe dienen. Die übrig gebliebenen unklaren Anrufe können anschließend einem interaktiven Verfahren unterzogen werden. Insbesondere die Kombination aus
Whitelists und Turingtests erweist sich hier als besonders effizient.
Damit diese Maßnahmen aussagekräftig und somit wirksam sind, muss das IMS für starke
Identitäten sorgen. Wenn der Spammer in der Lage ist, beliebige Absendeadressen anzugeben, kann er somit leicht diese Verfahren umgehen.
Um starke Identitäten zu gewähren, bietet das IMS verschiedene Sicherheitsverfahren.
Jeder Teilnehmer, der sich am IMS registriert, muss mindestens mittels HTTP Digest Authentication verifiziert werden. Um das Erspähen von ausgetauschten Identitätsdaten zu verhindern, empfiehlt sich darüber hinaus der Einsatz weiterer Verfahren. Die Nutzdaten können
113
Kapitel 7. Zusammenfassung
beispielsweise durch den Einsatz von Session Initiation Protocols (SIPs) vor dem Mitlesen
geschützt werden.
Die problematischste Bedrohung ist jedoch der Einsatz von Direct-IP-SPIT. Dieser
ist seitens der Betreiber nicht abzuwehren, da die Nachrichten zwischen den Endgeräten
direkt ausgetauscht werden. Die einzige Möglichkeit besteht darin, direkte Anrufe generell zu
unterbinden. Für den Endkunden ist sicherlich der Einsatz einer speziellen Abwehrmaßnahme
angenehmer.
Aus diesem Grund wird ein Konzept beschrieben, das clientseitig für einen SPIT-Schutz
sorgt. Durch zwei Nachrichtenwechsel versucht es, die Identität des Anrufers zu verifizieren.
Die Annahme dahinter ist, dass Spammer Direct-IP-SPIT einsetzen, weil sie keinen validen
Account haben, um nicht entdeckt werden zu können. Doch kann das Konzept nur eingesetzt
werden, wenn die Betreiber starke Identitäten sicherstellen können. Ist dies nicht der Fall,
bringen die gesammelten Informationen keinen Mehrwert. Der Spammer bräuchte nur falsche
Identitätsdaten vortäuschen, um den Schutz zu umgehen.
7.1 Fazit
Werden alle Ansätze verfolgt, kann das Aufkommen von SPIT deutlich reduziert werden
(vgl. Abb. 7.1, S. 114). Selbstverständlich ist die Behauptung, SPIT wird dadurch gänzlich
verschwinden, zu weit gegriffen. Ein 100%iger Schutz gegen SPIT wird es vermutlich analog
zum E-Mail-Spam nie geben. Das liegt an mehreren Gründen:
1. Es darf zu keinen falschen Positiven kommen.
2. Es liegt im Voraus kein Wissen über den Inhalt der Nachricht vor.
3. Spammer werden aufgrund schlechter Passwörter und Ähnlichem immer in der Lage
sein, Botnetze usw. einzusetzen.
Spammer
Gesamtes SPIT
Abwehrmaßnahmen
SPIT mit falscher Identität
Sicherheitsmaßnahmen
Verbleibendes SPIT
Opfer
Abb. 7.1: Reduktion von SPIT via Proxy.
114
7.2. Ausblick
Eine Reduzierung des Aufkommens ist bereits ein wichtiger Schritt. Je weniger SPIT durchgestellt wird, je weniger attraktiv wird das Medium VoIP für Spammer.
Da der Einsatz von Direct-IP-SPIT alle serverseitigen Abwehrmaßnahmen umgeht, ist
diese Form des Spams besonders kritisch. Das für dieses Problem entwickelte Konzept bietet
einen ersten Schutz. In Kombination mit Whitelists und starken Identitäten kann hiermit
von vertrauenswürdigen Anrufern ausgegangen werden.
Die Betreiber der IMS dürfen jedoch nicht warten, bis SPIT ein Massenproblem
wird. Um es wirklich einzudämmen, muss jetzt gehandelt werden.
7.2 Ausblick
Durch die Umsetzung des Konzeptes ist ein erster Schutz vor Direct-IP-SPIT möglich. Dieser
Mechanismus ist jedoch weiter ausbaufähig.
Bisher setzt der Prototyp keine Whitelists ein. Eine derartige Erweiterung ist jedoch sehr
wichtig, da Whitelists eine sehr gute Vorfilterung liefern. Hierdurch kann auf den Einsatz des
Direct-IP-SPIT-Schutzes verzichtet werden, was die Aufbauphase um rund drei Sekunden
beschleunigt. Diese Vorfilterung kann selbstverständlich nur erfolgen, wenn starke Identitäten
garantiert sind.
Außerdem ist denkbar, das Dialog Event Package zu implementieren, um dem Nutzer
eine Auswahl zu ermöglichen. Alternativ kann auf diese Verfahren gewechselt werden, falls
das Presence Event Package nicht unterstützt wird.
Ein Problem für das Konzept ist der Anruf eines anonymen Teilnehmers. Ruft ein
Teilnehmer anonym an, wird er in jedem Fall abgewehrt. Da das UE nicht verpflichtet ist,
anonyme Anrufe zu verarbeiten, ist dies prinzipiell kein Problem [RFC-5079, S. 2]. Dem
Anrufer kann dies mit einem 433 Anonymity Disallowed-Response signalisiert werden. Um
dem Anwender von Sipdroid die Wahl zu lassen, kann der Schutz parametrisiert werden.
Dann können jedoch ebenso Spammer den Schutz umgehen, indem sie anonym anrufen.
115
Kapitel 7. Zusammenfassung
116
Abkürzungsverzeichnis
AH
Authentication Header.
AKA
Authentication and Key Agreement.
AS
Application Server.
AUTN
Authentication Token.
B2BUA
Back to Back User Agent.
BCC
Blind Carbon Copy.
BSI
Bundesamt für Sicherheit in der Informationstechnik.
CAPTCHA
Completely Automated Public Turing Test to Tell Computers and Humans Apart.
CK
Cipher Key.
CPT
Conditional Probability Table.
CSCF
Call Session Control Function.
117
Glossary
DERIVE
Dialog Event for Identity Verification.
DNS
Domain Name Service.
DoS
Denial of Service.
ENUM
E.164 Number Mapping.
ESP
Encapsulating Security Payload.
EU
Europäischen Union.
GPLv2
GNU General Public License Version 2.
GPLv3
GNU General Public License Version 3.
GPRS
General Packet Radio Service.
GSM
Global System for Mobile Communications.
HSC
Hughes Systique Corporation.
HSS
Home Subscriber Server.
HTML
Hypertext Markup Language.
HTTP
Hypertext Transport Protocol.
HTTPS
Hypertext Transport Protocol Security.
118
Glossary
I-CSCF
Interrogating Call Session Control Function.
IANA
Internet Assigned Numbers Authority.
IETF
Internet Engineering Task Force.
IK
Integrity Key.
IM
Instant Messaging.
IMC
IMS Credentials.
IMPI
IP Multimedia Private User Identity.
IMPU
IP Multimedia Public User Identity.
IMS
IP Multimedia Subsystem.
IP
Internet Protocol.
IPsec
Internet Protocol Security.
IPv4
Internet Protocol Version 4.
IPv6
Internet Protocol Version 6.
ISDN
Integrated Service Digital Network.
ISIM
IP Multimedia Services Identity Module.
ISP
Internet Service Provider.
119
Glossary
ITU-T
International Telecommunication Union - Telecommunication Standardization Sector.
KI
Künstlichen Intelligenz.
KMU
kleinere und mittlere Unternehmen.
LiMo
Linux Mobile.
MD5
Message Digest 5.
NAI
Network Access Identifier.
NextFactor
Next Generation Telecommunication Factory.
NFC
Near Field Communication.
NGN
Next Generation Network.
NIST
National Institute of Standards and Technology.
OCR
Optical Character Recognition.
OSI
Open Systems Interconnection.
P-CSCF
Proxy Call Session Control Function.
PIDF
Presence Information Data Format.
PKI
Public-Key-Infrastruktur.
120
Glossary
PSTN
Public Switched Telephone Network.
QoS
Quality of Service.
RAND
Random Challenge.
RES
Response.
RFC
Request for Comments.
RTP
Real-time Transport Protocol.
S-CSCF
Serving Call Session Control Function.
S/MIME
Secure/Multipurpose Internet Mail Extensions.
SA
Sicherheitsassoziationen.
SCTP
Session Control Transmission Protocol.
SDP
Session Description Protocol.
SHA-1
Secure Hash Algorithm 1.
SHA-3
Secure Hash Algorithm 3.
SIM
Subscriber Identity Module.
SIP
Session Initiation Protocol.
121
Glossary
SIP URI
Session Initiation Protocol Uniform Ressource Identifier.
SIPS
Session Initiation Protocol Security.
SIPS URI
Session Initiation Protocol Security Uniform Ressource Identifier.
SLF
Subscription Locator Function.
R
SPAM
R
Spiced Ham.
SPI
Security Parameter Index.
SPIM
Spam over Instant Messaging.
SPIT
Spam over Internet Telephony.
SPPP
Spam over Presence Protocol.
SQN
Sequence Number.
TCP
Transmission Control Protocol.
THIG
Topology Hiding Inter-network Gateway.
TLS
Transport Layer Security.
TTCN-3
Testing and Test Control Notation Version 3.
TTL
Time to Live.
122
Glossary
UA
User Agent.
UAC
User Agent Client.
UAS
User Agent Server.
UCE
Unsolicited Commercial E-Mail.
UDP
User Datagram Protocol.
UE
User Equipment.
UICC
Universal Integrated Circuit Card.
URI
Uniform Ressource Identifier.
USIM
Universal Mobile Telecommunications System Subscriber Identity Module.
VoIP
Voice over IP.
VPN
Virtual Private Network.
W-LAN
Wireless Local Area Network.
XRES
Expected Response.
123
Glossary
124
Literatur- und Quellenverzeichnis
[3GP-2009] 3rd Generation Partnership Project: TS 45.-series specifications. http:
//www.3gpp.org/ftp/Specs/html-info/45-series.htm, zuletzt besucht am
30. 09. 2009.
[Aba-2003] Abadi, Martı́n et al.: Bankable Postage for Network Services. In: Advances in
Computing Science – ASIAN 2003 Bd. 2896/2003, Springer, 2003, S. 72–90
[Ahn-2003] Ahn, Luis von et al.: CAPTCHA: Using Hard AI Problems For Security. In: In
Proceedings of Eurocrypt 2003 Bd. 2656, 2003, S. 294–311
[Aud-2008] Audet, Francois: The use of the SIPS URI Scheme in the Session Initiation
Protocol (SIP). 2008. – Internet-Draft
[Ble-2005]
Bless, Roland et al.: Sichere Netzwerkkommunikation: Grundlagen, Protokolle
und Architekturen. 1. Auflage. Berlin Heidelberg, Deutschland : Springer, 2005
[BMJ-2008a] Bundesministerium der Justiz (Hrsg.): Gesetz gegen den unlauteren Wettbewerb. 2008
[BMJ-2008b] Bundesministerium der Justiz (Hrsg.): Telemediengesetz. 2008
[BMJ-2009a] Bundesministerium der Justiz (Hrsg.): Bundesdatenschutzgesetz. 2009
[BMJ-2009b] Bundesministerium der Justiz (Hrsg.): Bürgerliches Gesetzbuch. 2009
[BMJ-2009c] Bundesministerium der Justiz (Hrsg.): Gesetz über Unterlassungsklagen
bei Verbraucherrechts- und anderen Verstößen. 2009
[BMJ-2009d] Bundesministerium der Justiz (Hrsg.): Strafgesetzbuch. 2009
[BMJ-2009e] Bundesministerium der Justiz (Hrsg.): Telekommunikationsgesetz. 2009
[Bru-2003] Bruns, Holger:
Die Verwundbarkeit der Microsoft Software.
http://www.
heise.de/tp/r4/artikel/15/15329/1.html, erstellt am 05. 08. 2003, zuletzt
besucht am 30. 09. 2009.
125
Literatur- und Quellenverzeichnis
[BSI-2005] Topf, Jochen et al. ; Bundesamt für Sicherheit in der Informationstechnik (Hrsg.): Antispam - Strategien: Unerwünschte E-Mails erkennen und
abwehren. 1. Auflage. Köln, Deutschland : Bundesanzeiger Verlag, 2005
[BSI-2009] Bundesamt für Sicherheit in der Informationstechnik (Hrsg.): Lagebericht 4. Quartal 2008. 2009
[Bul-2008] Bulk Email Software Superstore:
Address Lists - Buy.
Email Mailing Lists - Email
http://www.americaint.com/bulk-email-lists/
buy-email-lists.html, erstellt am 06. 10. 2008, zuletzt besucht am
30. 09. 2009.
[Bun-2009] Bundesnetzagentur:
Zertifizierungsdiensteanbieter (ZDA).
http:
//www.bundesnetzagentur.de/enid/1f39643c254eb4a5d1a22d3531f9c644,
0/ph.html, erstellt am 17. 06. 2009, zuletzt besucht am 30. 09. 2009.
[CDT-2003] Center for Democracy & Technology (Hrsg.): Why Am I Getting All
This Spam. 2003
[CGM-2008] Camarillo, Gonzalo ; Garcı́a-Martı́n, Maguel A.: The 3G IP Multimedia
Subsystem (IMS): Merging the Internet and the Cellular Worlds. 3. Auflage.
Chichester, England : Wiley, 2008
[Cis-2008]
Cisco Systems (Hrsg.): Cisco 2008 Annual Security Report: Highlighting global
security threats and trends. 2008
[Del-2000]
Dellarocas, Chrysanthos: Immunizing Online Reputation Reporting Systems
Against Unfair Ratings and Discriminatory Behavior. In: EC ’00: Proceedings
of the 2nd ACM conference on Electronic commerce. New York : ACM, 2000, S.
150–157
[Dix-2008] Dix, Alexander ; Berliner Beauftragter für Datenschutz und Informationsfreiheit (Hrsg.): Bekämpfung von SPAM: Ratgeber zum Datenschutz
9. 2008
[Dud-2006] Dudenredaktion (Hrsg.): Duden: Das Fremdwörterbuch. 9., aktualisierte Auflage. Mannheim, Deutschland : Bibliographisches Institut, 2006
[Ecl-2004]
Eclipse Foundation (Hrsg.): Eclipse Public License - v 1.0. 2004
[Egg-2005] Eggendorfer, Tobias: No Spam!: Wie Spam gar nicht erst entsteht. 1. Auflage.
Frankfurt, Deutschland : Software & Support, 2005
[ElB-2006] El Baker Nassar, Mohamed et al.: Intrusion detection mechanisms for VoIP
applications. In: The 3rd Annual VoIP Security Workshop, ACM, 2006
126
Literatur- und Quellenverzeichnis
[ElK-2008] El Khayari, Rachid: SPAM over Internet Telephony and how to deal with it,
Technische Universität Darmstadt, Diplomarbeit, 2008
[ENI-2007] European Network and Information Security Agency (Hrsg.): Botnets
- The Silent Threat. 2007
[EPR-2002] Europäisches Parlament und der Rat (Hrsg.): Richtlinie 2002/58/EG.
2002
[Fer-2005]
Ferris, David ; Jennings, Richi ; Williams, Chris: The Global Economic
Impact of Spam, 2005 / Ferris Research. 2005. – Bericht
[FHG-2009] Fraunhofer FOKUS NGNI: The Open Source IMS Core Project. http://
www.openimscore.org/, erstellt am 16. 09. 2009, zuletzt besucht am 30. 09. 2009.
[Fin-2009]
Finjan: Cybercrime Intelligence Report. 2009 (2). – Forschungsbericht
[GW-2008] Graumann, Sabine ; Wolf, Malthe:
11. Faktenbericht 2008: Eine Se-
kundärstudie der TNS Infratest Business Intelligence. 1. Auflage. München,
Deutschland : BMWi, 2008
[Han-2006] Hansen, Markus et al.: Developing a Legally Compliant Reachability Management System as a Countermeasure against SPIT. In: Proceedings of the Third
Annual VoIP Security Workshop, Berlin, 2006
[Hof-2009] Hoffstadt, Dirk et al.:
SPAM over Internet Telephony (SPIT) und Ab-
wehrmöglichkeiten. 2009
[HSC-2009] Corporation, Hughes S.: Sipdroid - Project Hosting on SIP/VoIP client for
Android. http://www.sipdroid.org/, zuletzt besucht am 30. 09. 2009.
[IAN-2009] The Internet Assigned Numbers Authority:
tocol (SIP) Event Types Namespace.
Session Initiation Pro-
http://www.iana.org/assignments/
sip-events, erstellt am 23. 04. 2009, zuletzt besucht am 30. 09. 2009.
[ICQ-2009] Mirabilis: ICQ. http://www.icq.com/, zuletzt besucht am 30. 09. 2009.
[ISO-1996] International Organisation for Standardization (Hrsg.): International Standard 7498-1: Information technology – Open Systems Interconnection –
Basic Reference Model: The Basic Model. 2. Auflage. 1996
[ITU-2004] International Telecommunication Union - Telecommunication Standardization Sector (Hrsg.): Y.2001: Global Information Infrastructure, Internet Protocol Aspects and Next-Generation Networks. 2004
127
Literatur- und Quellenverzeichnis
[ITU-2005] International Telecommunication Union - Telecommunication Standardization Sector (Hrsg.): E.164: The international public telecommunication numbering plan. 2005
[ITU-2006a] Bueti, Cristina ; ITU (Hrsg.): ITU Survey on Anti-Spam Legislation Worldwide. 2006
[ITU-2006b] International Telecommunication Union - Telecommunication
Standardization Sector (Hrsg.): G.723.1 : Dual rate speech coder for multimedia communications transmitting at 5.3 and 6.3 kbit/s. 2006
[ITU-2008] Bauer, Johannes M. et al. ; ITU-T Study Group 3 (Hrsg.): Financial Aspects
of Network Security: Malware and Spam. 2008
[Jen-2009] Jennings, Richi:
Cost of Spam is Flattening.
http://www.ferris.com/
2009/01/28/cost-of-spam-is-flattening-our-2009-predictions/, erstellt
am 28. 01. 2009, zuletzt besucht am 30. 09. 2009.
[Kar-2006] Karge, Sven et al. ; Hessisches Miniterium für Wirtschaft, Verkehr
und Landesentwicklung (Hrsg.): Anti-SPAM: Ein Leitfaden über und gegen
unverlangte E-Mail-Werbung. 1. Auflage. Wiesbaden, Deutschland : HA Hessen
Agentur, 2006
[Kut-2008] Kuthan, Jiri et al.: Dialog Event foR Identity VErification. 2008. – InternetDraft
[LG-2008]
Landgericht Hamburg (Hrsg.): Aktenzeichen: 327 O 493/08. 2008
[LiM-2008] LiMo Foundation (Hrsg.): LiMo Foundation Platform Architecture White
Paper. 2008
[Man-2009] ManyBrain: Mailinator - Let Them Eat Spam! http://www.mailinator.
com/, zuletzt besucht am 30. 09. 2009.
[Mas-2008] Massoth, Michael: Next Generation Telecommunication Factory NextFactor“.
”
2008. – Forschungsantrag
[Mas-2009] Massoth, Michael:
Masterprojekt Systementwicklung I + II, SS 2009.
http://www.fbi.h-da.de/organisation/personen/massoth-michael/
masterprojekt-systementwicklung-i-ii-ws-200910.html, zuletzt besucht
am 30. 09. 2009.
[McA-2009] McAfee (Hrsg.): The Carbon Footprint of Email Spam Report. 2009
[McD-2009] McDonald, Cameron et al.: Differential Path for SHA-1 with complexity
O(252 ) / International Association for Cryptologic Research. 2009. – Bericht
128
Literatur- und Quellenverzeichnis
[Mes-2009] MessageLabs (Hrsg.): MessageLabs Intelligence: Q2/June 2009 “Cutwail’s
bounce-back; Instant messages can lead to instant malware”. 2009
[Mon-2009] Monty Python Pictures: SPAM. http://pythonline.com/node/18297641,
erstellt am 23. 03. 2009, zuletzt besucht am 30. 09. 2009.
[Moo-1965] Moore, Gordon E.: Cramming more components onto integrated circuits. In:
Electronics, 38 (1965), Nr. 8, S. 114–117
[Mos-2009] Moss-Pultz, Sean: Open for Opportunities. In: OpenExpo 2009 Bern, 2009
[Mun-2008] Munakata, Mayumi ; Schubert, Shida ; Ohba, Takumi: Guidelines for Using
the Privacy Mechanism for SIP. 2008. – Internet-Draft
[Nic-2007]
Niccolini, Saverio et al.: SIP Extensions for SPIT identification. 2007. –
Internet-Draft
[NIS-2007] Kayser, Richard F.: Announcing Request for Candidate Algorithm Nominations
for a New Cryptographic Hash Algorithm (SHA-3) Family. In: Federal Register
Notice 72 (2007), Nr. 212, S. 62212–62220
[NIS-2008] National Institute of Standards and Technology (Hrsg.): Secure Hash
Standard (SHS). 2008. – FIPS PUB 180-3
[Nok-2009] Nokia: Qt Software discontinues Qt Extended. http://qt.nokia.com/about/
news/qt-software-discontinues-qt-extended, erstellt am 26. 03. 2009, zuletzt besucht am 30. 09. 2009.
[OHA-2009a] Open Handset Alliance: Android. http://www.openhandsetalliance.
com/android_overview.html, zuletzt besucht am 30. 09. 2009.
[OHA-2009b] Open Handset Alliance: Members. http://www.openhandsetalliance.
com/oha_members.html, zuletzt besucht am 30. 09. 2009.
[OLG-2006] Oberlandesgericht Düsseldorf (Hrsg.): Aktenzeichen: I-15 U 45/06. 2006
[Ope-2009] Openmoko: Openmoko Om 2008. http://www.openmoko.com/download.html,
zuletzt besucht am 30. 09. 2009.
[Ord-2007] Ordoñez,
end
Was
Roderick:
Hot
Like
CAPTCHA
Me?
Wish
Your
Girlfri-
http://blog.trendmicro.com/
captcha-wish-your-girlfriend-was-hot-like-me/, erstellt am 27. 10.
2007, zuletzt besucht am 30. 09. 2009.
[Sch-1997] Schaller, Robert R.: Moore’s law: past, present, and future. In: IEEE Spectrum
34 (1997), Nr. 6, S. 52–59
129
Literatur- und Quellenverzeichnis
[Sis-2009]
Sisalem, Dorgham et al.: SIP Security. 1. Auflage. Chichester, England : Wiley,
2009
[sno-2009]
snom technology: snom 870. http://www.snom.com/uploads/pics/snom_
870_links_hoch_perspektive_800px_06.jpg, zuletzt besucht am 30. 09. 2009.
[Sym-2009] Symbian Foundation:
Home of the Symbian Foundation.
http://www.
symbian.org/, zuletzt besucht am 30. 09. 2009.
[TIS-2008] Telecommunications and Internet converged Services and Protocols for Advanced Networking: Feasibility study of prevention of unsolicited communication in the NGN / European Telecommunications Standards
Institute. 2008 (TR 187.009 V2.1.1). – Technical Report
[TIS-2009] Telecommunications and Internet converged Services and Protocols for Advanced Networking: NGN Functional Architecture / European
Telecommunications Standards Institute. 2009 (ES 282.001 V3.4.1). – ETSI
Standard
[TNG-2006] Rohwer, Thomas et al. ; The Net Generation (Hrsg.): White Paper: Abwehr
von Spam over Internet Telephony“(SPIT-AL). 2006
”
[Tro-2009] Trolltech: Qt Extended. http://qtextended.org/modules/developers/,
zuletzt besucht am 30. 09. 2009.
[Tsc-2008] Tschofenig, Hannes et al.: Completely Automated Public Turing Test to Tell
Computers and Humans Apart (CAPTCHA) based Robot Challenges for SIP.
2008. – Internet-Draft
[TSG-2009a] Technical Specification Group Services and System Aspects: 3G security; Access security for IP-based services / 3rd Generation Partnership Project. 2009 (TS 33.203 V9.1.0). – Technical Specification
[TSG-2009b] Technical Specification Group Services and System Aspects: Characteristics of the IP Multimedia Services Identity Module (ISIM) application
/ 3rd Generation Partnership Project. 2009 (TS 31.103 V8.1.0). – Technical
Specification
[TSG-2009c] Technical Specification Group Services and System Aspects: IP
Multimedia (IM) Subsystem Cx and Dx Interfaces; Signalling flows and message
contents / 3rd Generation Partnership Project. 2009 (TS 29.228 V8.6.0). –
Technical Specification
130
Literatur- und Quellenverzeichnis
[TSG-2009d] Technical Specification Group Services and System Aspects: IP
Multimedia Subsystem (IMS); Stage 2 / 3rd Generation Partnership Project.
2009 (TS 23.228 V9.1.0). – Technical Specification
[TSG-2009e] Technical Specification Group Services and System Aspects: Network architecture / 3rd Generation Partnership Project.
2009 (TS 23.002
V9.1.0). – Technical Specification
[TSG-2009f] Technical Specification Group Services and System Aspects: Vocabulary for 3GPP Specifications / 3rd Generation Partnership Project. 2009 (TR
21.905 V10.0.0). – Technical Report
[Tur-1950] Turing, Alan M.: Computing Machinery and Intelligence. In: Mind 59 (1950),
Nr. 236, S. 433–460
[TW-2007] Trick, Ulrich ; Weber, Frank: SIP, TCP/IP und Telekommunikationsnetze
Next Generation Networks und VoIP-konkret. 3., Überarbeitete und erweiterte
Auflage. München, Deutschland : Oldenbourg, 2007
[W3C-1999] World Wide Web Consortium: HTML 4.01 Specification. http://www.w3.
org/TR/1999/REC-html401-19991224/, erstellt am 24. 12. 1999, zuletzt besucht
am 30. 09. 2009.
[W3C-2001] World Wide Web Consortium: XHTMLTM 1.1 - Module-based XHTML.
http://www.w3.org/TR/2001/REC-xhtml11-20010531/, erstellt am 31. 03.
2001, zuletzt besucht am 30. 09. 2009.
[Wan-2004] Wang, Xiaoyun et al.: Collisions for Hash Functions MD4, MD5, HAVAL128 and RIPEMD. In: Bericht auf der 24. Annual International Cryptology
Conference, 2004
[Wes-2007] Weschkalnies, Nick: Spam konservieren. In: Visual-X 17 (2007), S. 26–30
[Yan-2006] Yan, Hong et al.: Incorporating Active Fingerprinting into SPIT Prevention
Systems. In: Third annual security workshop (VSW’06), ACM Press, 2006
[Zdz-2005] Zdziarski, Jonathan A.: Ending Spam: Bayesian Content Filtering and the
Art of Statistical Language Classification. 1. Auflage. San Francisco, USA : No
Starch Press, 2005
[Zie-2009]
Ziemann, Frank: Hoax-Info Service: Über Computer-Viren, die keine sind (sog.
”Hoaxes”) und andere Falschmeldungen und Gerüchte.
http://hoax-info.
tubit.tu-berlin.de/, erstellt am 01. 09. 2009, zuletzt besucht am 30. 09. 2009.
131
Literatur- und Quellenverzeichnis
132
Request for Comments-Verzeichnis
[RFC- 768] Postel, Jon: User Datagram Protocol. RFC 768 (1980)
[RFC- 793] Postel, Jon: Transmission Control Protocol. RFC 793 (1981)
[RFC-1321] Rivest, Ronald L.: The MD5 Message-Digest Algorithm. RFC 1321 (1992)
[RFC-1945] Berners-Lee, Tim et al.: Hypertext Transfer Protocol – HTTP/1.0. RFC 1945
(1996)
[RFC-2401] Kent, Stephen ; Atkinson, Randall: Security Architecture for the Internet
Protocol. RFC 2401 (1998)
[RFC-2402] Kent, Stephen ; Atkinson, Randall: IP Authentication Header. RFC 2402
(1998)
[RFC-2406] Kent, Stephen ; Atkinson, Randall: IP Encapsulating Security Payload (ESP).
RFC 2406 (1998)
[RFC-2486] Aboba, Bernard ; Beadles, Mark A.: The Network Access Identifier. RFC
2486 (1999)
[RFC-2616] Fielding, Roy T. et al.: Hypertext Transfer Protocol – HTTP/1.1. RFC 2616
(1999)
[RFC-2617] Franks, John et al.: HTTP Authentication: Basic and Digest Access Authentication. RFC 2617 (1999)
[RFC-2818] Rescorla, Eric: HTTP Over TLS. RFC 2818 (2000)
[RFC-3174] Eastlake, Donald E. ; Jones, Paul E.: US Secure Hash Algorithm 1 (SHA1).
RFC 3174 (2001)
[RFC-3261] Rosenberg, Jonathan et al.: SIP: Session Initiation Protocol. RFC 3261 (2002)
133
Request for Comments-Verzeichnis
[RFC-3263] Rosenberg, Jonathan ; Schulzrinne, Henning: Session Initiation Protocol
(SIP): Locating SIP Servers. RFC 3263 (2002)
[RFC-3265] Roach, Adam: Session Initiation Protocol (SIP)-Specific Event Notification.
RFC 3265 (2002)
[RFC-3310] Niemi, Aki ; Arkko, Jari ; Torvinen, Vesa:
Hypertext Transfer Proto-
col (HTTP) Digest Authentication Using Authentication and Key Agreement
(AKA). RFC 3310 (2002)
[RFC-3323] Peterson, Jon: A Privacy Mechanism for the Session Initiation Protocol (SIP).
RFC 3323 (2002)
[RFC-3325] Jennings, Cullen et al.: Private Extensions to the Session Initiation Protocol
(SIP) for Asserted Identity within Trusted Networks. RFC 3325 (2002)
[RFC-3428] Campbell, Ben et al.: Session Initiation Protocol (SIP) Extension for Instant
Messaging. RFC 3428 (2002)
[RFC-3436] Jungmaier, Andreas ; Rescorla, Eric ; Tuexen, Michael: Transport Layer
Security over Stream Control Transmission Protocol. RFC 3436 (2002)
[RFC-3588] Calhoun, Pat R. et al.: Diameter Base Protocol. RFC 3588 (2003)
[RFC-3761] Faltstrom, Patrik ; Mealling, Michael: The E.164 to Uniform Resource
Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application
(ENUM). RFC 3761 (2004)
[RFC-3851] Ramsdell, Blake (Hrsg.): Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Message Specification. RFC 3851 (2004)
[RFC-3856] Rosenberg, Jonathan: A Presence Event Package for the Session Initiation
Protocol (SIP). RFC 3856 (2004)
[RFC-3966] Schulzrinne, Henning: The tel URI for Telephone Numbers. RFC 3966 (2004)
[RFC-3986] Berners-Lee, Tim et al.: Uniform Resource Identifier (URI): Generic Syntax.
RFC 3986 (2005)
[RFC-4168] Rosenberg, Jonathan et al.:
The Stream Control Transmission Protocol
(SCTP) as a Transport for the Session Initiation Protocol (SIP). RFC 4168
(2005)
[RFC-4235] Rosenberg, Jonathan ; Schulzrinne, Henning ; Mahy, Rohan (Hrsg.): An
INVITE-Initiated Dialog Event Package for the Session Initiation Protocol
(SIP). RFC 4235 (2005)
134
Request for Comments-Verzeichnis
[RFC-4346] Treese, Win ; Rescorla, Eric ; Dierks, Tim (Hrsg.) ; Rescorla, Eric
(Hrsg.): The Transport Layer Security (TLS) Protocol Version 1.1. RFC 4346
(2006)
[RFC-4566] Handley, Mark et al.: SDP: Session Description Protocol. RFC 4566 (2006)
[RFC-4648] Josefsson, Simon: The Base16, Base32, and Base64 Data Encodings. RFC
4648 (2006)
[RFC-4960] Steward, Randall (Hrsg.): Stream Control Transmission Protocol. RFC 4960
(2007)
[RFC-5039] Rosenberg, Jonathan ; Jennings, Cullen: The Session Initiation Protocol
(SIP) and Spam. RFC 5039 (2008)
[RFC-5079] Rosenberg, Jonathan: Rejecting Anonymous Requests in the Session Initiation
Protocol (SIP). RFC 5079 (2007)
135

Documentos relacionados