Waltraut Niepraschk, DESY Zeuthen, 06.12.1999
60-er Jahre: | Sicherheit der Daten und Rechner nebensächlich |
Priorität: Funktionalität | |
Einsatz vor allem im wiss. Bereich | |
freier Austausch von Informationen | |
90-er Jahre: | 70 Mill. Benutzer im Internet |
kommerzielle Nutzung verstärkt | |
Sicherheit gewinnt an Bedeutung | |
Datenschutz |
keine zentrale Kontrollinstanz
Die Hacker"profis" stellen immer ausgefeiltere Methoden zur Verfügung:
jeder entscheidet selbst über seine persönlichen Sicherheitsanforderungen
- Risikoanalyse !
1.2 Hackerszene
Die Intelligenz der Tools, Frequenz, Typen und Hartnäckigkeit
von Sicherheitsattacken nehmen ständig zu.
Über Newsgruppen und Chat werden gehackte oder gesniffte
Accounts ausgetauscht.
Die Bereitstellung von "Hacker"-Tools erfolgt auf zahlreichen Webseiten.
Die meisten Hacker sind keine Profis mehr, nur make
genügt
und die Tools können gestartet werden.
früher: | Paßwort-Cracking, Suche nach offenen Accounts, | |
Konfigurationsfehlern und Protokollschwächen (NIS) | ||
Attacken auf einzelne Hosts | ||
heute: | IP Spoofing | |
''Denial of Service'' Attacken | ||
Attacken auf ganze Internetdomänen | ||
Mehrstufiges Vorgehen: | ||
|
Admins | Hacker |
---|---|
zu wenig Zusammenarbeit | hervorragender Informationsaustausch |
Abdeckung aller Lücken notwendig | Finden einer Sicherheitslücke |
Schutz aller Maschinen | Finden einer Maschine |
Überlastung | viel Zeit |
Problem | Lösung |
---|---|
Abhören des Netzverkehrs, gefälschte IP Adressen | Zukunft: IP Version 6, ssh, ssl, https |
gefälschte Nameservereinträge | DNS SEC, DNS Spoofing durch ssh verhindert |
gefälschter Mailabsender | Mails signieren |
Mitlesen von Mails | vercrypten mit PGP |
gefälschte Identität | Verwendung von starken Authentisierungsmethoden: z.B. Kerberos |
Im Dezember 1997 bemerkten wir lange unentdeckt gebliebene
Häckeraktivitäten auf einem wenig administrierten Rechner.
In den letzten Jahren wurden zahlreiche Sicherheitsmaßnahmen realisiert,
z.B. TCP Wrapper, Login von Remoterechnern nur über SecureShell oder
Einmalpaßwörter, Installation eines zentralen Loghosts und
Auswertung der Logfiles. Wer zu diesem Thema mehr wissen möchte, kann
sich an security@ifh.de wenden.
Seit Dezember 1997 bemerkten wir keinen weiteren Hackereinbruch.
Sicherheitsvorfälle:
Portscans: sendmail, popper, imap, telnet, ftp, ssh !
die zum Teil einzelne Maschinen, aber auch die ganze Domäne ifh.de
betrafen.
1999
Januar | 21 |
Februar | 8 |
März | 12 |
April | 9 |
Mai1 | 1 |
Juni | 10 |
Juli | 13 |
August | 9 |
September | 11 |
WWW Service | Suche nach cgi-bin Scripten: webdist.cgi, phf.cgi, php.cgi, Count.cgi |
selten | |
News Service | Hackeraktivitäten verringert |
1997 2-3 Attacken/Woche | |
ftp Service | Suche nach Konfigurationsfehlern |
3-4 Attacken/Monat |
DESY Zeuthen ist nicht isoliert. In der HEP Gemeinde sind nicht überall die
gleichen
Sicherheitsmaßnahmen realisiert. Zum Teil arbeiten Benutzer, die auch einen
Account in Zeuthen haben, auf nicht zentral oder gar nicht administrierten
Rechnern. Hackern kann der Zugang zu DESY Zeuthen ermöglicht werden.
Nach einem Hackereinbruch in einem anderem LAB werden meist Sniffer
installiert, die die Paßwörter abgehören.
Die Hacker suchen wiederum auf diesem Rechner nach Sicherheitslücken.
Die Administratoren versuchen, die Rechner auf dem neuesten Patchstand
zu halten, aber es gibt Situationen, wo ein Rootzugang nicht
verhindert werden kann (z.B. vom Hersteller kann noch kein Patch zur
Verfügung gestellt werden).
Files können modifiziert oder gelöscht werden.
Informationen können mißbraucht werden.
Der Account kann mißbraucht werden für Attacken gegen andere Einrichtungen.
Damit wird der Ruf von DESY geschädigt.
Achtung: Auch HomePCs werden gescannt, wenn sie per Modem/ISDN am Netz sind !
Viele nützliche Hinweise findet man in den FAQ's:
http://www.employees.org/~satch/ssh/faq
ssh
und Zubehör sind auf allen UNIX Rechnern installiert. Sie können aber nur
verwendet werden, wenn auf dem Zielrechner der sshd Daemon läuft.
Auch auf WindowsNT wird ein NetInstall Paket zur Verfügung gestellt,
in dem ein ssh Client enthalten ist: Teraterm.
In DESY Zeuthen und Hamburg wird als Authentisierungsmethode neben
Kerberos die
Rhost-Methode (/etc/hosts.equiv, .rhosts) + RSA-basierte Hostauthentisierung
verwendet.
Beispiele:
Einloggen mit Einmalpaßwörtern S/KEY (telnet und ftp)
Eine kurze Anleitung findet man unter
http://www.ifh.de/computing/projects/security/SKEY/skey.html
3.1. Warum muß auch der Nutzer auf Sicherheit achten ?
Nutzer hat unterschrieben, daß er seinen Account schützt.
Ist einer dieser gesnifften Accounts durch einen Benutzer getrustet
zu einem Account in ifh.de ist für den Hacker auch der Zugang zu ifh.de
gesichert. Die Hacker wissen auch, daß die Benutzer oft die gleichen
Paßwörter in verschiedenen LABs benutzen. So hangeln sich die Hacker
zu einem Rechner des anderen LABs.
3.2. Wie kann sich der Nutzer schützen
3.2.1. Gute Paßwörter
Gute Passwörter sollten:
Paßwörter altern nach 180 Tagen und können nicht wiederverwendet
werden. Der Account wird gesperrt, wenn das Paßwort nicht geändert wird.
Man sollte nicht überall das gleiche Paßwort verwenden ! Besonders Rechnern, die
wenig administriert werden, sollte man nicht trauen, also nicht in
.rhosts oder .shosts eintragen und man sollte dort ein anderes Paßwort
verwenden.
3.2.2. Keine abhörbaren Paßwörter übertragen, abhörsichere Verbindungen aufbauen
Durch geswitchte Netzwerktechnologie und strukturierte Verkabelung
wird die Möglichkeit des Abhörens des Netzwerkes deutlich eingeschränkt.
Die Übertragung unverschlüsselter Paßwörter kann ``nur'' beim Zugang vom
Xterminal zum Zielrechner nicht verhindert werden.
Bei Verwendung der empfohlenen Software ist die Verbindung ansonsten verschlüsselt:
Statt rsh, rlogin, rcp, telnet und ftp sollten
ssh, scp, xssh
verwendet werden.man ssh
: "encrypted communications between two untrusted
hosts over an insecure network"
Das X11 Forwarding kann eingeschaltet werden.
Auf jedem Rechner werden 2 Keys generiert: ein public und ein private Key.
Die public Keys werden in /etc/ssh_known_hosts gesammelt.
Auch der Benutzer kann diesen Machanismus nutzen. Er wird gefragt (bei
default Konfiguration), ob der public Key des Zielrechners eingetragen werden
soll in sein ~/.ssh/known_hosts
(auf dem Startrechner).
Wenn sein Startrechner vertrauenswürdig ist, und der Benutzer den Startrechner
in seinem ~/.rhosts
oder besser ~/.shosts
auf dem
Zielrechner eingetragen hat, dann kann er sich auch ohne Paßwort einloggen.
ssh machine.domain command
ssh -l user machine.domain
scp * user@host.domain:directory
scp user@host.domain:directory/'*' .
keyinit | Erzeugen von Einmalpaßwörtern an Konsole |
keyprint | lpr | Ausdrucken der Einmalpaßwörter in Kreditkartenform |
Einmalpaßwörter sind nur sinnvoll, wenn danach keine weiteren Paßwörter angegeben werden müssen, z.B. für AFS oder Kerberos Authentisierung, da diese sonst doch abgehört werden könnten.
Zur Zeit sind die S/KEYs der einzigste sichere Zugang, wenn die ssh nicht zur Verfügung steht.
Zukunft: ssh Client über Webbrowser (Java-Applet)
Mailservice
Protokolle: imap4 und pop
pop | Protokoll vermeiden, wird nur noch |
innerhalb von ifh.de unterstützt | |
Paßwörter werden häufig im Klartext im Netz übertragen | |
imap4 | mit Kerberosauthentisierung |
imap4 | mit Kerberosauthentisierung und SSL (Secure Socket Layer) |
Der imap Zugang ist jetzt so konfiguriert, daß eine Kerberos Authentisierung verlangt wird. Damit ist der rsh Zugang zum Mailserver nicht mehr notwendig.
Achtung: wenn der Benutzer von imap z.B. über pine kein Kerberos Ticket hat, wird das Paßwort im Netz im Klartext übertragen.
Wie können Klartextpaßwörter vermieden werden?
Demnächst wird eine modifizierte Version von pine zur Verfügung gestellt,
die eine abhörsichere, zertifizierte Verbindung zum Mailserver aufbaut:
pine-ssl
Bei Verwendung von netscape
als Mailreader sollte man,
wenn möglich, das Protokoll imap4 einschalten.
Das ist erst ab Version 4 möglich.
Wir wollen auf allen Plattformen netscape4 zur Verfügung
stellen (bis auf IRIX).
Da der Resourcenverbrauch sehr groß ist, haben wir lange gezögert.
Auf den PCs (Windows und Linux) ist netscape4 der Standard.
Bei WindowsNT wird das Protokoll imap4 bei allen gängigen Mailreadern
unterstützt.
imap4 in Verbindung mit SSL wird von netscape4 und InternetExplorer
zur Verfügung gestellt.
3.2.3. Bildschirm schützen
Es gibt folgende Möglichkeiten, seinen Bildschirm zu schützen:
xlock | ( -> /products/security/athena/bin/xnlock )Locken des Bildschirmes in HEPiX X11 Umgebung eingebunden |
xscreensaver |
Bildschirm wird nach vorgegebener Zeit automatisch gelockt Bildschirm kann vom Nutzer gelockt werden nicht standardmäßig eingerichtet aber empfohlen! |
Die Einbindung von xscreensaver als X11 Client in die HEPiX X11 Umgebung
erfolgt beim fvwm2
(Standard Windowmanager in DESY Zeuthen)
wie folgt:
editieren Sie das File ~/.hepix/xclients
und fügen Sie folgende Zeile hinzu:
/usr/local/bin/X11/xscreensaver -lock-mode &
/usr/local/bin/X11/xscreensaver-command -lock
~/.hepix/wm/fvwm2_user_menu
eingefügt werden, wenn das Kommando im Usermenu des Windowmanagers
erreichbar sein soll:
#and now your own User-menu
AddToMenu UserPopup "User menu" Title
...
+ "Loc\&k Screen\%small.lock.xpm\%" \
Exec /usr/local/bin/X11/xscreensaver-command -lock
...
tokens | (Links auf /usr/afsws/bin/tokens.krb )
dient zur Kontrolle von Existenz und Lebensdauer von Kerberos
Ticket und AFS Token,
Gültigkeit von 25 Stunden (Standard im CERN und DESY) |
tklife | warnt eine Stunde vor Ablauf, ist in den Shellprofiles eingebaut. |
Warum wird keine automatische Verlängerung angestrebt?
Wozu brauche ich Tokens/Tickets
tokens
überprüfen, ob ein Kerberos
Ticket vorhanden ist.Wann bekomme ich ein neues Token/Ticket?
Wie besorge ich mir neue Tokens/Tickets, wenn sie abgelaufen sind ?
mit klog
( -> /usr/afsws/bin/klog.krb
)
klog | Token für den aktuellen Account in der lokalen AFS Zelle besorgen | |
klog | -cell desy.de | Token in der Zelle desy.de erzeugen |
klog | nieprask@cern.ch | Token für nieprask in der Zelle cern.ch erzeugen |
Bemerkung: in jeder Zelle nur einen Token
UNIX Filesystem: Zugriffsrechte für Files und Directories
3.2.5. Sicherheitsrelevante Files schützen und richtig installieren
Unberechtigter Zugriff auf Directories und Files kann verhindert werden durch
Setzen von ACLs bzw.UNIX Zugriffsrechten.
Rechte für User/Group/Other | read/write/execute |
chmod | Änderung der Rechte |
umask | entscheidund für neue Files/Directories |
.netrc, .rhosts | in Nutzerverantwortung |
.Xauthority | X11 Authentisierung mit xauth |
Login profiles | |
Startupfiles und Konfigurationsfiles der Applikationen .pinerc, .emacs, ... | |
Directories: .ssh, .ssl, .pgp, ... | werden automatisch von den entsprechenden Applikationen und bei Einrichtung des Accounts richtig angelegt |
-> zu schützende Files müssen in entsprechend gesicherte Directories
von den UNIX Zugriffsrechten hat nur noch das x-Bit (Execute) des Eigentümers
Bedeutung.
! Alle anderen Rechte werden durch ACLs festgelegt.
Die Zugriffsrechte werden auf Subdirectories beim Erzeugen vererbt, aber nicht bei Änderung der ACLs in den darüberliegenden Directories.
AFS Doku: http://www.desy.de/usg/docs/ps/afs.html.de
Listen der ACLs:
fs listacl path
fs la path
Beispiel Homedirectory von Account winzig:
fs la /afs/ifh.de/user/w/winzig
Access list for /afs/ifh.de/user/w/winzig is | |
Normal rights: | |
system:administrators rlidwka | |
system:anyuser l | NUR Lookup Rechte |
| keine Lese/Schreibrechte |
winzig rlidwka |
Files schützen:
mv $AFSHOME/geheim $AFSHOME/private/geheim
ln -s $AFSHOME/private/geheim $AFSHOME/geheim
fs sa path system:anyuser none
cd /afs/ifh.de/user/w/winzig/mcdir
find . -type d -exec fs copyacl /afs/ifh.de/user/w/winzig/mcdir {} \;
find . -type d -exec fs sa albert none {} \;
Die ssh bietet die Möglichkeit des X11 Tunneling, so daß der gesamte X11 Traffic verschlüsselt wird. Ist X11-Forwarding eingeschaltet, kann der Benutzer auf dem Zielrechner X11 Applikationen starten, ohne sich um X11 Authentisierung zu kümmern. Die DISPLAY Variable wird generiert von der ssh und zeigt auf den Zielrechner. Die ssh erzeugt einen Proxy Xserver, verwendet dabei einen Zufallsauthorisierungskey. Der richtige Authorisierungskey wird nicht im Netzwerk verwendet.
ssh -f host xterm | xterm wird nach
Authentisierung (wenn notwendig in der Shell) im Hintergrund gestartet |
ssh -n host emacs | Applikation
wird im Hintergrund gestartet, funktioniert nur, wenn keine Paßwortabfrage notwendig ist |
Beispiele:
xssh machine.domain
xssh -l user machine.domain
xssh machine command
ssh-askpass
) gestartetZielrechner hat keine ssh
Die User basierte X11 Zugriffskontrolle ist beim XDM Login eingeschaltet.
Das File .Xauthority enthält den MIT-MAGIC-COOKIE Key, der vom XDM
generiert wird.
Der für diesen Display erzeugte Key wird von xauth extract
extrahiert und kann mit xauth merge
auf dem Zielrechner
eingebunden werden.
xrsh
realisiert automatisch die Übertragung des Keys.
xrsh ( -> xssh in DESY Zeuthen )
xrsh -rsh -auth xauth machine.domain
(DESY Zeuthen spezifisch)xrsh -auth xauth machine.domain
MIT )
Zielrechner hat keine User basierte X11 Zugriffskontrolle
Display schützen!
Niemals xhost + | weltweite Schreib-und Leserechte |
Abhören von Paßwörtern möglich, in Hacker-Tools eingebunden |
Host basierte Zugriffskontrolle:
xhost + machine.domain | wenn die Domäne nicht angegeben wird, kann jeder Host, der diesen Namen hat, die X11 Verbindung abhören |
xrsh -rsh -auth xhost machine.domain
xrsh mit rsh kann nur verwendet werden, wenn die DISPLAY Variable auf den Xserver zeigt und nicht durch ssh erzeugt wurde, d.h. also nicht auf den Proxy-Xserver zeigt
Achtung:
pgp
version 2.6.3i installiert.
pgp
ist in pine
eingebaut.pgp
ist geeignet zum Signieren und Verschlüsseln von Mails.Weitere Informationen findet man unter:
http://www.ifh.de/computing/services/software/unix-tools/pgp_doc.html
http://www.pgp.net/pgpnet/pgp-faq/
pgp-public-keys@keys.pgp.net
ist die email - Kontaktadresse für den
Key-Service
Die Kommandos für die Key-Service findet man erläutert unter
http://www.de.pgp.net/pgpnet/email-help-de
http://www.uk.pgp.net/pgpnet/pks-commands.html ist ein Webinterface für den Key-Service.
pgp kann auch nur zur Verschlüsselung verwendet werden.
pgp -e textfile | |
pgp textfile |
crypt
ist ein Programm, mit dem der Inhalt eines Files
verschlüsselt werden können.
crypt key < clear.file > encrypted.file |
Das File wird mit Hilfe des Keys (Paßwort) verschlüsselt. |
crypt key < encrypted.file > clear.file |
Das File wird entschlüsselt. |
Eine Anleitung zum Rückspeichern von Daten aus dem Backup findet man
unter:
http://www.ifh.de/computing/services/backup/backup.html
Wenn Bedarf an der Aufnahme weiterer UNIX Verzeichnisse (begrenzte Datenmenge)
besteht, schicken Sie bitte eine Mail an uco@ifh.de
3.2.9. Zahlreiche weitere Sicherheitsprobleme
Hier können nur ein paar weitere Hinweise angegeben werden.
Die Liste ist nicht vollständig.
vom Webserver heruntergeladener und in seinem Kontext
ablaufender ausführbarer Code
Java, ActiveX, JavaScript
3.3 Weitere Informationsquellen
Die DFN CERT Webseite:
http://www.cert.dfn.de/infoserv/
Die CERN Security Seite: http://wwwinfo.cern.ch/dis/security/
Bundesamt für Sicherheit in der Informationstechnik:
http://www.bsi.bund.de/
Bitte achten auf:
3.4 Wachsamkeit
Es gab in der Vergangenheit zahlreiche Hackereinbrüche in Labs, mit denen
zusammengearbeitet wird, z.B.
in DESY HH mehrere Einbrüche, auch im ZIB und SLAC, ...
Bitte alle Unstimmigkeiten melden an security@ifh.de !