Instalar un antivirus en un servidor web, ¿es una buena idea?

14

Acabo de recibir un servidor dedicado con Windows 2008 Standard Edition y estoy tratando de hacer la configuración necesaria para ejecutar mi aplicación web en él.

Me preguntaba, ¿es una buena idea instalar un antivirus en el servidor web? En la aplicación, los usuarios no pueden cargar ningún archivo excepto las imágenes (y verificaron que fueran imágenes en el código de la aplicación antes de guardarlas en el servidor). Se me recomienda que no instale un antivirus para no afectar el rendimiento o causar problemas con la aplicación, ¿me perderé algo al hacer esto?

Gracias

Mee
fuente
Usted dice que se verifica que los archivos sean imágenes en el código de la aplicación antes de guardarlos; esto implicaría que el archivo cargado está en algún directorio temporal antes de que su aplicación lo vea. ¡En cuyo caso ya está en el servidor antes de que puedas comprobarlo! ¿Qué servidor web estás usando?
Steve Folly
En realidad, las imágenes se verifican en la memoria, no se guardan en ninguna carpeta temporal. Solo se guardan en el disco si pasan el cheque en la aplicación. Estoy usando IIS, es una aplicación ASP.NET
Mee
Además, incluso si guarda un archivo en una carpeta temporal pero no lo ejecuta, no causará ningún problema. Pero, de nuevo, este no es el caso.
Reunirse el

Respuestas:

18

Un servidor web bien ejecutado en mi humilde opinión no debería tener instalado un paquete antivirus comercial (AV). El tipo de virus de macro de Office y troyanos de mercado masivo para los que los paquetes AV están optimizados no coinciden con los problemas de un servidor web.

Lo que debes hacer es:

  1. Absolutamente obsesionado con la validación de entrada. Ejemplos: que los usuarios no pueden cargar contenido malicioso en su sitio (virus, inyección SQL, etc.); que no eres vulnerable a ataques de secuencias de comandos en sitios cruzados, etc.
  2. Mantenga su servidor actualizado con las últimas actualizaciones de seguridad y configúrelo de acuerdo con las mejores prácticas. Mire cosas como el kit de herramientas de seguridad Microsofts .
  3. Tener un firewall separado. No le ayuda mucho con respecto a las intrusiones, pero agrega otra capa de defensa contra servicios de red mal configurados y ayuda con ataques simples de DOS. También ayuda mucho a bloquear las posibilidades de administración remota, etc.
  4. Instale un sistema de detección de intrusos host (H-IDS) en su servidor, siguiendo las líneas del venerable Tripwire .

Hay mucha confusión sobre los términos, las palabras se usan a menudo de muchas maneras diferentes aquí. Para ser claros, lo que quiero decir con un H-IDS aquí es:

  • un servicio en una computadora
  • que comprueba continuamente todos los archivos ejecutables en la computadora
  • y lanza una alerta cada vez que se agrega o modifica un archivo ejecutable (sin autorización).

En realidad, un buen H-IDS hará un poco más que esto, como monitorear los permisos de los archivos, el acceso al registro, etc., pero lo anterior lo comprende.

Un sistema de detección de intrusiones del host requiere cierta configuración, ya que puede generar muchos errores falsos si no se configura correctamente. Pero una vez que esté en funcionamiento, detectará más intrusiones que los paquetes AV. Especialmente H-IDS debería detectar una puerta trasera de hacker única en su tipo, que un paquete AV comercial probablemente no detectará.

H-IDS también es más ligero en la carga del servidor, pero eso es un beneficio secundario: el beneficio principal es una mejor tasa de detección.

Ahora, si los recursos son limitados; si la elección es entre un paquete AV comercial y no hacer nada, entonces instalaría el AV . Pero sepa que no es lo ideal.

Jesper M
fuente
Gracias. Realmente no me siento animado a instalar un AV, pero esta es la primera vez que administra un servidor web, me preocupaba que pudiera haber algo que me faltara. Creo que estaría mejor sin el AV. Solo intentaré tener más cuidado con lo que ejecuto en el servidor.
Reunirse el
1

Depende. Si no está ejecutando ningún código desconocido, puede ser innecesario.

Si tiene un archivo infectado con virus, el archivo en sí es inofensivo mientras está en el disco duro. Solo se vuelve dañino una vez que lo ejecutas. ¿Controlas todo lo que se ejecuta en el servidor?

Una ligera variación es la carga de archivos. Son inofensivos para su servidor: si subo una imagen manipulada o .exe infestado de troyanos, no sucederá nada (a menos que lo ejecute). Sin embargo, si otras personas descargan esos archivos infectados (o si la imagen manipulada se usa en la página), sus PC podrían infectarse.

Si su sitio permite que los usuarios carguen cualquier cosa que se muestre o pueda descargar para otros usuarios, entonces es posible que desee instalar un Escáner de virus en el servidor web o tener algún tipo de "Servidor de escaneo de virus" en su red que escanee cada archivo.

Una tercera opción sería instalar Antivirus pero deshabilitar el análisis en tiempo real en favor de un análisis programado durante las horas de menor actividad.

Y para cambiar completamente esta respuesta 180 °: generalmente es mejor prevenir que curar. Si trabaja en el servidor web, es fácil hacer clic accidentalmente en un archivo incorrecto y causar estragos. Claro, puede conectarse a él miles de veces para hacer algo a través de RDP sin tocar ningún archivo, pero la 1001a vez ejecutará accidentalmente ese exe y lo lamentará, porque ni siquiera puede saber con certeza qué hace un virus (hoy en día descargan nuevos código de Internet también) y tendría que realizar algunos análisis forenses intensivos en toda su red.

Michael Stum
fuente
Muchas gracias, otra gran respuesta que confirma que puedo prescindir del AV.
Mee
1

Si está basado en Windows, como usted dijo, lo haría. También intentaría encontrar alguna forma de detección de intrusiones en el host (un programa que monitorea / audita los archivos que están cambiando en el servidor y lo alerta sobre los cambios).

El hecho de que no esté cambiando los archivos en el servidor no significa que no haya un desbordamiento del búfer o vulnerabilidad que permita a otra persona cambiar los archivos en el servidor de forma remota.

Cuando existe una vulnerabilidad, el hecho de que haya un exploit generalmente se conoce dentro de una ventana de tiempo entre el descubrimiento y la reparación distribuida, entonces hay una ventana de tiempo hasta que obtenga la solución y la aplique. En ese momento, generalmente hay alguna forma de explotación automatizada disponible y los kiddies de script la están ejecutando para expandir sus redes de bots.

Tenga en cuenta que esto también afecta a los AV ya que: se crea un nuevo malware, se distribuye malware, la muestra se envía a su compañía AV, los análisis de la compañía AV, la compañía AV lanza una nueva firma, actualiza la firma, supuestamente está "seguro", repite el ciclo. Todavía hay una ventana donde se está extendiendo automáticamente antes de que estés "inoculado".

Idealmente, podría ejecutar algo que verifique los cambios en los archivos y lo alerta, como TripWire o una funcionalidad similar, y mantener registros en otra máquina que esté un poco aislada del uso, por lo que si el sistema se ve comprometido, los registros no se alteran. El problema es que una vez que el archivo se detecta como nuevo o alterado, ya está infectado y una vez que está infectado o un intruso está dentro, es demasiado tarde para confiar en que la máquina no ha tenido otros cambios. Si alguien ha descifrado el sistema, podría haber alterado otros binarios.

Entonces se trata de confiar en las sumas de verificación y los registros de intrusión del host y en sus propias habilidades de que limpió todo, incluidos los rootkits y los archivos de flujo de datos alternativos que posiblemente estén allí. ¿O hace las "mejores prácticas" y borra y restaura desde la copia de seguridad, ya que los registros de intrusión al menos deberían decirle cuándo sucedió?

Cualquier sistema conectado a Internet que ejecute un servicio puede ser explotado potencialmente. Si tiene un sistema conectado a Internet pero no funciona con ningún servicio, diría que es muy seguro. Los servidores web no entran en esta categoría :-)

Bart Silverstrim
fuente
0

Si siempre. Citando mi respuesta del superusuario :

Si está conectado a alguna máquina que pueda estar conectada a Internet, entonces absolutamente sí.

Hay muchas opciones disponibles. Si bien personalmente no me gustan McAfee o Norton, están ahí afuera. También hay AVG , F-Secure , ClamAV (aunque el puerto win32 ya no está activo), y estoy seguro de que cientos más :)

Microsoft incluso ha estado trabajando en uno: no sé si está disponible aún fuera de la versión beta, pero existe.

ClamWin , mencionado por @ J Pablo .

madriguera
fuente
2
Gracias por su respuesta, pero ... este no es un servidor de Windows, es un servidor web, por lo que el rendimiento es de suma importancia aquí. Tenga en cuenta que el software antivirus escaneará cada archivo al que se acceda, es decir. cualquier archivo solicitado por un visitante. Necesito una buena razón para instalar un antivirus y me arriesgo a tener problemas con el rendimiento, además de las pautas de seguridad para las computadoras en general.
Mee
no va a escanear todos los archivos que se accede si se configura correctamente - y no hay razón para que los archivos de exploración sobre el acceso cuando están siendo servido - sólo para los ataques, etc
Warren
1
@ unknown-Performance es de suma importancia en el servidor web? Con respecto, sugeriría que si tiene tan poca sobrecarga disponible que exprimir algunos ciclos de CPU para un escaneo de archivos afectará la experiencia del usuario final en la red, puede tener otro problema con la forma en que se configura la aplicación arriba.
Bart Silverstrim
@warren, sé que puede excluir cualquier directorio que desee del análisis de acceso, pero en este caso, ¿cuál es el punto de instalar un AV en primer lugar? Es decir, si los usuarios aún podrán cargar archivos sin ser escaneados, entonces no tiene sentido tener un AV ejecutándose en el servidor en ese caso.
Mee
2
@Bart, con respecto al software antivirus, toma más de unos pocos ciclos de CPU para el escaneo de archivos, ralentizan su propia computadora personal que solo usa usted, entonces, ¿qué espera para un servidor web al que acceden cientos o miles de personas?
Mee