2 Políticas, Modelos e Mecanismos de Segurança O papel do controle de acesso Matriz de controle de acesso Resultados fundamentais Políticas de segurança Modelos de segurança Mecanismos e implementação (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 1 O papel do controle de acesso (1) Controle de acesso (1) • É um mecanismo usado para limitar as ações que um usuário legítimo de um sistema de computação pode realizar, com base nas autorizações aplicáveis ao mesmo no momento do acesso – Uma autorização estabelece o que é permitido ou o que é proibido realizar, com a determinação dos direitos de acesso de um sujeito a um objeto computacional específico • Tem por objetivo prevenir que um sistema entre em um estado inseguro, de modo que ele continue a satisfazer uma política de segurança (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 2 O papel do controle de acesso (2) Controle de acesso (2) • A execução de uma ação não autorizada pode resultar na violação da confidencialidade ou da integridade das informações ou dos recursos – Embora menos central para preservar a disponibilidade, o controle de acesso claramente tem um importante papel: supõe-se que um atacante que consiga acesso não autorizado a um sistema tenha pouca dificuldade torná-lo indisponível – A conseqüência final é a violação da segurança (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 3 O papel do controle de acesso (3) Controle de acesso – entidades básicas • Usuário: refere-se às pessoas que interfaceiam com um sistema de computação • Sujeito: é uma entidade de um sistema de computação que pode iniciar requisições para realizar uma operação ou séries de operações sobre objetos – Usuários, processos e domínios podem ser sujeitos – Sujeitos atuam em benefício de um usuário num sistema de computação • Objeto: é uma entidade de sistema na qual uma operação pode ser iniciada – Recursos: objetos de interesse geral para os usuários – Sistema: objetos que servem ao sistema e que são necessários a sua operação • Operação: é um processo ativo invocado por um sujeito (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 4 O papel do controle de acesso (4) Monitor de referência (1) • Definição – Um monitor de referência é um conceito de controle de acesso de uma máquina virtual abstrata que intermedeia todas as tentativas de um sujeito acessar um objeto para executar uma operação (ANDERSON, 1972) O monitor consulta um banco de dados de autorização para decidir se o sujeito tem permissão para executar a operação no objeto ou não • Modelo abstrato das propriedades necessárias para se alcançar um mecanismo de controle de acesso com alta garantia • Usado como guia para o projeto, o desenvolvimento, a implementação e a análise subseqüente da segurança de sistemas de informação (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 5 O papel do controle de acesso (5) Monitor de referência (2) • Conceitualmente, o monitor de referência representa a porção de hardware e de software de um sistema operacional que é responsável pela imposição da política de segurança armazenada no banco de dados de autorização – O monitor de referência deve controlar o acesso ao banco de dados de autorização, segundo uma dada política de segurança • O monitor de referência não prescreve uma política em particular para ser imposta pelo sistema, nem determina uma implementação específica – Define um framework abstrato de garantia usado nas últimas 3 décadas no projeto, desenvolvimento e implementação de sistemas de informação altamente seguros – Também usado como base para avaliação do nível relativo de confiança que pode ser atribuído a um sistema de computação multiusuário (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 6 O papel do controle de acesso (6) Política de segurança Banco de Dados de Autorizações Administrador Controle de acesso Autenticação de Segurança Monitor de Referência Usuário Objetos Auditoria Gustavo Motta Esquema(C)do2005 monitor de referência ©2002-2004 Matt Bishop 7 O papel do controle de acesso (7) Monitor de referência (3) • Assume-se que o usuário tenha sido devidamente autenticado antes de se impor o controle de acesso através do monitor de referência – O efetividade do monitor de referência depende na identificação correta do usuário (integridade de origem - autenticação) e na correção das autorizações • Autenticação × autorização (1) – Autenticação: verifica a legitimidade da identidade de um usuário para o sistema de segurança – processo de determinar quem você é Login e senha estática, com política de senhas – forma mais comum e vulnerável, especialmente em ambientes distribuídos Login e senhas dinâmicas; identificação biométrica; certificados digitais e cartões inteligentes são exemplos de métodos autenticação mais robustos, baseados em pelos menos dois dos seguintes fatores (C) 2005 » Alguma coisa que o usuário sabeGustavo + algumaMotta coisa que ele tem + alguma coisa que ele é ©2002-2004 Matt Bishop 8 O papel do controle de acesso (8) Monitor de referência (4) • Autenticação × autorização (2) – Autorização: determina o que você pode fazer, usualmente através de uma decisão (sim ou não) para liberar (ou proibir) o acesso a um objeto para executar uma operação Autorização necessariamente depende de uma autenticação apropriada Se um sistema não está certo da identidade de um usuário, não existe uma forma válida de determinar se o usuário deve ter o acesso requerido • Auditoria – Registra cronologicamente dados sobre a atividade no sistema e os analisa para descobrir violações de segurança e diagnosticar suas causas – Atua como forte inibidor para abusos e também é importante nas investigações após incidentes – É inócua se não houver a aplicação rigorosa das sanções previstas em caso de abusos (C) 2005 Gustavo Motta 9 ©2002-2004 Matt Bishop O papel do controle de acesso (9) Monitor de referência (5) • Princípios fundamentais para implementação de monitores de referência – Completude: um sujeito somente pode referenciar um objeto pela invocação do monitor de referencia, que não pode ser desviado Requer que todos os objetos sejam protegidos, mesmo os menos óbvios » Dados transientes na memória – física ou virtual Prevenção de acesso a objetos através de métodos diferentes daqueles do monitor » E. g.. o quanto um SGBD previne que seus objetos sejam acessados diretamente por funções de e/s de um sistema operacional de forma não autorizada – Isolamento: as funções de intermediação do monitor devem ser à prova de violação A implementação de um núcleo de segurança é um meio de se buscar o isolamento – Verificabilidade: deve-se mostrar que o monitor está apropriadamente implementado Tornar o núcleo de segurança pequeno e simples o suficiente para facilitar a demonstração (C) 2005 Gustavo Motta 10 de sua correção – boas práticas de engenharia de software ©2002-2004 Matt Bishop O papel do controle de acesso (10) Monitor de referência (6) Hardware • Núcleo de segurança – Implementação mínima das características relevantes de segurança de um sistema – Função primitiva de sistema operacional responsável pela imposição de uma política de segurança Núcleo de segurança Sistema operacional – Oferece facilidades básicas para funções não relacionadas a segurança – Funciona na camada de maior privilégio do sistema operacional, isolando-a das demais camadas contra violações potenciais – O código do núcleo deve ser verificado, pois também está sujeito a erros e a programação maliciosa (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 11 O papel do controle de acesso (11) Monitor de referência (7) • Necessário, mas não suficiente – O monitor de referência não obriga um sistema a impor uma política específica Cabe às organizações definir qual é a política mais adequada para os seus propósitos » Políticas estritas, como as usadas em organizações militares, podem não ser adequadas para aplicação em organizações empresariais e vice versa – Princípios adicionais (FERRAIOLO et al., 2003) Flexibilidade: o sistema deve ser capaz de impor as políticas de controle de acesso da organização hospedeira Administração viável: o sistema deve ser intuitivo e fácil de gerenciar Escalabilidade: as funções de administração e de sistema devem ser escaláveis com o número de usuários e de objetos dispersos nas plataformas de computação de uma organização hospedeira Interoperabilidade: o sistema deve ser capaz de interoperar com outros sistemas de segurança (C) 2005 Gustavo Motta 12 ©2002-2004 Matt Bishop Referências (1) ANDERSON, J. Computer security technology planning study, volume II, Technical report ESD-TR-73–51, Electronic Systems Division, Air Force Systems Command, Hanscom Field, Bedford, MA 01730 (Outubro 1972). FERRAIOLO, D. F.; KUHN D. R. e CHANDRAMOULI R. Role-based access control. Artech House, 2003. 316 p. (C) 2005 Gustavo Motta ©2002-2004 Matt Bishop 13