En viktig metode for å identifisere nøyaktig hvilke tjenester som kjører på nettverket ditt, er å utføre en portskanning. Å kjøre en portskanning kan gi deg en nøyaktig oversikt over angrepsoverflaten til datamaskinen og nettverket. I noen tilfeller kan du oppleve at du kjører tjenester som du kanskje ikke hadde forventet.
Transmission Control Protocol, eller TCP, er en standard som tillater tilkoblinger mellom datamaskiner over et nettverk. TCP bruker et treveis håndtrykk for å åpne en tilkobling som deretter vil forbli åpen til den enten blir tidsavbrutt eller tilkoblingen lukkes. Dette betyr ikke at tilkoblingen alltid overfører data, det betyr bare at begge parter lagrer tilkoblingsdetaljene og umiddelbart kan gjenoppta sending og mottak av data.
Nmap er standardverktøyet for å utføre portskanning. Den er først og fremst designet for å kjøre på Linux, men det finnes også Windows-versjoner. Et grafisk grensesnitt er også tilgjengelig, men kommandolinjebruken er fortsatt standard.
Hvordan bruke Nmap
For å teste om du har Nmap installert på en Linux-maskin, kjør kommandoen "nmap". Hvis du får en hjelpeside, er den installert og klar til å kjøre, hvis du får en feilmelding som sier at kommandoen "ikke ble funnet", må du installere Nmap.
Hjelpesiden er veldig tett og viser mange alternativer som kan være forvirrende. Det grunnleggende du trenger for å skanne TCP-porter er relativt enkelt. Den grunnleggende strukturen du trenger er "nmap [type skanning] [alternativer] {målspesifikasjon}".
For å skanne TCP-porter vil du bruke en av to skannetyper, TCP eller SYN. En TCP-skanning forsøker å opprette en full tilkobling til hver port, og fullføre treveis håndtrykket. En SYN-skanning misbruker protokollen litt og sender aldri den tredje meldingen i treveis håndtrykket. SYN-skanninger er ofte mindre belastende for systemressurser da enheter ikke trenger å holde mange tilkoblinger åpne samtidig Siden tilkoblingene aldri er fullstendig etablert, kjører de også raskere enn TCP-skanninger, men de trenger root tillatelser. En TCP-skanning er spesifisert med "-sT"-flagget, mens en SYN-skanning er spesifisert med "-sS".
Tips: Treveis håndtrykket er måten en TCP-tilkobling initialiseres på, det involverer tre meldinger, "SYN, SYN-ACK og ACK" sendt fra klient til server, server til klient, deretter klient til server hhv.
Hvordan spesifisere skannealternativer
Alternativer-delen er helt valgfri, men det er en rekke som kan være generelt nyttige. Du kan aktivere mer detaljerte skanneresultater ved å øke detaljnivået med "-v", du kan øke omfanget ytterligere opp til et tredje nivå med "-vvv". Du kan kjøre operativsystemdeteksjon, versjonsdeteksjon, skriptskanning og traceroutes ved å bruke "-A"-flagget, selv om dette vil ta litt lengre tid å kjøre.
Du kan enten skanne IPv4- eller IPv6-adresser om gangen, IPv4 er standard, hvis du vil skanne IPv6-adresser må du bruke "-6"-flagget. Noen ganger vil Nmap kjøre en rask ping-skanning for å finne ut hvilke hots som er oppe, hvis dette hopper over verter du vil teste, kan du deaktivere det med "-Pn"-flagget. Hvis du spesifiserer et stort område kan det ta lang tid å skanne. "-T4"-flagget vil kjøre skanningen raskere og vil neppe gå glipp av noe, det kan overvelde trege nettverk eller enheter ettersom trafikkutgangen vil økes betydelig.
Hvordan spesifisere IP-adresse og portområder
Som standard vil Nmap skanne de 1000 mest brukte portene, du kan manuelt angi et portområde ved å bruke "-p"-flagget og deretter spesifisere et område uten mellomrom. Portområder kan spesifiseres gjennom kommadelte verdier, bindestreker eller en kombinasjon av de to. For eksempel vil flaggene "-p22", "-p1-65535" og "-p21-25,80,139,8080" skanne port 22, alle porter mellom 1 og 65535, og porter 21 til 25, 80, 239, og 8080 henholdsvis. Det er også mulig å spesifisere "–top-ports [nummer]"-flagget i stedet for å skanne topp [antall] vanligste porter. Hvis du vil spesifisere alle porter, kan du bruke forkortningen "-p-".
Tips: Portnummer varierer mellom 0 og 65535, selv om 0 teknisk sett ikke kan brukes.
Det siste du må spesifisere er IP-adressene til enhetene du ønsker å teste. For å gjøre det, bare oppgi alle IP-adressene du vil skanne, de skal være atskilt med mellomrom og kan listes opp individuelt, med bindestreker eller gjennom CIDR-notasjon. For eksempel, "191.168.0.1" ville skanne den enkelte IP-adressen, "192.168.0.1-5" ville skanne de fem IP-adressene mellom 102.168.0.1 og 192.168.0.5, til slutt ville "192.168.0.1/24" skanne alle IP-adresser mellom 192.168.0.1 og 192.168.0.255.
Den generelle kommandoen skal se omtrent ut som følgende eksempler: "nmap -sS -vvv -A -p- 127.0.0.1", "nmap -sS -v -p80,443,8080 192.168.0.1/24", "nmap -sS –toppporter 10000 -6 ::1”