Por qué aparece el contenido mixto
- URL
http://codificadas de forma fija que quedaron de antes de una migración a HTTPS. Marcado antiguo, contenido del CMS, o una base de datos de URL de activos almacenadas escritas cuando el sitio funcionaba con HTTP simple y nunca se actualizaron. - Contenido incrustado y widgets de terceros que todavía se sirven por HTTP. Una red publicitaria, un widget de comentarios, o un fragmento de analítica antiguo que nunca migró su propia entrega a HTTPS.
- URL de CDN o de host de activos pasadas por alto durante una migración de protocolo. El dominio principal se trasladó a HTTPS, pero un subdominio o un host de activos de terceros que sirve imágenes o fuentes no se actualizó al mismo tiempo.
- Contenido generado por el usuario con enlaces HTTP pegados. Un usuario envía contenido (una publicación de foro, una reseña de producto, un campo del CMS) que contiene una URL de imagen o de contenido incrustado
http://que se renderiza tal cual.
Cómo identificar cada instancia
Scanverra detecta el contenido mixto cargando su página en un navegador real y capturando su actividad de red real: tanto la Prueba de navegador como el escaneo de seguridad señalan cualquier solicitud que empiece por http:// mientras la página misma se sirve por HTTPS. Como se basa en solicitudes de red realmente capturadas en lugar de un escaneo estático de su código fuente HTML, detecta recursos cargados dinámicamente por JavaScript después de que la página se renderiza, no solo los codificados de forma fija directamente en su marcado.
Cómo solucionarlo
1. Reemplace las URL http:// codificadas de forma fija por https://
1<img src="http://cdn.example.com/testimonial-1.jpg" alt="Customer headshot" />1<img src="https://cdn.example.com/testimonial-1.jpg" alt="Customer headshot" />2. Añada upgrade-insecure-requests como respaldo
Esta directiva de CSP le indica al navegador que reescriba automáticamente cualquier solicitud http:// restante a https:// antes de enviarla, capturando las URL que se le pasaron por alto, aunque solo funciona si el recurso es genuinamente accesible por HTTPS en ese host:
1Content-Security-Policy: upgrade-insecure-requests3. Audite específicamente el contenido incrustado de terceros
Los scripts y widgets de terceros son la fuente más común de contenido mixto que no controla directamente: revise la documentación de cada uno en busca de una URL de incrustación HTTPS, y elimine los que no ofrezcan una.
4. Depure o reescriba el protocolo en el contenido enviado por el usuario
Si los usuarios pueden enviar contenido que contiene URL, reescriba http:// a https:// en el momento del renderizado (o rechace el envío) en lugar de renderizar el protocolo que se haya pegado.
Cómo detecta Scanverra este problema
Tanto la Prueba de navegador de Scanverra como su escaneo de seguridad capturan las solicitudes de red reales de su página en un navegador en vivo y señalan cualquiera que empiece por http:// en una página servida por HTTPS: una verificación genuina en tiempo de ejecución contra el tráfico real, no una búsqueda de texto en su código fuente.