Sicurezza Informatica

Trovare porte aperte in linux. Lo scan porte è legale ?

Porte aperte ?

Esistono due metodiche  per effettuare un controllo delle porte aperte. Quella da effettuare direttamente sul server e quella da effettuare dall’esterno (dalla intranet e da internet).

Per migliorare la sicurezza della propria macchina Linux, è necessario sapere se e quali porte sono aperte. In questo articolo vedremo diversi modi per elencare o visualizzare le porte aperte in Linux. Ricordate, un controllo sulle porte aperte deve essere sempre effettuato con regolarità. Nei sistemi critici questa operazione deve essere effettuata almeno una volta al giorno. Scoprire una “nuova” porta aperta deve sempre far accendere lo status di ALERT ! Ricordate, l’accessibilità ad una porta deve essere sempre controllata attraverso test svolti direttamente sul server da controllare, sia dal’esterno.

Cosa sono le porte  e a cosa servono 

Le porte, nella telematica e nell’ambito delle reti di calcolatori, sono lo strumento utilizzato per realizzare la multiplazione delle connessioni a livello di trasporto, ovvero per permettere ad un calcolatore di effettuare più connessioni contemporanee verso altri calcolatori, facendo in modo che i dati contenuti nei pacchetti in arrivo vengano indirizzati al processo che li sta aspettando.

Il termine è la traduzione dell’inglese port, nella accezione derivante dal latino porta: apertura, portale, oblò; il termine che in italiano si traduce in porto deriva invece dal latino portus.[1]

In particolare il termine porta è mutuato direttamente da quello di porta fisica di connessione tra cavi di un calcolatore o di un qualunque altro dispositivo elettronico. Di fatto nell’ambito della trasmissione dei dati durante una connessione non c’è altra porta fisica oltre a quella di aggancio del connettore del cavo. Nell’ambito delle reti di telecomunicazioni il termine porta indica quindi solamente una porta virtuale o logica e può essere vista banalmente come un’etichetta (label) che identifica e discrimina il traffico dati di una connessione da quello di un’altra.

Tutti i processi di rete tra i vari terminali di rete necessitano dunque di una porta per l’instaurazione, l’esecuzione ed il completamento del servizio preposto.” (WK)

Controlliamo le porte aperte in linux (on server)

Per avere una lista di “tutte” le porte e in special modo di quelle “note” ( assegnate a specifici servizi dalla IANA)  basta un

cat /etc/services

root@unassigned-hostname:~# cat /etc/services
1# Network services, Internet style
2#
3# Note that it is presently the policy of IANA to assign a single well-known
4# port number for both TCP and UDP; hence, officially ports have two entries
5# even if the protocol doesn’t support UDP operations.
6#
7# Updated from http://www.iana.org/assignments/port-numbers and other
8# sources like http://www.freebsd.org/cgi/cvsweb.cgi/src/etc/services .
9# New ports will be added on request if they have been officially assigned
10# by IANA and used in the real-world or are needed by a debian package.
22# If you need a huge list of used numbers please install the nmap package.

tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp
msp 18/udp
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp-data 20/tcp
ftp 21/tcp
ssh 22/tcp
ssh 22/udp
telnet 23/tcp

smtp 25/tcp mail
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource
nameserver 42/tcp name
whois 43/tcp nicname

etc etc .. e’ una lista abbastanza lunga.

Ma fate attenzione non è detto che sulla porta 443  (https 443/tcp # http protocol over TLS/SSL) ci sia sempre hhtps protocol, potrei utilizzare quella porta per SSH o per qualsiasi altro servizio!

 

Controlliamo le porte con netstat – porte aperte in linux

Iniziamo con un netstat nudo e crudo

linux netstat
comando netstat linux

 

e’ un po dura da leggere è in questo momento non è quello che cerchiamo. Però a netstat possono essere aggiunti dei parametri come :

a: mostra tutti i socket

t: mostra le connessioni TCP

u: mostra le connessioni UDP

p: per visualizzare il PID correlato del processo o del nome del programma

quindi proviamo con

netstat -atup (potete utilizzare anche solo i singoli parametri)

 linux netstat -autp
comando linux netstat -autp

 

 

I parametri che possono essere utilizzati con netstat sono tanti, ed e’ impossibile riportarli tutti.  Consiglio di fare un bel

man netstat

e di provare ad utilizzare tutte le varie combinazioni dato che non si possono fare danni !

Altro comando utile è lsof

Non tentate (fatelo) di lanciare lsof senza parametri , vi uscirà una lunga lista …. molto lunga.

Proviamo invece a lanciarlo con

-i

e poi con

-n -P | grep LISTEN

sono i parametri che uso più di frequente

Ricordo sempre un bel man lsof 

lsof -i

comando linux isof -i
comando linux isof -i

lsof -n -P | grep LISTEN

vediamo anche i socket aperti…..

comando linux isof -n -p
comando linux isof -n -p

 

Controlliamo le porte aperte in linux (dall’esterno)

Un classico e potentissimo scan porte (e non solo) si può effettuare con NMAP.

Usare NMAP ? Niente di più complicato ! Purtroppo non faccio parte di quella schiera di “informatici” e di aziende che promettono “Diventa ethical hacker in 30 lezioni” e con 600 Euri. Un  white hat o meglio ancora, un professionista della sicurezza, impiega anni di studio e tantissime ore “sul campo” per cercare di capire e comprendere almeno il 20% di quello che gli gira intorno. Questo mondo, in continuo mutamento e con infinite “strade” è impossibile da conoscere interamente. Esiste la specializzazione e, solo più figure professionali in team, possono cercare di dare “sicurezza” ad una azienda o ad un ente. Su questo, ci ritornerò sicuramente.

Comunque, vediamo come utilizzare, almeno nelle forme più comuni Nmap. Utilizzare Nmap, non significa solo lanciare l’applicazione con i parametri giusti. Significa sapere cosa si vuole cercare, sapere come cercarlo e saper analizzare i dati in uscita.

In un post precedente ho parlato già di NMAP, spiegando lo strumento e le finalità del suo utilizzo. Vediamo in concreto il suo utilizzo. Ricordo che tutte le tematiche riportate in questo articolo come nei futuri riguardanti NMAP sono valide per tutti gli scanner di rete, e vi saranno alcune configurazioni proprie per NMAP.

E’ legale Usare Nmap ?

In ambito di una intranet, e se ne hai facoltà dichiarata, è utilizzabile senza alcuna limitazione.

E in altri ambiti? Se usato correttamente, Nmap aiuta a conoscere e proteggere la vostra rete da possibili attacchi. Ma se usato impropriamente, l’itilizzo di Nmap può (in rari casi) farvi ritrovare licenziato, bandito dal vostro provider, o incriminato.

Nmap spiega…

La scansione delle porte può mandare in crash il computer/la rete di destinazione?

Nmap non ha alcuna caratteristica progettata per mandare in crash le reti di destinazione. Di solito cerca di muoversi con leggerezza. Per esempio, Nmap rileva i pacchetti abbandonati e rallenta quando si verificano per evitare di sovraccaricare la rete. Nmap inoltre non invia alcun pacchetto corrotto. Le intestazioni IP, TCP, UDP e ICMP sono sempre appropriate, anche se l’host di destinazione non si aspetta necessariamente i pacchetti. Per queste ragioni, nessuna applicazione, host o componente di rete dovrebbe mai bloccarsi sulla base di una scansione Nmap. Se lo fanno, si tratta di un bug nel sistema che dovrebbe essere riparato dal fornitore.

I resoconti di sistemi che sono andati in crash con Nmap sono rari, ma accadono. Molti di questi sistemi erano probabilmente instabili all’inizio e Nmap li ha spinti oltre il limite o sono andati in crash nello stesso momento di una scansione Nmap per pura coincidenza. In altri casi, è stato dimostrato che applicazioni scritte male, stack TCP/IP e persino sistemi operativi si bloccano in modo riproducibile con un certo comando Nmap. Questi sono di solito vecchi dispositivi legacy, dato che le apparecchiature più recenti sono raramente rilasciate con questi problemi. Le aziende intelligenti usano Nmap e molti altri strumenti di rete comuni per testare i dispositivi prima della spedizione. Quelli che omettono questi test pre-rilascio spesso scoprono il problema nei primi test beta quando un prodotto viene distribuito per la prima volta su Internet. Raramente ci vuole molto tempo perché un dato IP venga scansionato come parte del rumore di fondo di Internet. Mantenere i sistemi e i dispositivi aggiornati con le ultime patch del fornitore e il firmware dovrebbe ridurre la suscettibilità delle vostre macchine a questi problemi, migliorando anche la sicurezza e l’usabilità della vostra rete.

 

Classico esempio nmap

nmap -T4 -A -v ip_da_controllare

e monitorare quali e quante porte rispondono in entrata e vedere se c’è qualche sorpresa !

Inoltre, vi consiglio di leggere

Cosa si deve conoscere per il prossimo step ? Qual è la differenza tra un protocollo orientato alla connessione e un protocollo senza connessione? Un protocollo orientato alla connessione (ad esempio, TCP) crea una connessione tra due computer prima di inviare i dati, e poi verifica che i dati abbiano raggiunto la loro destinazione usando le conferme (ACK) (cioè i messaggi inviati al computer di invio dal computer ricevente che computer ricevente che confermano la ricezione). I protocolli senza connessione inviano i dati e confidano che raggiungano la destinazione corretta o che l’applicazione gestire la ritrasmissione e la verifica dei dati.

Usare Nmap : tool potentissimo per il Penetration Testing Scanner.

Come Usare NMAP potrebbe sembrare semplice: Host Discovery. 

Usare NMAP : Troviamo porte e servizi attivi sul nostro bersaglio.

NMAP VS Firewall : Si tenta sempre ! Vediamo come.

Nmap port scanning: Facile dire aperta e chiusa.

Sintassi nmap, volume 1 : possibili tipi di scansione.

Sintassi nmap volume 2 : possibili tipi di scansione.

e ricordate che controllare con costanza le porte aperte può farci scoprire in tempo utile una falla , la presenza di un worm o un attacco riuscito al nostro server. Fatelo sempre e spesso ! Controlliamo sempre le porte aperte in linux !

key: vedere porte utilizzate linux, Key: computer networking, Cybersecurity, cybersicurezza, hacking, Host Discovery, ICMP Address Mask Reques, ICMP ECHO, ICMP Timestamp, Inverse mapping, nmap, penetration test, penetration testing, Penetration Testing Scanner, Ping UDP, sicurezza informatica, TCP Ping, tcp/ip, Usare Nmap, vulnerability, computer networking, Cybersecurity, cybersicurezza, hacking, Host Discovery, ICMP Address Mask Reques, ICMP ECHO, ICMP Timestamp, Inverse mapping, nmap, penetration test, penetration testing, Penetration Testing Scanner, Ping UDP, sicurezza informatica, TCP Ping, tcp/ip, Usare Nmap, vulnerability

Se ritieni questo articolo interessante, seguici su Facebook o Twitter o Telegram per poter essere informato su i nuovi contenuti proposti.