Skip to main content
Todos os Termos Glossary

Payloads Poliglotas

Definition

Payloads poliglotas são strings de ataque válidas em vários contextos, capazes de contornar filtros de segurança. Por exemplo, uma string pode ser ao mesmo tempo JavaScript válido e HTML válido. Esses payloads sofisticados podem explorar diferenças entre parsers e escapar da sanitização. A prevenção exige validação de entradas e codificação de saídas sensíveis ao contexto.

O que são payloads poliglotas

Um payload poliglota é uma única string elaborada para ser válida, e para fazer algo útil ao atacante, em mais de um contexto de análise ao mesmo tempo. Um exemplo web clássico é uma sequência que se comporta como texto comum em HTML, como valor de atributo e como JavaScript executável, de modo que, seja qual for a forma como a página interpretar a entrada, parte dela ainda dispara a execução de script. Os atacantes os constroem combinando fragmentos que encerram um contexto e abrem outro, usando truques de comentário e caracteres que analisadores diferentes tratam de maneiras distintas. A mesma ideia aparece em formatos de arquivo, onde um arquivo é simultaneamente uma imagem válida e um script ou arquivo compactado válido.

Por que os poliglotas são perigosos

Os poliglotas existem para derrotar defesas específicas de contexto. Muitos filtros de entrada e sanitizadores presumem que sabem onde os dados do usuário vão parar, um corpo HTML, uma URL, uma string JavaScript, e codificam apenas para esse caso. Um payload que permanece válido em vários contextos escapa de filtros ajustados para apenas um e explora as diferenças entre como um sanitizador do lado do servidor e o analisador do navegador leem os mesmos bytes. Isso torna os poliglotas os favoritos para XSS que sobrevive às regras de web application firewall e para uploads que passam por uma verificação de imagem, mas executam como script. Uma única string reutilizável pode sondar muitos pontos de injeção, reduzindo o esforço para encontrar um que dispare.

Como se defender de payloads poliglotas

A defesa começa com a codificação de saída sensível ao contexto: codifique os dados para o destino exato em que eles caem (HTML, atributo, URL, JavaScript, CSS) em vez de aplicar um filtro genérico, e prefira APIs seguras do DOM como textContent em vez de innerHTML. Valide os uploads pelo tipo de conteúdo e recodifique os arquivos no lado do servidor para que um poliglota não consiga manter sua segunda identidade. Uma Content Security Policy estrita limita o que um script injetado pode fazer, mesmo que um payload consiga entrar. A cside complementa esses controles analisando o comportamento dos scripts que realmente são executados no navegador e bloqueando atividades maliciosas em tempo real, em vez de depender de filtros que uma string engenhosamente codificada pode contornar.

Definição

Como um payload poliglota difere de um payload de XSS comum?

Um payload de XSS padrão tem como alvo um contexto conhecido. Um poliglota é projetado para permanecer válido em vários contextos ao mesmo tempo, então o atacante não precisa saber exatamente como a aplicação vai analisar a entrada; a mesma string funciona seja ela colocada em HTML, em um atributo ou em JavaScript.

Definição

Poliglotas podem aparecer em arquivos, não apenas em entrada de texto?

Sim. Poliglotas de arquivo são elaborados de modo que um único arquivo satisfaça duas especificações de formato ao mesmo tempo, por exemplo um GIF válido que também é JavaScript executável. Eles são usados para contornar filtros de upload ou verificações de tipo de conteúdo que validam apenas contra um único formato esperado.

Got more questions

Talk to a security expert

We answer client-side security questions every day. Bring yours.

Agende uma demonstração

Quer ver isso em detalhe com um engenheiro?

Trinta minutos, no seu próprio site. Sem slides.

Agende uma demo personalizada para ver:

Como alcançar a conformidade com os requisitos 6.4.3 e 11.6.1 do PCI DSS em 1 dia
Por que scripts de terceiros são um risco de segurança para você e seus visitantes
Como monitorar vazamentos de privacidade e consentimento (RGPD, CCPA) em cada terceiro
Como conter abuso de cadastros, compartilhamento de contas e fraude de chargeback com device intelligence
Como detectar e controlar agentes de IA e bots que acessam seu site em tempo real

Prefere só mandar uma pergunta?

Procurando horários livres…

Apenas humanos de verdade. A gente saberia.

Problemas para agendar? Abrir o agendador em uma nova aba

O que você está tentando resolver?

Conte em uma linha e voltamos com algo útil, não com um discurso genérico.

Costumamos ajudar com:

Ver quais scripts de terceiros rodam no seu site
Evidências para PCI DSS 6.4.3 e 11.6.1
Bots, agentes de IA e roubo de contas

Prefere agendar um horário? Escolher um horário