Security - oder auch nicht. Das schwächste Glied der Kette.

Transcrição

Security - oder auch nicht. Das schwächste Glied der Kette.
Security - oder auch nicht.
Das schwächste Glied der Kette.
Wolfgang Dautermann
FH JOANNEUM
Chemnitzer Linuxtage 2009
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
1
Netzwerkprotokolle
2
Verschlüsselung mit SSL
3
Gegenseitige Authentifizierung
4
Arten von Zertifikaten
4
Secure Shell (SSH)
5
Zusammenfassung
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Netzwerkprotokolle
Übliche und bekannte Netzwerkprotokolle
HTTP - Hypertext Transfer Protocol - (RFC 1945, Mai 19961 )
POP3 - Post Office Protocol Version 3 - (RFC 918, Oktober 19842 )
IMAP - Interactive Mail Access Protocol - (RFC 1064, Juli 19882,3 )
FTP - File Transfer Protocol - (RFC 765, Juni 19802 )
(telnet - Teletype Networking - (RFC 137, April 19712 ))
...
...sind relativ ALTE Netzwerkprotokolle.
1
RFC von 1996, entwickelt 1990
1. RFC, inzwischen öfters erweitert und weiterentwickelt
3
Heute: Internet Message Access Protocol
2
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Netzwerkprotokolle II
Sind definiert als ASCII-Klartextprotokolle
+ Einfach zu definieren
+ Einfach zu verstehen
+ Einfach zu implementieren.
- Daten gehen unverschlüsselt durch die Weltgeschichte
Das ist in den 70ern und 80ern nicht so wichtig, die Kriminellen sind noch
nicht online, im Internet sind nur die Guten ,
+ Wenig Rechenleistung erforderlich (und wenig Rechenleistung
vorhanden!)
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Beispiel: Mailabfrage mit POP3
>>
>>
>>
>>
$ telnet 127.0.0.1 pop3
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is ’^]’.
+OK example.com POP3-Server ready
USER dauti
+OK Password required for dauti.
PASS strenggeheim
+OK dauti has 2 visible messages (0 hidden) in 1220 octets.
RETR 2
+OK 662 octets
Date: Sat, 28 Oct 2006 12:29:07 +0200
From: Wolfgang Dautermann <[email protected]>
To: [email protected]
Subject: testsubject
testbody
>>
.
quit
+OK Pop server at example.com signing off.
Connection closed by foreign host.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Passwort-Sniffing - ettercap, dsniff & Co.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Passwort-Sniffing - ettercap, dsniff & Co. II
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Passwort-Sniffing - ettercap, dsniff & Co.III
ettercap, dsniff4 , etc. liefern:
Protokoll
IP-Adresse
Portnummer
Username
Passwort
. . . alles was man haben will. . . ,
4
wird leider seit 2000 nicht mehr weiterentwickelt
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Lösung des Sicherheitsproblems: Verschlüsselung
üblicherweise SSL - Secure Socket Layer
entwickelt von Netscape Communications 1994
oberhalb der Transportschicht (z. B. TCP) und unter
Anwendungsprotokollen wie HTTP oder IMAP
existierende Protokolle können verschlüsselt werden.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
ENDE?
Zwischen dem Sender und dem Empfänger kann nichts mehr mitgesnifft
werden.
Ende des Vortrags?
...oder gibts da doch noch ein paar Kleinigkeiten, die man beachten
sollte?
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Real-World-Beispiel: Bankomatbehebung
Sicherheit durch Karte und Pincode
(bzw. am Mailserver: Username/Passwort)
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Real-World-Beispiel: Bankomatbehebung II
Das ist EINE Authentifizierung
...und die Gegenstelle ist wer?
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Authentifizierung der Gegenstelle
Routing im Internet geht über nicht vertrauenswürdige Knoten
(Rechner/Router/Provider (ev. von Behörden/Gesetzgebern verpflichtet,
Daten weiterzugeben)/...)
Keine Ahnung, mit wem ich wirklich kommuniziere.
Wie authentifiziert sich der ’Server’ mir gegenüber?
(Im Real-Life: Bankomat sieht ’bankomatmässig’ aus, ist bei einer Bank
(die ich kenne?), ich kenne die Adresse des Standorts).
Im Internet: Keine Ahnung, mit wem ich verschlüsselt kommuniziere!
Mit dem Server meiner Bank? Mit dem Webserver eines Betrügers?
Im Internet bin ich blind...
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Authentifizierung der Gegenstelle II
...Bankomat ist bei einer Bank?
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Authentifizierung der Gegenstelle III
...Bankomat ist bei einer Bank?
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Authentifizierung der Gegenstelle IV
...Bankomat(kasse) ist vertrauenswürdig?
450.000 Euro Schaden: Bankomatkarten-Betrüger gefasst
Kasse mit Speicherchip manipuliert
Laut Polizei war das Vorgehen immer gleich: Ein oder zwei
Bandenmitglieder brachen in Geschäfte ein und manipulierten die Kassen,
in dem sie einen Speicherchip einbauten; darauf wurden die Daten der
Kunden, die mit Bankomatkarte gezahlt haben, kopiert.
Bei einem zweiten Einbruch wurde der Speicher wieder entfernt. Mit den
gestohlenen Daten wurden schließlich neue Bankomatkarten hergestellt,
mit denen die Betrüger dann in Italien, Frankreich und Spanien Geld
behoben.
Siehe: http://steiermark.orf.at/stories/148251/
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Authentifizierung der Gegenstelle
Die Gegenstelle (der Server) muss sich mir gegenüber ’ausweisen’, damit
ich sicher bin, mit dem richtigen Server zu kommunizieren.
Nicht mit Username/Passwort, sondern mit Zertifkaten (SSL) bzw.
Hostkeys (SSH).
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Zertifikats-Bestandteile
Issued to: An wen wurde das Zertifikat ausgestellt.
Common Name: Domainname. Name des Servers, mit dem ich zu
kommunizieren glaube.
Issued from: VON WEM wurde das Zertifikat ausgestellt.
Validity: Gültigkeitsdatum von-bis
Fingerprints: SHA1 und MD5 Prüfsummen.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Zertifikate kosten (üblicherweise) Geld
Die Stelle, die im Issued from genannt ist - die ausstellende Behörde –
muss prüfen, ob der Antragsteller tatsächlich der ist, der er vorgibt zu
sein5 .
Wirkliche (durch Gesetze ermächtigte) Behörden (im Real-Life: Passamt,
KFZ-Zulassungsstelle, . . . ) gibt es im Internet nicht.
Zertifikate werden von privaten Firmen ausgestellt.
Einige Firmen sind in den Browsern vorinstalliert und werden von den
Browsern daher als vertrauenswürdig eingestuft.
5
was Verisign bei einem Microsoft-Zertifikat 2001 nicht wirklich gemacht hat...
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Vorinstallierte Certificate Authorities
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Arten von Zertifkaten
Zertifikate von vorinstallierten (kommerziellen) Authorities
+ Authority in den Browsern vorinstalliert, User werden nicht durch
Fehlermeldungen verunsichert.
+ Identität des Zertifikats-Empfängers wird beim Ausstellen vom Aussteller
geprüft!
- ...kosten Geld /
- Verisign erfindet Verisign Extended Verification Certificates – noch teurer,
soll in der Browser-Adressleiste mit anderer Farbe (weiß für
unverschlüsselt, gelb für SSL (ist nicht einheitlich) und jetzt neu: grün für
extrateuer) angezeigt werden — kostet noch mehr Geld /
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Arten von Zertifikaten
Selbst signiertes Zertifikat, Screenshot von Firefox 2 (2006)
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate
Bitte NICHT einfach wegklicken!
Mit wem kommuniziere ich verschlüsselt? Bankserver oder Betrügerserver?
Wenn mir das egal ist, kann ich mir die Verschlüsselung gleich
schenken...
Viele Zertifikats-Warnung lassen die User abstumpfen - die Bedeutung
der Warnung wird vernachlässigt.
Browser kennt die Authority nicht
Server-Fehlkonfiguration
Ich kommuniziere verschlüsselt mit einem anderen!
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate II
Screenshot Firefox 3
www.polizei.sachsen-anhalt.de war bei der Google Suche nach ”selbst signiertes Zertifikat” auf Platz 4. . .
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate III
Screenshot Firefox 3
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate IV
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate V
Selbst signiertes Zertifikat.
Ausgestellt von der Polizei Sachsen Anhalt für die Polizei Sachsen Anhalt
Genauso gut wie ein selbst erstellter Personalausweis oder ein selbst
erfundenes KFZ-Kennzeichen. . . .
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Selbst signierte Zertifikate VI
Zitat von http://www.ssl-faq.info/technisches.html
Bietet ein selbst signiertes Zertifikat auch Sicherheit?
Klares Nein!!
Bei der Benutzung eines selbst signiertes Zertifikates erhällt der Besucher
eine Warnmeldung, das das Zertifikat nicht geprüft werden kann, da es
nicht von einer Zertifizierungsstelle signiert ist.
Für den Besucher ist nicht erkennbar ob die Kommunikation tatsächlich
mit dem gewünschten Ziel erfolgt oder nicht.
Wenn der Besucher das Zertifikat manuell akzeptiert, erfolgt die
Kommunikation zwar verschlüsselt, allerdings zu einem unbekannten Ziel.
Das Ziel kann auch ein Server eines Angreifers sein. Daher ist ein selbst
signiertes Zertifikat für den professionellen Einsatz ungeeignet.
Wenn man intern (Firma, Schule, Hochschule, Verein,. . . ) selbst signierte Zertifikate
verwendet, Zertifikate in den verwendeten Browsern vorinstallieren.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Zertifikate von cacert.org
Community-Lösung
Wer: CAcert Inc., a non-profit Association of Members incorporated in New
South Wales, Australia.
Im Real-Life wird meine Identität überprüft (amtlicher Ausweis).
Zuordnung: Reale Person ↔ E-Mail-Adresse ↔ Account auf
www.cacert.org
Eigene Domain auf www.cacert.org eintragen und Zertifikate signieren
lassen – das signierte Zertifikat kommt per Mail an einen Admin-Account
der Domain (z.B. [email protected]).
Wenn ich die Mail an den Admin-Account bekomme, bekomme ich auch
das signierte Zertifikat.
- (Noch) ist cacert.org nicht standardmässig in den Browsern als Authority
eingetragen. Wenn man CAcert vertraut, ev. das CAcert-Root-Zertifikat
selbst in den Browsern vorinstallieren.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Zertifikate von cacert.org II
CAcert “Assurer“ überprüfen die Identitität von neuen Mitgliedern. Früher
hat das schon gereicht, um neuer Assurer zu werden. So soll sich ein
Web-of-trust bilden.
Neu: “Assurer“ müssen zusätzlich eine Prüung ablegen. Ebenso
bisherige Assurer, wenn sie neue Mitglieder “assuren“ wollen (Ziel:
Aufnahme von CAcert in Mozilla-Browsern, erforderlich durch
Mozilla-Policies)
Links:
CAcert Community Agreement: http:
//www.cacert.org/policy/CAcertCommunityAgreement.php
Introduction to the CAcert Assurance Program:
http://wiki.cacert.org/wiki/FAQ/AssuranceIntroduction
Introduction to the CAcert Assurance Program:
http://wiki.cacert.org/wiki/AssuranceHandbook2
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Weitere Anwendungen von Zertifikaten
Signierung von Software
Kein Server, keine Internetverbindung muss gehackt werden!
Problematik fehlerhaftes Verisign Zertifikat besonders akut – fremde
Software konnte als ’von Microsoft zertifiziert’ (für MS-User
’vertrauenswürdig’) auf den Rechner kommen!
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Vortrag vom 25th Chaos Communication Congress (25C3)
MD5 Considered Harmful Today – Creating a rogue CA certificate (30.12.2008)
Ein internationales Forscherteam berechnet auf einem Cluster (200 x
Playstation 3) MD5-Kollissionen und fälscht mit MD5 signierte Zertifikate
einer CA.
Für Details bitte die Vortragsfolien des Vortrags vom 25C3 ansehen – ich
mag mich nicht mit fremden Federn schmücken. . .
http://events.ccc.de/congress/2008/Fahrplan/
attachments/1251_md5-collisions-1.0.pdf
http://www.heise.de/security/artikel/121148
Hoffen wir, daß die CAs dazugelernt haben. . . .
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Vortrag vom 25th Chaos Communication Congress (25C3)
Feststellen des Signaturverfahrens (MD5 oder SHA1)
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Ein paar Worte zum Debian OpenSSL ’Patch’
Das Debian-Projekt überprüfte OpenSSL mit Valgrind - einer Software
zum Debuggen von Speicherproblemen und findet einen Zugriff auf eine
uninitialisierte Speicherstelle.
Nach Rückfrage bei den OpenSSL-Entwicklern (if it helps with
debugging), entfernen sie zwei Codezeilen, die auf uninitialisieren
Speicher zugreifen.
damit wird der Zufallszahlengenerator sehr eingeschränkt, hängt nur
mehr von der PID ab - OpenSSL erzeugte nur mehr 32768 verschiedene
Zertifikate (bzw. ggf. auch SSH Keys,. . . ), sehr leicht fälschbar.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
SSH-Hostkeys
$ ssh linux-tage.de
The authenticity of host ’linux-tage.de (88.198.147.212)’ can’t be established.
RSA key fingerprint is cc:09:d5:c3:54:30:be:4c:48:e4:1b:62:3f:57:a3:b7.
Are you sure you want to continue connecting (yes/no)? no
Host key verification failed.
Keine Zertifizierungsstellen, nur selbst erstellte Hostkeys
keine vorinstallierten Hostkeys
Trotzdem die einzige Authentifizierung des Servers gegenüber mir. (ggf.
Fingerprint beim ersten connect vergleichen!)
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
SSH-Hostkeys II
Viel grösser kann man ja die Warnung nicht hinschreiben...
$ ssh linux-tage.de
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
cc:09:d5:c3:54:30:be:4c:48:e4:1b:62:3f:57:a3:b7.
Please contact your system administrator.
Add correct host key in /home/daute/.ssh/known_hosts to get rid of this message.
Offending key in /home/daute/.ssh/known_hosts:364
RSA host key for linux-tage.de has changed and you have requested strict checking.
Host key verification failed.
Bei einer Neuinstallation (bekannte) SSH-Hostkeys übernehmen.
User von einer ev. Änderung der Hostkeys (vorher) informieren.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
SSH-Hostkeys visualisiert
eine ASCII-Art Graphik ist (für Menschen) einfacher zu merken als eine 48stellige
Zeichenkombination (OpenSSH Client >= 5.1 erforderlich)
$ ssh -o VisualHostKey=yes 127.0.0.1
The authenticity of host ’127.0.0.1 (127.0.0.1)’ can’t be established.
RSA key fingerprint is 5e:e3:64:1e:10:29:c8:c9:c6:46:f8:68:00:13:d6:0e.
+--[ RSA 1024]----+
|=o.*.o ..
|
|oE..O . ..
|
| .o=
..
|
| o..
.
|
| .
S *
|
|
. * o
|
|
. o
|
|
|
|
|
+-----------------+
Are you sure you want to continue connecting (yes/no)? ^C
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
SSH-Hostkeys visualisiert II
$ ssh -o VisualHostKey=yes linux-tage.de
The authenticity of host ’linux-tage.de (88.198.147.212)’ can’t be established.
RSA key fingerprint is cc:09:d5:c3:54:30:be:4c:48:e4:1b:62:3f:57:a3:b7.
+--[ RSA 2048]----+
|
.+++o.
|
|
+ o+.
|
|
+ + o.o
|
|
. * * + .
|
|
S = .
|
|
o . .
|
|
E
|
|
|
|
|
+-----------------+
Are you sure you want to continue connecting (yes/no)? ^C
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
SSH-Hostkeys im DNS (RFC4255)
Interessante Idee, aber ohne DNSsec noch nicht sicher. . .
$ ssh-keygen -r hostname -f /etc/ssh/ssh_host_rsa_key.pub
hostname IN SSHFP 1 1 f52b34ef558f52dc4887d0338bfeedf6671c4a92
$ ssh-keygen -r hostname -f /etc/ssh/ssh_host_dsa_key.pub
hostname IN SSHFP 2 1 ce5f6d5ad1ac4ace7016bf397c3a0df06e649ff1
Diese Records in den Nameserver übernehmen (BIND Nameserver >= 9.3.0,
OpenSSH >= 3.4). Dann kann man mit
$ ssh -o "VerifyHostKeyDNS ask" host.example.com
bzw.
$ ssh -o "VerifyHostKeyDNS yes" host.example.com
zum Server connecten, der Hostkey wird via DNS überprüft.
Statt -o "VerifyHostKeyDNS yes" kann man die Option auch fix in die
Datei /etc/ssh/ssh_config bzw. ~/.ssh/config eintragen.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Zusammenfassung
Security besteht aus (mindestens!) folgenden Punkten
Einer verschlüsselten sicheren Verbindung zwischen User und Server
Authentifizierung des Users gegenüber dem Server
Authentifizierung des Servers gegenüber dem User
Nicht kompromittierten Endpunkten!
Einem Benutzer, der mitdenkt und nicht auf alles klickt, was
anklickbar ist... ,
Browser (Mailclient,. . . ) Fehlermeldungen sind nicht nur zum User ärgern und
Wegklicken da.
Wenn eine Meldung angezeigt wird, soll man sich vor dem Wegklicken darüber
im Klaren sein, was die Meldung bedeutet (bzw. bedeuten könnte) – und was für
Konsequenzen das Ignorieren der Meldung haben könnte.
www.fh-joanneum.at
FAHRZEUGTECHNIK
AUTOMOTIVE ENGINEERING & RAILWAY ENGINEERING
Fragen? Feedback?
Vielen Dank für Ihre Aufmerksamkeit
Wolfgang Dautermann
wolfgang.dautermann [AT] fh-joanneum.at

Documentos relacionados