7 Elektronische Geldbörsen
1
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Willkommen zur VorlesungSoftwarearchitekturen im Finanz- und
Versicherungsbereichim Sommersemester 2010
Prof. Dr. Jan JürjensTU Dortmund, Fakultät Informatik, Lehrstuhl XIV
7 Elektronische Geldbörsen
2
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
7.Elektronische Geldbörsen
7 Elektronische Geldbörsen
3
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Common Electronic Purse Specifications
Globaler Standard (90% des Marktes).Smart card speichert Kontostand. Kryptographie auf Chip
sichert Transaktionen.Sicherer als Kreditkarten (transaktionsgebundene
Autorisierung).
7 Elektronische Geldbörsen
4
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS Überblick
7 Elektronische Geldbörsen
5
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Aufgabe 7.1
Aufgabe 7.1
–Zeichne einen Bedrohungsbaum für das CEPS System. [3 P.]
7 Elektronische Geldbörsen
6
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Purchase Protocol
Offline transaction to pay for goods with money previously loaded on card.
Protocol participants: customer’s card, merchant’s POS device.
POS device contains Purchase Security Application Module (PSAM): all security-critical data processing and storage for POS device.
Card account balance adjusted; transaction data logged and later sent to issuer for financial settlement.
Use at public terminals; Internet use envisaged.
7 Elektronische Geldbörsen
7
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
POS Device
7 Elektronische Geldbörsen
8
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
UMLsec Spec.
7 Elektronische Geldbörsen
9
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Purchase Protocol: Architecture
wire
smartcard
{delete, read, insert}
∅
Threats
Stereotype
7 Elektronische Geldbörsen
10
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Class Diagram
7 Elektronische Geldbörsen
11
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Activity diagram
7 Elektronische Geldbörsen
12
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Interaction
7 Elektronische Geldbörsen
13
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Security Threat Model
Supposed to provide mutual authentication between terminal and card.
Card, PSAM assumed tamper-resistant.Intercept communication links, replace components.Possible attack motivations:• (Non-)Cardholder: purchase without pay.• Merchant employee: buy digital content with customer’s
card.• Card issuer employee: credit transactions to own (cover-
up) business.May coincide or collude.
7 Elektronische Geldbörsen
14
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Sicherheitsanalyse
Keine direkte Kommunikation zwischen Karte und Inhaber. Manipulation der Aufladestation möglich.
Post-Transaktions-Abrechnungsystem.
Gespeicherte Transaktionsdaten sicherheitskritisch.
Modell-basierte Analyse dieses Teiles.
7 Elektronische Geldbörsen
15
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Aufgabe 7.2
Aufgabe 7.2
–Welche Sicherheitseigenschaft, die für Bargeldnutzer im Allgemeinen erfüllt ist, wird durch das Post-Transaktions-Abrechnungssystem eingeschränkt (insbesondere wenn die Karte über ein Bankkonto aufgeladen wird) ? [2 P.]
7 Elektronische Geldbörsen
16
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Security conditions (informal)
Cardholder security. Merchant can only claim amount registered on card after transaction.
Merchant security. Merchant receives proof of transaction in exchange for sold good.
Card issuer security. Sum of balances of valid cards and PSAMs unchanged by transaction.
7 Elektronische Geldbörsen
17
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Merchant security
Each time display D receives value MNT, P is in possession of SignKCA
-1(IDC::KC) and
SignKC-1(IDC::IDP::MNT::NT) for some IDC, KC
-1 and new
value NT.Not satisfied. Attack automatically computed.Attack exploits the fact that POS device is not tamper-
proof.Redirect messages between card and PSAM to another
PSAM (e.g. to buy digital content, on the cost of the cardholder).
7 Elektronische Geldbörsen
18
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Attack
7 Elektronische Geldbörsen
19
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Fix: Protect PSAM-device link
7 Elektronische Geldbörsen
20
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Aufgabe 7.3
Aufgabe 7.3
–Welcher Angriff wäre möglich, wenn es den Transaktionszähler NT nicht geben würde ? (Pfeildiagramm des Angriffablaufes zeichnen) [4 P.]
7 Elektronische Geldbörsen
21
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Ladeprotokoll
Karte mit Bargeld an Aufladestation laden (on-line).
Load Security Application Module (LSAM) speichert Transaktionsdaten.
Schickt Daten an Kartenemittent, der finanzielle Abwicklung übernimmt.
Symmetrische Verschlüsselung/Signatur.
7 Elektronische Geldbörsen
22
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS load device
7 Elektronische Geldbörsen
23
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS load device
7 Elektronische Geldbörsen
24
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Protocol: Physical View
7 Elektronische Geldbörsen
25
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Protocol: Structural View
7 Elektronische Geldbörsen
26
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Protocol: Coordination View
7 Elektronische Geldbörsen
27
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Protocol: Interaction View
7 Elektronische Geldbörsen
28
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS Card Statechart
7 Elektronische Geldbörsen
29
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS LSAM Statechart
7 Elektronische Geldbörsen
30
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS Card Issuer Statechart
7 Elektronische Geldbörsen
31
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
CEPS Card Issuer Statechart
7 Elektronische Geldbörsen
32
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Bedrohungsszenarien
Annahme: Card, LSAM manipulationssicher.
Mögliche Angreiferaktionen: Kommunikation abhören, Komponenten ersetzen.
Mögliche Motive:
Kartenbesitzer: Aufladen ohne zu bezahlen
Ladestation Betreiber: Geld des Kartenbesitzers einbehalten
Kartenausgeber: Geld vom Ladestation Betreiber verlangen
Gemeinsamer Angriffsversuch denkbar.
7 Elektronische Geldbörsen
33
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Sicherheitsanforderungen (informell)
Kartenbesitzer: Wenn Karte laut Log mit Betrag m aufgeladen wurde, kann Kartenbesitzer dem Emittenten beweisen, dass Ladestation-Betreiber ihm m schuldet.
Ladestation-Betreiber: Ladestation-Betreiber muss Betrag m dem Kartenausgeber nur zahlen, nachdem vom Kartenbesitzer erhalten.
Emittenten: Summe der Guthaben von Karten-inhaber und Ladestation Betreiber unverändert.
7 Elektronische Geldbörsen
34
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Acquirer Security
Suppose card issuer I possesses ml
n=Signrn(cep::nt::lda::m
n::s1::hc
nt::hl
n::h2ln) and card C possesses
rln, where hl
n = Hash (lda::cep::nt::rl
n).
Then after execution either of following hold:
• Llog(cep,lda,mn,nt) has been sent to l:LLog (so load acquirer L has
received and retains mn in cash) or
• Llog (cep, lda, 0, nt) has been sent to l : LLog (so L returns mn to
cardholder) and L has received rcnt with hc
nt=Hash(lda::cep::nt::rc
nt)
(negating mln).
"mln provides guarantee that load acquirer owes transaction amount to
card issuer" (CEPS)
7 Elektronische Geldbörsen
35
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Überraschung
mln: „Beweis“ für Bank, dass Lade-gerät Geld erhielt.
Aber: rn geteilt zwischen Bank und Ladegerät.
7 Elektronische Geldbörsen
36
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Überraschung (2)
rcnt: „Beweis“ fürLSAM, dass Ladegerät nurBetrag mn erhielt.Aber: LSAM kann Validität von rcnt nicht beweisen.
7 Elektronische Geldbörsen
37
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Schwachstelle
Analyse: Keine Sicherheit für Ladestation gegen interne Angreifer.
Änderung: asymmetrischer Schlüssel in
, Signatur für .
Modifizierte Version sicher laut Analyse.
7 Elektronische Geldbörsen
38
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Aufgabe 7.4
Aufgabe 7.4
–Modifiziere das Sequenzdiagramm gemäß der genannten Änderung. [4 P.]
7 Elektronische Geldbörsen
39
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Cardholder Security
7 Elektronische Geldbörsen
40
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Load Acquirer Security
7 Elektronische Geldbörsen
41
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Card Issuer Security
7 Elektronische Geldbörsen
42
Softwarearchitekturen im Softwarearchitekturen im Finanz und Finanz und
VersicherungsbereichVersicherungsbereichSS 2010SS 2010
Aufgabe 7.5
Aufgabe 7.5
–Welcher Angriff wäre möglich, wenn es den Transaktionszähler nt nicht geben würde ? (Pfeildiagramm des Angriffablaufes) [4 P.]