Mobile Device Security Using Transient Authentication IEE TRANSACTIONS ON MOBILE COMPUTING, VOL.5, NO. 11, NOV 2006 Anthony J. Nicholson, Mark D. Corner and Brian D. Noble Apresentação por: Paulo Martins 65929 MERC Filipe Tavares 65898 MEIC
24
Embed
Mobile device security using transient authentication
Presentation based on the paper: Mobile Device Security Using Transient Authentication Anthony J. Nicholson, Mark D. Corner, and Brian D. Noble
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Mobile Device Security Using Transient Authentication
IEE TRANSACTIONS ON MOBILE COMPUTING, VOL.5, NO. 11, NOV 2006
Anthony J. Nicholson, Mark D. Corner and Brian D. Noble
Apresentação por:
Paulo Martins 65929 MERC
Filipe Tavares 65898 MEIC
Motivation
Goal
PowerPoint 2013PowerPoint 2013Proximity Security
Autor
Este trabalho foca-se em defender ataques que requerem proximidade ou posse - por exemplo, descobrir passwords ou credenciais em cache. Mesmo com um systema de cifra, um atacante pode failmente examinar o conteudo dos ficheiros no sistema se por exemplo este ainda tem a password em cache desde que o utilizador a inseriu a primeira vez.
Challenges
• Tie Capabilities to Users
•Do No Harm
•Secure and Restore on People Time
• Ensure Explicit Consent
Autor
O dispositivo apenas deve funcionar quando o utilizador está perto dele
Autor
Ser transparente ao utilizador
Autor
Quando o utilizador abandona o dispositivo este deve-se bloquear num tempo suficiente baixo que não possa ser acedido por ninguem
Autor
Quando o utilizador abandona o dispositivo este deve-se bloquear num tempo suficiente baixo que não possa ser acedido por ninguem
Autor
Se o range e demasiado pequeno os nossos mecanismos de segurança seriam invocados demasiadas vezes (por exemplo quando o utilizador vai a gaveta da secretaria). Se for muito longo, o utilizador pode estar a falar do outro lado da sala e um hackerzorro a mexer-lhe no telemovel.
Challenges & Requirements
• Tie Capabilities to Users
• Detect the presence of authorized users
• Do No Harm
• The system must not require the user’s interaction
• When the user arrives the device must restore itself before the user can even
notice it was blocked
Challenges & Requirements
• Secure and Restore on People Time
• When the user leaves the device must secure itself before the attacker would have
the change to physically extract any information
• Ensure Explicit Consent
• The system must not be vulnerable to physical-possession attacks
• Ensure that the user’s device is indeed talking to the user’s Token
• The token is not communication with any other devices without the user’s consent
Challenges & Requirements
•Other Requirements
• Must not require extra Hardware
Related Work
• Disable keyboard and Mouse:
• Vulnerable to physical-possession attacks - Ensure explicit consent
• Biometric information:
• Fingerprint - It is intrusive, since it has a high false negatives rate and restrain
users physically – Do No Harm
• Iris Scan – Requires the three cameras – Extra hardware
• Erasable Memory:
• Requires special hardware – Extra Hardware
Autor
Impressao digital, obriga o utilizador a estar la com o dedoIris Scan - se o user vai a gaveta bloqueia tudo
Autor
Fica tudo em memoria
Solution
• Token System
• Token Authentication
and Binding
•Securing State
•Key Management
Autor
- O token corre um authentication server process e o cliente um authentication client process.- Usa um station to station protocol para segurar o canal (baseado no diffie-hellman)- Estes 2 processos devem comunicar utilizando uma tecnologia de wireless de curto alance tipo bluetooth. Se o range e muito pequeno- O token envia uma mensagem ao device uma vez por segundo para saber que ele ainda esta perto (o nonce e para evitar ataques de reply)-
Autor
A nossa framework ira dizer ao cliente para cifrar todos dados do dispositivo. Qando o token retornar, o dispositivo deve ter acesso as chaves, no entanto, estas chaves nao podem existir em limpo no dispositivo enquanto user nao se encontra ao pe deste portanto, estas sao apagdas da cache. Quando o user volta, este envia-lhe as "permanent keys" e pede ao token para as decifrar, depois guarda-as em cache, evitando assim que esteja sempre a comunicar com o token (gasta bateria e o caraças)
Autor
Sabemos a partida que um token é mais seguro (fisicamente) que um laptop ou um pda porque são usados numa pessoa. Infelizmente o utilizador pode perder o token. Para que não se possa ler a KEK do token é-lhe associado um PIN Exigimos portanto que o utilizador se deve autenticar perante o token pelo menos uma vez por dia (por o pin/password), para garantir que ainda é este que tem o token.
Autor
Quando o dispositivo perde contacto com o token, deve garantir que os dados estao seguros. Este tipo de dados aparece num montao de sitios tipo discos e memorias cpus, etc...Controlando os fluxos para esses locais, cifrando os dados ou simplesemente fazendo flush ou overwrite da memoria podemos inibir este tipo de ataques.
Autor
Para os controlar temos que os identificar
Solution – Token Authentication and Binding
Solution – Securing State
• Persistent Storage
• Virtual Memory
• CPU and Chipset Registers and Caches
• Peripherals
• Displays
Autor
A mesma presistencia que guarda dados permanentemente no disco é que faz com que os segredo fiquem guardados.Apagar os dados tambem não e grande solução uma vez que já ha tecnicas bem conhecidas para recuperar dados de discos magneticos.A soluçao passa portanto em cifrar os dados como estao (sistema de ficheiros cifrado)
Autor
A memoria virtual consiste em espaços de endereços, alguns estao na memoria principal (RAM), alguns na partição de SWAP e alguns mapeados como ficheiros na memoria persistente.Cifra a ram in-place, as dirty pages como em principio sao poucas podem ser flushed para o disco. As da swamp
Autor
LALALALAL
Autor
Qualquer operaçao que envolva leituras e escritas da ram vai deixar rastos nos registos e caches do cpu. Quando o contexto muda (fica bloqueado) o OS limpa estes registos
Autor
TLB - translation lookaside buffer
Autor
Como os buffers dos perifericos sao de dificil acesso o que se faz e tentar segurar o canal
Autor
Rescreve-se o buffer todo, ou seja redesenha-se o ecra todo para branco
Implementation
Securing File Systems
• Using ZIAfs (Zero-Interaction File
System)
• Uses in per-directory keys
Physical Memory
• Encrypts main memory in-place - Kmem
Autor
A segurança de todos os sistemas de cifra existentesnormalmente esta ligada á frequencia com que os utilizadores poem a password. Quando a pass é metida, os ficheiros estao acessiveis ate ao proximo timeout, portanto temos que estar constatemente a por a password.Nos vamos usar o ZIA que cifra com base no nosso sistema de Transient Autenthication. Cada objecto no disco é cifrado usando uma chave simetrica e esta chave e guardada na mesma directoria que o ficheiro mas cifrado com a do token temos chaves per-directory.
Autor
A segurança de todos os sistemas de cifra existentesnormalmente esta ligada á frequencia com que os utilizadores poem a password. Quando a pass é metida, os ficheiros estao acessiveis ate ao proximo timeout, portanto temos que estar constatemente a por a password.Nos vamos usar o ZIA que cifra com base no nosso sistema de Transient Autenthication. Cada objecto no disco é cifrado usando uma chave simetrica e esta chave e guardada na mesma directoria que o ficheiro mas cifrado com a do token temos chaves per-directory.
Implementation
Swap Space
• Use encrypted file to store swap pages or interpose on swap I/O to perform whole-pare
encryption.
• Never encrypt the pages of critical processes.
• The system must ensure that the encryption keys are pinned in memory.
Implementation
• Video
• Lock Mouse and Keyboard
• Blank the frame buffer via Display Manager
• Application-Aware Mechanisms
• Identify some key processes, that may not be able to survive the hibernation process or
that handle sensitive data
Implementation – Example of Application
Evaluation
• IBM ThinkPad x24 Notebook – Linux kernel 2.4.20
• 1.113 GHz Intel Pentium III
• 256MB RAM
• 30GB IDE Disk Drive – 12ms average seek time
• Compaq iPAQ 3870 – Familiar Linux
• 206 MHz StromARM
• 64MB SDRAM
• 32MB Flash ROM
Evaluation – File System
Copy a source tree, traversing the tree and its contents and compiling it
Evaluation – Physical Memory
1. Freeze execution of all running processes
2. Encrypt in-place memory the physical memory pages of the frozen processes
3. Overwrite freed pages and other shared kernel buffers
• 200MB Memory allocated
• 10 Runs (On average 46,740
pages)
Evaluation – Physical Memory
Flush-to-Disk w/ Encryption vs Flush-to-Disk no Encryption vs Encrypt in-place