Departamento de Engenharia Informática
Sistemas Distribuídos 2009/10
Segurança em Sistemas Informáticos
Departamento de Engenharia Informática
Politicas de Segurança
• Quando é que se torna necessário uma política de
segurança ?
– Quando existe um Bem
– Num espaço partilhado
• Uma politica de segurança procura garantir a
protecção do Bem contra os ataques esperados
dentro de determinadas condicionantes.
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
A Informação como um Bem
• Integridade da Informação
• Confidencialidade/Privacidade da informação
– Ex.: Pessoal, Médica, relação com o Governo
• Identidade – não se efectuarem acções em nome de outro
• Anonimato – realizar acções que são autenticadas mas em
que não se deve conhecer a identidade (ex.: votações)
• Disponibilidade dos serviços que permitem aceder a
informação
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Política vs Mecanismo de Segurança
Políticas de segurança são asseguradas por uma utilização adequada de mecanismos de segurança
Departamento de Engenharia Informática
Ameaça típica
• A partilha está na base da
maioria das ameaças
– Espaços públicos
– Espaços físicos partilhados
– Utilização de infra-estruturas
comuns
– Partilha de recursos
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Politicas de Segurança nos Sistemas
Informáticos
• Os sistemas informáticos são sistemas onde a partilha de informação é um dos objectivos, o que complica seriamente a segurança.
• Sistemas Multiprogramadas– Partilha de ficheiros
– Partilha de memória
– Partilha de programas
– Partilha de periféricos
• Redes– Partilha dos meios físicos de comunicação
– Partilha dos mecanismos de comutação
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Ameaças em sistemas informáticos
• Fuga de informação (leakage)
– Aquisição de informação por agentes não autorizados
• Corrupção de informação (tampering)
– Alteração não autorizada de informação
• Vandalismo
– Interferência no funcionamento correcto do sistema
sem que tal traga benefícios ao atacante
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Quem pode ser o atacante?
• Os mesmos do mundo físico...
• Podemos classificá-los de acordo com os seguintes
características
– Objectivos
– Acesso ao sistemas
– Recursos
– Capacidade técnica
– Risco que estão dispostos a correr
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Métodos de ataque em sistemas centralizados
• Em sistemas informáticos centralizados
– Assumir a identidade de outro utilizador
– Executar operações que indirectamente ultrapassam os
mecanismos de protecção
– Infiltrar código em programas que sub-repticiamente
executam outras funções
– Canais encobertos de comunicação
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Métodos de ataque em sistemas distribuídos
Todos os anteriores mais…
• Escuta de mensagens (eavesdropping)
• Falsificação de identidades (masquerading)
• Interferência com o fluxo de mensagens
– Modificação de mensagens (tampering)
– Inserção de mensagens
– Remoção de mensagens
– Troca da ordem de mensagens
• Repetição de diálogos passados (replaying)
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Características dos sistemas informáticos que
facilitam os ataques
• Automação
– facilidade de reproduzir uma acção
milhões de vezes rapidamente.
• Acção à distância
– com a Internet a distância entre o atacante
e o Bem não é um limitador ao ataque
• Propagação rápida das técnicas.
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Do Modelo de Ameaças à Política de Segurança
• Antes de definirmos uma política de segurança,
devemos respondenr às seguintes questões:
– O que queremos proteger?
– Quais as ameaças potenciais?
– Quem as pode executar? Ou seja quem são os atacantes.
– Quais os ataques? Materialização das ameaças.
• Assim definimos um Modelo de Ameaças
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Do Modelo de Ameaças à Política de Segurança (2)
• A partir do modelo de ameaças, devemos decidir:
– Quais os procedimentos e mecanismos de protecção que podem impedir os ataques considerados?
– Qual o custo de implementação da política?
• Uma política de segurança apropriada:
– Tem um custo inferior ao do Bem
– Não restringe em demasia as acções dos agentes legítimos do sistema
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Do Modelo de Ameaças à Política de Segurança (3)
• Nenhum modelo de ameaças é garantidamente
completo
• Necessário monitorizar sistemas para detectar ataques
não previstos
– Registar acções efectuadas por cada utilizador do sistema
– Quando há suspeita de violação/intruso, registos podem
permitir perceber ameaça imprevista
– Política de segurança deve então ser actualizada
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Que pressupostos devemos assumir?
• Normalmente, o pior caso
(salvo raras excepções)
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Pressupostos no pior caso
1. As interfaces são públicas
• As interfaces dos processos do sistema distribuído são
conhecidas de todos
• Qualquer atacante pode enviar mensagens para
qualquer interface
2. As redes são inseguras
• Mensagens podem ser escutadas, modificadas,
repetidas, eliminadas, injectadas, etc
• Endereço do nó de origem pode ser falsificado
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Pressupostos no pior caso
3. Segredos são quebrados ao fim de algum tempo
• Chaves secretas, partilhadas entre dois interlocutores,
podem ser comprometidas e serem descobertas por
terceiros ao fim de algum tempo
• Probabilidade de chave comprometida aumenta com:
• Tempo desde que foi gerada
• Número de vezes que foi usada para cifrar informação
trocada na rede
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Pressupostos no pior caso
4. Os algoritmos e o código do programa são conhecidos pelo atacante
• Normalmente é irrealista manter algoritmos/código secreto
• Tornar os algoritmos e o código públicos permite que terceiros o validem e melhorem
5. Atacantes podem ter acesso a muitos/grandes recursos
• Poder computacional cada vez mais barato
• Redes permitem agregar muitos recursos a trabalhar para o ataque
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Pressupostos no pior caso
6. A base computacional de confiança (TCB) pode ter
defeitos
• Nos Sistemas Multiprogramados a TCB inclui:
• Isolamento dos espaços de endereçamento
• Restrição à execução em modo utilizador de instruções
privilegiadas (ex.: interrupções, operações de E/S);
• Utilização do núcleo exclusivamente através de funções do
sistema
• Algoritmos de criptografia
• Autenticação sob controlo dos sistemas
• Controlo de acessos
Departamento de Engenharia Informática
Base Computacional de Confiança
• Quanto “maior”, menos fiável
– Mais funcionalidades / código ⇒maior probabilidade de erros / vulnerabilidades
• Propostas recentes: dois núcleos– Um “trusted”: funcionalidades
básicas, serviços críticos
– Outro não é “trusted”, contémmaioria do código (ex: GUI)
– Ex.: Microsoft Palladium (agora chamado NGSCB)
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Políticas de Segurança nos Sistemas
Informáticos
• Isolamento dos Agentes
• Isolamento da Informação
• Partilha da Informação com Autorização
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Isolamento dos Agentes
• O sistema tem de autenticar os agentes de forma a atribuir-lhes uma identificação interna.
• O sistema garante que ao agente é atribuída uma máquina virtual em que ele executa as operações sobre os objectos em completo isolamento das máquinas virtuais atribuídas a outros agentes.
• O isolamento implica que não existe a possibilidade de ultrapassar os mecanismos de confinamento ou enviar informação através de canais encobertos
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Isolamento de agentes:
Autenticação dos agentes
• Mecanismos em sistemas centralizados:
– Login (username + password) � ID interno
– Estas operações são realizadas dentro do núcleo e portanto
assumidas como seguras
• Técnicas de subversão
– “Buracos” nas barreiras de protecção
– Personificação
• Exploração de erros operacionais
• Cavalos de Tróia
– Covert channels (comunicação subliminar)
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Isolamento da Informação
• Tornar ininteligível a informação para quem não conheça um segredo
– Criptografia
• A informação cifrada encontra-se isolada porque quem não conhece o segredo que a permite decifrar não a consegue distinguir de ruído
• A informação
– Pode ser enviada nas redes de comunicação
– Armazenada nos sistemas de informação
Sistemas Distribuídos 2009/10
Departamento de Engenharia Informática
Partilha da Informação com Autorização
• Agentes podem aceder a informação partilhada
• Acesso controlado por monitor de acessos, que
permite o acesso pedido apenas a quem tem
autorização
– Controlo de direitos de acesso
– Controlo de nível de informação
(veremos mais tarde no capítulo)
Sistemas Distribuídos 2009/10