A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

2 Políticas, Modelos e Mecanismos de Segurança

Apresentações semelhantes


Apresentação em tema: "2 Políticas, Modelos e Mecanismos de Segurança"— Transcrição da apresentação:

1 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

2 Políticas de segurança (1)
Introdução A natureza das políticas O que elas cobrem Linguagens para políticas A natureza dos mecanismos Tipos Seguro vs. preciso Subjacente a ambos Confiança (C) 2005 Gustavo Motta

3 Políticas de segurança (2)
Uma política particiona os estados de um sistema em Estados autorizados (seguros), que o sistema pode entrar Estados desautorizados (inseguros), que o sistema não pode entrar Sistema seguro É aquele que inicia num estado autorizado e não consegue entrar num estado desautorizado Uma violação de segurança ocorre quando o sistema entra num estado desautorizado t1 t2 t4 t5 t3 s1 s2 s3 s4 (C) 2005 Gustavo Motta

4 Políticas de segurança (3)
Confidencialidade Sejam X um conjunto de entidades e I alguma informação. I possui a propriedade de confidencialidade com relação a X se nenhum x  X pode obter informação sobre I Exemplo X é o conjunto de funcionários de empresas de seguro de vida I são informações sobre a saúde dos clientes (potenciais) I é confidencial com respeito a X se os funcionários de empresas de seguro de vida não consigam obter dados sobre a saúde dos clientes (C) 2005 Gustavo Motta

5 Políticas de segurança (4)
Integridade Sejam X um conjunto de entidades e I alguma informação ou recurso. I possui a propriedade de integridade com relação a X se todo x  X confia em I Tipos de integridade Integridade de dados – confiança em I e de que I não foi modificada no transporte ou no armazenamento Integridade de origem ou autenticação – I é uma informação sobre a origem de alguma coisa ou sobre uma identidade Integridade de garantia – I é um recurso que funciona de acordo com o especificado (C) 2005 Gustavo Motta

6 Políticas de segurança (5)
Disponibilidade Sejam X um conjunto de entidades e I um recurso. I possui a propriedade de disponibilidade com relação a X se todo x  X pode acessar I Tipos de disponibilidade Tradicional: x tem acesso ou não Qualidade de serviço: um nível prometido de qualidade de acesso é oferecido (C) 2005 Gustavo Motta

7 Políticas de segurança (6)
Uma política de segurança considera todos os aspectos relevantes Confidencialidade Identifica os estados nos quais a informação vaza para aqueles não autorizados a recebê-la Vazamento de direitos e transmissão ilícita de informação – information flow Integridade Identifica os meios autorizados para modificação da informação e as entidades autorizadas para tal Princípio da separação da responsabilidade Disponibilidade Descreve quais serviços devem ser ofertados, podendo apresentar parâmetros de qualidade de serviço (C) 2005 Gustavo Motta

8 Políticas de segurança (7)
Exemplo (1) A política de uma universidade proíbe a cópia de trabalhos, com ou sem permissão do autor Os trabalhos devem ser feitos nos computadores do curso Ana esqueceu de proteger seus arquivos contra a leitura por terceiros João conseguiu copiá-los para si Quem trapaceou a política? Ana, João ou ambos? (C) 2005 Gustavo Motta

9 Políticas de segurança (8)
Exemplo (2) João trapaceou A política proíbe a cópia de trabalhos, o que João fez O sistema entrou num estado não autorizado – João possui uma cópia do trabalho de Ana Mas a política não especifica explicitamente que “arquivos contendo trabalhos não podem ser copiados” Irrelevante, pois a política deve seguir a norma da universidade que proíbe um aluno realizar o trabalho como se fosse outro Ana não trapaceou Ana não protegeu seu trabalho contra leitura, mas a política não requeria isto Ela não violou a política Caso a política assim determinasse, aí sim, ela a teria violado (C) 2005 Gustavo Motta

10 Políticas de segurança (9)
Não confundir mecanismo com política O fato de João poder copiar os arquivos (mecanismo) não significa que esta ação é permitida (política) Mecanismo Um mecanismo de segurança é uma entidade ou procedimento que impõe alguma parte de uma política de segurança Controles de acesso Procedimentos que impedem o uso de CDs, disquetes e cartões de memória em computadores de uma empresa como forma de impedir a instalação de programas piratas Mecanismos de segurança podem ser controles operacionais Políticas quase sempre são implícitas Problemas quando definidas em termos de mecanismos (C) 2005 Gustavo Motta

11 Políticas de segurança (10)
Modelos de políticas Um modelo de segurança é um modelo que representa uma política específica ou um conjunto de políticas Diferencia uma política de sua descrição abstrata Abstrai detalhes relevantes para análise de características específicas comuns a classes de políticas Níveis de segurança em modelos de segurança multinível - modelo Bell-LaPadula Separação de responsabilidade no modelo Clark-Wilson Conflitos de interesses no modelo Chinese Wall (C) 2005 Gustavo Motta

12 Políticas de segurança (11)
Tipos de políticas de segurança Política de segurança militar (governamental) Visa proteger, primariamente, a confidencialidade Fator chave para privacidade Política de segurança comercial Visa proteger, primariamente, a integridade Política de segurança orientada a integridade de transação Política de confidencialidade Visa proteger apenas a confidencialidade Política de integridade Visa proteger apenas a integridade (C) 2005 Gustavo Motta

13 Políticas de segurança (12)
O papel da confiança (1) Teorias e mecanismos de segurança baseiam-se em certas suposições Quando se entende as suposições em que se baseiam as políticas, os mecanismos e os procedimentos de segurança, então tem-se um entendimento muito bom do quão efetivos são essas políticas, mecanismos e procedimentos Exemplo: instalação de um patch por um administrador Confia que o patch veio realmente do fabricante, não tendo sido adulterado Confia que o patch foi testado em profundidade Confia que o ambiente de teste no fabricante corresponde ao ambiente local Confia que o patch foi instalado corretamente (C) 2005 Gustavo Motta

14 Políticas de segurança (13)
O papel da confiança (2) Confiança em verificação formal (1) Fornece uma prova matemática formal de que para uma dada entrada i, um programa P produz uma saída o, como especificado Suponha um programa relativo a segurança S formalmente verificado para trabalhar com sistema operacional O Quais são as suposições? (C) 2005 Gustavo Motta

15 Políticas de segurança (14)
O papel da confiança (3) Confiança em verificação formal (2) Suposições A prova não possui erros Bugs nos programas assistentes de provas de teoremas As precondições valem no ambiente no qual S é usado S foi transformando num programa objeto S’, que segue as ações prescritas em S Compiladores e ferramentas auxiliares livres de bugs O hardware executa S’ como esperado Hardware bugs (Pentium f00f bug, por exemplo) Quaisquer políticas, mecanismos ou procedimentos de segurança baseiam-se em suposições, que, se incorretas, destroem a superestrutura na quais estão construídas Suposições não garantidas levam a conclusões erradas (C) 2005 Gustavo Motta

16 Políticas de segurança (15)
Tipos de controle de acesso Controle de acesso discricionário (CAD) Se um usuário individual pode configurar um mecanismo de controle de acesso para permitir ou proibir o acesso a um objeto, então tal mecanismo é um controle de acesso discricionário, também conhecido por controle de acesso baseado na identidade (CABI) Controle de acesso compulsório (CAC) Quando um mecanismo do sistema controla o acesso a um objeto e um usuário individual não pode alterar este acesso, então tal mecanismo é um controle de acesso compulsório, ocasionalmente chamado controle de acesso baseado em regras Controle de acesso controlado pelo originador (CACO) Um controle de acesso controlado pelo originador baseia o acesso no criador de um objeto (ou nas informações que ele contém) O objetivo é permitir ao originador o controle da disseminação da informação Owner como fiel depositário, sujeito às determinações do originador (C) 2005 Gustavo Motta

17 Políticas de segurança (16)
Linguagens para políticas (1) Usadas para representar uma política de segurança Alto nível Restrições da política expressas abstratamente Baixo nível Restrições da política expressas em termos de opções de programas, entradas ou características específicas da entidades de um sistema (C) 2005 Gustavo Motta

18 Políticas de segurança (17)
Linguagens para políticas (2) Linguagens de alto nível para políticas Restrições expressas independentemente do mecanismo de imposição Restrições atuam sobre entidades e ações num sistema Restrições expressas sem ambigüidades Requer uma linguagem precisa, usualmente, uma linguagem matemática, lógica ou similar a uma linguagem de programação (C) 2005 Gustavo Motta

19 Políticas de segurança (18)
Linguagens para políticas (3) Exemplo: linguagem de alto nível para segurança de um web browser (1) Objetivo Restringir as ações de programas Java baixados e executados sob controle do web browser Linguagem específica para programa Java Expressa restrições como condições limitando a invocação de entidades (C) 2005 Gustavo Motta

20 Políticas de segurança (19)
Linguagens para políticas (4) Exemplo: linguagem de alto nível para segurança de um web browser (2) Entidades: classes ou métodos Operações Instanciação: s cria uma instância da classe c: s –| c Invocação: s1 excuta objeto s2: s1 | s2 Restrições de acesso deny(s op x) when b Enquanto b é verdadeiro, o sujeito s não pode executar op em (sujeito ou classe) x; o s vazio denota todos os sujeitos (C) 2005 Gustavo Motta

21 Políticas de segurança (20)
Linguagens para políticas (5) Exemplo: linguagem de alto nível para segurança de um web browser (3) Exemplo de restrição: o programa baixado não pode acessar o arquivo de senhas num sistema Unix Classe e métodos de manipulação de arquivos do programa class File { public file(String name); public String getfilename(); public char read(); Restrição deny( |-> file.read) when (file.getfilename() == “/etc/passwd”) (C) 2005 Gustavo Motta

22 Políticas de segurança (21)
Linguagens para políticas (6) Exemplo: linguagem de alto nível para segurança de um web browser (4) Exemplo de restrição: máximo de 100 conexões de rede abertas Classe Socket define interface de rede O método Network.numconns fornece o numero de conexões de rede ativas Restrição deny( -| Socket) when (Network.numconns() >= 100) (C) 2005 Gustavo Motta

23 Políticas de segurança (22)
Linguagens para políticas (7) Linguagens de baixo nível para políticas Conjuntos de entradas ou argumentos para comandos Definir ou verificar restrições num sistema Baixo nível de abstrações Necessita de detalhes do sistema, comandos Exemplo: acesso a displays X11 controlado por listas xhost +groucho -chico Conexões do host groucho permitidas Conexões do host chico proibidas (C) 2005 Gustavo Motta

24 Políticas de segurança (23)
Linguagens para políticas (8) Exemplo: tripwire – assume uma política de constância num sistema de arquivos (1) Registra um estado inicial, depois acusa os arquivos que tiveram atributos modificados /usr/mab/tripwire +gimnpsu a Verifica todos os atributos, menos data do último acesso (“-a”) Um banco de dados mantém os valores anteriores dos atributos /usr/mab/tripwire/README / gtPvf .gtPvY .gtPvY 0 .ZD4cc0Wr8i21ZKaI..LUOr3 .0fwo5:hf4e4.8TAqd0V4ubv ? b3 1M4GX01xbGIX0oVuGo1h15z3 ?:Y9jfa04rdzM1q:eqt1APgHk ?.Eb9yo.2zkEh1XKovX1:d0wF0kfAvC ?1M4GX01xbGIX2947jdyrior38h15z3 0 Nome do arquivo, versão, máscara de bits, modo, número do inode, número de links, uid, gid, tamanho, datas de criação, última modificação, último acesso, checksums ... (C) 2005 Gustavo Motta

25 Políticas de segurança (24)
Linguagens para políticas (9) Exemplo: tripwire – assume uma política de constância num sistema de arquivos (2) Observações Não se espera que administradores editem o banco de dados para definir atributos apropriadamente Verificar a ocorrência de mudanças num sistema de arquivos com o tripwire é fácil Execute uma vez para criar o banco de dados e execute novamente para verificar Verificar a conformidade com uma política é mais difícil Necessita ou editar o arquivo do banco de dados, ou definir o sistema em conformidade com a política – então, executa-se o tripwire para construir o banco de dados (C) 2005 Gustavo Motta

26 Políticas de segurança (25)
Exemplo: política de segurança numa universidade (1) Política de alto nível – expressa em linguagem natural O nível de detalhamento depende do ambiente e da cultura das organizações Universidade têm políticas mais genéricas Bancos têm políticas mais detalhadas e explícitas Instituição Múltiplos campi, administradas centralmente Cada campus tem uma administração local, possuindo aspectos e necessidades únicas Política de uso autorizado Política de (C) 2005 Gustavo Motta

27 Políticas de segurança (25)
Exemplo: política de segurança numa universidade (2) Política de uso autorizado - genérica Aplicável para apenas um campus (Davis) Objetivos para computação no campus Intenções subjacentes às regras Enumera exemplos específicos de ações que são consideradas abusos Lista não exaustiva Mecanismos de imposição – procedimentos Advertências Proibição do acesso aos computadores Sanções disciplinares, incluindo a expulsão Escrita informalmente, com o objetivo de alcançar a comunidade de usuários (C) 2005 Gustavo Motta

28 Políticas de segurança (26)
Exemplo: política de numa universidade (1) Abrange todos os campus da UC Três partes Sumário Política completa Interpretação no campus (C) 2005 Gustavo Motta

29 Políticas de segurança (27)
Exemplo: política de numa universidade (2) Sumário Adverte que o não é privado Pode ser lido durante a administração normal do sistema Pode ser forjado, alterado e re-enviado Incomum, pois políticas em geral não alertam usuários sobre ameaças Em geral, orientam na prevenção de problemas, mas não definem as ameaças O que os usuários deveriam e o que eles não deveriam fazer Pense antes de enviar um Seja cortês e respeitoso com os outros Não interfira com o uso do pelos outros Permitido o uso pessoal, desde que a sobrecarga seja mínima A quem a política se aplica O problema é que a UC é quasi-governamental, tendo de obdecer a regras que uma empresa privada não está A missão educacional da universidade afeta a aplicação (C) 2005 Gustavo Motta

30 Políticas de segurança (28)
Exemplo: política de numa universidade (3) Política completa (1) Contexto Não se aplica aos laboratórios do Depto. de Energia da universidade Não se aplica a cópias impressas de Outras políticas da universidade se aplicam Serviços de e infra-estrutura são propriedades da universidade Todos que usam são obrigados a obedecer a lei e a política da universidade São garantidos os princípios de liberdade acadêmica e de expressão Acesso sem a permissão do usuário só é permitida com a anuência do vice-diretor ou do vice-reitor Caso inviável, deve-se pedir a autorização retroativamente (C) 2005 Gustavo Motta

31 Políticas de segurança (29)
Exemplo: política de numa universidade (4) Política completa (2) Uso do Anonimato permitido Exceção: violação da lei ou de outras políticas Não se pode interferir no uso do pelos outros Proibidos spam, letter bombs, vermes por , etc. Uso pessoal permitido com limitações Não pode interferir nos interesses da universidade Por ser um registro da universidade, pode ser divulgado a critério desta (C) 2005 Gustavo Motta

32 Políticas de segurança (30)
Exemplo: política de numa universidade (5) Política completa (3) Segurança do A universidade pode ler um Permitido em virtude de interesses legítimos da universidade Permitido para oferecer um serviço de robusto e confiável Arquivamento e retenção permitidos Cópias são mantidas num servidor (cópia de segurança, por exemplo) Implementação Adiciona requisitos e procedimentos específicos a um campus Exemplo: “uso incidental pessoal” não permitido se beneficia uma organização não universitária Procedimentos para monitoração, inspeção e revelação do conteúdo de s Backups (C) 2005 Gustavo Motta

33 Políticas de segurança (31)
Segurança e precisão (1) Pode-se conceber um procedimento para desenvolver um mecanismo que seja seguro e preciso? Considera-se apenas políticas de confidencialidade Obtém-se os mesmos resultados com políticas de integridade Considera-se um programa P tendo múltiplas entradas e uma única saída Seja p uma função p: I1  ...  In  R, então P é um programa com n entradas ik  Ik, 1 ≤ k ≤ n e com uma saída r  R Postulado da observação A saída de uma função p(i1, ..., in) incorpora toda informação disponível sobre i1, ..., in Os canais ocultos fazem parte da saída Exemplo: função de autenticação Entradas: nome, senha; saída: sucesso ou insucesso Caso o nome seja inválido, imprime imediatamente insucesso; senão acessa banco de senhas Problema: o tempo de resposta da saída insucesso pode determinar se um nome é válido Isso significa que o tempo de resposta é parte da saída da função (C) 2005 Gustavo Motta

34 Políticas de segurança (32)
Segurança e precisão (2) Mecanismo de proteção Seja p a função p: I1  ...  In  R. Um mecanismo de proteção m é uma função m: I1  ...  In  R  E para a qual, quando ik  Ik, 1 ≤ k ≤ n, uma das seguintes opções valem m(i1, ..., in) = p(i1, ..., in) ou m(i1, ..., in)  E. E é o conjunto de saídas de erro No exemplo anterior, E = { “Banco de dados senhas não especificado”, “Banco de dados de senhas bloqueado” } Toda entrada legal para m produz ou o mesmo valor para a mesma entrada em p, ou uma mensagem de erro O conjunto de valores de saída de p que é excluído das saídas de m é o conjunto de saídas que podem difundir informações confidenciais (C) 2005 Gustavo Motta

35 Políticas de segurança (33)
Segurança e precisão (3) Política de segurança (1) Uma política de confidencialidade para o programa p estabelece quais entradas podem ser reveladas Formalmente, para p: I1  ...  In  R, a política de confidencialidade é a função c: I1  ...  In  A, onde A  I1  ...  In A é o conjunto de entradas disponível para observação Seja a função m: I1  ...  In  R  E um mecanismo de segurança para p, então m é seguro se e somente se  m´: A  R  E tal que, para todo ik  Ik, 1 ≤ k ≤ n, m(i1, ..., in) = m´(c(i1, ..., in)) m retorna valores consistentes com a política de confidencialidade c (C) 2005 Gustavo Motta

36 Políticas de segurança (34)
Segurança e precisão (4) Política de segurança (2) Exemplos c(i1, ..., in) = C, uma constante Proíbe a observação de qualquer informação – a saída não varia com as entradas c(i1, ..., in) = (i1, ..., in), e m´ = m Permite a observação completa da informação c(i1, ..., in) = i1 Permite a observação de informação relativa a primeira entrada, mas nenhuma informação sobre as outras entradas (C) 2005 Gustavo Motta

37 Políticas de segurança (35)
Segurança e precisão (5) Precisão Uma política de segurança pode restringir além do necessário Precisão mede o quanto a restrição é além do necessário m1, m2 são mecanismos de proteção distintos para o programa p sob a política c m1 é tão preciso quanto m2 (m1 ≈ m2) se, para todas as entradas i1, …, in, m2(i1, …, in) = p(i1, …, in)  m1(i1, …, in) = p(i1, …, in) m1 é mais preciso que m2 (m1 ~ m2) se existe uma entrada (i1´, …, in´) tal que m1(i1´, …, in´) = p(i1´, …, in´) e m2(i1´, …, in´) ≠ p(i1´, …, in´) (C) 2005 Gustavo Motta

38 Políticas de segurança (36)
Segurança e precisão (6) Combinando mecanismos m1, m2 são mecanismos de proteção m3 = m1  m2 Para entradas nas quais m1 ou m2 retornam o mesmo valor em p, m3 também retorna; nos outros casos, m3 retorna o mesmo valor que m1 Teorema: se m1, m2 são seguros, então m3 também é seguro Em adição, m3 ≈ m1 e m3 ≈ m2 Seguem das definições de seguro, preciso e de m3 (C) 2005 Gustavo Motta

39 Políticas de segurança (37)
Segurança e precisão (7) Teorema da existência Para qualquer programa p e política de segurança c, existe um mecanismo preciso e seguro m* tal que, para todo mecanismo seguro m associado a p e c, m* ≈ m Mecanismo maximamente seguro Assegura segurança Minimiza o número de proibições para ações legítimas Ausência de um procedimento efetivo Não existe um procedimento efetivo para determinar um mecanismo maximamente preciso e seguro para qualquer política e programa (C) 2005 Gustavo Motta


Carregar ppt "2 Políticas, Modelos e Mecanismos de Segurança"

Apresentações semelhantes


Anúncios Google