24
Criptografia e Criptografia e segurança de redes segurança de redes Capítulo 17 Capítulo 17 Quarta Edição Quarta Edição por William Stallings por William Stallings Slides de Lawrie Brown Slides de Lawrie Brown Tradução: Rodrigo Moutinho Tradução: Rodrigo Moutinho

Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Embed Size (px)

Citation preview

Page 1: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Criptografia e Criptografia e segurança de redessegurança de redes

Capítulo 17Capítulo 17

Quarta EdiçãoQuarta Edição

por William Stallingspor William Stallings

Slides de Lawrie BrownSlides de Lawrie BrownTradução: Rodrigo MoutinhoTradução: Rodrigo Moutinho

Page 2: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Capítulo 17 – Segurança na WebCapítulo 17 – Segurança na Web

Use a mente.Use a mente.

Acorde para a realidade.Acorde para a realidade.

— — Da canção, "I've Got You under My Da canção, "I've Got You under My Skin“ de Cole PorterSkin“ de Cole Porter

Page 3: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Segurança na WebSegurança na Web

A web é muito usada por empresas, órgãos A web é muito usada por empresas, órgãos do governo e indivíduosdo governo e indivíduos

Mas a Internet & Web são vulneráveisMas a Internet & Web são vulneráveis Tem uma variedade de ameaçasTem uma variedade de ameaças

IntegridadeIntegridade ConfidencialidadeConfidencialidade Negação de serviçosNegação de serviços AutenticaçãoAutenticação

Necessidade de mecanismos adicionais de Necessidade de mecanismos adicionais de segurançasegurança

Page 4: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

SSL (Secure Socket Layer)SSL (Secure Socket Layer)

Serviço de segurança na camada de Serviço de segurança na camada de transportetransporte

Originalmente desenvolvido pelo NetscapeOriginalmente desenvolvido pelo Netscape Versão 3 projetada com contribuição públicaVersão 3 projetada com contribuição pública Subseqüentemente se tornou a Internet Subseqüentemente se tornou a Internet

padrão conhecida como TLS (Transport Layer padrão conhecida como TLS (Transport Layer Security)Security)

Usa TCP para fornecer confiança nos serviços Usa TCP para fornecer confiança nos serviços ponta a ponta (end-to-end)ponta a ponta (end-to-end)

SSL tem duas camadas de protocolosSSL tem duas camadas de protocolos

Page 5: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Arquitetura SSLArquitetura SSL

Protocolo de registro SSL

Protocolo de estabeleciment

o de sessão SSL

Protocolo de mudança de especificação de cifra SSL

Protocolo de alerta SSL

Page 6: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Arquitetura SSLArquitetura SSL

Conexão SSLConexão SSL um transiente, peer-to-peer, relacionamento de conexãoum transiente, peer-to-peer, relacionamento de conexão associado a uma sessão SSLassociado a uma sessão SSL

Sessão SSLSessão SSL uma associação entre um cliente e um servidoruma associação entre um cliente e um servidor criados pelo Protocolo de Estabelecimento de Sessãocriados pelo Protocolo de Estabelecimento de Sessão definem um conjunto de parâmetros criptográficosdefinem um conjunto de parâmetros criptográficos podem ser compartilhados entre várias conexõespodem ser compartilhados entre várias conexões

Page 7: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Serviços de Protocolo de Serviços de Protocolo de Registro SSLRegistro SSL

integridade da mensagemintegridade da mensagem usa um MAC com chave secreta compartilhadausa um MAC com chave secreta compartilhada similar ao HMAC mas com um preenchimento diferentesimilar ao HMAC mas com um preenchimento diferente

confidencialidadeconfidencialidade usando criptografia simétrica com chave secreta usando criptografia simétrica com chave secreta

compartilhada definida pelo Protocolo de compartilhada definida pelo Protocolo de Estabelecimento de SessãoEstabelecimento de Sessão

AES, IDEA, RC2-40, DES-40, DES, 3DES, Fortezza, AES, IDEA, RC2-40, DES-40, DES, 3DES, Fortezza, RC4-40, RC4-128RC4-40, RC4-128

mensagem é comprimida antes de ser criptografadamensagem é comprimida antes de ser criptografada

Page 8: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Operação do protocolo de Operação do protocolo de registro SSLregistro SSL

Dados da aplicação

Fragmentar

Compactar

Adicionar MAC

Criptografar

Anexar cabeçalho de registro SSL

Page 9: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Protocolo de mudança de Protocolo de mudança de especificação de cifra SSLespecificação de cifra SSL

um dos três protocolos específicos do SSL um dos três protocolos específicos do SSL que utilizam o Protocolo de Registro SSLque utilizam o Protocolo de Registro SSL

uma mensagem únicauma mensagem única faz com que o estado pendente vire o faz com que o estado pendente vire o

estado atualestado atual por isso atualiza o conjunto de cifras a ser por isso atualiza o conjunto de cifras a ser

usadousado

Page 10: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Protocolo de alerta SSLProtocolo de alerta SSL transmite alertas relacionados ao SSL para as partes transmite alertas relacionados ao SSL para as partes

envolvidasenvolvidas gravidadegravidade

• alerta (1) ou fatal (2)alerta (1) ou fatal (2)

alerta específicoalerta específico• fatal: unexpected_message, bad_record_mac, fatal: unexpected_message, bad_record_mac,

decompression_failure, handshake_failure, decompression_failure, handshake_failure, illegal_parameterillegal_parameter

• alerta: close_notify, no_certificate, bad_certificate, alerta: close_notify, no_certificate, bad_certificate, unsupported_certificate, certificate_revoked, unsupported_certificate, certificate_revoked, certificate_expired, certificate_unknowncertificate_expired, certificate_unknown

compactados e criptografados como todos os dados SSLcompactados e criptografados como todos os dados SSL

Page 11: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Protocolo de estabelecimento Protocolo de estabelecimento de sessão SSLde sessão SSL

permite servidor e cliente fazer:permite servidor e cliente fazer: autentiquem um ao outroautentiquem um ao outro negociem um algoritmo de criptografia e de MACnegociem um algoritmo de criptografia e de MAC Negociem chaves criptográficas a serem usadasNegociem chaves criptográficas a serem usadas

compreende uma série de mensagens em compreende uma série de mensagens em fasesfases

1.1. Estabelecer capacidades de segurançaEstabelecer capacidades de segurança

2.2. Autenticação de servidor e troca de chavesAutenticação de servidor e troca de chaves

3.3. Autenticação de cliente e troca de chavesAutenticação de cliente e troca de chaves

4.4. TérminoTérmino

Page 12: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

SSL Handshake ProtocolSSL Handshake Protocol

Fase 1Estabelecer qualificações de segurança, incluindo versão de protocolo, ID de sessão, conjunto de cifras, método de compactação e números aleatórios iniciais.Fase 2O servidor pode enviar certificado, troca de chaves e solicitar certificado. O servidor sinaliza o final da fase da mensagem hello.

Fase 3O cliente envia o certificado se solicitado.O cliente envia a troca de chaves.O cliente pode enviar a verificação de certificado.

Fase 4Trocar conjunto de cifras e encerrar o protocolo de estabelecimento de sessão.

Observação: transferência sombreadas são mensagens opcionais ou dependentes de situação que nem sempre são enviadas.

Cliente

Servidor

Tem

po

Page 13: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

TLS (Transport Layer TLS (Transport Layer Security)Security)

padronização IETF na RFC 2246 similar ao SSLv3padronização IETF na RFC 2246 similar ao SSLv3 com pequenas diferençascom pequenas diferenças

grava no formato de número de versãograva no formato de número de versão usa HMAC para MACusa HMAC para MAC funções pseudo-aleatórias para expandir segredosfunções pseudo-aleatórias para expandir segredos tem outros códigos de alertatem outros códigos de alerta algumas diferenças nas cifras disponíveisalgumas diferenças nas cifras disponíveis mudanças nos tipos de certificados e negociaçõesmudanças nos tipos de certificados e negociações mudanças nas cifras computacionais e nos mudanças nas cifras computacionais e nos

enchimentosenchimentos

Page 14: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Secure Electronic Transactions Secure Electronic Transactions (SET)(SET)

especificação aberta de criptografia e segurançaespecificação aberta de criptografia e segurança para proteger transações envolvendo cartões de crédito para proteger transações envolvendo cartões de crédito

pela Internetpela Internet desenvolvido em 1996 pela MasterCard e Visadesenvolvido em 1996 pela MasterCard e Visa não é um sistema de pagamentosnão é um sistema de pagamentos no entanto é um conjunto de protocolos e formatos de no entanto é um conjunto de protocolos e formatos de

segurançasegurança canal de comunicações seguro entre todas as partescanal de comunicações seguro entre todas as partes confiança no uso de certificados digitais X.509v3confiança no uso de certificados digitais X.509v3 privacidade, para disponibilizar as informação apenas para quem privacidade, para disponibilizar as informação apenas para quem

precisaprecisa

Page 15: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Participantes do SETParticipantes do SET

Proprietário do cartão

Emissor

AutoridadeCertificadora

Comerciante

Gateway de pagamento

Acquirer

Rede de pagamento

Internet

Internet

Page 16: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Transação SETTransação SET

1.1. O cliente abre uma conta.O cliente abre uma conta.2.2. O cliente recebe um certificado.O cliente recebe um certificado.3.3. Os comerciantes têm seus próprios certificados.Os comerciantes têm seus próprios certificados.4.4. O cliente faz um pedido.O cliente faz um pedido.5.5. O comerciante é verificado.O comerciante é verificado.6.6. O pedido e o pagamento são enviados.O pedido e o pagamento são enviados.7.7. O comerciante solicita autorização de pagamento.O comerciante solicita autorização de pagamento.8.8. O comerciante confirma o pedido.O comerciante confirma o pedido.9.9. O comerciante fornece os bens ou serviços.O comerciante fornece os bens ou serviços.10.10. O comerciante solicita o pagamento.O comerciante solicita o pagamento.

Page 17: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Assinatura DualAssinatura Dual

cliente cria duas mensagenscliente cria duas mensagens informação do pedido (OI) para o comercianteinformação do pedido (OI) para o comerciante informação de pagamento (PI) para o bancoinformação de pagamento (PI) para o banco

nenhuma das partes precisa de informações nenhuma das partes precisa de informações da outrada outra

porém precisam ser vinculadosporém precisam ser vinculados assinatura dual é usada para issoassinatura dual é usada para isso

cliente concatena os hashes de OI e PIcliente concatena os hashes de OI e PIDS=E(PRDS=E(PRcc, [H(H(PI)||H(OI))]), [H(H(PI)||H(OI))])

Page 18: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Solicitação de compra SETSolicitação de compra SET

A transação de solicitação de A transação de solicitação de compra SET consiste em quatro compra SET consiste em quatro mensagensmensagens

1.1. Inicia solicitação – solicita os Inicia solicitação – solicita os certificadoscertificados

2.2. Inicia resposta – resposta assinadaInicia resposta – resposta assinada

3.3. Solicitação de compra – de OI e PISolicitação de compra – de OI e PI

4.4. Resposta de compra – confirma o Resposta de compra – confirma o pedidopedido

Page 19: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Solicitação de compra - Solicitação de compra - ClienteCliente

Passado pelo comerciante ao gateway

de pagamento

Recebidopelo

comerciante

PIOIPIMDOIMDE

Ks

PUb

=====

==

Informações de pagamentoInformações de pedidoResumo da mensagem de PIResumo da mensagem de OICriptografia (RSA para assimétrica;DES para simétrica)Chave simétrica temporáriaChave pública de troca de chave do banco

Mensagem de solicitação

Assinatura Dual

Assinatura Dual

Certificadode

proprietário

Page 20: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Solicitação de compra - Solicitação de compra - ComercianteComerciante

1.1. Confirma o certificado do proprietário do cartão pela Confirma o certificado do proprietário do cartão pela assinatura da CAassinatura da CA

2.2. Confirma a assinatura dual usando a chave pública Confirma a assinatura dual usando a chave pública de assinatura do cliente garantindo que o pedido não de assinatura do cliente garantindo que o pedido não foi alterado em trânsito e que foi assinado usando a foi alterado em trânsito e que foi assinado usando a chave privada de assinatura do proprietário do cartãochave privada de assinatura do proprietário do cartão

3.3. Processa o pedido e encaminha as informações do Processa o pedido e encaminha as informações do pagamento para o gateway de pagamento para pagamento para o gateway de pagamento para autorização (descrito mais adiante)autorização (descrito mais adiante)

4.4. Envia uma resposta de compra ao proprietário do Envia uma resposta de compra ao proprietário do cartãocartão

Page 21: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Solicitação de compra - Solicitação de compra - ComercianteComerciante

OIOIMDPIMDDHPUc

======

Informações de pedidoResumo da mensagem de OIResumo da mensagem de PIDecriptografia (RSA)Função de hash (SHA-1)Chave pública de assinatura do cliente

Mensagem de solicitação

Assinatura Dual

Certificadode

proprietário

Passado pelo comerciante ao gateway

de pagamento

Page 22: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Autorização do gateway de Autorização do gateway de pagamentopagamento

1.1. Verifica todos os certificadosVerifica todos os certificados2.2. Decriptografa o envelope digital do bloco de autorização para Decriptografa o envelope digital do bloco de autorização para

obter a chave simétrica e depois decriptografa o bloco de obter a chave simétrica e depois decriptografa o bloco de autorizaçãoautorização

3.3. Verifica a assinatura do comerciante no bloco de autorizaçãoVerifica a assinatura do comerciante no bloco de autorização4.4. Decriptografa o envelope digital do bloco de pagamento para Decriptografa o envelope digital do bloco de pagamento para

obter a chave simétrica e depois decriptografa o bloco de obter a chave simétrica e depois decriptografa o bloco de pagamentopagamento

5.5. Verifica a assinatura dual no bloco de pagamentoVerifica a assinatura dual no bloco de pagamento6.6. Verifica se a ID da transação recebida do comerciante combina Verifica se a ID da transação recebida do comerciante combina

com a da PI recebida (indiretamente) do cientecom a da PI recebida (indiretamente) do ciente7.7. Solicita e recebe uma autorização do emissorSolicita e recebe uma autorização do emissor8.8. Retorna uma Resposta de Autorização ao comercianteRetorna uma Resposta de Autorização ao comerciante

Page 23: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

Captação de PagamentoCaptação de Pagamento

O comerciante envia um gateway de pagamento O comerciante envia um gateway de pagamento uma transação de captura de pagamentouma transação de captura de pagamento

Gateway checa a solicitaçãoGateway checa a solicitação Depois os fundos são transferidos para a conta Depois os fundos são transferidos para a conta

do comerciantedo comerciante Notifica o comerciante em uma mensagem de Notifica o comerciante em uma mensagem de

Resposta de CaptaçãoResposta de Captação

Page 24: Criptografia e segurança de redes Capítulo 17 Quarta Edição por William Stallings Slides de Lawrie Brown Tradução: Rodrigo Moutinho

SumárioSumário

Tenha considera:Tenha considera: Necessidade de segurança na WebNecessidade de segurança na Web Protocolos de segurança da camada de Protocolos de segurança da camada de

transporte - SSL/TLS (Secure Socket Layer / transporte - SSL/TLS (Secure Socket Layer / Transport Layer Service)Transport Layer Service)

Protocolo seguro de pagamento do cartão de Protocolo seguro de pagamento do cartão de crédito – SET (Secure Eletronic Transaction)crédito – SET (Secure Eletronic Transaction)