O política de segurança de conteúdo spec tem sido uma ferramenta de segurança de front-end incrível para ajudar a evitar XSS e outros tipos de ataques. Eu diria até que todo site deve implementar a CSP mais específica possível. Se o senhor não estiver familiarizado com as CSPs, aqui está um exemplo rápido:

Content-Security-Policy: default-src 'self'; img-src *; media-src media1.com media2.com; script-src userscripts.example.com

Se um recurso ou conteúdo vinculado na página não for aprovado em uma determinada regra de CSP, ele não será carregado. É claro que é difícil fazer com que um site enorme seja aprovado em um CSP, basta perguntar ao Facebook:

Os navegadores fornecem informações sobre erros e avisos de CSP no console da Web, mas isso não ajuda os desenvolvedores a evitar problemas antes de colocá-los em produção. Entre seespee — um utilitário Node.js que permite que o senhor valide CSPs a partir da linha de comando!

Para obter as diretivas CSP de uma determinada página, basta executar seespee com um URL:

seespee https://davidwalsh.name/demo/csp-example.php

/*
Content-Security-Policy:
  default-src 'self';
  frame-ancestors 'self';
  frame-src 'none';
  img-src 'none';
  media-src 'self' *.example.com;
  object-src 'none';
  report-uri https://example.com/violationReportForCSP.php;
  script-src 'self' 'unsafe-inline' cdnjs.cloudflare.com;
  style-src 'self' 'unsafe-inline';
*/

Se quiser validar a aprovação da CSP de uma determinada página, o que pode ser feito durante a compilação ou na CI, adicione o parâmetro --validate :

seespee https://davidwalsh.name/demo/csp-example.php --validate

/*
✘ ERROR: Validation failed: The Content-Security-Policy does not whitelist the following resources:
            script-src cdnjs.cloudflare.com;
              https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7/html5shiv.js
*/

Se a etapa de validação retornar um status diferente de zero, o senhor sabe que o CSP falhou e, portanto, o patch não deve ser mesclado.

O senhor também pode usar o seespee em seus scripts do Node.js:

var seespee = require('seespee');
seespee('https://davidwalsh.name/demo/csp-example.php').then(function(result) {
  console.log(result.contentSecurityPolicy);
  // default-src \'none\'; style-src https://assets-cdn.github.com; ...
});

Ter um utilitário como o seespee e não precisar verificar manualmente no navegador é muito útil. Um CSP sólido pode ser difícil de criar, mas ainda mais difícil de manter à medida que o site muda. Use o seespee e o CI para evitar CSPs indesejados e falhas no site!