Linux - Friheden til sikkerhed på internettet: Version 2.9.20060510 - 2020-12-31 | ||
---|---|---|
forrige | Kapitel 1. Introduktion til sikkerhed | næste |
Nu skal vi se på, hvor meget du udsætter din maskine for, når du tilslutter den til internettet. Vi tager udgangspunkt i en Linux-maskine, som har en netværksopkobling enten via modem eller fast forbindelse. Det er reelt ikke så vigtigt, at det er en Linux-maskine - alle systemer med netværk har samme karakteristiske træk.
Lad os inddele verden efter
"On and off" : Opkobling sker med modem og f.eks. PPP. Der hentes post og surfes minimalt på internettet.
Du har ikke så meget at frygte, selvom du måske ikke har styr på din sikkerhed på maskinen. Når du laver en modem-opkobling til internettet, får du tildelt en IP-adresse, dvs. en adresse, som alle kan tilgå din maskine på. Men den adresse er forskellig fra gang til gang når du laver opkobling. Derfor bliver det i praksis umuligt at afsøge din maskines sikkerhedshuller fra en anden maskine, før du igen har lukket forbindelsen. Der er dog oplagt, at den risiko, du løber, svarer nøje til den tid du er koblet på internettet.
"Seriøs surfing": Opkobling sker med modem og f.eks. PPP. Der hentes post jævnligt, og der surfes en del. Denne situation kan også gælde for en maskine, som via automatiske services laver internetopkobling for et helt lokalnet. Til Linux er det ofte "diald", som bruges til dette.
Du er tilkoblet internettet i længere tid ad gangen men stadig med forskellig IP-adresse hver gang, så du er ikke helt nem at finde. Men i modsætning til "On and off" brugeren er du på så lang tid, at der godt kan laves skanning på din maskine. Hvis der findes en usikker service, kan den måske give oplysninger om svagheder i dit system, og dermed kan din netværkssikkerhed rammes. Du bør tænke på hvilke åbninger, der er i dit system. Du bør lære noget om grundlæggende netværkssikkerhed. Læs f.eks. resten af artiklerne i denne serie.
"Fast opkobling": Maskinen har fast opkobling til internettet via ethernet-, ISDN-, ADSL- eller anden forbindelse.
Du kan skannes fra en enhver maskine på internettet medmindre der er firewalls eller såkaldte proxy-servere imellem. Du kan ikke overvåge alt 24 timer i døgnet. Maskinen efterlades. Du må tjekke dine log filer! Slå overflødige netværksservices fra og begræns adgangen til dem, der er tilbage. Du bør lære noget om sikkerhed. Læs f.eks. som en start de kommende artikler i denne serie. På internettet er der masser af yderligere information, og der findes gode bøger om emnet.
Lad os antage, at din maskine har direkte adgang til internettet uden firewall eller anden beskyttelse. Vi vil nu se på, hvorfor din maskine kan være udsat, og hvordan andre finder ud af, at du har en maskine på nettet. At det netop er din maskine, som er udset til et angreb, kan skyldes mange ting: Tilfældigheder, at du anses for at ligge inde med interessante data, eller at du ikke har vedligeholdt din Linux-maskine og fået lukket de kendte sikkerhedshuller.
En angriber har flere måder at finde din maskine på. En er f.eks. at studere brevhovederne i dine breve. En anden er at hente listen over hostnavnene i dit domæne vha. DNS (navneservere). En mere direkte måde er at bruge ping.
En angriber kan derefter spørge din maskine, hvilke services den tilbyder, og måske finde et sikkerhedshul. Som eksempel kan vi tage ssh, som tilbydes på port 22. Med telnet kan man logge ind på port 22 og få versionsnummeret på ssh. I det følgende eksempel finder vi ud af, at det er ssh version 1.2.27, der kører. Kan angriberen f.eks. på internettet finde en beskrivelse af en sikkerhedsfejl i den version af ssh, kan han udnytte dette til at angribe dit system med.
[robin@sherwood robin]$ telnet bohr 22 Trying 172.17.0.3... Connected to bohr Escape character is '^]'. SSH-1.5-1.2.27
Normalt er det nødvendigt, at din maskine har nogle af de mange netværksservices kørende, da de bruges til at kommunikere med andre maskiner via netværk. Ofte kan de fleste af dem dog slås fra, se Kapitel 2.
I stedet for at en angriber manuelt skal gennemse alle dine porte for mulige huller, kan han gøre det nemmere og meget hurtigere ved at installere programmer såsom nmap. Nmap kan hentes på http://www.insecure.org/nmap. Med nmap kan man dels se hvilke maskiner, der er i live, men også hvilke porte, der er åbne. Nedenstående eksempel viser, at maskinen "bohr" har (alt for) mange porte åbne.
[robin@sherwood robin]$ nmap bohr Starting nmap V. 2.12 by Fyodor (fyodor@dhp.com, www.insecure.org/nmap/) Interesting ports on bohr.herne.dk (172.17.0.3): Port State Protocol Service 21 open tcp ftp 22 open tcp ssh 23 open tcp telnet 25 open tcp smtp 79 open tcp finger 80 open tcp http 98 open tcp linuxconf 111 open tcp sunrpc 113 open tcp auth 513 open tcp login 514 open tcp shell 515 open tcp printer 6000 open tcp X11 Nmap run completed -- 1 IP address (1 host up) scanned in 2 seconds
Eksemplet med nmap svarer til, hvad man udefra kan se om maskinen. Har man adgang til maskinen, så kan "netstat -a" også være interessant, idet kommandoen viser alle de netværksforbindelser, som er etableret, samt de ventende serverprogrammer. Et forkortet output af "netstat -a" kan være følgende, hvor man kan se, at en telnet-session fra sherwood til bohr er igang, og serverprogrammerne ssh, sendmail (smtp), telnet og ftp er klar.
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 bohr:telnet sherwood.herne.dk:1074 ESTABLISHED tcp 0 0 *:ssh *:* LISTEN tcp 0 0 *:smtp *:* LISTEN tcp 0 0 *:telnet *:* LISTEN tcp 0 0 *:ftp *:* LISTEN
Du kan læse mere om NMAP på http://www.itworld.com/Sec/2202/LWD010404vcontrol1/ og http://www.insecure.org/nmap/nmap_doc.html.
Man kan også have interesse i at bruge det grafiske program cheops, som findes på ftp://ftp.marko.net/pub/cheops/RPMS/. Programmet er skrevet sådan, at det grafisk viser hvilke maskiner, som er i live, og evt. overvåger, at de forbliver i live. Cheops er nok primært beregnet til at give systemadministratoren et hurtigt overblik over netværket, men det kan også bruges til at udse sig svage maskiner, som kan angribes. På følgende billede er vist, hvordan cheops ud fra et domænenavn selv finder ud af, at der er seks maskiner i live. Det vises grafisk hvilket operativsystem, der anvendes på hver af dem. Fra venstre mod højre: SGI IRIX, Linux, HP/UX, HP/UX, Windows og endelig en speciel maskine.
Flytter man musen ned på ikonet for maskinen, får man flere oplysninger om den ofte også versionsnumre, og man kan yderligere direkte skanne maskinen for alle oplysninger. Man kan ofte se alt for meget - især når folk ikke har deres sikkerhed i orden.
Det er altså nemt at trække informationer ud af en ubeskyttet maskine.