sec 2018 anti-hacker: desafios de segurança e métodos de...• guardar as chaves de criptografia...
TRANSCRIPT
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 1
SEC 2018
Anti-hacker: Desafios de segurança e métodos de ataques
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 2
Palestrante
• Ricardo Seiti
• FAE Microchip – 3 anos
• FAE Atmel – 6 anos
• Membro do “Authentication FuctionGroup”
• Cobertura:
• Generalista – Região Sul
• AFG – América do Sul
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 3
Objetivos
Ao término desta apresentação você será capaz de:
• Explicar a importância do armazenamento de chaves
• Entender a fragilidade da implementação de segurança puramente por software
• Entender a importância de um gerador de numero randômico de qualidade
• Ver diferentes estratégias de cyber ataque e como se proteger utilizando o ATECCx08
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 4
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 5
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 6
Pilares da Criptografia - CIA
• Confidencialidade/ Privacidade• Garantir que somente os envolvidos podem ler/entender os dados
• Integridade• A mensagem enviada pelo remetente chegou ao destinatários em
alteração
• Autenticidade• Comunicação: Garantir que a mensagem recebida é realmente do
remetente
• Código fonte: Garantir que o firmware não foi alterado por estranhos
• Disponibilidade
• Garantir que hardware, software e dados estão disponíveis.
CIA: Confidencialidade, Integridade e Autenticidade
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 7
Pilares de Criptografia - CIA
• A função da CRIPTOGRAFIA é:
• Autenticar que a mensagem foi enviada pelo remetente que diz que enviou.
• Verificar a Integridade da mensagem
• Manter a mensagem confidencial, fora de alcance de hackers ou estranhos
• “Comunicação segura” é necessário Autenticar e verificar Integridade. • Confidencialidade é importante mas opcional
(essencial para dados sensíveis).
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 8
A CHAVE é tudo
• A efetividade do sistema não deve depender de que seu desenho se mantenha em segredo – Princípios de Kerckhoff
• a segurança dever ser estabelecida na chave e não no algoritmo.
• Os Hackers conhecem o algoritmo e nem por isso se torna vulnerável
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 9
Algoritmos Padronizados
• AES, SHA, RSA, ECC
• Vastamente estudados, analisados e atacados
• Muito bem documentados para um uso seguro
• Utilizados como moldes em protocolos industriais padronizados
• Interoperabilidade entre implementações
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 10
Quiz!
Eu devo inventar o meu próprio algoritmo de criptografia para aumentar a segurança do meu sistema?
• SIM, isso ajudará a diminuir as tentativas de ataque
• NÃO, esconder a chave de um algoritmo testado é mais eficiente
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 11
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 12
Problemas de Software
• Alguns são espetaculares• Heartbleed* é um bug da biblioteca OpenSSL que
permite que os hackers consigam ver a memoria de um servidor ou cliente, permitindo acesso a chave privada do sistema.
• Estima-se que 66% dos
Servidores tem este bug
• Heartbleed.com
*Codenomicon, Google - 2014
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 13
Problemas de Hardware
• Acontecimentos recentes
• Performance
• Gerenciamento de Energia
• Densidade de Memória
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 14
Problemas de Hardware
Performance – Meltdown, Spectre
Problema com chaveamento de
contexto em processadores que
executam tarefas fora de
ordenamento.
Se uma aplicação privilegiada está
executando ao mesmo tempo que
uma não privilegiada, o bit de
segurança está desabilitado,
expondo os dados sensíveis para a
aplicação não privilegiada
https://meltdownattack.com/
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 15
Problemas de Hardware
• Gerenciamento de Energia -Clkscrew
Nos processadores modernos, o poder de alterar
gerenciamento de energia é dado para a
aplicação afim de diminuir o consumo de
aplicações simples.
Esta capacidade gera a possibilidade de levar o
processador a operar nos extremos, causar
problemas de execução e expor chaves.
https://www.usenix.org/system/files/conference/usenixsecurity17/sec17-tang.pdf
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 16
Problemas de Hardware
• Densidade de Memória - Rowhammer
Com a diminuição dos espações entre os bits de
uma memória, a escrita insistente de uma célula
pode causar um distúrbio na célula adjacente
fazendo ela mudar o nível.
Se esse distúrbio for na região que protege a
memoria privilegiada, pode dar acesso a essa
região.
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 17
Todos em busca da Chave
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 18
POR QUE NÃO TIRAR A CHAVE DO SOFTWARE?
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 19
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 20
Companion Secure Element
• Solução Turnkey
• Simplicidade no desenvolvimento de Hardware
• I²C ou Single wire
• 2,0 a 5,5V, -45° a +85°C
• Pouco espaço em placa
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 21
Funcionalidades do ATECC508/608A
• Geração de Chaves
• Armazenamento seguro
• Gerador de número randômico
• Algoritmos de criptografia assimétrica
• Algoritmos de criptografia simétrica (AES – ECC608A)
• Algoritmos de hash
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 22
Armazenamento seguro
• Active shield
• Memória interna encriptada
• Operações matemáticas randomizadas
• Monitores de temperatura e tensão
• Contador incremental
• Sem comunicação JTAG
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 23
Mais rápido que Software
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 24
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 25
Por que o Número Randômico é Importante?
Porque o ataque ao numero randômico é
um dos principais ataques.
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 26
Nem tão randômicos
• Velocidade e tecla de um teclado
• Movimento do Mouse
• Variação de Clock
• Delay de ping
• Número serial
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 27
RNG: Expectativa de resultados
Normal distribution (expected)
Biased distribution (lower entropy)
*Petr Švenda, 2/2016
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 28
Padronizações
ATECC608A segue os 3 padrões de RNG
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 29
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 30
Analise de indireta
• Existem diversos modos de capturar e analisar dados indiretos para buscar chaves
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 31
Analise de Tempo de resposta
• O tempo de resposta de uma função pode ser diferente dependendo da entrada
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 32
Analise de consumo
• É possível determinar qual a operação do Microcontrolador analisando a dinâmica de consumo de corrente.
528 528.1 528.2 528.3 528.4 528.5 528.6 528.7 528.8 528.9 529-5
0
5
10
15
20
s
mA
Current traces for 5 different values of password byte 1
wrong inputs: min/max measured currents
wrong inputs: min/max difference to median
correct input: current
correct input: difference to median
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 33
Analise de Som
• É possível fazer a analise do ruído gerado pelos processadores durante operações críticas, podendo ser extraído as chaves criptográficas
Cell phone as microphone, 30 cm distance
Parabolic microphone, 4 Meter distance
RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis, Genkin et al., Dec. 2013
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 34
Analise eletromagnética
• É possível capturar informações secretas analisando as ondas eletromagnéticas geradas durante as operações criticas
ECDSA Key Extraction from Mobile Devices via Nonintrusive Physical Side Channels, Daniel Genkin et al.
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 35
Ataques invasivos
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 36
Ataques Invasivos
• Criar distúrbios no fuseque desabilita o JTAG para que ele fique disponível novamente e possa ler a flash
• Acessar diretamente a região de flash fazendo analise bit a bit buscando os dados sensíveis
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 37
Ataque de força Bruta
• Utilizando uma grande capacidade computacional, todas as tentativas são testadas até encontrar a chave
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 38
Tamanho de Chaves
https://www.keylength.com/en/4/
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 39
ATECC608A - Protegido
• ATECC608A implementado em hardware, sem MCU internamente.
• Sem assinatura de comandos
• Balanceamento e filtragem de consumo e tempo
• Temporização independente dos dados
• Adição de atrasos randômicos
• Mascarados e escondidos
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 40
Falha de Utilização
• Não adianta de nada um hardware seguro se a implementação não fazer uso de sua segurança
• Caso: Cartões de crédito com chip foram clonados devido a uma falha de implementação no Brasil em 2014
http://g1.globo.com/fantastico/noticia/2014/11/quadrilha-usa-bluetooth-para-clonar-cartoes-de-chip-e-movimenta-milhoes.html
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 41
Agenda
• Chaves criptográficas e seus usos
• Fragilidade de segurança por software
• Introdução ao ATECC608A
• Números Randômicos
• Métodos de Ataques
• Resumo
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 42
Resumo
• Guardar as chaves de criptografia é a chave para um sistema seguro
• Conhecer de diferentes métodos de ataque é importante para entender a vulnerabilidade e encontrar estratégia de como se proteger
• Ter um gerador de número randômico de alta qualidade é fundamental para segurança
• Como utilizar o ATECC508/608A para se proteger contra ataques
© 2018 Microchip Technology Incorporated. All Rights Reserved. Class Number + Prefix Slide 43
LEGAL NOTICESOFTWARE:
You may use Microchip software exclusively with Microchip products. Further, use of Microchip software is subject to the copyright notices, disclaimers, and any license terms accompanying such software, whether set forth at the install of each program or posted in a header or text file.
Notwithstanding the above, certain components of software offered by Microchip and 3rd parties may be covered by “open source” software licenses – which include licenses that require that the distributor make the software available in source code format. To the extent required by such open source software licenses, the terms of such license will govern.
NOTICE & DISCLAIMER:
These materials and accompanying information (including, for example, any software, and references to 3rd party companies and 3rd party websites) are for informational purposes only and provided “AS IS.” Microchip assumes no responsibility for statements made by 3rd party companies, or materials or information that such 3rd parties may provide.
MICROCHIP DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY DIRECT OR INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL, OR CONSEQUENTIAL LOSS, DAMAGE, COST, OR EXPENSE OF ANY KIND RELATED TO THESE MATERIALS OR ACCOMPANYING INFORMATION PROVIDED TO YOU BY MICROCHIP OR OTHER THIRD PARTIES, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE POSSIBLITY OF SUCHDAMAGES OR THE DAMAGES ARE FORESEEABLE. PLEASE BE AWARE THAT IMPLEMENTATION OF INTELLECTUAL PROPERTY PRESENTED HERE MAY REQUIRE A LICENSE FROM THIRD PARTIES.
TRADEMARKS:
The Microchip name and logo, the Microchip logo, AnyRate, AVR, AVR logo, AVR Freaks, BeaconThings, BitCloud, CryptoMemory, CryptoRF, dsPIC, FlashFlex, flexPWR, Heldo, JukeBlox, KEELOQ, KEELOQ logo, Kleer, LANCheck, LINK MD, maXStylus, maXTouch, MediaLB, megaAVR, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, Prochip Designer, QTouch, RightTouch, SAM-BA, SpyNIC, SST, SST Logo, SuperFlash, tinyAVR, UNI/O, and XMEGA are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
ClockWorks, The Embedded Control Solutions Company, EtherSynch, Hyper Speed Control, HyperLight Load, IntelliMOS, mTouch, Precision Edge, and Quiet-Wire are registered trademarks of Microchip Technology Incorporated in the U.S.A.
Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, BodyCom, chipKIT, chipKIT logo, CodeGuard, CryptoAuthentication, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching, DAM, ECAN, EtherGREEN, In-Circuit Serial Programming, ICSP, Inter-Chip Connectivity, JitterBlocker, KleerNet, KleerNet logo, Mindi, MiWi, motorBench, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PureSilicon, QMatrix, RightTouch logo, REAL ICE, Ripple Blocker, SAM-ICE, Serial Quad I/O, SMART-I.S., SQI, SuperSwitcher, SuperSwitcher II, Total Endurance, TSHARC, USBCheck, VariSense, ViewSpan, WiperLock, Wireless DNA, and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.
Silicon Storage Technology is a registered trademark of Microchip Technology Inc. in other countries.
GestIC is a registered trademark of Microchip Technology Germany II GmbH & Co. KG, a subsidiary of Microchip Technology Inc., in other countries.
All other trademarks mentioned herein are property of their respective companies.
© 2017, Microchip Technology Incorporated, All Rights Reserved.