22 diciembre 2024

Cómo cumplir con (CSP) Content Security Policy en WordPress

El CSP es un protocolo de seguridad que previene la inyección de código malicioso, el cross-site scripting (XSS) y el  clickjacking mediante la construcción de listas blancas en donde van a figurar los sitios externos con los cuales se va a permitir la inserción de código, por ejemplo ( ‘apis.google.com’) y prohibe el resto de los sitios no explicitados.

Esta es una de las directivas de seguridad encaradas por w3c.org, que son deseables que tu sitio cumpla.

Ejemplo:

Permitir Google Analytics, Google AJAX CDN y propio sitio

script-src 'self' www.google-analytics.com ajax.googleapis.com;

¿Cómo hacer para que tu sitio WordPress cumpla con CSP?

Puedes incluir el plugin WP Content Security Policy , que le agregará al navegador información sumamente importante, permitiendo al cliente cargar recursos solamente  desde dominios confiables y bloqueará cualquier recurso o código que quiera insertarse desde otros dominios externos.

Para comenzar, agrega como fuente a tu propio sitio  default-src de ‘self’. Y  luego agregar los dominios externos permitidos. No utilices el comodín ‘*’ en todas las variantes, pues esto hará que cualquier código pueda ser insertado.

Lista de Referencia de Recursos

 

Valor Fuente Ejemplo Descripción
* img-src * El asterisco, permite a cualquier URL excepto datos: blob: filesystem: schemes.
'none' object-src 'none' Previene la carga de recursos desde cualquier URL.
'self' script-src 'self' Permite la carga de recursos desde el propio servidor origen  (el mismo esquema, host y puerto).
data: img-src 'self' data: Permite la carga de recursos, vía esquema de datos (ej. Base64 encoded images).
example.com img-src example.com Permite la carga de recursos de sde ese específico dominio
*.example.com img-src *.example.com Permite la carga de recursos desde cualquier subdominio de  example.com.
https://cdn.com img-src https://cdn.com Permite la cara de recursos, sólo sobre el protocolo HTTPS que concuerde con ese determinado dominio .
https: img-src https: Permite la carga de recursos , solamente bajo el protocolo  HTTPS para cualquier dominio.
'unsafe-inline' script-src 'unsafe-inline' Permite el uso de fuentes inline en elementos como style attribute, onclick, o script tag bodies (depende del contexto aplicado a ello )
'unsafe-eval' script-src 'unsafe-eval' Permite código inseguro dinámico como JavaScript eval()

Plugin | WP Content Security Policy

Fuente | Wikipedia ; Content-Security-Policy.com

Siguenos por Twitter a través de @Geeksroom y no te pierdas todas las noticias, cursos gratuitos y demás artículos. También puedes seguirnos a través de nuestro canal de Youtube para ver nuestros vídeos, a través de Instagram para ver nuestras imágenes! O vía Bluesky si ya estás cansado de Twitter

Andrea Cummins

Andrea Cummins Es Senior Editor de GeeksRoom. Estudió Ciencias de la Computación en la facultad de Cs Exactas de la Universidad de Buenos Aires. Hace 23 años que vive en el campo, en la ciudad de Venado Tuerto, Santa Fe y gracias a Internet, pudo seguir actualizándose con las nuevas tecnologías. A medida que pasó el tiempo se fue capacitando de manera autodidacta y participando en Congresos y Cursos. Su empresa se llama VenadoSoft. Su hobbie es la fotografía y le encanta mostrar su ciudad y su gente a través de su lente.

Ver todas las entradas de Andrea Cummins →