Pular para o conteúdo
ecdsa.com

Encapsulamento de assinatura XML (XSW)

Uma classe de ataques contra mensagens com assinatura XML em que o atacante move o elemento assinado e insere um falsificado, de modo que a assinatura continua sendo verificada sobre o original enquanto a aplicação processa a falsificação.
Também escrito comoXSWsignature wrapping attackXML signature wrapping

O XML-DSig verifica aquilo para que aponta a URI de uma Reference, normalmente um elemento com determinado ID; já a aplicação muitas vezes localiza “a asserção” por outra regra, por exemplo o primeiro filho Assertion. Os atacantes encapsulam a asserção assinada genuína dentro de uma extensão ou em outra posição e acrescentam uma asserção não assinada onde a aplicação procura. Somorovsky e colegas mostraram em 2012 que a maioria dos frameworks SAML testados era vulnerável, e novas variantes continuam aparecendo.

Defesas: processar apenas os nós exatos que foram verificados (fazendo o verificador devolvê-los), rejeitar documentos com IDs duplicados ou estrutura inesperada por meio de validação estrita de schema, exigir que a assinatura cubra a resposta ou a asserção inteira e usar bibliotecas SAML mantidas. Formatos baseados em JSON evitam essa classe específica porque a assinatura cobre bytes fixos, embora tenham suas próprias armadilhas.

Padrões e referências

Todos os termos