Download - Kernel Hypervisors

Transcript
Page 1: Kernel Hypervisors

Kernel Kernel HypervisorsHypervisors

SEGURANÇA A NÍVEL SEGURANÇA A NÍVEL DE APLICAÇÃODE APLICAÇÃO

Lawrence Lagerlöf

Page 2: Kernel Hypervisors

IntroduçãoIntrodução

COTSCOTS FRAMEWORKFRAMEWORK POLÍTICA DE SEGURANÇAPOLÍTICA DE SEGURANÇA

Page 3: Kernel Hypervisors

Módulos Carregáveis do Módulos Carregáveis do KERNELKERNEL

(Loadable Modules)(Loadable Modules) Fácil integraçãoFácil integração Atualização eficienteAtualização eficiente Carregamento diâmicoCarregamento diâmico

Page 4: Kernel Hypervisors

Loadable ModulesLoadable Modules

Page 5: Kernel Hypervisors

HypervisorsHypervisors

Um hypervisor é uma camada Um hypervisor é uma camada de software, normalmente de software, normalmente implementada em hardware, implementada em hardware, tendo como conjunto de tendo como conjunto de instruções as mesmas do instruções as mesmas do hardware em questão.hardware em questão.

Page 6: Kernel Hypervisors

Virtual MachinesVirtual Machines

Em hardware.Em hardware. Em software.Em software.

EmuladorEmulador KernelKernel

Page 7: Kernel Hypervisors

SegurançaSegurança

O sistema como um todo.O sistema como um todo. Controle de acesso das Controle de acesso das

aplicações.aplicações. User Space X Kernel SpaceUser Space X Kernel Space MonitoramentoMonitoramento Códigos maliciososCódigos maliciosos

Page 8: Kernel Hypervisors

Arquitetura do Kernel Arquitetura do Kernel HypervisorHypervisor

Master Kernel HypervisorMaster Kernel Hypervisor Client Kernel HypervisorsClient Kernel Hypervisors Client Hypervisor Client Hypervisor

manageament module.manageament module.

Page 9: Kernel Hypervisors

Componentes do SistemaComponentes do Sistema

Page 10: Kernel Hypervisors

Use CasesUse Cases

Replication HypervisorReplication Hypervisor Ligação com a aplicação antes Ligação com a aplicação antes

da aplicação ser carregadada aplicação ser carregada SOCKSSOCKS

Wrappers que usam a Wrappers que usam a funcionalidade de debug do funcionalidade de debug do kernel.kernel.

Page 11: Kernel Hypervisors

BenefíciosBenefícios

Segurança inquebrávelSegurança inquebrável Políticas se segurança podem Políticas se segurança podem

ser “empilhadas”.ser “empilhadas”. Não requer alteração do Não requer alteração do

código-fonte do kernel.código-fonte do kernel. FlexívelFlexível

Page 12: Kernel Hypervisors

Componentes do SistemaComponentes do Sistema

Master Hypervisor Master Hypervisor FrameworkFramework

Client Kernel HypervisorsClient Kernel Hypervisors Kernel Hypervisor Kernel Hypervisor

ManageamentManageament

Page 13: Kernel Hypervisors

Master Hypervisor Master Hypervisor FrameworkFramework

Um framework é baseado num Um framework é baseado num Master Kernel Hypervisor, que Master Kernel Hypervisor, que o trabalho é coordenar a o trabalho é coordenar a instalação e remoção dos instalação e remoção dos client kernel hypervisors.client kernel hypervisors.

Dispositivo /dev/hyperDispositivo /dev/hyper Atualizando a política de Atualizando a política de

segurança.segurança.

Page 14: Kernel Hypervisors

FrameworkFramework

Page 15: Kernel Hypervisors

Master Kernel Master Kernel Hypervisor(2)Hypervisor(2)

User space daemons.User space daemons. ReplicaçãoReplicação AuditoramentoAuditoramento

Monitoramento de chamadas Monitoramento de chamadas do sistema.do sistema.

Page 16: Kernel Hypervisors

MKH(3) - System CallsMKH(3) - System Calls

Cada system call tem o seu Cada system call tem o seu próprio wrapper que segue o próprio wrapper que segue o algorítmo:algorítmo: Para cada kernel hypervisor cliente Para cada kernel hypervisor cliente

monitorando a chamada, é iniciado monitorando a chamada, é iniciado um processamento pre-chamada.um processamento pre-chamada.

Executa o processamento padrão.Executa o processamento padrão. Para cada kernel hypervisor cliente Para cada kernel hypervisor cliente

monitoramendo essa chamada, é monitoramendo essa chamada, é iniciado um processamento pós-iniciado um processamento pós-chamada.chamada.

Page 17: Kernel Hypervisors

System Call ProcessingSystem Call Processing

Page 18: Kernel Hypervisors

Client Kernel Client Kernel HypervisorsHypervisors

Monitoramento de 1 ou mais Monitoramento de 1 ou mais aplicativos.aplicativos.

Reforço da segurança padrão Reforço da segurança padrão dos aplicativos.dos aplicativos.

Page 19: Kernel Hypervisors

CKH (2)CKH (2)

Exemplos:Exemplos: FirefoxFirefox

RegrasRegras <type> <identifier> <type> <identifier>

<permissions><permissions> <type> = arquivo, socket ou <type> = arquivo, socket ou

processo.processo. <identifier> = arquivo, dir, ip, pid<identifier> = arquivo, dir, ip, pid <permissions> = depende do tipo.<permissions> = depende do tipo.

Page 20: Kernel Hypervisors

CKH(3)CKH(3)

Permissão para o tipo Permissão para o tipo arquivo:arquivo: Pode ser Pode ser readread, , writewrite, , read/writeread/write

ou ou nonenone.. Performance do Performance do

monitoramento.monitoramento.

Page 21: Kernel Hypervisors

Kernel Hypervisor Kernel Hypervisor ManageamentManageament

Obter informação dos Obter informação dos clientes.clientes. Listar as regras atuais de Listar as regras atuais de

monitoramento.monitoramento. Reconfigurar.Reconfigurar.

Limpar as configurações e ler Limpar as configurações e ler uma nova, dinamicamente.uma nova, dinamicamente.

Mudar o nível de log.Mudar o nível de log.

Page 22: Kernel Hypervisors

Aplicações EspecíficasAplicações Específicas

Wrapping de navegadores Wrapping de navegadores web.web.

Wrapping de servidores web.Wrapping de servidores web. Wrapping de serviços e Wrapping de serviços e

proxys.proxys. Adicionar novos métodos de Adicionar novos métodos de

segurança ao pré-existentes.segurança ao pré-existentes.

Page 23: Kernel Hypervisors

ConclusãoConclusão


Top Related