En havneskanning er litt som å fnise en haug med dørhåndtak for å se hvilke dører som er låst. Skanneren får vite hvilke porter på en ruter eller brannmur som er åpne, og kan bruke denne informasjonen til å finne potensielle svakheter i et datasystem.
Hva er en havn?
Når en enhet kobles til en annen enhet via et nettverk, spesifiserer den en TCP eller UDP portnummer fra 0 til 65535. Noen porter brukes imidlertid oftere. TCP-porter 0 til 1023 er "velkjente porter" som tilbyr systemtjenester. For eksempel er port 20 FTP-filoverføring, port 22 er Secure Shell (SSH) terminalforbindelser, port 80 er standard HTTP-nettrafikk, og port 443 er kryptert HTTPS . Så når du kobler til et sikkert nettsted, snakker nettleseren din med webserveren som hører på port 443 på den serveren.
Tjenester trenger ikke alltid å kjøre på disse spesifikke portene. For eksempel kan du kjøre en HTTPS-webserver på port 32342 eller en Secure Shell-server på port 65001, hvis du likte det. Dette er bare standardinnstillingene.
Hva er en portskanning?
En portskanning er en prosess for å sjekke alle portene på en IP-adresse for å se om de er åpne eller lukkede. Programvaren for skanning av port vil sjekke port 0, port 1, port 2 og helt til port 65535. Den gjør dette ved ganske enkelt å sende en forespørsel til hver port og be om svar. I sin enkleste form spør port-skanningsprogrammet om hver port, en om gangen. Det eksterne systemet vil svare og si om en port er åpen eller lukket. Personen som kjører havneskanningen, vil da vite hvilke porter som er åpne.
Ethvert nettverk brannmurer på den måten kan blokkere eller på annen måte slippe trafikk, så en portskanning er også en metode for å finne hvilke porter som er tilgjengelige eller utsatt for nettverket på det eksterne systemet.
De nmap-verktøy er vanlig nettverksverktøy brukes til portskanning, men det er mange andre portskanningsverktøy.
Hvorfor kjører folk havneskanning?
Portskanning er nyttig for å bestemme sårbarheter i systemet. En havneskanning vil fortelle en angriper hvilke porter som er åpne på systemet, og som vil hjelpe dem med å formulere en angrepsplan. For eksempel, hvis en Secure Shell (SSH) server ble oppdaget som lytter på port 22, kan angriperen prøve å koble til og se etter svake passord. Hvis en annen type server lytter på en annen port, kan angriperen peke på den og se om det er en feil som kan utnyttes. Kanskje en gammel versjon av programvaren kjører, og det er et kjent sikkerhetshull.
Disse typer skanninger kan også bidra til å oppdage tjenester som kjører på ikke-standardporter. Så hvis du kjører en SSH-server på port 65001 i stedet for port 22, vil portskanningen avsløre dette, og angriperen kan prøve å koble til SSH-serveren din på den porten. Du kan ikke bare skjule en server på en ikke-standardport for å sikre systemet ditt, selv om det gjør det vanskeligere å finne serveren.
Havneskanning brukes ikke bare av angripere. Portskanning er nyttig for defensiv gjennomtrengende testing. En organisasjon kan skanne sine egne systemer for å finne ut hvilke tjenester som er utsatt for nettverket og sikre at de er konfigurert sikkert.
Hvor farlig er havneskanning?
En portskanning kan hjelpe en angriper med å finne et svakt punkt for å angripe og bryte seg inn i et datasystem. Det er bare det første trinnet. Bare fordi du har funnet en åpen port, betyr ikke det at du kan angripe den. Men når du har funnet en åpen port som kjører en lyttetjeneste, kan du skanne den etter sårbarheter. Det er den virkelige faren.
På hjemmenettverket ditt har du nesten helt sikkert en ruter som sitter mellom deg og Internett. Noen på Internett vil bare kunne skanne ruteren din, og de vil ikke finne noe bortsett fra potensielle tjenester på selve ruteren. Denne ruteren fungerer som en brannmur - med mindre du har gjort det videresendt individuelle porter fra ruteren din til en enhet, i så fall blir de spesifikke portene eksponert for Internett.
For dataservere og bedriftsnettverk kan brannmurer konfigureres til å oppdage portskanning og blokkere trafikk fra adressen som skannes. Hvis alle tjenestene som er eksponert for internett er sikkert konfigurert og ikke har noen kjente sikkerhetshull, bør skanning av port ikke engang være for skummel.
Typer av portskanninger
I en "TCP full connection" -port-skanning sender skanneren en SYN-melding (tilkoblingsforespørsel) til en port. Hvis porten er åpen, svarer det eksterne systemet med en SYN-ACK (bekreftelse) -melding. Skanneren svarer enn med sin egen ACK-melding (bekreftelse). Dette er en full TCP-tilkobling håndtrykk , og skanneren vet at systemet godtar tilkoblinger i en port hvis denne prosessen finner sted.
Hvis porten er stengt, vil det eksterne systemet svare med en RST (reset) -melding. Hvis det eksterne systemet bare ikke er til stede i nettverket, vil det ikke være noe svar.
Noen skannere utfører en “TCP halvåpent” skanning. I stedet for å gå gjennom en full SYN-, SYN-ACK- og deretter ACK-syklus, sender de bare en SYN og venter på en SYN-ACK- eller RST-melding som svar. Det er ikke nødvendig å sende en endelig ACK for å fullføre tilkoblingen, da SYN-ACK vil fortelle skanneren alt den trenger å vite. Det er raskere fordi færre pakker må sendes.
Andre typer skanninger innebærer å sende fremmede, misdannede typer pakker og vente på å se om det eksterne systemet returnerer en RST-pakke som lukker forbindelsen. Hvis den gjør det, vet skanneren at det er et eksternt system på det stedet, og at en bestemt port er lukket på den. Hvis det ikke mottas noen pakke, vet skanneren at porten må være åpen.
En enkel portskanning der programvaren ber om informasjon om hver port, en etter en, er lett å få øye på. Nettverksbrannmurer kan enkelt konfigureres for å oppdage og stoppe denne oppførselen.
Derfor fungerer noen port-skanningsteknikker annerledes. For eksempel kan en port skanning skanne et mindre utvalg av porter, eller kan skanne hele spekteret av porter over en mye lengre periode, så det ville være vanskeligere å oppdage.
Portskanning er et grunnleggende sikkerhetsverktøy for brød og smør når det gjelder gjennomtrengende (og sikring) datasystemer. Men de er bare et verktøy som lar angripere finne porter som kan være sårbare for angrep. De gir ikke en angriper tilgang til et system, og et sikkert konfigurert system kan absolutt tåle en full portskanning uten skade.
Bildekreditt: xfilephotos /Shutterstock.com, Casezy idé /Shutterstock.com.