Asegure Apache de Clickjacking con X-FRAME-OPTIONS

Clickjacking es una vulnerabilidad de aplicación web bien conocida.

Para defender el ataque de Clickjacking en su servidor web Apache, puede usar X-FRAME-OPTIONS para evitar que su sitio web sea pirateado por Clickjacking.

Las opciones de marco X en el encabezado de respuesta HTTP se pueden usar para indicar si se debe permitir a un navegador abrir una página en marco o iframe.

Esto evitará el contenido del sitio incrustado en otros sitios.

¿Intentaste insertar Google.com en tu sitio web como marco? No puedes porque está protegido y también puedes protegerlo.

Hay tres configuraciones para X-Frame-Options:

  1. SAMEORIGIN : esta configuración permitirá que una página se muestre en un marco en el mismo origen que la página misma.
  2. DENY : Esta configuración evitará que una página se muestre en un marco o iframe.
  3. ALLOW-FROM uri : esta configuración permitirá que una página se muestre solo en el origen especificado.

Nota: también puede usar el encabezado de la Política de seguridad de contenido para controlar cómo desea que se incruste el contenido de su sitio. Consulte este artículo para el encabezado CSP .

Síntoma y solución en Moodle desde Apache

Cuando estás usando Moodle 3.x con Apache 2.4 o mayor, al usar el cuadro o ventana modal para cargar cualquier archivo al servidor, sube el archivo pero se queda cargando el dialogo. Si pasas a la opción de «Archivos recientes» sí está ahí.

Después de buscar por todos lados (en el servidor, moodle, firewall, etc.), habilité la opción del navegador web para ver la consola de errores y me encuentro con la militante de poder incluir procesos en Frame.

Lo primero es verificar y modificar si es necesario la opción general en el apartado de «security.conf», como sigue:

sudo nano /etc/apache2/conf-enabled/security.conf

Habilitar o modificar DENY por SAMEORIGIN en la línea:

#Header always set X-Frame-Options DENY
Header always set X-Frame-Options SAMEORIGIN

Pero aquí no siempre se resuelve el problema, en mi caso como uso una URL con HTTPS (apache ssl), debes de cambiarlo también en «ssl-params.conf» como sigue:

sudo nano /etc/apache2/conf-enabled/ssl-params.conf

Reemplazando la opción DENY por SAMEORIGIN en la línea:

Header always set X-Frame-Options SAMEORIGIN

Por último, reiniciar el servidor Apache2:

sudo service apache2 restart

Implementar en alojamiento web compartido

Si su sitio web está alojado en un alojamiento web compartido , entonces no tendrá permiso para modificar Apache2 directamente o de forma general.

Sin embargo, puede lograr esto agregando la siguiente línea en el archivo .htaccess desde raíz de su web.

Header append X-FRAME-OPTIONS "SAMEORIGIN"

El cambio se refleja inmediatamente sin reiniciar.

Verificación

Puede usar cualquier herramienta de desarrollador web para ver los encabezados de Response. También puede usar una herramienta en línea: el verificador de encabezado para verificar.

¿Como le fue?

Referencia: https://geekflare.com/secure-apache-from-clickjacking-with-x-frame-options/

También te podría gustar...

1 respuesta

  1. Miguel dice:

    Muchas gracias amigo, me has solucionado el tema , ya que no lo estaba modificando en /etc/apache2/conf-enabled/ssl-params.conf y me estaba volviendo loco. jajaj
    muchas gracias por tu esfuerzo en documentarlo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *