Qual è la differenza tra bloccare una porta con un firewall e non avviare un servizio su quella porta in primo luogo?

14

Stavo pensando di installare un firewall software (pf) sul mio server web e ho fatto qualche ricerca su di loro. Se lo facessi, implicherebbe fondamentalmente il blocco delle connessioni a tutte le porte tranne 80, 443 e la porta non standard che sto usando per le connessioni SSH.

Ma visto che il mio server ha già solo servizi in esecuzione su quelle porte, sarebbe semplicemente inutile? Al momento non ho davvero bisogno di IP region-block o di qualcosa di così complesso.

In parole semplici che qualcuno con una comprensione non completa della rete IP può capire, sarebbe comunque utile per me configurare un firewall in questo modo? In che modo, dal punto di vista funzionale, è diverso dal continuare a non eseguire servizi sulle porte che vorrei bloccare?

    
posta Garrett Albright 25.01.2015 - 02:12
fonte

2 risposte

13

TL; DR

Protegge dal dover configurare manualmente i servizi per l'ascolto solo su localhost, in quanto è necessario consentire manualmente la connettività di rete e aumenta lo sforzo che un utente malintenzionato deve esercitare per riconvertire la propria casella. Ciò significa che è uno strumento efficace sia contro gli attaccanti che con una configurazione inadeguata. Sì, dovresti eseguire un firewall.

Dettagli

Le porte hanno 2 stati principali:

  1. Apri (il servizio è in ascolto)
  2. Chiuso (non c'è niente che ascolti)

Sembra che tu abbia familiarità con i due stati: le porte sono predefinite come "chiuse", passando a "aperte" se c'è un servizio in ascolto. È molto veloce enumerare sia le porte aperte che quelle chiuse: il sistema operativo invierà effettivamente una risposta dicendo "c'è un servizio qui" (la porta è aperta), o uno che dice "non c'è servizio qui" (la porta è chiusa).

Se si utilizza un firewall, fornisce l'opzione per filtrare le porte. Per le porte filtrate, il sistema operativo non risponde affatto. Ciò significa che un utente malintenzionato deve investire più tempo per determinare gli stati della porta, in quanto non ha modo di sapere se il computer non ha inviato alcuna risposta o se la risposta è stata persa durante il trasporto.

Inoltre, se stai utilizzando un firewall, ti proteggi dall'esposizione accidentale di servizi aggiuntivi a Internet.

Ho incluso una scansione di esempio del mio desktop con il mio firewall spento (presta particolare attenzione al numero di porte scoperte e alla durata della scansione):

$ nmap 192.168.1.26

Starting Nmap 6.40 ( http://nmap.org ) at 2015-01-24 21:41 EST
Nmap scan report for TehPwner (192.168.1.26)
Host is up (0.00017s latency).
Not shown: 987 closed ports
PORT      STATE SERVICE
135/tcp   open  msrpc
139/tcp   open  netbios-ssn
445/tcp   open  microsoft-ds
902/tcp   open  iss-realsecure
912/tcp   open  apex-mesh
2869/tcp  open  icslap
5357/tcp  open  wsdapi
8081/tcp  open  blackice-icecap
49152/tcp open  unknown
49153/tcp open  unknown
49154/tcp open  unknown
49163/tcp open  unknown
49176/tcp open  unknown

Nmap done: 1 IP address (1 host up) scanned in 2.30 seconds

Ora ho attivato il mio firewall:

$ nmap 192.168.1.26

Starting Nmap 6.40 ( http://nmap.org ) at 2015-01-24 21:42 EST
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn

Nmap done: 1 IP address (0 hosts up) scanned in 3.03 seconds

Ancora una volta, saltando la sonda ping:

$ nmap 192.168.1.26 -Pn

Starting Nmap 6.40 ( http://nmap.org ) at 2015-01-24 21:42 EST
Nmap scan report for TehPwner (192.168.1.26)
Host is up (0.00090s latency).
Not shown: 996 filtered ports
PORT     STATE SERVICE
902/tcp  open  iss-realsecure
912/tcp  open  apex-mesh
2869/tcp open  icslap
5357/tcp open  wsdapi

Nmap done: 1 IP address (1 host up) scanned in 49.29 seconds
    
risposta data 25.01.2015 - 03:57
fonte
10

Nel mondo ideale , una porta aperta senza servizi in esecuzione dietro è uguale a una porta che non è aperta. Nel mondo reale , gli umani commettono errori. Minore è il controllo su un sistema, più è probabile che qualsiasi attacco al sistema venga amplificato da un errore.

Un firewall serve a mitigare il tuo errore aggiungendo un ulteriore livello di controllo al tuo computer. Lo fa accettando, rifiutando o rilasciando le connessioni in base alla configurazione. Come effetto collaterale, aiuta a ridurre la capacità degli utenti malintenzionati di impronte digitali del sistema operativo (SO) per lanciare attacchi più mirati.

Se non si ha familiarità con il proprio sistema operativo, è probabile che si riattivino accidentalmente servizi disattivati o che vengano avviati nuovi servizi installati tramite un aggiornamento del sistema. A meno che non si esegua un controllo coerente utilizzando programmi come netstat , questi servizi dovrebbero ascoltare in silenzio le connessioni in entrata senza le proprie conoscenze. Alcuni dei quali potrebbero, nel corso del tempo, diventare vulnerabili agli attacchi e fornire spazio a un utente malintenzionato per violare il sistema.

Eseguendo un firewall e bloccando le porte senza servizi attivi, si sta sostanzialmente rafforzando il sistema fornendo ridondanza nel caso in cui un controllo di sicurezza non riesca o venga sfruttata una vulnerabilità durante il ciclo di vita del sistema. Questo approccio è noto come difesa in profondità.

    
risposta data 25.01.2015 - 08:01
fonte

Leggi altre domande sui tag