Title: Intel Virtualization Technology
1Intel Virtualization Technology Intel Trusted
Execution Technology
- Diogo Menezes Ferrazani Mattos
- Professores Luís Henrique e Otto Carlos
- Disciplina Redes II
2Introdução
- Arquitetura IA-32 ? PC
- Conhecida
- Difundida
- Virtualização
- Divisão da máquina física em ambientes distintos
e isolados entre si - Início ? Mainframe
- Atualmente ? PC
3Introdução
- Problemas da arquitetura PC
- Virtualização
- Não atende os requisitos
- Perda de desempenho
- Paravirtualização
- Modificação do SO
- Segurança
- Ataques de softwares ? Roubo de informações
- Cada vez mais freqüente e mais sofisticados
- Keyloggers, spywares
4Introdução
- Solução
- Extensões da arquitetura
- Intel Virtualization Technology
- Melhorar o desempenho da virtualização
- Isolar máquinas virtuais
- Intel Trusted Execution Technology
- Combater ataques baseados em software
- Evitar o roubo de informações sensíveis
5Virtualização
- Conceitos Básicos
- Sistema operacional hospedeiro
- Sistema operacional visitante
- VMM (Virtual Machine Monitor) ou Hypervisor
6Virtualização
- Níveis de Privilégio
- Modelo 0/1/3
- Modelo 0/3/3
7Virtualização
- Desafios na arquitetura IA-32
- Compressão do espaço de memória
- Ring Aliasing e Ring Compression
- Acesso ao estado privilegiado sem gerar falta
- Impactos adversos nas chamadas de sistema dos SO
visitantes - Virtualização das interrupções
8Intel Virtualization Technology
- Modos de Operação
- VMX root
- VMX non-root
- Estrutura de Controle ? VMCS
- VM entry e VM exit
9Intel Virtualization Technology
10Intel Virtualization Technology
- Enfrentando os desafios da IA-32
- Compressão do espaço de memória
- Ring Aliasing e Ring Compression
- Acesso ao estado privilegiado sem gerar falta
- Impactos adversos nas chamadas de sistema dos SO
visitantes - Virtualização das interrupções
11Computação Confiável
- Extensão da arquitetura IA-32
- Proposta do TCG
- Hardware
- Identificador único
- Chave mestra
- TPM (Trusted Plataform Module)
- Implementação
- Intel Trusted Execution Technology
12Computação Confiável
- Principais conceitos
- Chave de Endosso
- Isolamento de Áreas de Memória e Execução Segura
- E/S Seguras
- Armazenamento Selado
- Atestação Remota
13Computação Confiável
- Mecanismos básicos de um TPM
- Unidade cripto-aritmética especializada
- Geração de chaves RSA de até 2048 bits
- Unidade de hardware para hash SHA-1
- Gerador de ruídos por hardware para a geração de
chaves - Processador interno
- Contador e medidor de tempo monolíticos e
protegidos - Memória não-volátil (EEPROM)
- Sensores e estruturas internas de segurança
14Computação Confiável
- Críticas
- Digital Rights Management
- Usuários incapazes de modificar o software
- Usuários não têm controle sobre os dados
- Usuários não conseguem se sobrepor
- Perda do anonimato
- Praticidade
- Interoperabilidade
15Intel Trusted Execution Technology
- Implementação da Intel para a Computação
Confiável - Iniciativa Safer Computing
- Extensão da Arquitetura IA-32
- Modificações
- Processador
- Chipset
- Teclado e Mouse
- Sistema Gráfico
- TPM
16Intel Trusted Execution Technology
17Intel Trusted Execution Technology
18Intel Trusted Execution Technology
19Intel Trusted Execution Technology
- Armazenamento Selado
- Storage Root Key (SRK) ? Par de Chaves
Pública/Privada - Criptografia Assimétrica
- Dados e lista de registradores PCR encriptados
- PCR ? Registrador do TPM que guarda as
informações de domínio - Arquivo criptografado é armazenado em um meio
persistente - Decriptografia ? só libera os dados se os valores
dos PCRs corresponderem
20Intel Trusted Execution Technology
- Atestação
- Agente Remoto ? Gera um valor aleatório
- TPM ? Cria um registro com o valor aleatório e os
valores dos PCRs - Registro assinado com a chave privada do TPM
- Envia Registro Credenciais Chave Pública
- Agente Remoto
- Verifica credenciais e assinatura
- Determina se é um TPM real
- Compara os valores dos PCRs com uma lista de
valores válidos
21Conclusão
- Tecnologias recentes
- Aplicação em ramos importantes da computação
- Alto potencial de sucesso
- Passos rumo à computação segura
- Segurança x Liberdade do usuário
- Visão ambiciosa
- TXT ? estar em todos os PC no futuro
22Perguntas e Respostas
23Perguntas e Respostas (1)
- Defina o que é virtualização, Monitor de Máquina
Virtual (VMM) e Máquina Virtual.
R Virtualização é a técnica que permite que em
uma mesma máquina física, sejam executados dois
ou mais ambientes distintos e completamente
isolados. Desta forma, em cada ambiente é
executado um sistema operacional que não tem
consciência de que está dividindo uma máquina
mesma física com outros sistemas
operacionais. Monitor de Máquina Virtual ou VMM é
uma camada de software, que tem por objetivo
arbitrar o acesso ao hardware subjacente a ela,
de modo que esses recursos possam ser
compartilhados pelos sistemas operacionais que
estão sobre essa camada. Máquina Virtual ou VM é
um conjunto de interfaces apresentadas pelo VMM
para o sistema operacional visitante, ou seja, o
sistema operacional que se encontra sobre o VMM.
24Perguntas e Respostas (2)
- Quais são os cinco principais conceitos da
computação confiável?
R - Chave de Endosso - Isolamento de áreas
de memória e Execução Segura - E/S Segura
- Armazenamento Selado - Atestação
remota
25Perguntas e Respostas (3)
- Como é feita a criptografia dos dados armazenados
na Intel TXT?
R A base da proteção da criptografia da TXT
reside na Storage Root Key (SRK), Chave Raiz de
Armazenagem, um par de chaves pública/privada. A
chave privada SRK nunca deixa o TPM e tudo que é
encriptado com a chave SRK pública, só pode ser
decriptado com a chave SRK privada
correspondente, um exemplo de criptografia
assimétrica. Como a chave privada nunca deixa o
TPM, somente esse TPM pode decriptar os dados
encriptados pela chave SRK pública
correspondente. O TPM provê uma operação de SEAL,
que permite que dados e uma lista de PCRs sejam
encriptados em um arquivo binário, usando a chave
de armazenagem do TPM. Esse arquivo criptografado
pode ser armazenado em qualquer lugar. Uma
operação correspondente de UNSEAL, decripta os
dados armazenados no arquivo binário, porém não
os expõe. Os dados só são expostos, quando os
valores dos PCRs armazenados estiverem de acordo
com os valores corrente dos PCRs.
26Perguntas e Respostas (4)
- Como é o esquema de privilégios da arquitetura
IA-32?
R O esquema de privilégios na arquitetura IA-32
é definido por 2 bits. Os níveis de privilégio
são chamados de rings. Os níveis de privilégio
são numerados de 0 a 3, nos quais o nível 0 é o
que apresenta maior privilégio e o nível 3 é o
menos privilegiado. Algumas instruções que
alteram o estado da CPU só podem ser executadas
por software que tenham o nível de privilégio
igual a 0.
27Perguntas e Respostas (5)
- Como a introdução dos modos VMX root e VMX
non-root interferem no esquema de privilégios da
arquitetura IA-32?
R A introdução desses modos de operação
interfere no esquema de privilégios da
arquitetura IA-32, na medida em que permite que
mais de um software assuma o nível de privilégio
0, através de uma troca de contexto, ou seja, os
níveis de privilégio são criados agora dentro do
contexto VMX root ou VMX non-root. O modo de
operação VMX non-root é dedicado para máquinas
virtuais, o que permite que os sistemas
operacionais visitantes sejam executados no nível
0 de privilégio. No entanto, como o modo VMX
non-root é desprivilegiado em relação ao modo VMX
root, ainda existem algumas instruções que podem
gerar a saída do modo non-root para o modo root,
para que essa instrução seja tratada pelo VMM,
que é executado no modo VMX root.
28Intel Virtualization Technology Intel Trusted
Execution Technology
- Diogo Menezes Ferrazani Mattos
- Professores Luís Henrique e Otto Carlos
- Disciplina Redes II