En hamnsökning är lite som att skaka ett gäng dörrhandtag för att se vilka dörrar som är låsta. Skannern lär sig vilka portar på en router eller brandvägg som är öppna och kan använda den här informationen för att hitta ett datorsystems potentiella svagheter.
Vad är en hamn?
När en enhet ansluter till en annan enhet via ett nätverk anger den a TCP eller UDP portnummer från 0 till 65535. Vissa portar används dock oftare. TCP-portar 0 till 1023 är "välkända portar" som tillhandahåller systemtjänster. Port 20 är till exempel FTP-filöverföringar, port 22 är Secure Shell (SSH) terminalanslutningar, port 80 är standard HTTP-webbtrafik och port 443 är krypterad HTTPS . Så när du ansluter till en säker webbplats pratar din webbläsare med den webbserver som lyssnar på port 443 på den servern.
Tjänster behöver inte alltid köras på dessa specifika portar. Du kan till exempel köra en HTTPS-webbserver på port 32342 eller en Secure Shell-server på port 65001, om du gillade det. Det här är bara standardinställningarna.
Vad är en portskanning?
En portsökning är en process för att kontrollera alla portar vid en IP-adress för att se om de är öppna eller stängda. Programvaran för portavsökning skulle kontrollera port 0, port 1, port 2 och hela vägen till port 65535. Den gör det genom att helt enkelt skicka en begäran till varje port och be om svar. I sin enklaste form frågar port-skanningsprogrammet om varje port, en i taget. Fjärrsystemet svarar och säger om en port är öppen eller stängd. Den person som kör portskanningen skulle då veta vilka portar som är öppna.
Alla nätverk brandväggar i vägen kan blockera eller på annat sätt släppa trafik, så en portavsökning är också en metod för att hitta vilka portar som kan nås eller exponeras för nätverket på det fjärrsystemet.
De nmap-verktyg är en vanlig nätverksverktyg används för portavsökning, men det finns många andra verktyg för portavsökning.
Varför kör människor hamnskanningar?
Hamnskanningar är användbara för att bestämma ett systems sårbarheter. En portavsökning skulle berätta för en angripare vilka portar som är öppna i systemet, och det skulle hjälpa dem att formulera en attackplan. Till exempel, om en Secure Shell (SSH) -server upptäcktes som lyssnar på port 22, kan angriparen försöka ansluta och söka efter svaga lösenord. Om en annan typ av server lyssnar på en annan port kan angriparen peka på den och se om det finns ett fel som kan utnyttjas. Kanske körs en gammal version av programvaran och det finns ett känt säkerhetshål.
Dessa typer av skanningar kan också hjälpa till att upptäcka tjänster som körs på icke-standardportar. Så om du kör en SSH-server på port 65001 istället för port 22 skulle portavsökningen avslöja detta och angriparen kan försöka ansluta till din SSH-server på den porten. Du kan inte bara dölja en server på en icke-standardport för att säkra ditt system, även om det gör det svårare att hitta servern.
Hamnskanningar används inte bara av angripare. Hamnskanningar är användbara för defensiv penetrerande testning. En organisation kan skanna sina egna system för att avgöra vilka tjänster som exponeras för nätverket och se till att de är konfigurerade på ett säkert sätt.
Hur farligt är hamnskanningar?
En hamnsökning kan hjälpa en angripare att hitta en svag punkt för att attackera och bryta sig in i ett datorsystem. Det är dock bara det första steget. Bara för att du har hittat en öppen port betyder det inte att du kan attackera den. Men när du har hittat en öppen port som kör en lyssningstjänst kan du söka efter svagheter. Det är den verkliga faran.
I ditt hemnätverk har du nästan säkert en router som sitter mellan dig och Internet. Någon på Internet skulle bara kunna skanna din router och de skulle inte hitta något förutom potentiella tjänster på själva routern. Den routern fungerar som en brandvägg - om du inte har gjort det vidarebefordrade enskilda portar från din router till en enhet, i vilket fall dessa specifika portar exponeras för Internet.
För datorservrar och företagsnätverk kan brandväggar konfigureras för att upptäcka portavsökningar och blockera trafik från adressen som skannas. Om alla tjänster som exponeras för internet är konfigurerade på ett säkert sätt och inte har några kända säkerhetshål, bör inte portavsökningar ens vara för läskiga.
Typer av portskanningar
I en "TCP full anslutning" -port-skanning skickar skannern ett SYN-meddelande (anslutningsförfrågan) till en port. Om porten är öppen svarar fjärrsystemet med ett SYN-ACK-meddelande (bekräftelse). Skannern svarar än med sitt eget ACK-meddelande (bekräftelse). Detta är en full TCP-anslutning handskakning , och skannern vet att systemet accepterar anslutningar till en port om denna process sker.
Om porten är stängd kommer fjärrsystemet att svara med ett RST-meddelande (återställning). Om fjärrsystemet inte finns i nätverket kommer inget svar.
Vissa skannrar utför en "TCP halvöppen" skanning. I stället för att gå igenom en fullständig SYN-, SYN-ACK- och sedan ACK-cykel skickar de bara ett SYN och väntar på ett SYN-ACK- eller RST-meddelande som svar. Det finns inget behov av att skicka en slutlig ACK för att slutföra anslutningen, eftersom SYN-ACK skulle berätta för skannern allt den behöver veta. Det går snabbare eftersom färre paket behöver skickas.
Andra typer av skanningar handlar om att skicka främmande, missformade pakettyper och vänta på att se om fjärrsystemet returnerar ett RST-paket som stänger anslutningen. Om den gör det vet skannern att det finns ett fjärrsystem på den platsen och att en viss port är stängd på den. Om inget paket tas emot vet skannern att porten måste vara öppen.
En enkel portavsökning där programvaran efterfrågar information om varje port, en efter en, är lätt att upptäcka. Nätverksbrandväggar kan enkelt konfigureras för att upptäcka och stoppa detta beteende.
Det är därför som vissa tekniker för portavsökning fungerar annorlunda. Till exempel kan en portavsökning skanna ett mindre utbud av portar eller kan skanna hela utbudet av portar under en mycket längre period så att det skulle vara svårare att upptäcka.
Hamnskanningar är ett grundläggande säkerhetsverktyg för bröd och smör när det gäller penetrerande (och säkring) datorsystem. Men de är bara ett verktyg som låter angripare hitta hamnar som kan vara sårbara för attacker. De ger inte en angripare åtkomst till ett system, och ett säkert konfigurerat system tål säkert en fullständig portavsökning utan att skada.
Bildkredit: xfilephotos /Shutterstock.com, Casezy idé /Shutterstock.com.