certificação digital: proteção para aplicações web marco “kiko” carnut, cissp marco...

29
Certificação Digital: proteção Certificação Digital: proteção para aplicações Web para aplicações Web Marco “Kiko” Carnut, CISSP <[email protected]> Marco “Kiko” Carnut, CISSP <[email protected]> Seminário de Atualização Tecnológica – TechUpgrade Seminário de Atualização Tecnológica – TechUpgrade Março/2007 Março/2007

Upload: internet

Post on 22-Apr-2015

133 views

Category:

Documents


17 download

TRANSCRIPT

Page 1: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Certificação Digital: proteção para Certificação Digital: proteção para aplicações Webaplicações Web

Marco “Kiko” Carnut, CISSP <[email protected]>Marco “Kiko” Carnut, CISSP <[email protected]>

Seminário de Atualização Tecnológica – TechUpgradeSeminário de Atualização Tecnológica – TechUpgradeMarço/2007Março/2007

Page 2: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

AgendaAgenda

Apresentação, Confissão e Ressalvas Iniciais Objetivos Parte I: O Problema

Algumas vulnerabilidades comuns em sistemas computacionais

Parte II: Uma soluçãoAssinaturas DigitaisCertificados Digitais

Page 3: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Parte IParte I

Algumas Vulnerabilidades Algumas Vulnerabilidades em Sistemas Computacionaisem Sistemas Computacionais

Page 4: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

O Caráter Abstrato da InformaçãoO Caráter Abstrato da Informação

Dados de computador (“bits”) independem do seu suporte material

É fácil alterar dados em vários tipos de forma digital“Montagens” em fotos, filmes ou documentos

digitalizadosAlterar textos de contratos, recibos, diplomas,

comprovantes em arquivos do Word ou páginas web

Alterações em dados digitais não deixam evidências físicas ou rastros periciáveis

Page 5: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Cópias PerfeitasCópias Perfeitas

No mundo digital, toda cópia é perfeita e indistinguível do original

Conceitos de “cópia” e “original” se fundemConseqüência mais do que notória: pirataria de

software, música, filmes, etc. Freqüentemente difícil determinar qual o

original baseando-se puramente na análise da informação digital e sem “pistas externas”

É possível “fabricar” dados que visualmente sejam verossímeis

Page 6: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Documento Digital: Fácil de ForjarDocumento Digital: Fácil de Forjar

Documentos digitais são, em última instância, longas seqüências de bits

Modificá-los é rápido, corriqueiro, eficiente e não não deixa evidências físicasdeixa evidências físicasEm geral não é possível determinar se um

documento foi feito a partir de outro nem qual deles foi criado primeiro

Meta-dados de controle, tal como a data de criação/modificação do arquivo, também são documentos digitais e, portanto, fáceis de forjar

O Grande Medo dos Operadores do DireitoDocumentos Digitais Menor Segurança Jurídica

Page 7: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Informação fabricadaInformação fabricada

Hollywood nos mostra que há algum tempo ver não é mais crer

de fato, nós compramos essas “ilusões” e temos hoje essa mesma tecnologia em casa e pode-se usá-las para coisas mais

corriqueiras, como falsificar documentos

Page 8: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Exemplo: qual o certo?Exemplo: qual o certo?

Imagine um contrato digitalizado (“scanneado”): uma parte apresenta essa versão:

e a outra parte apresenta essa:

como distinguir a correta?

Page 9: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Os AdminsOs Admins

Admin = contração de “Administradores” Usuário que tem poder absoluto em um dado

sistema computacionalNormalmente definido quando o sistema é instalado

Sistemas podem ser...Seu Windows XPOs servidores principais da sua redeO servidor de banco de dadosO firewall, roteadores, linhas de comunicação

Institucionalmente responsável pela instalação e manutenção dos computadores e sistemas associados

Page 10: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Definindo a Senha do AdminDefinindo a Senha do Admin

Tipicamente acontece durante o procedimento de instalação do software

Page 11: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Modelo Clássico de Apps/Site WebModelo Clássico de Apps/Site Web

Fachada:Fachada: visualização e controle (“regras de negócio”) tipicamente um servidor web +

linguagens de aplicação- Apache+Tomcat+Java, IIS+ASP,

Apache+PHP Retaguarda:Retaguarda: modelo abstrato dos

dados tipicamente em um Gerenciador de

Banco de Dados Relacional- SQL Server, Postgres, Oracle...

““Poder Absoluto”:Poder Absoluto”: Os técnicos que operam esses computadores podem alterar qualquer dado a qualquer dado a qualquer tempoqualquer tempo, sem deixar rastros nem evidências

Page 12: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Os AdminsOs Admins

Poder absoluto mesmo!Podem alteraralterar dados ou fazê-los desaparecerdesaparecer

- Dados = arquivos de computador, registros em um banco de dados, documentos do Word, planilhas do Excel,... qualquer tipo de dado

Amadorismo técnicoAmadorismo técnico faz com que freqüentemente tentativas de “fraudes” deixem vestígiosvestígios que podem ser aproveitados por um perito

Mas se feito de forma competente, pode não deixar absolutamente nenhumabsolutamente nenhum vestígio

Page 13: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Parte IIParte II

Assinaturas Digitais em Documentos Assinaturas Digitais em Documentos Eletrônicos: conceitos e práticaEletrônicos: conceitos e prática

Page 14: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Certificação DigitalCertificação Digital

Sub-área da disciplina de CriptografiaCriptografia Várias aplicações práticas

Historicamente, sigilo militar e sigilo militar e diplomáticodiplomático

Sigilo de comunicaçõesSigilo de comunicações em geralDetecção de adulteraçõesDetecção de adulterações

- Reforça a “força de prova” de um documento eletrônico

Identificação de usuáriosIdentificação de usuários- Substitui nome+senha

Page 15: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

A Assinatura DigitalA Assinatura Digital

Objetivo maior: conferir ao documento eletrônico eficácia probanteeficácia probante equivalente ou superior a um documento em papel.Resistência a adulteração cientificamente

periciável;Identifica o signatário;

Viabiliza realizar seguramenteseguramente por meios por meios totalmente eletrônicostotalmente eletrônicos uma série de trâmites formais que antes só eram concebíveis em papel.Celeridade nos processos, conveniência e ação à

distância (onde apropriado).

Page 16: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

O Certificado DigitalO Certificado Digital

Objetivo maior: identificar os signatáriosidentificar os signatários, estabelecendo a correspondência entre as chaves públicas (suas “identidades virtuais”) e suas identidades institucionais/civis/etc no “mundo real”.Não apenas diz o nome do titular,......mas também demonstra (pericialmente, se

necessário)

Page 17: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Certificado DigitalCertificado Digital

Marco CarnutCISSP – Diretor

[email protected]

w w w . t e m p e s t . c o m . b r

Recife

Av. Marquês de Olinda, 126 - 5o andarEdf. Citibank – Recife Antigo – 50.030-901fone/fax: +55 81 3424.3670

São Paulo

Rua Jerônimo da Veiga, 164 - 5o andarItaim Bibi – 04.536-001fone/fax: +55 11 3071 4727

Assinatura Digital

3307593482764144383236407422893115834377614890899624009442099845693490214573567788278071557866894234862782864842514558492006345426665612583589955074261322149433007623318136633859241816528422417014741402229389782364764071422531994119155607620122108426217561226430893455427068133155467382027190322146133297262276110015235819528391147029664383805647966466610930005540080821077564303251873506562261793490643836045444308449796374610594658997400915322105907963083905777281153889820615690238747596150597146931269072781094216513660091453537585805022066803217838163216563737476746283832612840308825648045756458529060541743815

Chave Pública

e=65537,n=142239367858416975776709973865450073964317047967537963581498770739727353522092089230343487731587869752994941931696743826295415252444227103015424408026248310161052096481075828264719552128147343307191910433656494782751532754737317882243505044499826239887391048898863537027610940275999724385631333089769833207271

Chave Pública

e=65537,n=142239367858416975776709973865450073964317047967537963581498770739727353522092089230343487731587869752994941931696743826295415252444227103015424408026248310161052096481075828264719552128147343307191910433656494782751532754737317882243505044499826239887391048898863537027610940275999724385631333089769833207271

(RSA com hash SHA1) (criptossistema RSA)

O=FreeICP.ORGOU=Verified Identity TEST Certification

AuthorityCN= Marco Carnut

[email protected]

Emitente:C=BR, ST=Pernambuco, L=Recife, O=Tempest Security

Technologies,OU=FreeICP.ORG, CN=Verified Identity TEST Certification

[email protected]

Identifica-me no mundo eletrônico

Prova que o emitente dá o seu aval de que essa chave

pública me pertence.

Minha Identificação (em um certo contexto

institucional/normativo)

Identificação do emitente (no mesmo contexto

institucional/normativo)

Page 18: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

As duas nascem juntas,a partir de certos ingredientes matemáticos,...

Uma vez descartados esses ingredientes, não é viável calcular uma a partir da outra!

Chaves PrivadasChaves Privadas

A toda chave pública está associada uma (e somente uma) chave privada

(essa não é minha chaveprivada de verdade, é claro...)

e=65537,n=142239367858416975776709973865450073964317047967537963581498770739727353522092089230343487731587869752994941931696743826295415252444227103015424408026248310161052096481075828264719552128147343307191910433656494782751532754737317882243505044499826239887391048898863537027610940275999724385631333089769833207271

Chave Pública

d=45513073726402274497112187375821996218728416949314546946140448587789481038639096016002749187761891763803670808413839912801228572529665774876532962635379131630567220917313622655792743595159858016481026785861643971550766288990167133657888343401183947460265117578350019500398898372064939800622637320099687830497

Chave Privada

Page 19: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Repositório da Chave PrivadaRepositório da Chave Privada

No computador principal (“em software”)Pode ser copiada

- intencionalmente, sob o comando do usuário- ou sorrateiramente, por um vírus ou cavalo de tróia

Em um computador secundário“Smartcards” ou “tokens”São computadores completos

em miniatura- com processador, memória e

sistema operacional- mas sem teclado nem tela

O próprio smartcard realiza a geração do par de chaves e a geração de assinaturas digitais

- chave privada nasce neles e deles jamais sai

Page 20: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Declaro para osdevidos fins que a Empresa XYZ Ind. E Com. Ltda está rigo- rosamente em dia com todas suas obri- gações junto à Or- dem dos Advogados do Brasil.

Fulano de Tal, Secretário.

Assinatura Digital: GeraçãoAssinatura Digital: Geração

Tw+1 4+ajkwLx kOEjYlzQ e//qZi

Declaro para osdevidos fins queFulano de Tal dos A. Pereira está rigo- rosamente em dia com todas suas obri- gações junto à Or- dem dos Advogados do Brasil.

Fulano de Tal, Secretário.

1. A geraçãogeração da assinatura digital é um cálculocálculo (na prática, feito por um programa de computador) que usa dois ingredientes:a. O documento a ser assinado;b. A chave privadachave privada do signatário;

45513073726402 27449711218737582199 62187284169493145469461404 4858778948103 8639096016002749187761891 76380367080841383991280 12285725296657748765329 626353791316 3056722091731 36226557927435 95159858016481026785861643 97155076628899016713 36578883434011 83947 460265 11757835 001950 03988 983720 649 39800 622637 32009968 78304 97

814541843798 478120951923912873 1294299672425116704939 379782806261398363322476 919384062566169685055517534267117705433844765720549710618175683608932458405453848797180835093703159582448572539462183005843996155364051919 34571045163287364997789829 246974656206298609167179 3861231705542771753043 061760561432648197 395710299238

2. O resultado é um número, cha-mado de assinatura digitalassinatura digital.

3. Essa assinatura é salva em um arquivo de computador, podendoser usada em separadousada em separado…

4. ... ou pode ser anexadaou pode ser anexada ao do-cumento original, o que, na prá-tica, é muito comum.

Page 21: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Conferência da AssinaturaConferência da Assinatura

Declaro para osdevidos fins que a Fulano de Tal dos A. Pereira está rigo- rosamente em dia com todas suas obri- gações junto Or- dem dos Advogados do Brasil.

Fulano de Tal, Secretário.

1. A conferênciaconferência é um cálculocálculo(também feito por um com-putador)

2. que usa a chave públicachave públicado signatário (contida nocertificado), a assinatura a assinaturasendo conferida e o docu-docu-mentomento sendo conferido.

3. O resultado do processo éum único bitum único bit dizendo se aassinatura é válida ou não.

=

Page 22: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Significado da Assinatura VálidaSignificado da Assinatura Válida

O arquivo/dado sendo conferido é idêntico idêntico bit a bitbit a bit ao arquivo que foi assinadoEstabelece a integridade da informação

O arquivo foi assinado pela chave privada chave privada que corresponde à chave públicaque corresponde à chave pública usada na conferênciaProvê a base para estabelecer quem gerou a

assinatura, supondo que nós mantivemos registro de aos cuidados de quem as chaves foram entregues

Page 23: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Conferência da AssinaturaConferência da Assinatura

Declaro para osdevidos fins que a Fulano de Tal dos B. Pereira está rigo- rosamente em dia com todas suas obri- gações junto Or- dem dos Advogados do Brasil.

Fulano de Tal, Secretário.

1. Se, ao invés, a conferênciafalhar,…

2. …tratamos o documentocomo sendo digitalmenterasurado

3. e o descartamos

Page 24: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Propriedades das AssinaturasPropriedades das Assinaturas

Verificabilidade OfflineNão é necessário consultar nenhum servidor

centralizado ou serviço na Internet para ser capaz de conferir se uma assinatura digital está válida ou não

Independência da OrigemA assinatura pode ser conferida (e servir como

prova de alguma verdade) muito depois do sistema que a gerou sequer ter deixado de existir

Page 25: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Recibos DigitaisRecibos Digitais

1. O usuário envia um trâmiteassinado digitalmente paraum provedor de serviços

2. Ao processar a transação, oservidor assina o documentooriginal a título de “recibo”ou “número de protocolo”

3. O usuário pode provar paraqualquer terceiro que oservidor aceitou exatamenteaquela transação/documento

Page 26: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

Bit a BitBit a Bit

Quanto mais precisa a correspondência entre os bits e a percepção do usuário, tanto mais sólida e difícil de questionar será a perícia técnica

Por outro lado, quanto mais difusa a correspondência entre os bits e a percepção do usuário, tanto mais pantanoso o terreno; abre-se margem para truques técnicos que podem induzir os usuários a interpretar incorretamente o conteúdo do documento

Page 27: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

O papel do certificado digitalO papel do certificado digital

“Certificação Digital” é um termo infeliz porque o certificado digital não é o protagonista da história

O certificado digital é apenas um acessório para fazer com que os programas mostrem nome do titular ao invés de um número enorme (a chave pública)

Page 28: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

RessalvasRessalvas

Assinatura digital não tem nada a vernão tem nada a ver com assinatura autógrafa digitalizada

814541843798386938129429967242511670493937978280626139836332247691938406256616968505551753542671177054338447657205497102618175683608932458405453848749718083509370315958244857253294621830058439961553640519198345710451632873649977898299246974656206298609167179638612317055427717530434061760561432648197

Diferente a cada documento, pois é

calculada em função deste.

Melhor quanto mais semelhante for entre

um documentos e outro

Page 29: Certificação Digital: proteção para aplicações Web Marco “Kiko” Carnut, CISSP Marco “Kiko” Carnut, CISSP Seminário de Atualização Tecnológica – TechUpgrade

[email protected]

Obrigado! Perguntas?Obrigado! Perguntas?

Proteção Real em TI