Aumenta la seguridad de tu servidor web con estos consejos

Aumenta la seguridad de tu servidor web con estos consejos

Lorena Fernández

Cualquier vulnerabilidad que se pueda detectar, así como el identificarla a tiempo, hace que sea posible un alto nivel de seguridad de los servidores web. Es importante que contemos con un servidor web seguro, porque siendo así, nuestro sitio web podrá funcionar de la manera esperada. En esta ocasión, explicaremos todo lo que precisas saber sobre la seguridad de los servidores web y qué buenas prácticas puedes llevar a cabo para ello.

Cuando vamos a hacer hardening de un servidor web, es muy importante que podamos responder a tres puntos, estos tienen relación con la seguridad de uno o varios servidores web que tengas funcionando actualmente:

  • Corroborar si nuestro servidor web es vulnerable. Básicamente, esto te indica para determinar si los servidores cuentan o no con vulnerabilidades detectadas. Una de las formas más eficaces de hacerlo es contar con un escáner de vulnerabilidades y hacerlo funcionar de forma periódica. La frecuencia es importante ya que existen múltiples vulnerabilidades de día cero que pueden aparecer. También es recomendable hacer uso de un WAF (web application firewall) para filtrar cualquier posible consulta maliciosa, además, esto mismo se puede realizar vía software en el propio servidor web configurando reglas avanzadas.
  • Nuestro servidor web, ¿está siendo atacado? Si notas alguna irregularidad, lo mejor es poder hacer pruebas directas de solicitudes al servidor web. Si no responde, o bien, no responde de la manera esperada, son altas las posibilidades de que haya sido víctima de algún ataque. Es fundamental que revises los logs para ver qué está ocurriendo, por supuesto, siempre es recomendable tener un sistema de monitorización del estado del servidor, y también un SIEM para correlacionar eventos y detectar posibles ataques.
  • Detectar algún cambio corrupto. Además de las vulnerabilidades, debemos auditar cualquier tipo de cambio que se haya dado en algún archivo o en el peor de los casos, que se haya borrado uno o más archivos.

Acciones para prevenir ataques al servidor web a futuro

Como vemos más arriba, los tres puntos que hemos citado son considerados los más importantes al momento de llevar a cabo una estrategia de seguridad para los servidores web. Sin embargo, estas actividades tienen un carácter algo más reactivo. Precisamos agregar algo más de proactividad, de manera que se pueda contar con cada vez más capacidad de prevenir ataques.

Sin duda, el más importante tiene que ver con las actualizaciones. Todo software que utilicemos se actualiza con cierta frecuencia, una de las razones por las cuales se actualiza son las mejoras en relación a la seguridad. Dichas actualizaciones de seguridad funcionan como parches que permiten que los servidores web sean más resistentes a varios tipos de ciberataques. Así también, debemos aplicar las actualizaciones lo más pronto posible. Recordemos que una de las razones por las cuales son posibles los ciberataques es el uso de software no actualizado.

Además, los escáneres de vulnerabilidades también necesitan actualizarse. Más aún si estos escáneres cuentan con la capacidad de detectar vulnerabilidades y/o exploits de día cero. Estos últimos son mucho más difíciles de detectar por cuenta propia. Si estamos a cargo de aplicaciones web, también debemos actualizar sus firewalls con los últimos parches y características de seguridad.

Ataques, intrusiones e infecciones

Los ataques al servidor web son posibles mediante la posibilidad de que un atacante o persona no autorizada, pueda tener acceso a sus recursos. Incluso, si éstos cuentan con medidas de seguridad implementadas. Una vez más, reforzamos lo que hemos comentado más arriba: mantener las actualizaciones al día, sobre todo las de seguridad. ¿Utilizas servidores Linux? Echa un vistazo a esta guía completa de hardening de servidores Linux para hacerlos mucho más seguros.

Si se percibe el riesgo de una intrusión y/o un evento de filtración de datos, os recomendamos las siguientes acciones:

  • Monitorizar sistemas de archivos en búsqueda de nuevos archivos creados con aspecto sospechoso
  • Tener bajo control a la red para identificar direcciones IP maliciosas que serían responsables de actividad inusual como los ataques de fuerza bruta o bien, si se detecta que hay demasiado tráfico en horarios no convencionales
  • Monitorizar los inicios de sesión, así también los intentos de inicios de sesión. Recordemos que si notamos muchísimos intentos de inicio de sesión en horarios en donde no debería haber actualidad, se podría estar ante un intento de intrusión.
  • Controlar qué archivos de carácter sensible han sufrido algún tipo de modificación irregular.
  • Verificar la presencia de procesos en el sistema que podrían estar afectando al rendimiento, la seguridad o la integridad en sí del servidor web.

No tener en cuenta el control de cualquiera de estos aspectos, podría significar en uno o más eventos en los que el servidor web se vea infectado. En consecuencia, tus aplicaciones o sitios web no estarán respondiendo para los usuarios.

Identificar los distintos códigos de status de los servidores web

Al momento de analizar los logs de eventos de los servidores web, es buena práctica el conocer los códigos de status HTTP. Los citamos a continuación:

  • 1xx (Informational): la información de la solicitud ha sido recibida y se procesará.
  • 2xx (Success): las acciones fueron realizadas de manera exitosa, por lo que son aceptadas y comprendidas.
  • 3xx (Redirection): existen acciones a realizar que son como condiciones para que la solicitud HTTP pueda ser completada.
  • 4xx (Client Error): solicitud HTTP del cliente con una sintaxis incorrecta o que no puede ser completada.
  • 5xx (Server Error): el servidor no puede procesar la solicitud debido a un fallo.

Se recomienda lograr determinar los tipos de respuestas a las solicitudes HTTP por parte del lado cliente. Esto, con ayuda de los códigos de status. Debes tener presente que hay que prestar atención a aquellas solicitudes que se realizan a los archivos presentes en el servidor que tienen carácter sensible. Los mismos pueden significar potenciales intentos de intrusión, los cuales derivan en potenciales ciberataques.

Alertas de seguridad de los servidores web

Hemos mencionado en más de una ocasión el acto de monitorizar. Nada más importante y eficaz que el monitoreo para que tu servidor web cuente con un robusto escudo protector ante las múltiples amenazas de seguridad. Existen herramientas que pueden ayudar en la emisión y recolección de distintos tipos de alertas a medida que las mismas se vayan dando. Las mismas son consideradas como otras de las herramientas esenciales para poder prevenir ataques.

  • Uptime (Tiempo operativo): Garantizar que el tiempo en que esté activo el servidor web se ajuste a la necesidad de los usuarios que se valen de las aplicaciones y sitios web.
  • Velocidad de carga: Un aspecto que define el éxito de una aplicación o sitio web es el tiempo en que tarda en cargar. La necesidad de inmediatez para acceder a algún recurso web se ha convertido en un requerimiento.
  • Diferenciar entre usuarios reales y bots: Un aspecto que se acostumbra a menospreciar es la cantidad de visitas que recibe tu aplicación o sitio web. Tanto los usuarios reales como los que no lo son, deben ser monitorizados. Sobre todo aquellos que son bots, ya que los mismos podrían tener la capacidad de realizar acciones maliciosas como inyección SQL en los formularios de contacto o de solicitudes o múltiples solicitudes al servicio web que desemboque en ataques como DDoS.

Un programa que hemos localizado, que es gratuito y de código abierto. Se denomina StatusOK y cuenta con la funcionalidad de generar notificaciones de alertas e integrarlas con aplicaciones como Slack y clientes de correo electrónico SMTP. Dichas alertas contendrán información relacionada a, por ejemplo, si tu servidor web deja de operar o bien, que el tiempo de respuesta para las solicitudes web sea más alto de lo esperado. Lo interesante es que su carácter de código abierto permite la creación de integraciones con más programas. ¿Cómo acceder a esta herramienta? Puedes ingresar a su repositorio oficial en Github en donde encontrarás toda la información necesaria para comenzar a implementar y si necesitas soporte, contarás con mucha información adicional para resolver problemas comunes.