Saltar al contenido

Cómo evitar que te «hackeen» el sitio web

26/12/2023

Es muy «desagradable» que te cambien el contenido de la web

Para ver si esto es posible puedes chequear tu sitio web para ver si tiene protegidas las cabeceras (header) del sitio o no.

Es muy fácil si usas WordPress.

Cómo saber si tu sitio web está hecho en wordpress

Puede que no sepas si tu página web está hecha en wordpress. Puedes preguntarlo o directamente probar si tienes acceso al «backoffice» que es la trastienda donde se publican artículos y se cambia la web. Cualquier sitio creado en wordpress responde a esta URL que puedes escribir en el navegador Chrome, Edge, firefox, …

https://{nombre de tu web. com o .es…}/wp-admin

si te pide usuario y contraseña es que tu web está hecha en wordpress y esto te interesa mucho.

Hay algunos plugins de wordpress que examinan la seguridad de tu web. Te recomiendo vivamente  «Really Simple SSL» pero aunque no uses ninguno de estos plugin puedes comprobar y asegurar que tienes instaladas las llamadas «cabeceras de seguridad».

En una web que gestiono el examen me dió este resultado:

Cómo se crean las cabeceras de seguridad

El método que te voy a explicar vale para cualquier sitio web, aunque no sea wordpress. En wordpress se puede hacer editando un fichero llamado functions.php dentro de «Ajustes» pero creo que este sistema es más rápido y válido para todos. Se trata de modificar un fichero especial llamado .htaccess  (con ese punto delante)

Para modificarlo tienes que tener acceso al «hosting» del sitio web, al menos via FTP a la carpeta donde está instalado tu sitio web con wordpress. Hay que decir que si tu sitio web NO está hecho en wordpress puedes proteger igualmente el sitio aunque puede ser que varíe un poco lo que tengas que hacer.

Recuerda hacer copia de seguridad del fichero .htaccess.

1º.- editar el fichero .htaccess

Haz una copia de este fichero por si algo va mal y puedas dejarlo todo como estaba.

Si tienes un explorador de archivos en el hosting te evitas usar FTP. Busca algo como esto:

con el menú de editar o botón derecho pulsando sobre .htaccess podrás editarlo para pegar lo que ponemos en el punto 2º

 

2º.- añadir las cabeceras de seguridad siguientes

Cabecera HSTS

Al especificar el Strict-Transport-Security encabezado junto con un max-age con valor en la respuesta, tu sitio web puede declarar que solo se aceptarán conexiones seguras dentro del período especificado. Para futuras solicitudes al mismo dominio a través de conexiones inseguras, el navegador sabe que nunca debe cargar el sitio mediante HTTP y convierte automáticamente todas las solicitudes a HTTPS

Header always set Strict-Transport-Security: "max-age=31536000" env=HTTPS 

Añadir la Cabecera para protección X-XSS.

La cabecera X-XSS-Protection se puede utilizar para indicar a los navegadores sobre cómo deben manejar posibles ataques de XSS de script entre sitios. Añade esto en el principio de tu fichero .htaccess

Header always set X-XSS-Protection "0"

Cabecera  X-Content-Type-Options

Con esta cabecera, se reduce el riesgo de que se produzca un ataque basado en confusión de tipos mime.

En general con la Cabecera X-Content-Type-Options evitaremos que se carguen hojas de estilo o scripts maliciosos.

Header always set X-Content-Type-Options "nosniff"

Añadir «Referrer Policy header»

Alguien malvado podría plantear un ataque de CSRF (Cross-Site Request Forgery), XSPA (Cross-Site Port Attack), o simplemente de phishing, a través de las direcciones URL que quedaran filtradas en las cabeceras HTTP Referrer que envían los navegadores de Internet.

Añade esto en el .htaccess

Header always set Referrer-Policy "no-referrer-when-downgrade"  
Aquí puedes elegir poner mucha más seguridad con esta opción: «strict-origin-when-cross-origin»

Añadir «X-Frame-Options header»

El encabezado de respuesta HTTP X-Frame-Options puede ser usado para indicar si debería permitírsele a un navegador renderizar una página en un <frame>, <iframe>, <embed> u <object>. Las páginas web pueden usarlo para evitar ataques de click-jacking, asegurándose de que su contenido no es embebido en otros sitios.

Header always set X-Frame-Options: "SAMEORIGIN"

En el fichero .htaccess  queda así:

Este método protege también la web que no esté hecha en wordpress aunque debes revisar el resto del fichero .htaccess

Espero que te sirva

¿Qué opinas?

 

Y si quieres saber más de automatizaciones, pregúntame:

Interés en BI, desarrollo web, RPA, Automatizaciones, IA, DriveoMap

¡No hacemos spam! Lee nuestra política de privacidad para obtener más información.

 

Simplifica

Tengo interés en un proyecto de Discovery RPA (c)

Sin tu permiso nada. Ahorremos tiempo y simplifiquemos nuestra vida (profesional). Echa un vistazo a nuestra política de privacidad para obtener más información.