segurança em sistemas operacionais -...

32

Upload: ngoanh

Post on 07-Nov-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Segurança em Sistemas Operacionais

Prof. M.Sc. Jéferson Campos Nobre

Universidade do Vale do Rio dos Sinos - UNISINOS

28 de Maio de 2014

Page 2: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Sumário

1 Segurança em Sistemas Operacionais

2 Sistemas de Deteção de Intrusão

Page 3: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Apresentação

Jéferson Campos Nobre

Mestre em Ciência da Computação (UFRGS), Doutorando emCiência da Computação (UFRGS)

Professor da Graduação Tecnológica em Segurança daInformação da Unisinos

Professor de cursos de Pós-Graduação em Segurança daInformação em outras universidades

Tópicos de pesquisa: Redes de Computadores e SistemasDistribuídos

http://www.inf.ufrgs.br/�jcnobre/

[email protected]

@jcnobre

Page 4: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Conceitos Iniciais

Programa que age como intermediário entre o usuário e ohardware de um computador

Objetivos de um sistema operacional

Executar programas do usuário e tornar a solução de problemasmais fácilTornar os sistemas computacionais convenientes ao usoUtilizar o hardware do computador de maneira e�ciente

Page 5: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Conceitos Iniciais

Alocador de recursos

Gerencia todos os recursos

Decide entre requisições con�itantes para uso e�ciente e justodos recursos

Programa de controle

Controla execução

Page 6: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Serviços de Sistemas Operacionais

Gerenciamento de Processos

Gerenciamento de Memória

Gerenciamento de Entrada e Saída

Escalonamento de CPU

Tratamento de Interrupções

Gerenciamento de Armazenamento

Gerenciamento de Inicialização

Interface com o usuário

Page 7: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Segurança e Proteção em Sistemas Operacionais

Segurança

Defesa do sistema contra ataques internos e externos

Proteção

Mecanismos utilizados para controlar acesso de processos ouusuários aos recursos de�nidos pelo sistema operacional

Page 8: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Autenticação, Autorização, Controle de Acesso e Auditoria

4 A's

Autenticação: quem o usuário é

Autorização: direitos de acesso e privilégios de usuários

Controle de acesso (access control): meios de acesso

Auditoria: relatórios e controles

Page 9: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Mecanismos de Segurança Típicos de SOs

Figure : Stallings 2003

Page 10: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Sistema de Detecção de IntrusãoIntrusion Detection System - IDS

O que é uma intrusão?

"Evento no qual um atacante tenta ganhar acesso ou di�cultara operação normal de um sistema de informação"

Exemplos

Intrusões e tentativas mal-sucedidasAtaques por usuários legítimos (e.g., uso não-legítimo deprivilégios de root)Acessos não-autorizados a dados e recursosTrojan horsesVirusesWormsAtaques de Negação de Serviço (Denial of Service - DoS)

Page 11: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Estágios de Intrusões

A maioria das intrusões envolve dos seguintes 5 passos:

Reconhecimento inicial

Intruso descobre a maior quantidade possível de informaçõessobre o alvoE.g., faixa de endereços IP, nomes das estações, etc

Scanning

Intruso usa técnicas mais invasivas para sondar por informaçãoE.g., port scanning da rede do alvo para procurar por estaçõesespecí�cas e portas abertas

Ganho de acesso

Intruso realiza o que normalmente é considerado um crimeatravés da exploração de possíveis vulnerabilidades naestação-alvo e ganha acesso ao sistema

Page 12: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Estágios de Intrusões

Manutenção do acesso e encobrimento de pistas

Intruso instala um conjunto de ferramentas que facilitam seuacesso e removem evidências do ataqueE.g., rootkits

Exploit

Intruso tira proveito de sua posição para realizar algo do seuinteresseE.g., roubar dados con�denciais, modi�car ("pichar") páginas,atacar outros sites, etc

Page 13: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Abordagens Anti-Intrusão

Prevenção de intrusão

Atividades que evitam intrusões ou dmininuem suas chances desucessoE.g., empregar ferramentas de segurança, utilizar boas práticas

Detecção de intrusão

Atividades que detectam intrusões (diferenciam da operaçãonormal)E.g., alertar administradores se alguém tenta acessar oumodi�car arquivos de con�guração de um servidor

Page 14: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Abordagens Anti-Intrusão

De�exão da intrusão

Atividades que procuram fazer o intruso acreditar que tevesucesso, mas na realidade ele está acessando um ambienteespecialmente controladoHoneypots e honeynets

Resposta à intrusão (contramedidas)

Atividades que procuram limitar a perda geral de um intrusãodetectada e retornar o sistema à sua operação normal ASAPSession snipping → di�cultam a comunicação entre o atacantee o alvot (e.g., forjando pacotes RST)Post-attack cleanup → sondar os arquivos colocados nosistema durante o ataque e os apagando

Page 15: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Terminologia da Detecção de Intrusão

Ataque � evento malicioso que faz causa uma detecção deintrusão

Ataque real ou exercício promovido pela equipe de segurançapara testar mecanismos de segurança

Falso Positivo � falha que ocorre quando um evento normal éclassi�cado como ataque

False Negativo � falha que ocorre quando um ataque éclassi�cado como evento normal

Ruído � eventos que são corretos mas que não impõemgrandes riscos ao sistema de informações

Alerta ou alarme � indicação que o sistem foi atacado

Page 16: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Sistema de Detecção de IntrusãoO que deve ser detectado?

Figure 18.1 Profiles of Behavior of Intruders and Authorized Users

overlap in observedor expected behavior

profile ofintruder behavior

profile ofauthorized user

behavior

Measurable behaviorparameter

average behaviorof intruder

average behaviorof authorized user

Probabilitydensity function

Figure : Stallings 2003

Page 17: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Alvos para IDS

Baseado em Host (HIDS)

Monitora atividade em um único host

Vantagem: melhor visibilidade no comportamento deaplicações executadas no host

Baseado em Rede (NIDS)

Monitora tráfego de rede no segmento

Vantagem: apenas um NIDS pode proteger muitos hosts eprocurar por problemas globais

Page 18: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Nível de Monitoramento em um HIDS

Quais tipos de eventos devem ser monitorados?

System calls

Linha de comando

Dados de rede

Processos

Acesso a recursos

Page 19: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Nível de Monitoramento em um HIDS

Exemplo

Autenticação sem sucesso em aplicações que utilizamcredenciais de rede

IDS informa ao administrador de sistema que existe um usuáriotentando utilizar uma aplicação que ele não tem permissão

Page 20: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Técnicas HIDS

Detecção por assinatura

Usa �assinaturas� do ataque

Precisa de um modelo do ataque)

Sequencias de system calls, padrões de tráfego de rede, etc

Necessário saber com antecedência o que o atacante fará(como?)

Pode detectar apenas ataques conhecidos

Detecção por anomalia

Usando um modelo do comportamento normal do sistema,tenta detectar desvios e anormalidades

E.g., gera um alarme quando eventos estatiscamente rarosacontecem

Pode detectar atques desconhecidos

Page 21: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Assinaturas

Conjunto de regras de�nindo um padrão de comportamentoque deve ser associado a um determinado ataque

Exemplo: bu�er over�ow

Argumento muito longo para uma função string

Assinaturas de ataques são geralmente muito especí�cas epodem não reconhecer variantes dos ataques

Page 22: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Assinaturas

Derivando Assinaturas

Usa características não-variáveis conhecidas dos ataques

Corpo de virus e worms, número de porta de aplicações comexploits conhecidosDifícil de tratar mutações (virus polimór�cos)

Desa�o: extração rápida e automática de assinaturas de novosataques

Honeypots são úteis para essa extração

Page 23: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Assinaturas

Modelo �Bag-O'Calls�

Determina o conjunto S de todas system calls que umaaplicação pode potencialmente fazer

Não utiliza informação sobre a ordem relativa

Execução → veri�ca se cada chamada pertence ao conjunto

Problemas:

falsos negativos - atacante pode usar qualquer chamada de SS muito grande para aplicações grandes

Page 24: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Assinaturas

Modelo Monitoramente em tempo de execução

Abordagem → executar uma cópia da aplicação

Replicação é difícil, não-determinismo no código

Geração de números aleatórios, agendamento de processos,interação com o ambiente

Escravo é exposto aos mesmos riscos que o mestre

Falhas de segurança no mestre também estão no escravo

Virtualização facilita essa abordagem

Simular o �uxo de controle da aplicação monitorada

Page 25: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Anomalia

Anomalia

De�ne um per�l - comportamento �normal�

Melhores resultados para sistemas pequenos e bem de�nidos(programa simples em relação a um OS multiusuário)

Per�s podem ser estatísticos

Criados manualmente (difícil)Usando técnicas de IA, data mining, etc

Risco: atacante pode �treinar� o IDS para aceitar sua atividadecomo normal

Port scan diário de baixo volume pode treinar o IDS a aceitarport scans

Page 26: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Anomalia

Per�l

Atividade de Login e sessão

Frequência de login e localização, last login, falhas de senha,tempo da sessão, CPU, I/O

Execução de comandos e programas

Frequência de execução, veri�cação de exaustão, execuçõesnegadas

Atividade de acesso a arquivos

Frequência de leitura/escrita/criação/destruição, registrolidos/escritos, tentativas negadas, exaustão de recursos

Page 27: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Detecção de Intrusão Baseada em Anomalia

Computa estatísticas de certas atividades do sistema

Gera um alerta se estatística está fora de uma faixa

Exemplo: Atividades diárias de um usuário

Fração de horas utilizadas para leitura de emailRelata anomalia se o veri�cado está fora da norma

Page 28: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Técnicas HIDS

Coleta de Dados de Auditoria

Mecanismo para coletar informação relacionada com aatividade de usuários e aplicações

Para ser útil, mecanimos não podem ser �tamponáveis� ou�bypassaveis�

Dados de auditoria não são desenvolvidos para detecção deintrusão

Registros produzidos contem informações irrelevantes ealgumas informações úteis não estão presentes

Log-based IDS

Page 29: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Técnicas HIDS

Baseada em especi�cação

Modelos a priori, sem usar informações dinamicas

Escritos manualmente or desenvolvidos através de análiseestática do código

Exemplos:

Ambientes restrito (sandbox) para processos: todas as systemcalls são interceptadas e veri�cadas frente a uma especi�caçãoSoftware wrappers: nas system calls, wrappers são chamadospara veri�car se a chamada e seus argumentos são permitidosGrafo de chamada: utilizado para caracterizar a sequenciaesperada de system calls

Desvantagens � difícil de implementar para aplicações ecenários realistas

Page 30: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Sistema de Detecção de IntrusãoDistribuição

Figure : Stallings 2003

Page 31: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Implementações HIDS

OSSEC

Verisys File Integrity Monitoring System

Tripwire

Samhain

Osiris

Advanced Intrusion Detection Environment (AIDE)

IBM Proventia Desktop Endpoint Security

Chec kpoint Integrity

Symantec Endpoint Protection

McAfee Host Intrusion Prevention (desktop/server)

Page 32: Segurança em Sistemas Operacionais - professor.unisinos.brprofessor.unisinos.br/barbosa/SO/sso-palestra-20140528.pdf · Segurança em Sistemas Operacionais Sistemas de Deteção

Segurança em Sistemas OperacionaisSistemas de Deteção de Intrusão

Bibliogra�a

Wagner and Dean (2001) "Intrusion Detection via StaticAnalysis". In: Proceedings of the IEEE Symposium onSecurity and Privacy. P.156�168

Feng et al. (2004) "Formalizing Sensitivity in Static Analysisfor Intrusion Detection" In: Proceedings of the IEEESymposium on Security and Privacy. P.194�208

Debar et al. (1999) "Towards a taxonomy ofintrusion-detection systems. Computer Networks. V.31, N.8,P.805�822, Elsevier