Dispositivos de Segurança
Introdução à Segurança Ameaças a segurança, políticas e mecanismos Segurança está fortemente ligada a confiabilidade (disponibilidade, fidedignidade, segurança e capacidade de manutenção), e para confiarmos em sistemas de computação, ainda precisamos de: Confidencialidade: informações são reveladas apenas a entidades autorizadas; Integridade: alterações são realizados apenas por entidades autorizadas.
Introdução à Segurança Ameaças a segurança, políticas e mecanismos Necessário proteger contra ameaças a segurança: Interceptação Interrupção Modificação Invenção Para isso, é necessário definir: Políticas de segurança: definir quais ações as entidades têm permissão de executar e quais são proibidas; Mecanismos de segurança: mecanismos para impor as políticas de segurança
Introdução à Segurança Ameaças a segurança, políticas e mecanismos Mecanismos de segurança: Criptografia: transformação de dados em algo que atacantes não possam entender; Autenticação: verificação de identidade de usuário, cliente, servidor ou outra entidade; Autorização: após autenticação, verificar se possui permissão de executar a ação; Auditoria: rastrear quais clientes acessaram o quê e de que modo. Andrew S. Tanenbaum Maarten Van Steen
Introdução à Segurança Questões de Projeto Para fornecer serviços de segurança de modo a implementar uma vasta coleção de políticas de segurança, são discutidas várias questões, sendo abordadas: Foco de Controle; Mecanismos de Segurança em Camadas; Distribuição de Mecanismos de Segurança; Simplicidade.
Introdução à Segurança Questões de Projeto – Foco de Controle
Introdução à Segurança – Questões de Projeto Confiança x Segurança Ferrari P45: - É seguro de dirigir? - A empresa é confiável? - Compraria? Mastercard: - É seguro usá-lo em compras? - É confiável? - Usaria para comprar a Ferrari? Dick Vigarista é o vendedor! - É seguro comprar dele a Ferrari usando Master Card? - Ele é confiável?
Questões de Projeto Simplicidade O projeto de um sistema de computação seguro é considerado uma tarefa difícil. Se um projetista de sistemas puder usar alguns poucos mecanismos simples que sejam fáceis de entender e em cujo funcionamento seja possível confiar, melhor. Andrew S. Tanenbaum Maarten Van Steen
Protege contra três tipos de ataque: Criptografia Um remetente manda uma mensagem ao destinatário, sendo esta indecifrável a estranhos. Protege contra três tipos de ataque: Interceptação (Intrusos Passivos); Modificação de mensagens (Intrusos Ativos); Invenção de mensagens (Intrusos Ativos). Andrew S. Tanenbaum Maarten Van Steen
Introdução à Segurança Criptografia - Tipos Criptossistemas simétricos: a chave para cifrar e decifrar é compartilhada entre remetente e destinatário (mesma chave); Criptossistemas assimétricos: as chaves para cifrar e decifrar são diferentes, porém, juntas formam um par exclusivo.
Segurança Canais Seguros Um canal seguro protege remetentes e receptores contra: Interceptação: através da garantia de confidencialidade; Modificação de mensagens; e invenção de mensagens: por meio de protocolos para autenticação mútua e integridade de mensagem. Não protege necessariamente contra interrupção. Andrew S. Tanenbaum Maarten Van Steen
Segurança – Canais Seguros Autenticação Autenticar consiste em assegurar que quem diz estar enviando uma mensagem é realmente quem está enviando, mas só seria válida se houver garantias que a mensagem não foi modificada. Portanto, autenticação sempre deve vir acompanhada de integridade. Para garantir integridade das mensagens de dados que são trocadas depois da autenticação, a prática comum é usar criptografia de chave secreta por meio de chaves de sessão. O tempo de vida da chave é o tempo de vida da sessão. Andrew S. Tanenbaum Maarten Van Steen
Integridade: mensagens são protegidas contra modificações; Segurança – Canais Seguros Integridade e confidencialidade de mensagens Além da autenticação, é necessário fornecer garantias para integridade e confidencialidade de mensagens. Integridade: mensagens são protegidas contra modificações; Confidencialidade: Obtida através da criptografia, das formas descritas anteriormente. Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso Controle de acesso é a verificação de direitos de acesso por parte de um servidor sobre ações de um cliente; A autorização trata de conceder direitos de acesso ao cliente pelo servidor. Formas de implementação comuns envolvem firewalls que protejam as aplicações ou mesmo a rede inteira. Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso Questões gerais de controle de acesso Consiste em sujeitos que emitem uma requisição para acessar um objeto. Sujeitos são processos que agem em nome de usuários, mas também podem ser objetos que precisam dos serviços de outros objetos para executar seu próprio trabalho. A proteção é imposta por um monitor de referência. Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Matriz de controle de acesso Cada sujeito é representado por uma linha, cada objeto representado por uma coluna. A entrada M[s,o] da matriz M apresenta uma lista com as operações que o sujeito s pode executar no objeto o. Muitos usuários usam poucos objetos, gerando muitas entradas vazias. Solução por: Lista de controle de acesso (ACL); ou Lista de capacidades. Andrew S. Tanenbaum Maarten Van Steen
Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Domínios de Proteção Mesmo ACLs podem ser grandes. Possível otimizá-las com domínios de proteção, nos quais um conjunto de pares [objetos, direitos de acesso] servem como base para um monitor de referência verificar se a requisição tem permissão de ser executada. Pode ser feita de diversas formas: Construindo grupos de usuários; Diretamente analisado pelo monitor de referência; Facilitado por um certificado transportado pelo sujeito. Através de papéis a desempenhar Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Firewalls Quando se permite acesso de estranhos a recursos distribuídos, como enviar correio, descarregar arquivos, entre outros, torna-se necessário controlar o acesso externo a qualquer parte do sistema distribuído. Para isso é usado um monitor de referência conhecido como firewall. Um firewall desconecta qualquer parte de um sistema distribuído do mundo exterior. O firewall inspeciona todos os pacotes que entram e que saem, descartando pacotes que não possuem permissão de continuar. Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Firewalls Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Firewalls Existem, em essência, dois tipos de firewall: Gateway de filtragem de pacotes – funciona como um repassador e toma decisões sobre transmitir ou não um pacote de rede com base no endereço de fonte e de destino contido no cabeçalho do pacote. Gateway de nível de aplicação – inspeciona o conteúdo de uma mensagem que está chegando ou saindo. Filtro de SPAM; Filtro de Vírus; Fornecedor de conteúdo de bibliotecas digitais; Proxy Andrew S. Tanenbaum Maarten Van Steen
Controle de acesso – Questões gerais Recusa de Serviço Controle de acesso trata de garantir cuidadosamente que recursos sejam acessados por processos autorizados. Ataques contra Controle de acesso: DoS DDoS Não existe um método único para proteção contra ataques DDoS. Normalmente feito com auxílio de terceiros inocentes infectados por spyware, etc. Andrew S. Tanenbaum Maarten Van Steen
Gerenciamento de Segurança Gerenciamento de Chaves Como as chaves são obtidas? Não é trivial. Não adiantaria nada transferir chaves privadas em canais não seguros. Pode ser necessário recorrer a recursos fora de banda (cartões, mídia removível, telefone, etc.). Ainda é necessário revogar chaves Andrew S. Tanenbaum Maarten Van Steen
Gerenciamento de Segurança Distribuição de chaves Ao distribuir chaves, é necessário garantir: Confidencialidade e autenticação, para chaves privadas; Autenticação, para chaves públicas. Problema: Como garantir autenticação sem uso de canal seguro ou chaves anteriores? Através de certificados de chaves públicas (consiste em uma chave pública junto com uma seqüência de bits que identificará a entidade à qual essa chave está associada) assinados por uma autoridade de certificação. Andrew S. Tanenbaum Maarten Van Steen