Installa un antivirus su un server web, è una buona idea?


14

Ho appena ottenuto un server dedicato con Windows 2008 Standard Edition e sto provando a fare la configurazione necessaria per eseguire la mia app Web su di essa.

Mi chiedevo, è una buona idea installare un antivirus sul web server? Nell'app, gli utenti non possono caricare alcun file tranne le immagini (e hanno verificato la presenza di immagini nel codice dell'app prima di essere salvati sul server). Sono incoraggiato a non installare un antivirus per non influire sulle prestazioni o causare problemi con l'app, mi mancherà qualcosa facendo questo?

Grazie


Dici che i file sono controllati per essere immagini nel codice dell'app prima di essere salvati - questo implicherebbe per me che il file caricato si trova in una directory temporanea prima che la tua app riesca a vederlo? Nel qual caso è già sul server prima che tu possa controllarlo! Quale web server stai usando?
Steve Folly,

In realtà le immagini vengono controllate in memoria, non vengono salvate in alcuna cartella temporanea. Vengono salvati sul disco solo se superano il controllo nell'app. Sto usando IIS, è un'app ASP.NET
Mee,

Inoltre, anche se salvi un file in una cartella temporanea ma non lo esegui, non causerà alcun problema. Ma ancora non è così.
Mee,

Risposte:


18

Un server Web ben gestito non dovrebbe installare un pacchetto antivirus commerciale (IMHO) per IMHO. Il tipo di macro virus Office e trojan del mercato di massa per cui i pacchetti AV sono ottimizzati sono una scarsa corrispondenza con i problemi di un server web.

Quello che dovresti fare è:

  1. Assolutamente ossessionato dalla convalida dell'input. Esempi: che gli utenti non possono caricare contenuti dannosi sul tuo sito (virus, iniezione SQL ecc.); che non sei vulnerabile ad attacchi di cross-site scripting, ecc.
  2. Mantieni il tuo server aggiornato con gli ultimi aggiornamenti di sicurezza e configurato secondo le migliori pratiche. Guarda cose come il toolkit di sicurezza di Microsoft .
  3. Avere un firewall separato. Non ti aiuta molto per quanto riguarda le intrusioni, ma aggiunge un altro livello di difesa contro i servizi di rete non configurati correttamente e aiuta con semplici attacchi DOS. Inoltre aiuta molto a bloccare le possibilità di gestione remota ecc.
  4. Installa un sistema di rilevamento delle intrusioni host (H-IDS) sul tuo server, lungo le linee del venerabile Tripwire .

C'è molta confusione sui termini, le parole sono spesso usate qui in molti modi diversi. Per essere chiari, cosa intendo per H-IDS qui è:

  • un servizio su un computer
  • che controlla continuamente la somma di tutti i file eseguibili sul computer
  • e genera un avviso ogni volta che un file eseguibile è stato aggiunto o modificato (senza autorizzazione).

In realtà un buon H-IDS farà un po 'di più di questo, come il monitoraggio dei permessi dei file, l'accesso al Registro di sistema ecc., Ma quanto sopra ne prende l'essenza.

Un sistema di rilevamento delle intrusioni host richiede una certa configurazione, poiché può dare molti falsi errori se non impostato correttamente. Ma una volta installato e funzionante, catturerà più intrusioni rispetto ai pacchetti AV. Soprattutto H-IDS dovrebbe rilevare una backdoor di hacker unica nel suo genere, che un pacchetto AV commerciale probabilmente non rileverà.

Gli H-IDS sono anche più leggeri sul carico del server, ma questo è un vantaggio secondario: il vantaggio principale è una migliore velocità di rilevamento.

Ora, se le risorse sono limitate; se la scelta è tra un pacchetto AV commerciale e non fare nulla, allora installerei l'AV . Ma sappi che non è l'ideale.


Grazie. Non mi sento davvero incoraggiato a installare un AV ma questa è la prima volta che gestisco un server web, ero preoccupato che potesse esserci qualcosa che mi manca. Penso che starei meglio senza l'AV. Proverò solo a stare più attento a ciò che eseguo sul server.
Mee,

1

Dipende. Se non si esegue alcun codice sconosciuto, potrebbe non essere necessario.

Se si dispone di un file infetto da virus, il file stesso è innocuo mentre si trova sul disco rigido. Diventa dannoso solo una volta eseguito. Controlli tutto ciò che viene eseguito sul server?

Una leggera variazione è il caricamento di file. Sono innocui per il tuo server - se carico un'immagine manipolata o .exe infetto da trojan, non accadrà nulla (a meno che non lo esegua). Tuttavia, se altre persone scaricano quei file infetti (o se l'immagine manipolata viene utilizzata nella pagina), i loro PC potrebbero essere infettati.

Se il tuo sito consente agli utenti di caricare tutto ciò che viene mostrato o scaricabile per altri utenti, allora potresti voler installare uno Scanner di virus sul Web Server o avere una sorta di "Server di scansione antivirus" nella tua rete che scansiona ogni file.

Una terza opzione sarebbe quella di installare Anti-Virus ma disabilitare la scansione in accesso a favore di una scansione pianificata durante le ore non di punta.

E per girare completamente questa risposta di 180 °: di solito è meglio prevenire che curare. Se lavori sul server web, è facile fare clic accidentalmente su un file danneggiato e rovinare il caos. Certo, puoi connetterti mille volte per fare qualcosa su RDP senza toccare alcun file, ma la 1001a volta eseguirai accidentalmente quell'exe e te ne pentirai, perché non puoi nemmeno sapere con certezza cosa fa un virus (al giorno d'oggi ne scaricano di nuovi codice da Internet) e dovrebbe eseguire alcune analisi forensi su tutta la rete.


Grazie mille, un'altra grande risposta che conferma che posso fare a meno dell'AV.
Mee,

1

Se è basato su Windows, come hai detto, lo farei. Vorrei anche provare a trovare una qualche forma di rilevamento delle intrusioni dell'host (un programma che controlla / controlla i file che stanno cambiando sul server e avvisa l'utente delle modifiche).

Solo perché non stai modificando i file sul server non significa che non vi sia un buffer overflow o vulnerabilità che consentirà a qualcun altro di modificare i file sul server in remoto.

Quando c'è una vulnerabilità, il fatto che esista un exploit è di solito noto in un intervallo di tempo tra individuazione e correzione distribuite, quindi c'è un intervallo di tempo fino a quando non si ottiene la correzione e la si applica. In quel periodo di solito c'è una qualche forma di exploit automatizzato disponibile e gli script kiddie lo eseguono per espandere le loro reti di bot.

Si noti che ciò influisce anche sugli AV dal momento che: nuovo malware creato, malware distribuito, campione va alla tua azienda AV, analisi della società AV, società AV rilascia una nuova firma, aggiorni la firma, sei presumibilmente "sicuro", ripeti il ​​ciclo. C'è ancora una finestra in cui si sta diffondendo automaticamente prima che tu sia "innocolato".

Idealmente potresti semplicemente eseguire qualcosa che controlla le modifiche ai file e ti avvisa, come TripWire o funzionalità simili, e mantenere i registri su un altro computer che è un po 'isolato dall'uso, quindi se il sistema è compromesso i registri non vengono modificati. Il problema è che una volta che il file è stato rilevato come nuovo o modificato, sei già infetto e una volta infettato o un intruso è troppo tardi per credere che la macchina non abbia subito altre modifiche. Se qualcuno ha violato il sistema, avrebbe potuto alterare altri file binari.

Quindi diventa una questione di fiducia dei checksum e dei registri delle intrusioni host e delle tue capacità di aver ripulito tutto, inclusi rootkit e file di flussi di dati alternativi eventualmente presenti? Oppure fai le "migliori pratiche" e cancelli e ripristini dal backup, poiché i registri delle intrusioni dovrebbero almeno dirti quando è successo?

Qualsiasi sistema connesso a Internet che esegue un servizio può essere sfruttato potenzialmente. Se hai un sistema connesso a Internet ma in realtà non è in esecuzione con alcun servizio, direi che molto probabilmente sei al sicuro. I server Web non rientrano in questa categoria :-)


0

Si Sempre. Citando la mia risposta dal superutente :

Se è collegato a qualsiasi macchina che può essere connessa a Internet, allora assolutamente sì.

Ci sono molte opzioni disponibili. Mentre personalmente non mi piacciono McAfee o Norton, sono là fuori. C'è anche AVG , F-Secure , ClamAV (anche se la porta win32 non è più attiva), e ne sono sicuro altre centinaia :)

Microsoft ha persino lavorato su uno: non so se sia ancora disponibile al di fuori della beta, ma esiste.

ClamWin , citato da @ J Pablo .


2
Grazie per la risposta, ma ... questo non è un server Windows, questo è un server Web, quindi le prestazioni sono della massima importanza qui. Si noti che il software antivirus eseguirà la scansione di tutti i file a cui si accede, ad es. qualsiasi file richiesto da un visitatore. Ho bisogno di un buon motivo per installare un antivirus e rischiare di avere problemi con le prestazioni, oltre alle semplici linee guida di sicurezza per i computer in generale.
Mee,

non eseguirà la scansione di tutti i file a cui si accede se configurato correttamente - e non c'è motivo per scansionare i file all'accesso quando vengono serviti - solo per attacchi, ecc.
warren

1
@ unknown-Performance è della massima importanza sul web server? Rispetto, suggerirei che se il sovraccarico disponibile è così basso che la compressione di alcuni cicli della CPU per una scansione di file influenzerà l'esperienza dell'utente finale sulla rete, potresti avere un altro problema con il modo in cui l'applicazione è impostata su.
Bart Silverstrim,

@warren, so che puoi escludere qualsiasi directory che desideri dalla scansione dell'accesso, ma in questo caso, che senso ha installare un AV in primo luogo? Voglio dire se gli utenti saranno ancora in grado di caricare file senza essere scansionati, quindi in questo caso non ha senso avere un AV in esecuzione sul server.
Mee,

2
@Bart, per quanto riguarda il software antivirus richiede più di alcuni cicli della CPU per una scansione dei file, rallentano il tuo personal computer che viene utilizzato solo da te, quindi cosa ti aspetti da un server web a cui accedono centinaia o migliaia di persone?
Mee,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.