Saltar al contenido

Analizador de informes de violación CSP

Convierte informes de violación CSP pegados en un resumen legible de qué directivas y orígenes están bloqueados.

Entrada
Salida

Analizador de informes de violación CSP

Pegue el JSON que recibió tu endpoint report-uri de CSP o el recolector de Reporting API y esta herramienta convierte una avalancha de informes de violación en un resumen que realmente puedes leer: qué directivas están siendo bloqueadas y qué orígenes las disparan. Está diseñada para desarrolladores que están implementando o endureciendo una Content-Security-Policy y necesitan ver el patrón entre docenas o cientos de informes en lugar de leerlos uno a uno.

Agrupa por directiva para ver qué secciones de política se disparan más, o agrupa por origen bloqueado para encontrar el script o stylesheet que causa más ruido. Oculta informes de extensiones del navegador — Chrome y Firefox envían cuerpos de csp-report con un chrome-extension: o moz-extension: bloqueados siempre que una extensión instalada viola la política de la página, lo que no tiene nada que ver con tu código. Activa páginas afectadas para ver cada URL de documento donde se vio una violación. Cambia la salida a reglas sugeridas y la herramienta propone las adiciones a la lista de orígenes — origins, 'unsafe-inline', data: — que permitirían cada directiva bloqueada, como punto de partida para ampliar la política.

El analizador acepta un array JSON, un objeto de informe único, o un informe por línea, y entiende tanto el cuerpo POST clásico {"csp-report": {...}} como la envoltura más nueva de Reporting API {"type", "body"}, así que los registros del servidor en bruto se pegan sin reformatear. Los informes que no se analizan se omiten en lugar de fallar el lote, y el recuento muestra cuántos informes llegaron, en cuántos grupos se colapsaron y cuántos informes de extensiones se filtraron.

Todo se ejecuta en tu navegador. Los informes pegados nunca se cargan en ningún lugar, lo que importa ya que pueden incluir URLs internas y estructura de página. Copia el resumen, descárgalo como archivo .txt, o envíalo a la entrada de otra herramienta para seguir trabajando.

Preguntas frecuentes

¿Qué formatos de informe entiende?
Ambos formatos que envían los navegadores: el cuerpo POST clásico report-uri envuelto en "csp-report", y la envoltura más nueva de Reporting API con un campo "body". También acepta un objeto de informe desnudo sin envoltura, y ya sea un array JSON o un informe por línea.
¿Cuál es la diferencia entre agrupar por directiva y por origen?
Agrupar por directiva muestra qué secciones de política (script-src, style-src…) se disparan más; agrupar por origen bloqueado muestra qué script, stylesheet u otro recurso causa la mayoría de las violaciones entre directivas.
¿Por qué algunos informes están ocultos por defecto?
Los informes cuyo blocked-uri comienza con chrome-extension: o moz-extension: provienen de una extensión del navegador que viola la política de la página, no de tu propio código. Ocultarlos está activado por defecto; desactívalo para ver todo.
¿Cómo se calculan las reglas sugeridas?
Para cada directiva, la herramienta recopila cada origen bloqueado distinto visto y lo reduce a una expresión de origen CSP — un origen para una URL, 'unsafe-inline' para scripts o estilos en línea, 'unsafe-eval' para eval, data: para URIs de datos — luego los enumera como punto de partida, no como una política para pegar sin revisar.
¿Mis datos de informe se cargan en algún lugar?
No. El análisis sucede completamente en tu navegador — los informes pegados nunca dejan tu dispositivo.