17
Cnlab / CSI Herbsttagung 2014 WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA?

WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Cnlab / CSI Herbsttagung 2014

WIE FUNKTIONIEREN DIE

ANGRIFFE DER NSA?

Page 2: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Angriff über Zufallsgeneratoren: Was ist passiert?

• RSA BSAFE is a FIPS 140-2 validated cryptography

library offered by RSA Security.

• From 2004 to 2013 the default random number

generator in the library contained a backdoor from the

American National Security Agency, as part of NSA's

secret Bullrun program.

10.9.2014 2

Quelle: Wikipedia

Page 3: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Warum Angriff über Random-Generatoren?

• Zufallszahlen werden für die Erzeugung von Schlüsseln benötigt.– Symetrische Schlüssel

– Asymetrische Schlüssel

• Der RG kann einfach kompromittiert werden – z.B. via Seed

• Ein schlechter Seed kann durch Tests an den erzeugten Zufallszahlen nicht nachgewiesen werden.

10.9.2014 3

Page 4: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Public-Key-Systeme

(asymmetrische Systeme)

10.9.2014 4

Quelle: Wikipedia

Page 5: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Erzeugung von asymmetrischen Keys

10.9.2014 5

Quelle: Wikipedia

Page 6: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Hybride Verschlüsselungsverfahren

10.9.2014 6

Quelle: Wikipedia

Page 7: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Das Beispiel SSL

10.9.2014 7

Client Hello (client random number)

Server hello (algorithm, server random number)

Encrypted data

- verify certificate

- generate pre-master secret

- enrypt pre-master secret with

server key

generate client random

generate server random

Session key=f(client random, server

random, pre-master secret)

Session Key=f(client random, server

random, pre-master secret)

Server certificate

Encrypted pre-master secret

Client Server

Page 8: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Wie macht man Zufallszahlen

10.9.2014 8

CharacteristicPseudo-Random

Number Generators

True Random Number

Generators

Efficiency Excellent Poor

Determinism Determinstic Nondeterministic

Periodicity Periodic Aperiodic

RG-Status

Fortsetzungs-

Funktion RG Output

Seed Input

Page 9: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Random-Generator in OpenSSL

• OpenSSL bietet eine Schnittstelle um den

Random-Generator zu ersetzen.

• Default Random-Generator:

– Fortsetzung-Funktion basierend auf MD5

– Automatischer ‘seed’ abhängig von der Plattform:

• Unix/Linux

– /dev/urandom

– Prozess-ID, User-ID, System-info

• Windows

– GryptGenRandom (Microsoft Crypto API)

10.9.2014 9

Page 10: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Warum Angriff über Random-Generatoren?

10.9.2014 10

Page 11: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Random-Generator Test Tools

• NIST: statistical test suite

– http://csrc.nist.gov/rng/

• DIEHARD test suite

– http://www.stat.fsu.edu/pub/diehard/

• Beide Suiten sind Implementationen der selben Tests

• Der Random-Generator wird als gut betrachtet bei

einem Test Resultat > 0 und < 1

10.9.2014 11

Page 12: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Anpassungen am OpenSSL RG

10.9.2014 12

RG-Status

Fortsetzungs-

Funktion RG Output

Seed Input

(time)

Page 13: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Test Resultate DIEHARD Test Suite

Test Name P-value Result

Birthday Spacing Test 0.387 Pass

Overlapping 5-Permutation Test 0.328 Pass

Binary Rank Test (32x32 matrices) 0.985 Pass

Bitstream Test 0.548 Pass

Count-the-1's Test (on stream of bytes) 0.316 Pass

Parking Lot Test 0.752 Pass

Minimum Distance Test 0.449 Pass

3D Spheres Test 0.196 Pass

Overlapping Sums Test 0.110 Pass

Craps Test 0.754 Pass

10.9.2014 13

Page 14: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Demo-Aufbau

10.9.2014 14

Client

Server

Angreifer

1

SSL Connection2

3

4

1. Schlüsselerzeugung mit modifizierten OpenSSL

2. SSL-Verbindungen vom Browser zum Web-Server

3. Verkehr wird durch den Angreifer aufgezeichnet

4. Der verwendete Schlüssel wird gesucht

5. Verkehr kann entschlüsselt werden

5

?

Page 15: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Demo (3): Aufzeichnen der verschlüsselten Verbindung

10.9.2014 15

Page 16: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Demo (5): Entschlüsselung mit gefundenem Schlüssel

10.9.2014 16

Page 17: WIE FUNKTIONIEREN DIE ANGRIFFE DER NSA? - cnlab · Test Resultate DIEHARD Test Suite Test Name P-value Result Birthday Spacing Test 0.387 Pass Overlapping 5-Permutation Test 0.328

Thomas Lüthi

[email protected]

+41 55 214 33 41

Danke

10.9.2014