1. SRCSRC (Segurança em Redes de(Segurança em Redes de
Computadores)Computadores)
Tecnologia em Redes de Computadores
Prof. Esp. Juan Carlos Oliveira Lamarão
Junho - 2016
2. AgendaAgenda
3. Introdução à Criptografia
Termos e Definições
Princípios Básicos
Criptografia Antiga
Criptografia Simétrica
Criptografia Assimétrica
Hash
Esteganografia
Testes de Criptografia
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 3
4. TERMOS E DEFINIÇÕES E
PRINCÍPIOS BÁSICOS
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 5
5. DefiniçãoDefinição
Do vocabulário grego κρυπτογράφηση (kryptográfisi), tem o
significado de “Kryptós” oculto e “Graphein” escrita. Escrita
oculta, escrita secreta.
Criptografia é o estudo a aplicação de técnicas para
comunicação e armazenamento seguro de dados em
sistemas computacionais.
Ex.: Cifra de Cesar
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 6
6. Termos que serão utilizados ao decorrerTermos que serão utilizados ao decorrer
da aulada aula
Texto plano /puro: Dados não-encriptados.
Texto cifrado: Dados encriptados.
Chave (Key): Dados utilizados para encriptar um texto
plano, ou desencriptar um texto cifrado.
Algorítimo de criptografia: Método matemático
empregado para encriptar / desencriptar dados com o uso
das chaves de criptografia (também chamado de cifra).
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 7
7. Princípios BásicosPrincípios Básicos
Encriptação é a conversão de dados legíveis para um
formato ilegível (texto cifrado) por pessoas não-autorizadas,
usando uma chave e um algoritmo criptográfico.
Seu objetivo é proteger a privacidade ao armazenarmos
dados ou trocarmos informações com outras pessoas.
O receptor da mensagem encriptada pode decriptá-la e
ler seu conteúdo, no formato original (texto plano).
Desencriptação é o processo inverso da encriptação, ou
seja, a transformação de dados encriptados (ilegíveis) em
dados legíveis, usando uma chave e um algorítimo
criptográfico (cifra).
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 8
8. Princípios BásicosPrincípios Básicos
Criptoanalise é o processo de transformação de dados
cifrados (encriptados) em dados legíveis (decriptados) sem
que se conheça a chave de encriptação.
Trata-se de “quebrar” a encriptação dos dados para
obter acesso ao conteúdo das mensagens.
Porem com o intuito de descobrir falhas nos algoritmos
para torná-los mais seguros, validá-los ou descartá-
los.
Ex.: Criptografia WEP.
Os algorítimos devem conceder Autenticação, integridade
e Confidencialidade.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 9
9. Princípios BásicosPrincípios Básicos
A Autenticação assegura que a mensagem foi realmente
originada pelo remetente, e não por outra pessoa.
Integridade diz respeito ao conteúdo das informações
trocadas entre transmissor e receptor.
Deve-se garantir que o conteúdo da mensagem chegue
íntegro a seu destino, ou seja, que não seja alterado de
nenhuma forma no meio do caminho.
Confidencialidade significa que a informação não está
disponível para pessoas e processos que não tenham
autorização para acessá-las e utilizá-las.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 10
10. Princípios BásicosPrincípios Básicos
No caso das chaves (tanto simétrica, quanto Assimétrica), o
nível de segurança de uma criptografia é medido no número
de bits, ou seja, quanto mais bits forem usados, mais difícil
será quebrar a criptografia na força bruta.
Ex: Se tivermos uma criptografia de 10 bits, existirão
apenas 2¹º (ou 1024) chaves, porém, ao usarmos 64 bits, o
número de chaves possíveis subirá para aproximadamente
20 x 10^18 chaves, um número alto até mesmo para um
computador.
●
20.000.000.000.000.000.000
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 11
11. CRIPTOGRAFIA ANTIGA
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 12
12. Criptografia AntigaCriptografia Antiga
Além da cifra de César, outras tipos de criptografias eram
utilizadas antigamente (e ainda são usadas até os dias de
hoje) para se ocultar uma informação.
●
Cifra Polialfabética
●
Cifra de Chave única
●
Gerando números aleatórios
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 13
14. Mensagem
(Texto Plano)
Criptografia de chave PrivadaCriptografia de chave Privada
Este tipo de criptografia utiliza uma única chave.
O emissor utiliza essa chave para encriptar a mensagem, e
o receptor utiliza a mesma chave para decriptá-la (chave
compartilhada – shared key).
Por utilizar a mesma chave na encriptação e decriptação,
trata-se de uma técnica de Criptografia Simétrica.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 15
Mensagem
(Texto Plano)
Mensagem
(Texto Encriptado)
Chave
Privada
Chave
Privada
Emissor Receptor
15. Algoritmos mais conhecidos eAlgoritmos mais conhecidos e
“Desvantagem”“Desvantagem”
●
DES (56 bits, o que corresponde a cerca de 72 quadrilhões de
chaves diferentes)
●
3DES
●
Blowfish
●
RC (com chaves que vão de 8 à 1024 bits)
●
AES
●
OTP (One-Time-Pad)
●
A chave Simétrica apresenta alguns problemas graves, tais
como a necessidade da troca constante dessas chaves
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 16
17. Mensagem
(Texto Plano)
Criptografia de chave PúblicaCriptografia de chave Pública
Neste tipo de criptografia usamos duas chaves distintas, de modo
a obtermos comunicação segura através de canais de
comunicação inseguros.
Trata-se de uma técnica de Criptografia Assimétrica pelo fato de
usar um par de chaves diferentes.
Uma chave pública, e uma privada
Cada pessoa que irá utilizar este meio de criptografia possui uma
chave pública e uma chave privada.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 18
Mensagem
(Texto Plano)
Mensagem
(Texto Encriptado)
Chave
Privada
Chave
Pública
Emissor Receptor
18. Mensagem
(Texto Plano)
Criptografia de chave PúblicaCriptografia de chave Pública
A chave privada é secreta, e só o proprietário a conhece, ao
passo que a chave pública é compartilhada com todos que
participaram desta troca de informações.
Exemplo:
João quer se comunicar com Maria de forma segura. Então,
João encripta a mensagem com a chave pública de Maria, de
modo que a mensagem só pode ser aberta usando-se a
chave privada de Maria – que só ela possui
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 19
Mensagem
(Texto Plano)
Mensagem
(Texto Encriptado)
Chave
Privada
Chave
Pública
Emissor Receptor
19. Algoritmos mais conhecidos eAlgoritmos mais conhecidos e
“Desvantagem”“Desvantagem”
●
RSA (consiste na multiplicação de 2 números primos muito grandes
para a geração de um terceiro número. Para quebrar essa criptografia,
seria necessário a fatoração desse número para encontrar os 2
números primos que o geraram, porém, para isso é necessário um
poder muito alto de processamento, o que acaba inviabilizando a tarefa)
●
GPG
●
ElGamal
●
A utilização de algoritmos reversos para desencriptação de
mensagens acaba por elevar o tempo computacional dos
algoritmos de criptografia assimétrica, tornando inviável o seu
uso em uma comunicação intensa.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 20
20. HASH
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 21
21. Funções deFunções de HashHash
A técnica de Hash não utiliza uma chave como as técnicas
vistas anteriormente. Se utiliza um valor de hash de
tamanho fixo, o qual é computado sobre o texto plano.
Sua funcionalidade é voltada para verificar a integridade
dos dados a fim de garantir que não tenham sido
indevidamente alterados.
Verificações de senha podem usar funções de Hash
também.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 22
Esta aula
é muito
interessante
CB44 125A
F7D3 8EB3
Função de
Hash
Criptográfico
22. Funções deFunções de HashHash mais utilizadasmais utilizadas
●
MD5
●
SHA1
●
SHA2
●
Gerando hash md5 para textos (senhas)
echo -n ‘texto’ | md5sum
62059a74e9330e9dc2f537f712b8797c
●
Gerando hash md5 para arquivos
md5sum arquivo.txt
e87fbe80a6b7c57bd965145ebb4a6f96
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 23
24. Exploração de VulnerabilidadesExploração de Vulnerabilidades
O termo esteganografia deriva do grego, em que estegano
significa “esconder ou mascarar”, e grafia, “escrita”. Assim,
esse termo pode ser definido como a arte de esconder
informações, tornando-as ocultas.
Muitas técnicas esteganográficas, por exemplo, escondem
dados dentro de arquivos. Seu principal objetivo é que
esses dados não sejam percebidos por terceiros; ou seja, a
presença de mensagens escondidas dentro de arquivos é
simplesmente desconhecida.
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 25
25. Exploração de VulnerabilidadesExploração de Vulnerabilidades
A esteganografia utiliza dois arquivos: a mensagem e o
portador (Carrier)
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 26
Arquivo
normal
Arquivo com
mensagem oculta
Texto a ser
Escondido, ou
arquivo a ser escondido
Função
Esteganográfica
26. Ferramentas de EsteganografiaFerramentas de Esteganografia
●
OpenPuff
●
Steghide
●
Image Steganography
●
Crypture
●
rSteg
●
OpenStego
●
Hide & View
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 27
27. Aplicação StegHideAplicação StegHide
Aceitando formatos como JPEG, BMP, WAV e AU, o
StegHide prove serviços de steganografia para ambientes
Linux.
Para instalar:
apt-get install steghide
Sintaxe:
steghide AÇÃO ARGUMENTOS
Ex.: steghide info ARQUIVO
steghide embed -ef texto.txt -cf imagem.jpeg
steghide extract -sf imagem.jpeg
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 28
28. TESTES DE CRIPTOGRAFIA
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 29
29. GNUGP
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 30
30. GnuPGGnuPG
Permitindo Criptografia de Dados, Assinatura Digital,
Gerenciamento de chaves de criptografia este aplicativo
será utilizado para demonstrar uma criptografia simétrica
padrão CAST5.
sudo apt-get install gpgpgp
Com o GnuPG é possível criptografar qualquer arquivo.
Sintaxe:
gpg -c arquivo
gpg arquivo.gpg
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 31
31. RAINBOW TABLES
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 32
32. Ataques a hashesAtaques a hashes
Existem algumas técnicas de ataques a hashes, sendo as
mais comuns as seguintes:
●
Força Bruta
●
Dicionário
●
Colisão
●
Aniversário
●
Rainbow Tables
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 33
33. Rainbow TablesRainbow Tables
É uma espécie de tabela que contém milhões (ou bilhões)
de hashes pré-calculados e as strings (senhas) que os
originaram. Sendo otimizada para armazenar hashes e
senhas, permitindo pesquisar entradas de forma muito
veloz.
São usadas, basicamente, para quebrar hashes de senhas.
md5encryption.com → para criar um hash MD5
hashkiller.co.uk → Rainbow Table online
Faculdade de Tecnologia do Amapá - META
Curso de Tecnologia em Redes de Computadores - juan@meta.edu.br Página 34