Como quebrar criptografia xml

100 %
0 %
Information about Como quebrar criptografia xml
Education

Published on March 14, 2014

Author: jmouraftc

Source: slideshare.net

Description

cripyogr

Como quebrarcriptografiaXML Abstract.Criptografia XML foi padronizada pelo W3C em 2002, e é Implementado em estruturas XML de grande comercial e Organizações como open-source Apache, RedHat, IBM e Microsoft. Ele é utilizado em um grande número de grande web aplicações baseadas, que vão desde as comunicações empresariais ,e-commerce, e serviços financeiros nos cuidados de saúde aplica- ções para Governamental e infra-estruturas militares. Neste trabalho, descrevemos um ataque prático sobre XML In- Cryption, Que Permite decifrar um texto cifrado através do envio de re- mensagens cifradas lada a um serviço Web e avaliar o servidor resposta. Mostramos um adversário pode decifrar isso uma cifra - texto, realizando apenas 14 pedidos por byte em texto simples média. Isso representa uma segurança séria e verdadeiramente prático ameaça em todas as implementações atualmente usados de XML In- Cryption. Num sentido, o ataque pode ser visto como uma generalização ataques preenchimento oracle ( Vaudenay , Eurocrypt , 2002). É ex - ploits uma correlação sutil entre o modo de cifra de bloco de operação, a codificação de caracteres de texto criptografado, e o comportamento de resposta de um Web Service se uma mensagem de XML Corretamente não pode ser analisado. Introdução A especificação XML Encryption W3C [ 6 ] Hoje marca o padrão de fato para a criptografia de dados em aplicativos distribuídos complexos . O uso de XML como sintaxe de dados central , por exemplo, para grandes empresas, e-commerce, financeiro , saúde, aplicações governamentais e militares , resultou em ampla adoção da criptografia XML para proteger dados confidenciais , especialmente , mas não exclusivamente, no contexto da Web Serviços. No nível técnico , a especificação XML Encryption descreve precisamente o processo e sintaxe a ser usada quando se aplica um algoritmo de criptografia para criptografia de dados para dados estruturados em XML arbitrários. Além disso, também descreve como processar essa sintaxe , a fim de decifrar a criptografadas conteúdo no lado do receptor de dados . Criptografia XML não descreve um novo algoritmo de criptografia em si , mas apenas permite que um conjunto de cifras de bloco padrão , AES e nomeadamente o Triple-DES ( 3DES ) , para ser usada à vontade . em a fim de ser capaz de codificar as mensagens que são mais longos do que o tamanho da entrada da cifra de bloco, o encadeamento de criptografia - bloco (CBC) Modo de operação é usado. Neste artigo , apresentamos uma técnica de ataque que permite que um adversário para descriptografar dados arbitrário que tem sido codificado de acordo com a especificação de criptografia XML.

Com base em uma fraqueza de criptografia do modo CBC , nós são capazes de realizar um ataque escolhido - texto cifrado que recupera todo o texto original a partir de um dado texto cifrado. o único pré-requisito para este ataque consiste na disponibilidade de um "oracle" dizer-nos se um determinado texto cifrado contém uma "Corretamente formado" texto simples. " Corretamente formado" significa aqui que o texto original contém uma codificação válido ( por exemplo, em UTF-8 ou ASCII) de uma mensagem. Na prática , este oráculo pode ser fornecido , por exemplo, por um Web Service que retorna adequado mensagens de erro , ou que oferece algum outro canal de lado o que nos permite distinguir correta de mensagens cifradas inválidos , l ike um calendário diferente do processamento de dados , por exemplo. Para provar a relevância prática do nosso ataque , nós aplicá-lo examplarily a um Web Service realista baseado no Apache Axis2 [18] estrutura XML. Axis2 é um dos mais populares estruturas para apoiar a construção de cliente de serviços da Web e aplicativos de servidor . Mostramos que uma moderadamente opti - implementação mized do ataque é capaz de decifrar 160 bytes de dados criptografados dentro de 10 segundos através da emissão de 2.137 consultas para o Web Service . A complexidade do ataque só cresce linearmente com o tamanho de texto cifrado , recuperando , assim, um texto plano maior de 1.600 bytes leva cerca de 100 segundos e 23.000 consultas. Apesar do fato de que os detalhes do ataque e, assim, nossos resultados no contexto do quadro Axis2 , são, naturalmente, bastante específico do aplicativo , queremos salientar que o ataque si é genérico , e pode ser adaptado para outros cenários comoalém de criptografia XML também. Por exemplo, nós temos Verificou-se que o ataque funciona contra redhat JBoss [ 9], bem, sem quaisquer modificações. Em geral os ataques escolhido - encriptado pode ser evitada pela garantindo a integridade do texto cifrado. Seria de lá - portanto esperamos que o nosso ataque pode ser facilmente contrariado usando XML Assinatura [ 7] para garantir a integridade (note que assinatura XML especifica não apenas as assinaturas de chave pública clássica, mas também "Assinaturas secretos -key ", ou seja , códigos de autenticação de mensagens ). No entanto, por várias razões isso não é verdade , uma vez que pode mostram como executar o nosso ataque ainda que quer - chave pública ou Assinaturas XML secretos - chave sobre o texto cifrado são usados. Nós conseguimos isso quer aplicando assinatura clássico wrap - Ping [10] técnicas , ou usando uma nova técnica de ataque que chamamos Embrulho Encryption . Assim , a fixação de corrente implementações ou o desenvolvimento de novas implementações seguras sem alterar o padrão de criptografia XML parece trivial . Nós ilustrar isto com mais pormenor

na secção de contramedidas abaixo.Divulgação responsável. O ataque descrito neste trabalho foi anunciado para o W3C XML Encryption Trabalho Grupo e vários provedores e usuários de implementações de criptografia XML em fevereiro de 2011. Isso inclui o Apache Software Foundation ( Apache Axis2 ) , RedHat Linux ( JBoss ) , IBM, Microsoft e um CERT governamental. tudo reconheceram a validade do nosso ataque . o CERT revelou o nosso ataque para CERT governamentais de outros países . Além disso, redhat tem imediatamente encaminhado um curto comunicado aovendor- seclista de discussão .Estamos fornecendo conselhos para os desenvolvedores que estão trabalhando em correções . Como já foi mencionado , isso é difícil , sem alterar o padrão em si (ver Secção 6 para mais detalhes) .Relacionados ao Trabalho ea nossa contribuição .É bem conhecido que o modo de criptografia CBC é maleável a menos que adi - cionais métodos para assegurar a integridade são aplicadas. este foi explorados por Vaudenay [ 19 ] , que demonstram que é possível para decifrar um texto cifrado , que é codificado em modo CBC emitindo um pequeno número de consultas de um assim chamado acolchoamentooráculo. Os trabalhos posteriores refina a idéia de Vaudenay [19] , por exemplo a outros esquemas de preenchimento e modos de operações [ 1 , 14] , vetores de inicialização aleatórios ou secretas [20] , Ataques a sistemas do mundo real , como IPSec [3 , 4] e ASP.NET , JSF CAPTCHA , o Ruby on Rails , e um Sistema de segurança OWASP [15 , 5]. Duong e Rizzo [ 15 , 5 ] também fazer a observação de que um oráculo preenchimento não só permitem descodificar as mensagens cifradas , mas também obter válido criptografiasplaintexts de arbitrária. É ainda possível descrever esquemas de preenchimento que são seguros contra estofamento ataques oracle [1 , 13] , um modo de segurança formal correspondente lfoi dada por Paterson e Watson [ 13 ]. Por sua natureza , os ataques preenchimento oracle trabalhar apenas para determinados esquemas de preenchimento . Em particular , os ataques acima são nãoaplicável a criptografia XML, uma vez que a norma especifica um esquema de preenchimento diferente. Por outro lado, usamos ocodificaçãode dados como um canal do lado que permite atacar esquemas de criptografia usando um modo fraco de operação , o que permite explorar a na maior parte dos casos inevitável facto de um adversário é capaz de observar se um plano decriptografado é processado por uma aplicação após a descodificação, ou descartados uma vez que a codificação não pode ser reconhecida . Observe que isso funciona independente do preenchimentoataquesoraclenão são aplicáveis.Mitchell[11]já temdelineou umatal generalizaçãode ataquespreenchimentooracle, mas sem dar qualquerexemplo específico.Nossoataque acriptografiaXMLé altamente eficiente,uma vez queprecisa deapenas 14consultas porbyteem médiapara quebrarXML Criptografias. Para comparação, oataqueconexo deRizzoeDuong[15]emite128consultas Oraclepor byte, em média, a fim dequebrarCAPTCHA.

PRELIMINARES Ao longo doartigo,escreve{0,1}ℓpara designar oconjuntode todas as cadeiasdecomprimentobitℓ.Paraa, b∈{0,1}ℓ, Escrevemos|a|paradenotarocomprimentode uma(isto é, |a|=ℓ)uma⊕bpara indicaro bit desábioXORdeaeb,ea| |bpara denotarconcatenaçãoaeb.Nós escrevemos{0,1}*abreviada para{0,1}*=U∞i=0{0,1}i. BloquearCifras O padrãode criptografiaXMLespecificaAESeTriple-DES (3DES) comocifras de bloco. Desde o nossoataquenãoexplorapropriedades específicasdestes algoritmos, mas trabalha comqualquercifrade forma semelhante, vamos considerar um resumobloquearcifrano seguinte. Paraestefim, quedefinemumblockciphercomoumpar dealgoritmos(Enc,dezembro). O algoritmo de criptografiac=Enc(k, m)Toma comoentradade uma chavek∈{0,1}ℓeumνbytesde texto simplesm∈{0,1}n,onden=8·ν,1e retorna umtexto cifradoc∈{0,1}n.oalgoritmo de descriptografiam=dezembro(k, c)Temuma chavekeumcifradoc, E retornam∈{0,1}n.Por exemplo, sea AESé usado, então temos n=128e, assim, ν=16. Esquema de preenchimento Suponha que queremos criptografar uma mensagem XMLm∈{0,1}*arbitrário de bits de comprimento|m|. Como os dados XML é representadopor UTF- 8 caracteres , podemos sempre assumir que|m|é umnúmero inteiro múltiplo de 8. No entanto ,|m|não precisa necessariamenteser um múltiplo inteiro do tamanho do blocondo bloco. Assimum algoritmo de preenchimentoπcom algoritmo de inversãoπ-1necessárioser aplicado para a mensagem , para obter uma mensagem de acolchoadom'=π(m), Cujo bit de comprimento|m'|é um número inteiro múltiplo den.O padrão de criptografia XML especifica o uso doseguinte esquema de preenchimentoπ: 1 . Calcular o menor número diferente de zeroplende bytesque deve ser o sufixo para o texto simples para levá-laa um múltiplo do tamanho do blocon. 2.anexarplen-1 pad arbitrária bytes param. 3 . Defina o último byte igual aplen. Por exemplo , o exemplo dado em [6] considera um três- bytemensagemm=0x616263e uma cifra de bloco comn= 64 , de modoqueν= 8 . Neste caso , temosπ(m)=m'=0x616263? ? ? ?05,onde ? é um valor byte arbitrário.Para remover o preenchimento, a pessoa simplesmente lê o último bytem'e remove o número necessário de bytes para obterm.

2.3Cipher-Block Chaining Cipher-block chaining(CBC) é o mais popularblockcipher modo de funcionamento, na prática, eo único modo de especificado no padrãode criptografiaXML.Ele processaum m0mensagem, cujocomprimentoéum múltiplo inteirodadn o tamanho do blocode(Enc, Dec), como se segue. •Umiv2vetor de inicialização{0, 1} n é escolhidode forma aleatória. O primeiro blocode texto cifradoé computado comox:=m01? iv, C(1): =Enc(k, x). (1) •Os blocos detexto cifradosubseqüentesC (2),..., C (d) sãocalculadocomox: =m0i? C(i-1), C(i): =Enc(k, x) (2)parai = 2,...,D. •O texto cifradoresultanteé C=(iv, C(1), ..., C(d)). Veja a Figura 1para uma ilustraçãodeste regime.adescriptografia procedimentoinverteesse processoda maneira óbvia. No que segue, vai escrever C=Enccbc(k,?(M)) para denotar criptografiae? (m) =Deccbc(k, C) para denotardescriptografiaem Modo CBC.

Add a comment

Related presentations

Related pages

criptografia - Como criptografar e descriptografar dados ...

Como função de criptografia de duplo sentido não serve, ... Criptografar XML com chave publica do TJMG. 3. Passar dado criptografado por URL em ASP.NET ...
Read more

Como quebrar criptografia xml - Education

1. Como quebrarcriptografiaXML Abstract.Criptografia XML foi padronizada pelo W3C em 2002, e é Implementado em estruturas XML de grande comercial e ...
Read more

Segurança e Criptografia de senhas – C# | Rafael O. Marques

Recentemente eu acompanhei o um tópico na lista de discussão .Net Br chamado Criptografia ... bando de dados, xml ... de quebrar hashes, de uma ...
Read more

Wep Quebrar Senha - Documents - DOCSLIDE.COM.BR

Como quebrar criptografia xml 1. Como quebrarcriptografiaXML Abstract.Criptografia XML foi padronizada pelo W3C em 2002, e é Implementado em ...
Read more

c# - Criptografia de senha - Stack Overflow em Português

Como poderia ser feita a criptografia AES ... percebi que o importante é que o tempo hábil para se quebrar essa hash ... Decriptar arquivo xml passando ...
Read more

Criptografando dados com C# - Linha de Código

Abra o Visual Studio e crie um projeto Windows Forms Chamado Criptografia ... a base 64 string para uso posterior em um xml ... Como criar botões em ...
Read more

Pesquisadores Concluem que Criptografia Padrão XML é ...

Pesquisadores da Ruhr University of Bochum (RUB) dizem ter conseguido quebrar partes da criptografia XML que é utilizada em serviços Web, tornando assim ...
Read more

O que é criptografia? | Artigos | TechTudo

Em linhas gerais, criptografia é o nome que se dá a técnicas que transformam informação inteligível em algo que um agente externo seja incapaz de ...
Read more

Criptografia – Wikipédia, a enciclopédia livre

Criptografia (em grego: kryptós, "escondido", ... Desses esforços, surgiram diversos tipos de criptografia, tais como por chave simétrica, ...
Read more