SubVirt: Implementing malware
with virtual machines
Samuel T. King
Peter M. Chen
Yi-Min Wang
Chad Verbowski
Helen J. Wang
Jacob R. Lorch
University of
Michigan
Microsoft Research
Motivação
• Atacantes e sistemas de defesa lutam por controle
– Atacantes monitoram e perturbam a execução do sistema
• Para evitar a detecção por parte dos sistemas de defesa
– Sistemas de defesa detectam e removem o atacante
– Controle das camadas mais baixas
Atacantes
App1
App2
Sistema operacional
Hardware
Sistemas de defesa
Virtual-machine based rootkits (VMBRs)
• VMM roda abaixo do sistema operacional
– Efetivamente um novo nível de privilégio do processador
• Fundamentalmente mais controle
• Sem estados ou eventos visíveis
• Fácil desenvolver serviços maliciosos
Virtual-machine based rootkits (VMBRs)
App1
App2
Sistema
de
ataque
App1
Sistema alvo
Sistema alvo
VMM
Hardware
Hardware
Antes da infecção
App2
Após a infecção
Resumo do Trabalho
• Instalar o VMBR
• Manter o controle
• Rodar serviços maliciosos
• Defesa contra VMBR
Perspectiva
do atacante
Perspectiva
do sistema
de defesa
• Implementação de prova de conceito
Instalação do VMBR
• Assume que o atacante possui privilégio de kernel
– Exploit remoto tradicional
– Subornar empregado
– CD-Rom bootável malicioso
• Instalação durante o shutdown
– Poucos processos rodando
– Esforços para evitar detecção da atividade de instalação do
VMBR
Instalação do VMBR
• Modificação da sequência de boot
Master
Boot
boot
BIOS record sector
OS
Instalação do VMBR
• Modificação da sequência de boot
BIOS
VMBR
loads
Master
boot
Boot
BIOS record sector
OS
Manutenção do Controle
• VMBR perde controle em caso de reset do hardware
– Ilusão de reset para não perder o controle
– Reboot fácil, shutdown difícil
BIOS
VMBR
loads
Master
boot
Boot
BIOS record sector
OS
Manutenção do Controle
• ACPI BIOS usada para entrar em modo low power
– Desliga os discos
– Coloca monitor em modo low power
– Altera LED power
• Ilusão de desligamento, emulação de shutdown
• Controle sobre o botão power
• Funcionalidade do sistema não modificada
Serviços Maliciosos
• Vantagens de dois lados (alto nível e baixo nível)
– Prover implementação de baixo nível
– Ainda assim torna fácil a implementação de serviços
• Uso de um attack OS em separado
App
App1
Attack OS
App2
Target OS
VMM
Hardware
Serviços Malicisos
• Serviços com interação zero
– phishing web server
• Monitoramento passivo
– keystroke logger, file system scanner
• Modificação ativas da execução
– Evitar técnicas de detecção de VMM
• Todos fáceis de implementar
Defesa contra VMBRs
• Detecção de VMBRs
– Perturbações geradas
• Onde rodar o software de detecção
Perturbações geradas pelo VMBR
• Inerentes
– Tempo de execução
– Espaço ocupado pelo VMBR
Díficil de
esconder
• Hardware
– Diferenças entre dispositivos
– Processador não completamente virtualizado
• Software
– Ícone da VM
– Nomes dos dispositivos
Fácil de
esconder
Sistemas de defesa
(rodando acima do VMBR)
• Estado do atacante não é visível
– Só pode detectar efeitos adversos (ex. timing)
• VMBR pode manipular a execução
–
–
–
–
Relógio controlado pelo VMBR
Evitar a execução de serviços de defesa
Desligar a rede
Desabilitar notificação de intrusão
Sistemas de defesa
(rodando abaixo do VMBR)
• Mais controle, acesso direto aos recursos
– Pode detectar estados ou eventos do VMBR
• VMM segura e/ou hardware seguro
• Boot de uma mídia segura
– Desplugar máquina da energia elétrica
Prova de conceito
• VMware / Linux host
• Virtual PC / Windows XP host
• OS atacante é o sistema hospedeiro
• Imagem do malware de ~100MB (comprimida)
• ISA não completamente virtualizada
– Evitar degradação de desempenho
• Dispositivos emulados por software
– Sistema hospedeiro possui muitos drivers
Prova de Conceito
• Quatro serviços maliciosos implementados
–
–
–
–
Phishing web server
Keystroke logger + password parser
File system scanner
Contramedida a sistema de detecção
• Scripts de instalação and modules do kernel
• Emulação de ACPI shutdown
– Sleep states e botão power
Conclusão
• Ameaça realista
– Quantitativamente mais controle
– Ainda assim fácil de implementar o malware
– Prova de conceito pode ser detectada
– Melhorias de hardware podem tornar VMBR mais efetiva
• Defesa é possível
– Melhor maneira é controlar camadas mais baixas
Download

Rastreamento de Pacotes IP contra Ataques de Negação de Serviço