Un server web può essere protetto solo con un firewall?

10

Sto per andare online con il mio primo sito web, si tratta di un piccolo progetto ospitato su un normale PC casalingo con Windows 7. Voglio mantenere l'ingombro del software al minimo, quindi contiene solo il sistema operativo e il server web con i file del sito web, nessun antivirus, nessun SQL, niente di niente. E ad eccezione del cavo di rete è completamente isolato dal mondo esterno, senza cd / dvd, senza tastiera, senza mouse, senza monitor. Il firewall di Windows è configurato per consentire solo il traffico in entrata sulla porta 80, tutto il traffico in uscita è bloccato.

Non sono un esperto di sicurezza di rete, quindi correggimi se ho torto: penso che con questa configurazione, l'unico modo possibile per accedere ai file e alle cartelle su quel computer sia attraverso il server web tramite la porta 80, il che significa che se il server web non consente l'accesso non autorizzato, posso quindi fidarmi che i miei file rimarranno privati. Se ho torto, spiega perché e come risolverlo, sempre con un ingombro del software minimo.

In questo momento la mia preoccupazione principale è la privacy, quindi posso ignorare i consigli su altri problemi di sicurezza.

Modifica

So che il mio software per server web sarà l'obiettivo della maggior parte degli attacchi, ma non è il gate principale che mi preoccupa, so in anticipo che tutti i tipi cercheranno di passarci attraverso, quindi posso essere preparato e configurato un intero esercito di poliziotti proprio lì, ciò che mi preoccupa sono le possibili porte secondarie che possono esistere senza che io sappia ... quindi la mia domanda è nel senso di come rendere il sistema operativo completamente e completamente isolato dal mondo esterno, in un modo in cui l'unico punto di accesso possibile è attraverso la porta di ascolto 80 del mio server Web.

    
posta george b 26.03.2014 - 00:49
fonte

6 risposte

8

Non è un gioco di porte magiche usato dagli hacker. Se non c'è un servizio in esecuzione sulla porta, è improbabile che si verifichino dei compromessi, ma è comunque una buona idea usare un firewall strong, specialmente su Windows in cui molti e molti servizi sono in esecuzione di default.

Detto questo, se qualcuno sta per compromettere il tuo server web, lo farà usando il software a cui gli stai permettendo di accedere (sia il tuo demone http che qualsiasi applicazione CGI che stai usando). Quindi, la risposta è no .

Non hai dato molti dettagli su cosa sia questo progetto, ma se si tratta di un'applicazione CGI di qualche tipo, la cosa più importante che puoi fare è codificarla attentamente per evitare vulnerabilità. Se qualcuno può iniettare shellcode in esso e inserire una shell, di solito può accedere a cose che non intendevi.

L'errata configurazione del server Web può anche essere un problema, se permetti cose come directory traversal e index; questi possono essere usati dagli aggressori per "ingannare" il web server nel servire cose che non hai pianificato.

Se si consente agli utenti di caricare file, fare attenzione anche; potrebbero caricare script che verranno eseguiti accidentalmente o caricare malware che dovresti pubblicare.

A volte anche la funzionalità che intendi può essere abusata; la navigazione forzata (come i trackback di wordpress) e l'invio di e-mail possono essere sfruttati dagli aggressori per nascondere le loro attività dietro di te.

Alcune cose che puoi fare sono:

  • Utilizza un utente separato per la tua applicazione web. In IIS, impostare l'utente del pool di applicazioni nelle impostazioni CGI e l'utente utilizzato per l'autenticazione anonima nelle impostazioni di autenticazione. Crea un utente specifico per questo e limita i loro privilegi al minimo necessario.
  • Cerca di pensare a tutte le cose che possono essere fatte con qualsiasi applicazione tu implementi e rendi disponibile, piuttosto che solo le cose che intendevi fare.
risposta data 26.03.2014 - 01:31
fonte
3

Right now my main concern is privacy, so I may ignore advice on other security issues.

Stai esponendo almeno il tuo indirizzo IP, che può essere mappato in una posizione specifica, quindi suona come minus points per la privacy.

Lo scopo del firewall è limitare l'accesso ai servizi. Non impedisce il traffico "cattivo" sulla porta 80 che quindi installa malware sul tuo server o sfrutta una vulnerabilità senza patch. Qualcuno potrebbe installare uno script dannoso in grado di leggere le informazioni di sistema, inclusi file, informazioni di sistema, ecc., Quindi questo può anche essere un problema di privacy. Il valore dei dati privati sul tuo server influisce sul tuo rischio specifico.

Un firewall di base non può impedire gli attacchi DDoS, non bloccherà contro attacchi su app web specifiche, sul server web, ecc. La sicurezza deve essere applicata a strati, il firewall non dovrebbe essere solo il protezione di sicurezza utilizzata. Buona codifica e patching contano per la sicurezza.

...the only possible way to have access the files and folders on that computer is through the web server via port 80, which means: if the web server allows no unauthorized access I can then trust my files will remain private.

Questa parte presuppone che non vi siano vulnerabilità del sistema operativo o vulnerabilità delle applicazioni che possono fornire privilegi non autorizzati, escalation di privilegi, bypass, ecc. Potrebbero non essere in grado di connettersi con SMB, FTP, ecc. ma è possibile sfruttarne alcuni vulnerabilità e accesso ai file (shell remota, ecc.)

    
risposta data 26.03.2014 - 02:32
fonte
2

che dire di eseguire virtualbox sul tuo computer Windows, e in una nuova macchina virtuale eseguire qualcosa di più sicuro come debiandeux , ed esegui il server web Apache su questo? quindi puoi usare iptables su linux e la sicurezza generale fornita con linux.

o semplicemente installa linux direttamente sull'host. Mi dispiace ma se vuoi un sistema sicuro, l'esecuzione di un server web su Windows 7 sembra che ti possa mettere nei guai.

Inoltre, avere un dispositivo gateway (un firewall / router) sul bordo della rete sarebbe di grande aiuto.

Inoltre, come altri hanno menzionato, non importa quanti firewall e quanti pochi buchi hai nelle tue difese esterne. se il tuo server web o i propri script hanno errori, non importa tutto.

altre fonti httpd.apache.org/ www.dd-wrt.com/site/index

    
risposta data 26.03.2014 - 04:17
fonte
2

Altre cose che potresti voler prendere in considerazione, oltre a ciò che altri hanno già suggerito:

  • Se il tuo sito web viene scaricato da un esercito di robot, sei disposto a rimanere senza Internet a casa per tutto il tempo che decide qualcun altro, per un capriccio?
  • Se Quando l'applicazione viene compromessa, l'utente malintenzionato si trova nella rete domestica? In tal caso, sarebbero in grado ad esempio di accedere al router di casa o ad altri computer? Stai bene con quello?
  • Quali altre cose sono ospitate sullo stesso PC?
  • Qual è l'impatto sul business di un riavvio per applicare una patch urgente?

Hai preso in considerazione l'idea di utilizzare un provider di hosting? Ci sono un sacco di offerte di "livello gratuito" là fuori.

[ Aggiorna ]

Per rispondere alle tue domande specifiche:

I know in advance all sorts of people will try to pass through it, so I can be prepared and setup a whole army of police officers right there,

La tua ipotesi qui è che tu sai quando e come attaccheranno. Non lo farai. E come va la tua metafora, non puoi lasciare una forza di polizia in attesa "da qualche parte" per un attacco che potrebbe non arrivare mai.

what worries me are the possible back doors that may exist without me knowing... so my question is in the sense of how to make the OS fully and completely isolated from the outside world, in such a way that the only possible access point is through my web server listening port 80.

Dovresti considerare anche monitoraggio dell'applicazione e della tua rete. Anche se puoi rendere il sistema operativo completamente isolato dall'esterno (non durerà), come fai a sapere se è efficace o no? In altre parole, cosa succede se ti manca qualcosa e credi di essere al sicuro? Un senso di falsa sicurezza è peggio che sapere che non c'è alcuna sicurezza.

Infine, ti consiglio di entrare in contatto con un tester di penetrazione professionale e di fare controllare la tua domanda se non regolarmente almeno una volta soprattutto se hai intenzione di memorizzare informazioni personali o cose come la carta di credito, ecc. Capisco che hai problemi di budget .. ma in sicurezza, proprio come nello sviluppo del software, non c'è il pranzo gratis.

    
risposta data 09.01.2017 - 17:28
fonte
-2

DMZ il tuo server web al di fuori del tuo firewall ... fino a quando tutte le informazioni che vuoi proteggere sono sulla tua macchina dietro il tuo firewall, dovresti stare bene. Se è configurato correttamente e tutto viene sistemato naturalmente.

    
risposta data 17.12.2015 - 01:06
fonte
-3

Ebbene si. Se tutto ciò che sta facendo il tuo server web è la visualizzazione di pagine statiche, quindi non ha nemmeno bisogno di un firewall. Il problema diventa quindi sanitizzazione dell'input dell'utente.

    
risposta data 17.12.2015 - 05:54
fonte

Leggi altre domande sui tag