Mi artículo anterior se centró en consejos y trucos básicos de seguridad para proteger el servidor web Apache en Ubuntu.
Aquí le mostraré algunos consejos y trucos de seguridad avanzados para asegurar un servidor web Apache.
Proteja Apache de un ataque de clickjacking
El secuestro de clics es una vulnerabilidad de servidor web bien conocida. Se conoce como un «ataque de reparación de interfaz de usuario». Es una técnica maliciosa utilizada por un atacante para recopilar los clics de un usuario infectado. El secuestro de clics se compone de dos palabras: clic y secuestro. Hacer clic significa «clics del mouse» y secuestro significa «obligar a un usuario a hacer clic». Clickjacking significa obligar a un usuario a hacer clic en una página web en la que el hacker quiere que haga clic para realizar la actividad maliciosa deseada.
Para proteger su servidor web Apache de un ataque de Clickjacking, debe usar «X-FRAME-OPTIONS» para evitarlo.
Puede hacerlo editando el archivo “apache2.conf”.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
Header always append X-Frame-Options SAMEORIGIN
Guarde el archivo y reinicie Apache.
sudo /etc/init.d/apache2 restart
Ahora, intente abrir un navegador web para acceder a su servidor web. Compruebe los encabezados de respuesta HTTP en firebug; debería ver X-Frame-Options como se muestra en la imagen de abajo.
Deshabilitar Etag
Las etiquetas electrónicas, también conocidas como «etiquetas de entidad», son una vulnerabilidad en Apache. Permiten a los usuarios remotos obtener información confidencial como el número de inodo, los ID de procesos secundarios y el límite MIME de varias partes mediante el encabezado Etag. Se recomienda deshabilitar Etag.
Puede hacerlo editando el archivo “apache2.conf”.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
Guarde el archivo y reinicie Apache.
Ahora, intente abrir un navegador web para acceder a su servidor web. Compruebe los encabezados de respuesta HTTP en firebug; no deberías ver Etag en absoluto.
Deshabilitar protocolo antiguo
El antiguo protocolo HTTP (HTTP 1.0) tiene una vulnerabilidad de seguridad relacionada con el secuestro de sesiones y los ataques de Clickjacking. Se recomienda deshabilitar el protocolo anterior.
Puede deshabilitarlo usando la regla «mod_rewrite» al permitir solo el protocolo HTTP 1.1.
Para ello edite el archivo “apache2.conf”.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
RewriteEngine On RewriteCond %{THE_REQUEST} !HTTP/1\.1$ RewriteRule .* - [F]
Guarde el archivo y reinicie Apache.
Métodos de solicitud HTTP
En Ubuntu, el protocolo HTTP 1.1 admite muchos métodos de solicitud como «OPCIONES, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT» que pueden no ser necesarios. Se recomienda habilitar solo los métodos de solicitud HEAD, POST y GET.
Para solucionar esto, edite el archivo de configuración de Apache.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
Guarde el archivo y reinicie Apache.
Asegure Apache de un ataque XSS
XSS (también conocido como Cross-site Scripting) es una de las vulnerabilidades de capa de aplicación más comunes. Permite a un atacante ejecutar código en el servidor web de destino desde el navegador web de un usuario. Los atacantes pueden atacar un servidor web vulnerable XSS mediante el uso de secuencias de comandos del lado del navegador (JavaScript), por lo que se recomienda habilitar la protección XSS en Apache.
Puede hacerlo editando el archivo de configuración de Apache.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
Header set X-XSS-Protection "1; mode=block"
Guarde el archivo y reinicie Apache.
Ahora, intente abrir un navegador web para acceder a su servidor web. Compruebe los encabezados de respuesta HTTP en firebug; debería ver Opciones de protección X-XSS como se muestra en la imagen a continuación.
Proteger las cookies con la bandera HTTPOnly
La cookie HTTPOnly también se conoce como una cookie segura utilizada para transmitir http o https a través de Internet. Se recomienda utilizar «HttpOnly» y «Secure flag» en una cookie. Esto protegerá su servidor web Apache de los ataques más comunes como CSS, ataques de cookies e inyecciones de cookies.
Para solucionar esto, edite el archivo de configuración de Apache.
sudo nano /etc/apache2/apache2.conf
Agregue la siguiente línea dentro Directory /var/www/html/
:
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Guarde el archivo y reinicie Apache.
Conclusión
Espero que ahora tenga suficiente conocimiento para proteger su servidor web Apache de varios tipos de ataques. Si tiene alguna pregunta, no dude en comentar a continuación.