- Navios
- 20 de agosto de 2026 às 03:59 UTC
- Autor
- Kamo
- Enviar
- b34d847
Adiciona os três cabeçalhos da auditoria de Confiança e Segurança solicitados, mais Referência-Política e Permissões-Política. Todas as origens da política foram tomadas do que o site realmente carrega ao invés de adivinhar — o pacote de widget de chat em theme.kamocrm.com (que abre um WebSocket para mídia. e chama api. capcha.), o script de análise em analytics., a escada HLS do herói, *** final do desafio. Auditou a página construída contra a política final recurso por recurso: zero bloqueado. ON script-src 'insafe-inline' — este é um compromisso real e vale a pena afirmar Em vez de enterrar. A forma forte de um CSP é uma nonce per-response com 'strict-dynamic', e não está disponível aqui: a nonce significa ler cabeçalhos() durante a renderização, que opta pela rota de saída da geração estática. Este aplicativo tem ~ 200 rotas pré-renderizadas e o seu estado estático é o suporte de carga — uma rota dinâmica com nenhum limite de carregamento prefetches nada, então cada clique de link começa frio. Ali. também não é uma fuga baseada em hash, porque os scripts em linha são RSC do Next dados de voo, cujos conteúdos diferem por página e por compilação. Então: este CSP NÃO para um script inline injetado. O que ele faz é confinar cada script externo, busca, quadro, imagem e carga de mídia para origens conhecidas, proibir plugins, fixar o URI base para que a marcação injetada não possa re- root relativo URLs, e parar posts de formulário para terceiros. TIPOS CONFIADOS levaram três tentativas para tornar seguro, e as falhas são as parte interessante: 1. Uma linha simples <script> primeira no layout <head> não é a primeira. Reagir as etiquetas do próximo `<script assync src>` acima de qualquer coisa que o layout renderize, Assim, a política desembarcou após doze deles — e os scripts assincronizados executam o no momento em que acabam de descarregar. O tempo de execução do Turbopack está entre eles e faz `createElement("script")` então define `.src`, a pia exata que lança sem política. 2. `next/script` com estratégia="beforeInteractive" também não o moveu; Ainda faltam doze guiões. 3. O que torna seguro é que nenhuma pia pode disparar tão cedo. Todos os 78 dados de voo os impulsos estão no corpo — primeiro no deslocamento 193.072, com </cabeça> em 11.940 – por isso o React não pode começar a hidratar até bem depois da política ser instalada, e não há código de toque em <head> antes dele. Verificado em built HTML em vez de assumir. Duas coisas teriam partido sem ser grepeados. O elemento *** é um Svelte construir e cria uma política chamada `svelte-trusted-html'; um nome de política é um string runtime, então nada sobre ele aparece em tipos, lint ou na compilação, e omiti-lo da lista de permissões teria jogado e tomado o contato e demo formulários para baixo. E hls.js e o *** ambos constroem Web Workers de createObjectURL, então a política tem que passar `blob:` antes de seu teste de origem — a blob: URL não tem .origin útil e de outra forma teria falhado, tomando o O herói rebobina com ele. O createScriptURL da política é verificado contra o kamocrm.com, que é estritamente mais permissivo do que script-src, para que nunca possa recusar algo que o CSP permite. createHTML passa e NÃO é higienizado: um verdadeiro sanitiser seria tem que enviar no caminho crítico e poderia silenciosamente mutilar os blocos JSON-LD e a marcação do widget. Essa metade é um ponto de estrangulamento e um gancho de auditoria, não um filtro — e é onde endurecer a seguir. A política Cross-Origin-Resource foi escrita e depois removida. Aplicado entre `/:path*` cobre as imagens do Open Graph, que existem especificamente para ser embutido de outras origens. frame-ancestors é 'eu' para corresponder às opções X-Frame: SAMEORIGIN já sendo servido, em vez de apertar para "ninguém" e quebrar uma incorporação que ninguém lembrou. Verificado contra o servidor standalone real, não apenas os cabeçalhos config: presentes na rota pré-renderizada e na rota ***, e no activo de longa duração O Cache-Control ainda está intacto.