SEGURANÇA A NÍVEL DE APLICAÇÃO Kernel Hypervisors SEGURANÇA A NÍVEL DE APLICAÇÃO Lawrence Lagerlöf
Introdução COTS FRAMEWORK POLÍTICA DE SEGURANÇA
Módulos Carregáveis do KERNEL (Loadable Modules) Fácil integração Atualização eficiente Carregamento diâmico
Loadable Modules
Hypervisors Um hypervisor é uma camada de software, normalmente implementada em hardware, tendo como conjunto de instruções as mesmas do hardware em questão.
Virtual Machines Em hardware. Em software. Emulador Kernel
Segurança O sistema como um todo. Controle de acesso das aplicações. User Space X Kernel Space Monitoramento Códigos maliciosos
Arquitetura do Kernel Hypervisor Master Kernel Hypervisor Client Kernel Hypervisors Client Hypervisor manageament module.
Componentes do Sistema
Use Cases Replication Hypervisor Ligação com a aplicação antes da aplicação ser carregada SOCKS Wrappers que usam a funcionalidade de debug do kernel.
Benefícios Segurança inquebrável Políticas se segurança podem ser “empilhadas”. Não requer alteração do código-fonte do kernel. Flexível
Componentes do Sistema Master Hypervisor Framework Client Kernel Hypervisors Kernel Hypervisor Manageament
Master Hypervisor Framework Um framework é baseado num Master Kernel Hypervisor, que o trabalho é coordenar a instalação e remoção dos client kernel hypervisors. Dispositivo /dev/hyper Atualizando a política de segurança.
Framework
Master Kernel Hypervisor(2) User space daemons. Replicação Auditoramento Monitoramento de chamadas do sistema.
MKH(3) - System Calls Cada system call tem o seu próprio wrapper que segue o algorítmo: Para cada kernel hypervisor cliente monitorando a chamada, é iniciado um processamento pre-chamada. Executa o processamento padrão. Para cada kernel hypervisor cliente monitoramendo essa chamada, é iniciado um processamento pós-chamada.
System Call Processing
Client Kernel Hypervisors Monitoramento de 1 ou mais aplicativos. Reforço da segurança padrão dos aplicativos.
CKH (2) Exemplos: Regras Firefox <type> <identifier> <permissions> <type> = arquivo, socket ou processo. <identifier> = arquivo, dir, ip, pid <permissions> = depende do tipo.
CKH(3) Permissão para o tipo arquivo: Performance do monitoramento. Pode ser read, write, read/write ou none. Performance do monitoramento.
Kernel Hypervisor Manageament Obter informação dos clientes. Listar as regras atuais de monitoramento. Reconfigurar. Limpar as configurações e ler uma nova, dinamicamente. Mudar o nível de log.
Aplicações Específicas Wrapping de navegadores web. Wrapping de servidores web. Wrapping de serviços e proxys. Adicionar novos métodos de segurança ao pré-existentes.
Conclusão