Você está na página 1de 31

CENTRO SALESIANO DO MENOR – CESAM/DF

PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Módulo - Cisco

CIBERSEGURANÇA

Brasília-DF, 2021

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Aula 5: a arte de garantir a integridade

A integridade assegura que os dados não sejam alterados por alguém ou


alguma coisa e que permaneçam confiáveis ao longo de todo o ciclo de vida. A
integridade de dados é um componente crítico para a concepção,
implementação e uso de qualquer sistema que armazena, processa ou transmite
dados. Este capítulo começa discutindo os tipos de controles de integridade de
dados usados, como algoritmos hash, salting e código de autenticação de
mensagem de hash com chave (HMAC).
O uso de assinaturas digitais e certificados incorpora os controles de
integridade de dados para oferecer aos usuários uma maneira de verificar a
autenticidade das mensagens e documentos. O capítulo conclui com uma
discussão de reforço de integridade de banco de dados. Ter um sistema de
integridade de dados bem controlado e definido aumenta a estabilidade, o
desempenho e a manutenção de um sistema de banco de dados.

O que é hash?

Os usuários precisam saber que os dados permanecem inalterados,


enquanto estão inativos ou em trânsito. Hash é uma ferramenta que assegura a
integridade de dados através da captura de dados binários (a mensagem) para
produzir representação de tamanho fixo denominada valor de hash ou message
digest, como mostrado na figura.

A ferramenta de hash usa uma função criptográfica de hash para verificar


e assegurar a integridade de dados. Também pode verificar a autenticação. As
funções hash substituem a senha de texto simples ou chaves de criptografia
porque as funções hash são funções unidirecionais.

Isso significa que, se uma senha for confundida com um algoritmo de hash
específico, o resultado sempre será o mesmo hash digest. É considerada
unidirecional porque, com as funções hash, é computacionalmente inviável que
dois conjuntos de dados distintos apresentem o mesmo hash digest ou saída.

Cada vez que os dados são modificados ou alterados, o valor de hash


também muda. Por isso, muitas vezes os valores criptográficos de hash são
chamados de impressões digitais. Podem detectar arquivos de dados
duplicados, alterações na versão do arquivo e aplicações similares.

Esses valores protegem contra alterações de dados acidentais ou


intencionais e corrupção de dados acidental. O hash também é muito eficiente.
Um arquivo grande ou o conteúdo de uma unidade de disco inteira resulta em
um valor de hash com o mesmo tamanho.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Propriedades de hash

O hash é uma função matemática unidirecional relativamente fácil de


calcular, mas bastante difícil de reverter. A moagem de café é uma boa analogia
de função unidirecional. É fácil moer grãos de café, mas é quase impossível unir
novamente todos os pedaços para reconstruir os grãos originais.
Uma função hash criptográfica tem as seguintes propriedades:
 A entrada pode ser de qualquer comprimento.
 A saída tem um comprimento
fixo.


A função hash é unidirecional e
não é reversível.


Dois valores de entrada distintos
quase nunca resultarão em valores de
hash idênticos.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Algoritmos hash

As funções hash são úteis para assegurar que um erro de comunicação


ou do usuário altere os dados acidentalmente. Por exemplo, um remetente pode
querer ter certeza de que ninguém alterará uma mensagem a caminho do
destinatário. O dispositivo de envio insere a mensagem em um algoritmo de hash
e calcula o digest de tamanho fixo ou a impressão digital.
Algoritmo de hash simples (soma de verificação de 8 bits)

A soma de verificação de 8 bits é um dos primeiros algoritmos hash e


corresponde à forma mais simples de uma função hash. Uma soma de
verificação de 8 bits calcula o hash, convertendo a mensagem em números
binários e, então, organiza a sequência de números binários em partes de 8 bits.
O algoritmo acrescenta os valores de 8 bits.

A etapa final é converter o resultado usando um processo denominado


complemento de 2. O complemento do 2 converte um binário no valor oposto e
depois adiciona um. Isso significa que zero é convertido em um e um é convertido
em zero. A etapa final é adicionar 1, resultando em um valor de hash de 8 bits.
Clique aqui para calcular o hash de 8 bits da mensagem BOB.

1. Converter BOB em binário usando o código ASCII, como mostrado na


figura 1.
2. Converter os números binários em hexadecimais, como mostrado na
figura 2.
3. Digitar os números hexadecimais na calculadora (42 4F 42).
4. Clicar no botão Calculate (Calcular). O resultado é o valor de hash 2D.
Experimente os seguintes exemplos:
CONFIDENCIAL = “S”=53 “E”=45 “C”=43 “R”=52 “E”=45 “T”=54
VALOR DE HASH = 3A
MENSAGEM = “M”=4D “E”=45 “S”=53 “S”=53 “A”=41 “G”=47 “E”=45
VALOR DE HASH = FB

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Algoritmos de hash modernos

Há muitos algoritmos hash modernos amplamente usados atualmente.


Dois dos mais populares são MD5 e SHA.
Algoritmo Message Digest 5 (MD5)

Ron Rivest desenvolveu o algoritmo de hash MD5 que é usado por várias
aplicações na Internet atualmente. O MD5 é uma função unidirecional que facilita
o cálculo de um hash a partir dos dados de entrada determinados, mas torna
muito difícil calcular os dados de entrada estabelecendo apenas um valor de
hash.

O MD5 produz um valor de hash de 128 bits. O malware Flame


comprometeu a segurança do MD5 em 2012. Os autores do malware Flame
usaram uma colisão de MD5 para falsificar um certificado de assinatura de
código do Windows. Clique aqui para ler uma explicação sobre o ataque de
colisão do malware Flame.
Secure Hash Algorithm (SHA)

O Instituto Nacional de Padrões e Tecnologia (NIST) dos EUA


desenvolveu o SHA, o algoritmo especificado no padrão hash seguro (SHS). O
NIST publicou o SHA-1 em 1994. O SHA-2 substituiu o SHA-1 com quatro
funções hash adicionais para formar a família de SHA:
 SHA-224 (224 bits)
 SHA-256 (256 bits)
 SHA-384 (384 bits)
 SHA-512 (512 bits)

O SHA-2 é um algoritmo mais forte e está substituindo o MD5. SHA-256,


SHA-384 e SHA-512 são os algoritmos de última geração.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Arquivos de hash e meios de comunicação digital

A integridade assegura que os dados e informações estejam completos e


inalterados no momento da aquisição. É importante saber quando um usuário
baixa um arquivo da Internet ou um avaliador de computação forense está
procurando evidências nos meios de comunicação digital.

Para verificar a integridade de todas as imagens IOS, a Cisco oferece as


somas de verificação MD5 e SHA no site de download de software da Cisco. O
usuário pode fazer uma comparação entre esse MD5 digest e o MD5 digest de
uma imagem do IOS instalada em um dispositivo, como mostrado na figura.
Agora o usuário pode ter certeza de que ninguém violou ou modificou o arquivo
de imagem do IOS.

Nota: O comando verify /md5, mostrado na figura, está fora do escopo


deste curso.

O campo de computação forense digital usa o hash para verificar todas


as mídias digitais que contêm arquivos. Por exemplo, o avaliador cria um hash e
uma cópia de bit a bit da mídia que contém os arquivos, para produzir um clone
digital. O avaliador compara o hash da mídia original com a cópia. Se os dois
valores forem compatíveis, as cópias são idênticas. O fato de que um conjunto
de bits é idêntico ao conjunto original de bits estabelece invariabilidade. A
invariabilidade ajuda a responder várias perguntas:
 O avaliador tem os arquivos que ele esperava?
 Os dados foram corrompidos ou alterados?

O avaliador pode
comprovar que os arquivos não
estão corrompidos?

Agora o perito em
computação forense pode avaliar
as evidências digitais da cópia,
enquanto deixa o original intacto e
inalterado.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Senhas de hash

Os algoritmos hash transformam qualquer quantidade de dados em um


hash digital ou impressão digital de tamanho fixo. Um criminoso não pode
reverter um hash digital para descobrir a entrada original. Se a entrada mudar
completamente, o resultado será um hash diferente. Isso funciona para proteger
as senhas. Um sistema precisa armazenar uma senha de modo a protegê-la,
mas que ainda possa verificar se a senha do usuário está correta.

A figura mostra o fluxo de trabalho para o registo e autenticação da conta


do usuário usando um sistema de hash. O sistema nunca registra a senha no
disco rígido, ele apenas armazena o hash digital.

Aplicações

Use as funções hash criptográficas nas seguintes situações:

 Fornecer a comprovação da autenticidade quando usada com uma


chave de autenticação secreta simétrica, como IP Security (IPsec) ou
autenticação de protocolo de roteamento

Fornecer autenticação gerando respostas unidirecionais únicas


para desafios em protocolos de autenticação

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

 Fornecer a comprovação da verificação de integridade da


mensagem, como as que são usadas em contratos assinados digitalmente,
e certificados de infraestrutura de chave pública (PKI), como os que são
aceitos ao acessar um site seguro com um navegador

Ao escolher um algoritmo de hash, use o SHA-256 ou superior, pois são


os mais seguros atualmente. Evite o SHA-1 e o MD5 devido à descoberta das
falhas de segurança. Em redes de produção, implemente o SHA-256 ou superior.

Embora possa detectar alterações acidentais, o hash não pode proteger


contra alterações deliberadas. Não há informações de identificação única do
remetente no procedimento de hash. Isso significa que qualquer pessoa pode
processar um hash para quaisquer dados, desde que tenha a função hash
correta.

Por exemplo, quando uma mensagem percorre a rede, um possível


invasor poderia interceptar a mensagem, alterá-la, recalcular o hash e anexar o
hash à mensagem. O dispositivo receptor só validará contra o hash que estiver
anexado. Portanto, hash é vulnerável a ataques man in the middle e não oferece
segurança aos dados transmitidos.

Como decifrar hashes

Para decifrar um hash, um invasor deve adivinhar a senha. O ataque de


dicionário e o ataque de força bruta são os dois principais ataques usados para
adivinhar senhas.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Um ataque de dicionário usa um arquivo que contém palavras, frases e


senhas comuns. O arquivo tem os hashes calculados. Um ataque de dicionário
compara os hashes no arquivo com os hashes de senha. Se um hash for
compatível, o invasor descobrirá um grupo de senhas potencialmente boas.

Um ataque de força bruta tenta todas as combinações possíveis de


caracteres até determinado tamanho. Um ataque de força bruta consome muito
tempo do processador, mas é só uma questão de tempo até esse método
descubra a senha. O tamanho das senhas precisa ser grande o suficiente para
que o tempo gasto para executar um ataque de força bruta valha a pena. As
senhas de hash dificultam muito o trabalho do criminoso em recuperar as
senhas.

O que é salting?

O salting torna o hash de senhas mais seguro. Se dois usuários têm a


mesma senha, eles também terão os mesmos hashes de senha. Um SALT, que
é uma cadeia de caracteres aleatória, é uma entrada adicional à senha antes do
hash. Isso cria um resultado de hash diferente para as duas senhas, conforme
mostrado na figura. Um banco de dados armazena o hash e o SALT.

Na figura, a mesma senha gera um hash diferente porque o salt de cada


caso é diferente. O salt não precisa ser confidencial porque é um número
aleatório.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Como evitar ataques

O salting impede que um invasor use um ataque de dicionário para tentar


adivinhar senhas. O salting também torna impossível o uso de tabelas de
pesquisa e rainbow tables para decifrar um hash.
Tabelas de pesquisa
Uma tabela de pesquisa armazena os hashes de senhas pré-calculados
em um dicionário de senha, juntamente com a senha correspondente. Uma
tabela de pesquisa é uma estrutura de dados que processa centenas de
pesquisas de hash por segundo. Clique aqui para ver a velocidade com que uma
tabela de pesquisa pode decifrar um hash.
Tabelas de pesquisa reversa

Esse ataque permite que o criminoso virtual lance um ataque de dicionário


ou um ataque de força bruta em vários hashes, sem a tabela de pesquisa pré-
calculada. O criminoso virtual cria uma tabela de pesquisa que traça cada hash
de senha a partir do banco de dados da conta violada para uma lista de usuários.

O criminoso virtual executa um hash para cada palpite de senha e usa a


tabela de pesquisa para obter uma lista de usuários cuja senha é compatível com
o palpite do criminoso virtual, como mostrado na figura. O ataque funciona
perfeitamente, pois muitos usuários têm a mesma senha.
Rainbow tables

As rainbow tables sacrificam a velocidade de quebra de senha para


diminuir o tamanho das tabelas de pesquisa. Uma tabela menor significa que a
tabela pode armazenar as soluções para mais hashes na mesma quantidade de
espaço.

Implementação de salting

Um Cryptographically Secure Pseudo-Random Number Generator


(CSPRNG) é a melhor opção para gerar o salt. CSPRNGs geram um número
aleatório que tem um alto nível de aleatoriedade e é completamente imprevisível,
portanto, é criptograficamente confiável.
Para implementar o salt com sucesso, siga as seguintes recomendações:
 O salt deve ser exclusivo para cada senha de usuário.
 Nunca reutilize um salt.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

 O tamanho do sal deve corresponder ao tamanho da saída da


função hash.
 Sempre execute o hash no servidor em um aplicativo da Web.

O uso de uma técnica chamada alongamento de chave também ajudará


a proteger contra ataques. O alongamento de chave executa a função hash muito
lentamente. Isso impede o hardware de ponta que pode calcular bilhões de
hashes por segundo menos eficazes.

A figura mostra as etapas usadas por um aplicativo de banco de dados


para armazenar e validar uma senha de salt.

O que é um HMAC?

O próximo passo para evitar que um criminoso virtual lance um ataque de


dicionário ou um ataque de força bruta em um hash é adicionar uma chave
secreta ao hash. Somente a pessoa que tem conhecimento do hash pode validar
uma senha.

Uma maneira de fazer isso é incluir a chave secreta no hash, usando um


algoritmo de hash denominado código de autenticação de mensagem de hash
com chave (HMAC ou KHMAC). HMACs usam uma chave secreta adicional
como entrada à função hash. O uso do HMAC ultrapassa a garantira de
integridade ao adicionar a autenticação. Um HMAC usa um algoritmo específico
que combina uma função hash criptográfica com uma chave secreta, conforme
mostrado na figura.

Somente o remetente e o destinatário têm conhecimento da chave secreta


e agora a saída da função hash depende dos dados de entrada e da chave

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

secreta. Apenas as partes que têm acesso a essa chave secreta podem calcular
o digest de uma função HMAC. Esta característica impede os ataques man in
the middle e fornece a autenticação da origem dos dados.

Operação do HMAC

Considere um exemplo em que o


remetente deseja assegurar que uma
mensagem permaneça inalterada em
trânsito e que o destinatária tenha uma
forma de autenticar a origem da
mensagem.

Como mostrado na figura 1, o


dispositivo de envio insere os dados (como
o pagamento de Terry Smith de US$100 e
a chave secreta) no algoritmo de hash e
calcula o HMAC digest de tamanho fixo ou
impressão digital. O destinatário obtém a
impressão digital autenticada anexada à
mensagem.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Na figura 2, o dispositivo receptor remove a impressão digital da


mensagem e usa a mensagem de texto sem formatação com a chave secreta
como entrada para a mesma função de hash.

Se o dispositivo receptor calcular uma impressão digital igual à impressão


digital enviada, a mensagem ainda estará na forma original. Além disso, o
destinatário tem conhecimento da origem da mensagem, pois somente o
remetente possui uma cópia da chave secreta compartilhada. A função HMAC
comprovou a autenticidade da mensagem.

Aplicação do HMAC

Os HMACs também podem autenticar um usuário da Web. Muitos


serviços da Web usam a autenticação básica, que não criptografa o nome de
usuário e a senha durante a transmissão. Usando o HMAC, o usuário envia um
identificador com chave privada e um HMAC. O servidor procura a chave privada
do usuário e cria um HMAC. O HMAC do usuário deve ser compatível com o
calculado pelo servidor.

As VPNs que usam IPsec contam com as funções HMAC para autenticar
a origem de cada pacote e fornecer a verificação de integridade de dados.

Como mostrado na figura, os produtos da Cisco usam o hash para fins de


autenticação de entidade, integridade de dados e autenticidade de dados:

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

 Os roteadores Cisco IOS usam o hash com chaves secretas de


maneira semelhante ao HMAC, para adicionar informações de autenticação
às atualizações do protocolo de roteamento.

 Os IPsec gateways e clientes usam os algoritmos hash, como MD5


e SHA-1 no modo de HMAC, para proporcionar a integridade e a
autenticidade do pacote.

 As imagens de software Cisco na página da Cisco.com


disponibilizam uma soma de verificação de MD5, para que os clientes
possam verificar a integridade das imagens baixadas.
Nota: O termo entidade pode se referir a dispositivos ou sistemas dentro
de uma empresa.

O que é uma assinatura digital?

As assinaturas de próprio punho e selos carimbados comprovam a autoria


do conteúdo de um documento. As assinaturas digitais podem oferecer a mesma
funcionalidade que as assinaturas de próprio punho.

Os documentos digitais não protegidos pode ser facilmente alterados por


qualquer pessoa. Uma assinatura digital pode determinar se alguém editou um
documento após a assinatura do usuário. Uma assinatura digital é um método
matemático usado para verificar a autenticidade e a integridade de uma
mensagem, documento digital ou software.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Em muitos países, as assinaturas digitais têm a mesma importância


jurídica que um documento assinado manualmente. As assinaturas eletrônicas
são vinculativas para os contratos, negociações ou qualquer outro documento
que requer uma assinatura de próprio punho. Uma trilha de auditoria rastreia o
histórico do documento eletrônico para fins de proteção legal e regulatória.

Uma assinatura digital ajuda a estabelecer a autenticidade, a integridade


e o não repúdio. As assinaturas digitais têm propriedades específicas que
permitem a autenticação de entidade e a integridade de dados, como mostrado
na figura.
As assinaturas digitais são uma alternativa para o HMAC.

Não repúdio

Repudiar significa negar. O não repúdio é uma forma de assegurar que o


remetente de uma mensagem ou documento não pode negar que enviou a
mensagem ou documento e que o destinatário não pode negar que recebeu a
mensagem ou documento.

Uma assinatura digital assegura que o remetente assinou eletronicamente


a mensagem ou documento. Como uma assinatura digital é exclusiva para a
pessoa que a criou, essa pessoa não pode posteriormente negar que forneceu
a assinatura.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Processos de criação de uma assinatura digital

A criptografia assimétrica é a base das assinaturas digitais. Um algoritmo


de chave pública, como o RSA, gera duas chaves: uma privada e outra pública.
As chaves estão matematicamente relacionadas.

Alice deseja enviar a Bob um e-mail que contém informações importantes


para a implantação de um novo produto. Alice quer ter a certeza de que o Bob
saiba que mensagem veio dela e não foi alterada após o envio.

Alice cria a mensagem, juntamente com um message digest. Então, ela


criptografa esse digest com a chave privada, como mostrado na figura 1. Alice
agrupa a mensagem, o message digest criptografado e a chave pública para
criar o documento assinado. Alice envia esse documento ao Bob, como mostrado
na figura 2.

Bob recebe e lê a mensagem. Para ter certeza de que a mensagem veio


da Alice, ele cria um message digest da mensagem. Ele obtém o message digest
criptografado enviado por Alice e o descriptografa usando a chave pública da
Alice. Bob compara o message digest enviado por Alice com o que ele gerou. Se
forem compatíveis, o Bob saberá que pode acreditar que ninguém adulterou a
mensagem, como mostrado na figura 3.

Figura 01

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Figura 02

Figura 03

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Uso de assinaturas digitais

Assinar um hash, em vez de todo o documento, proporciona eficiência,


compatibilidade e integridade. As empresas podem querer substituir os
documentos em papel e assinaturas convencionais por uma solução que garante
que o documento eletrônico atende a todos os requisitos legais.

As duas situações a seguir dão exemplos de como usar as assinaturas


digitais:

 Assinatura de código - Utilizada para verificar a integridade de


arquivos executáveis baixados de um site do fornecedor. A assinatura de
código também usa certificados digitais assinados para autenticar e verificar
a identidade do site (figura 1).

 Certificados digitais - Utilizados para verificar a identidade de


uma empresa ou indivíduo para autenticar um site do fornecedor e
estabelecer uma conexão criptografada para troca de dados confidenciais
(figura 2).

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Comparação de algoritmos de assinatura digital

Os três algoritmos comuns de assinatura digital são Algoritmo de


Assinatura Digital (DSA), Rivest-Shamir-Adleman (RSA) e Algoritmo de
Assinatura Digital Elliptic Curve (ECDSA). Todos os três geram e verificam as
assinaturas digitais. Esses algoritmos dependem das técnicas de criptografia
assimétrica e chave pública. As assinaturas digitais requerem duas operações:
1. Geração da chave
2. Verificação da chave
Ambas as operações exigem a criptografia e a decriptografia da chave.

O DSA usa a fatoração de números grandes. Os governos usam o DSA


de assinatura para criar assinaturas digitais. O DSA não ultrapassa a assinatura
até a mensagem propriamente dita.
O RSA é o algoritmo de criptografia com chave pública mais comum
utilizado atualmente. O termo RSA é uma homenagem aos seus criadores em
1977: Ron Rivest, Adi Shamir e Leonard Adleman. O RSA depende da
criptografia assimétrica. O RSA contempla a assinatura e também criptografa o
conteúdo da mensagem.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

O DSA é mais rápido do que o RSA como uma assinatura de serviços


para um documento digital. O RSA é o mais adequado para aplicações que
requerem a assinatura e a verificação de documentos eletrônicos e criptografia
de mensagens.

Como a maioria das áreas de criptografia, o algoritmo RSA baseia-se em


dois princípios matemáticos; módulo e fatoração de números primos.
Clique aqui para saber mais sobre como o RSA utiliza o módulo e fatoração de
números primos.

O ECDSA é o mais novo algoritmo de assinatura digital que está


substituindo o RSA gradativamente. A vantagem desse novo algoritmo é que
pode usar chaves muito menores para a mesma segurança e requer menos
cálculo do que o RSA.

O que é um certificado digital?

Um certificado digital é equivalente a um passaporte eletrônico. Permite


que usuários, hosts e empresas troquem informações de forma segura através
da Internet. Especificamente, um certificado digital autentica e verifica se os
usuários que enviam uma mensagem são quem dizem ser. Os certificados
digitais também podem proporcionar a confidencialidade para o destinatário por
meio da criptografia de uma resposta.
Os certificados digitais são semelhantes aos certificados físicos. Por
exemplo, o certificado Cisco Certified Network Associate Security (CCNA-S) em
papel da figura 1 identifica o indivíduo, a autoridade de certificação (quem
autorizou o certificado) e por quanto tempo o certificado é válido. Observe como
o certificado digital na figura 2 também identifica elementos similares.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Utilização de certificados digitais

Para ajudar a entender como usar um certificado digital, consulte a figura.


Nesse cenário, o Bob está confirmando um pedido com Alice. O servidor da Web
da Alice usa um certificado digital para garantir uma operação segura.

Passo 1: Bob navega para o site da Alice. Um navegador designa uma


conexão confiável, exibindo um ícone de cadeado na barra de status de
segurança.

Passo 2: O servidor da Web da Alice envia um certificado digital para o


navegador de Bob.
Passo 3: O navegador de Bob verifica o certificado armazenado nas
configurações do navegador. Somente certificados confiáveis permitem que a
transação prossiga.

Etapa 4: O navegador da Web de Bob cria uma chave de sessão única


para ser usada somente uma vez.

Passo 5: O navegador de Bob usa a chave pública do servidor da Web


no certificado para criptografar a sessão.

Passo 6: O resultado é que somente o servidor da Web da Alice pode ler


as transações enviadas pelo navegador de Bob.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

O que é autoridade de certificação?

Na Internet, a troca contínua de identificação entre todas as partes seria


inviável. Portanto, as pessoas concordam em aceitar a palavra de terceiros
imparciais. Supõe-se que terceiros conduzem uma investigação detalhada antes
da emissão das credenciais. Após essa investigação detalhada, terceiros emitem
credenciais que são difíceis de falsificar. Desse ponto em diante, todas as
pessoas que confiaram em terceiros simplesmente aceitam as credenciais
emitidas por terceiros.

Por exemplo, na figura, Alice se inscreve no teste para uma carteira de


motorista. Nesse processo, ela apresenta evidências de identidade, como
certidão de nascimento, documento com foto e muito mais para um
departamento de trânsito do governo.

O departamento valida a identidade da Alice e permite que ela realize o


teste de motorista. Após a conclusão com sucesso, o departamento de trânsito
emite a carteira de motorista da Alice.

Mais tarde, Alice precisa descontar um cheque no banco. Ao apresentar


o cheque ao caixa do banco, ele solicita o RG dela. O banco verifica a identidade
dela e desconta o cheque, pois confia do departamento de trânsito do governo.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Uma autoridade de certificação (CA) atua da mesma forma que o


departamento de trânsito. A CA emite certificados digitais que autenticam a
identidade de empresas e usuários. Esses certificados também assinam
mensagens para assegurar que ninguém adulterou as mensagens.

O que está incluso em um certificado digital?

Qualquer entidade pode ler e entender o certificado digital,


independentemente do emissor, contanto que o certificado digital siga uma
estrutura padrão. X.509 é uma norma da infraestrutura de chave pública (PKI),
para gerenciar os
certificados digitais. PKI
consistem em políticas,
funções e procedimentos
necessários para criar,
gerenciar, distribuir, usar,
armazenar e revogar
certificados digitais. O
norma X.509 especifica
que os certificados digitais
contêm as informações
padrão mostradas na
figura.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

O processo de validação

Os navegadores e aplicativos realizam uma verificação de validação,


antes de assegurar que um certificado seja válido. Os três processos incluem o
seguinte:

 A descoberta do certificado valida o caminho de certificação,


verificando cada certificado desde o início com o certificado da CA raiz

 A validação do caminho escolhe um certificado da CA emissora


para cada certificado na cadeia
 A revogação determina se o certificado foi revogado e por que

O caminho do certificado

Um indivíduo obtém um certificado de uma


chave pública de uma CA comercial. O certificado
pertence a uma cadeia de certificados denominada
cadeia de confiança. O número de certificados na
cadeia varia de acordo com a estrutura hierárquica da
CA.

A figura mostra uma cadeia de certificados para


uma CA de nível dois. Existe uma CA raiz off-line e uma
CA subordinada on-line. A razão para a estrutura de
nível dois é que a assinatura X.509 facilita a
recuperação em caso de um compromisso. Se houver
uma CA off-line, ela poderá assinar o novo certificado
da CA on-line. Se não houver uma CA off-line, um
usuário deverá instalar um novo certificado de CA raiz
em cada máquina, telefone ou tablet do cliente.
Integridade de dados

Os bancos de dados proporcionam uma maneira eficiente de armazenar,


recuperar e analisar os dados. À medida que a coleta de dados aumenta e os
dados se tornam mais confidenciais, é importante que os profissionais de
segurança cibernética protejam o número crescente de banco de dados. Pense
em um banco de dados como um sistema de arquivamento eletrônico.

A integridade de dados refere-se à precisão, consistência e confiabilidade


dos dados armazenados em um banco de dados. Os projetistas,

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

desenvolvedores e gestores da empresa são responsáveis pela integridade de


dados no banco de dados.
As quatro regras ou restrições de integridade de dados são as seguintes:

 Integridade da entidade: Todas as linhas devem ter um


identificador único denominado chave primária.


Integridade de domínio: Todos os dados armazenados em uma
coluna devem seguir o mesmo formato e definição.


Integridade de referência: A relação entre as tabelas deve
permanecer coerente. Portanto, um usuário não pode excluir um registro
que está relacionado a outro.

Integridade definida pelo usuário: Um conjunto de regras


definidas por um usuário que não pertence a uma das outras categorias. Por
exemplo, um cliente faz um novo pedido, como mostrado na figura 4. O
usuário verifica primeiro para saber se é um novo cliente. Se for, o usuário
adicionará o novo cliente à tabela de clientes.

Controles de entrada de dados

A entrada de dados envolve a introdução de dados em um sistema. Um


conjunto de controles assegura que os usuários digitem os dados corretos.
Controles suspensos de dados mestre

Tenha uma opção suspensa de tabelas mestre, em vez de pedir aos


indivíduos para digitar os dados. Um exemplo controles suspensos de dados
mestre é usar a lista de localidades do sistema de endereço postal dos E.U.A.
para padronizar os endereços.
Controles de validação de campos de dados
Regras de configuração de verificações básicas, incluindo:

 A entrada obrigatória assegura que um campo obrigatório contenha


dados

As máscaras de entrada impedem que os usuários digitem dados


inválidos ou ajuda a garantir que digitem dados consistentemente (como um
número de telefone, por exemplo)
 Montantes de dólares positivos

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Os intervalos de dados asseguram que um usuário digite os dados


em determinado intervalo (como uma data de nascimento inserida como 18-
01-1820, por exemplo)

 Aprovação obrigatória de uma segunda pessoa (um caixa de banco


que recebe um depósito ou solicitação de retirada maior que um valor
especificado aciona uma segunda ou terceira aprovação)

 Gatilho de modificação de registro máximo (o número de registros


modificados excede a um número pré-determinado num prazo específico e
bloqueia um usuário até um gerente identifique se as transações são
legítimas ou não)
Gatilho de atividade incomum (um sistema bloqueia quando
reconhece a atividade incomum)

Sobre as Regras de Validação

Uma regra de validação verifica se os dados estão nos parâmetros


definidos pelo designer de banco de dados. Uma regra de validação ajuda a
garantir a integridade, a precisão e a consistência dos dados. Os critérios usados
na regra de validação incluem o seguinte:
 Tamanho – verifica o número de caracteres em um item de dados
 Formato – verifica se os dados estão de acordo com um formato
especificado

Consistência – verifica a consistência dos códigos nos itens de


dados relacionados
 Intervalo – verifica se os dados estão dentro de valores mínimo e
máximo

 Dígito de verificação – efetua um cálculo extra para gerar um dígito


de verificação para detecção de erros

Clique em cada passo na figura para ver o resultado do cálculo do dígito


de verificação.

Validação dos tipos de dados

A validação dos tipos de dados é a validação de dados mais simples e


verifica se um usuário que insere dados é coerente com o tipo de caracteres
esperados. Por exemplo, um número de telefone não conteria o caractere alfa.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Os bancos de dados permitem três tipos de dados: número inteiro, sequência de


caracteres e decimal.

Validação de entrada

Um dos aspectos mais vulneráveis do gerenciamento da integridade do


banco de dados é o controle do processo de entrada de dados. Muitos ataques
conhecidos são executados contra um banco de dados e inserem dados
desformatados. O ataque pode confundir, falhar ou fazer com que o aplicativo
divulgue informações demais para o invasor. Os invasores usam ataques de
entrada automática.

Por exemplo, os usuários preenchem um formulário usando um aplicativo


da Web para assinar um informativo. Um aplicativo de banco de dados gera e
envia confirmações de e-mail automaticamente. Quando os usuários recebem
as confirmações de e-mail com um link URL, para confirmar a assinatura, os
invasores modificam o link URL.

Essas modificações incluem a alteração do nome do usuário, endereço


de e-mail ou status da assinatura.

O e-mail retorna ao servidor do host do aplicativo. Se o servidor da Web


não verificar se o endereço de e-mail ou as outras informações da conta
enviados são compatíveis com as informações da assinatura, o servidor
receberá falsas informações. Os hackers podem automatizar o ataque para
inundar o aplicativo da Web com milhares de assinantes inválidos no banco de
dados do informativo.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Verificação de anomalias

A detecção de anomalias se refere à identificação de padrões em dados


que não seguem o comportamento esperado. Esses padrões não conformes são
anomalias, outliers, exceções, anormalidades ou eventos inesperados em
diferentes aplicações de banco de dados.

A detecção e verificação de anomalias é uma contramedida ou proteção


importante na identificação de fraudes. A detecção de anomalias de bancos de
dados pode identificar uma fraude de cartão de crédito e seguro. A detecção de
anomalias de bancos de dados pode proteger os dados contra a destruição ou
alteração em massa.
A verificação de anomalias exige solicitações ou modificações de
verificação de dados, quando um sistema detecta padrões incomuns ou
inesperados.

Um exemplo disso é um cartão de crédito com duas operações em locais


de solicitação muito diferentes em um curto espaço de tempo. Se um pedido de
transação de New York City ocorre às 10:30 e um segundo pedido vem de
Chicago às 10:35, o sistema aciona uma verificação da segunda transação.

Um segundo exemplo ocorre quando um número incomum de


modificações do endereço de e-mail acontece em um número incomum de
registros de banco de dados. Como os dados de e-mail lançam ataques de DoS,
a modificação de e-mail de centenas de registros poderia indicar que um invasor
está usando o banco de dados de uma empresa como uma ferramenta para o
ataque de DoS.

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

Integridade da entidade

Um banco de dados é como um sistema de arquivamento eletrônico.


Manter um arquivamento correto é fundamental para preservar a confiança e a
utilidade dos dados no banco de dados.

Tabelas, registros, campos e dados dentro de cada campo compõem um


banco de dados. Para manter a integridade do sistema de arquivos do banco de
dados, os usuários devem seguir determinadas regras.

A integridade da entidade é uma regra de integridade, declarando que


cada tabela deve ter uma chave primária e que a coluna ou colunas escolhidas
como chave primária devem ser exclusivas e não NULAS.

Nula em um banco de dados significa valores ausentes ou desconhecidos.


A integridade da entidade permite a organização adequada dos dados para esse
registro, como mostrado na figura.

Integridade referencial

Outro conceito importante é a relação entre diferentes sistemas de


arquivamento ou tabelas. A base da integridade de referência consiste em
chaves externas. Uma chave estrangeira em uma tabela faz referência a uma
chave primária em uma segunda tabela. A chave primária de uma tabela é um

Aprendizagem, mais que uma oportunidade!


CENTRO SALESIANO DO MENOR – CESAM/DF
PROGRAMA ADOLESCENTE/JOVEM APRENDIZ

identificador único das entidades (linhas) na tabela. A integridade referencial


mantém a integridade das chaves externas.

Integridade do domínio

A integridade de domínio garante que todos os itens de dados em uma


coluna estejam dentro de um conjunto definido de valores válidos.

Cada coluna em uma tabela tem um conjunto definido de valores, como o


conjunto de todos os números de cartão de crédito, de CPFs ou de endereços
de e-mail. Limitar um valor atribuído a uma instância dessa coluna (um atributo)
reforça a integridade do domínio.
O reforço de integridade do domínio pode ser tão simples quanto escolher
o tipo de dados, comprimento ou formato de uma coluna.

Aprendizagem, mais que uma oportunidade!

Você também pode gostar