• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Seguranca Cap09 Tanenbaum
 

Seguranca Cap09 Tanenbaum

on

  • 9,534 views

Slides de uma apresentação do assunto de Segurança do capítulo 9 do livro de Sistemas Operacionais Modernos de Tanenbaum, com alguns tópicos adicionais.

Slides de uma apresentação do assunto de Segurança do capítulo 9 do livro de Sistemas Operacionais Modernos de Tanenbaum, com alguns tópicos adicionais.

Statistics

Views

Total Views
9,534
Views on SlideShare
9,514
Embed Views
20

Actions

Likes
4
Downloads
412
Comments
0

1 Embed 20

http://www.slideshare.net 20

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Seguranca Cap09 Tanenbaum Seguranca Cap09 Tanenbaum Presentation Transcript

    • Capítulo 9 Segurança Adriana Oliveira Diego Pizzol
    • Segurança 1. O ambiente de segurança 2. Criptografia básica 3. Autenticação de usuário 4. Ataques de dentro do sistema 5. Ataques de fora do sistema 6. Mecanismos de proteção 7. Sistemas confiáveis
    • 1. O ambiente de segurança
    • O Ambiente de Segurança (1)
      • E a privacidade?
      Objetivo geral dos sistemas computacionais
    • O Ambiente de Segurança (2) Invasores
      • Categorias comuns:
        • Curiosidades casuais de usuários leigos
        • Espionagem por pessoas internas
        • Tentativas determinadas para ganhar dinheiro
        • Espionagem militar ou comercial
    • O Ambiente de Segurança (3) Perda Acidental de Dados
      • Causas comuns:
      • Atos de Deus
        • incêndios, enchentes, guerras
      • Erros de hardware ou software
        • defeitos na CPU, discos ruins, erros de programas
      • Erros humanos
        • entrada incorreta de dados, montagem errada da fita
    • 2. Criptografia básica
    • Criptografia Básica (1)
      • Substituição monoalfabética
        • cada letra é substituída por letra diferente
      • Dada a chave criptográfica,
        • fácil achar a chave de decriptação
      • Criptografia de chave secreta ou criptografia de chave simétrica
      Criptografia Básica (2) Criptografia por Chave Secreta
    • Criptografia Básica (3) Criptografia por Chave Pública
    • Criptografia Básica (4) Assinaturas Digitais
    • 3. Autenticação de usuário
    • Autenticação de Usuário (1)
      • A maioria dos métodos de autenticação baseia-se em:
      • Alguma coisa que o usuário sabe
      • Alguma coisa que o usuário tem
      • Alguma coisa que o usuário é
      • Hacker: nome honroso dado aos grandes programadores.
      • Cracker: pessoa que tenta se infiltrar sem autorização em sistemas de computadores.
    • Autenticação de Usuário (2) Autenticação Usando Senhas (1)
      • Como um cracker invadiu o computador do LBL
        • um lab de pesquisa do Dep. de Energia dos EUA
      Autenticação de Usuário (3) Autenticação Usando Senhas (2)
      • O uso do sal para atrapalhar a pré-computação de senhas criptografadas
      Autenticação de Usuário (4) Segurança por senhas do Unix
    • Autenticação de Usuário (5) Autenticação Usando um Objeto Físico
      • Cartões de plástico
        • cartões de faixa magnética (140 bytes);
        • cartões com chip: cartões com valores armazenados (1Kb), cartões inteligentes (CPU).
    • Autenticação de Usuário (6) Autenticação Usando Biométrica
      • Um dispositivo para medir o comprimento do dedo
    • Autenticação de Usuário (7) Medidas de Defesa
      • Limitação do horário de acesso ao sistema
      • Chamada automática de volta para um número pré-especificado
      • Número limitado de tentativa de acessos
      • Uma base de dados de todos os acessos ao sistema
      • Nome e senha simples como isca
        • pessoal de segurança é notificado quando o intruso “morde a isca”
    • 4. Ataques de dentro do sistema
    • Ataques de dentro do Sistema (1) Segurança de Sistemas Operacionais Cavalos de Tróia
      • Programa livre disponibilizado para usuários inocentes
        • contém na verdade código destrutivo
      • Coloca versão adulterada de um programa utilitário no computador da vítima
        • leva o usuário a executar aquele programa
    • Ataques de dentro do Sistema (2) Conexão Impostora (Spoofing)
      • (a) Tela de conexão verdadeira
      • (b) Tela de conexão impostora
    • Ataques de dentro do Sistema (3) Bombas Lógicas
      • Programador da empresa escreve programa
        • com potencial para causar danos (bomba lógica)
        • OK desde que ele/ela alimente o programa diariamente com uma senha
        • se programador é despedido, programa não é alimentado com senha, bomba explode
    • Ataques de dentro do Sistema (4) Alçapões
      • (a) Código normal
      • (b) Código com alçapão inserido
      Código inserido no sistema para desviar alguma verificação corriqueira.
    • Ataques de dentro do Sistema (5) Ataques Genéricos à Segurança
      • Ataques típicos
      • Iniciar o acesso ao sistema e pressionar as teclas DEL ou BREAK
      • Tentar chamadas ilegais ao sistema
      • Tentar todos os NÃO FAÇA especificados nos manuais
      • Convencer um programador a introduzir um alçapão
      • Implorar para a secretária do administrador do sistema para ajudar um pobre usuário que esqueceu a senha
    • Ataques de dentro do Sistema (6) Falhas Famosas de Segurança Unix
      • Lpr
        • utilitário de impressora de linha
      • Mkdir foo
        • Cria i-node
        • ... (tempo para trocar o i-node e fazer uma ligação para o arquivo de senhas sob o nome foo)
        • Altera de UID root para UID user
    • Ataques de dentro do Sistema (7) Princípios de Projeto de Segurança
      • O projeto do sistema deve ser público
      • Default deve ser “acesso negado”
      • Checar autoridade atual
      • Dar a cada processo o menor privilégio possível
      • Mecanismo de proteção deve ser
        • simples
        • uniforme
        • nas camadas mais inferiores do sistema
      • Esquema deve ser psicologicamente aceitável
      e … mantenha o projeto simples
    • 5. Ataques de fora do sistema
    • Ataques de Fora do Sistema
      • Comunicação entre Computadores (Redes)
        • Redes Locais, Privadas e a Internet
      • Vantagens
        • Facilidade, agilidade, comodidade, dinamicidade, ...
      • Desvantagens
        • Possibilidade de descoberta de vulnerabilidades em computadores conectados a rede
    • Malware
      • Vírus de computador
        • Programa capaz de se reproduzir utilizando outro programa como hospedeiro, causando danos.
      • Trojan horses (Cavalos de Tróia)
        • Programa que ao entrar no computador, tentar liberar uma porta para um possível invasor.
      • Spyware
        • Programa que recolhe informações sobre o usuário e transmite-as à uma entidade externa, sem o conhecimento e consentimento do usuario.
      Programa designado a infiltrar ou danificar um sistema de computador sem o consentimento do proprietário. É a junção das palavras "malicious" e "software".
    • Funcionamento de um Vírus
      • Criação do código do vírus (Linguagem de Montagem)
      • Inserição num prog. hospedeiro
      • Distribuição do prog. Hospedeiro (Site de downloads)
      • Vítimas baixam e instalam o prog. Hospedeiro
      • Virus fica latente, esperando hospedeiro ser executado
      • Infecta demais programas
    • Objetivo de um Vírus
      • Espalhar-se rapidamente
      • Dificultar a sua detectacção
      • Dificultar a sua remoção
      • Possivelmente, causar grandes danos
    • Tipos de Vírus
      • Companheiro
        • Não infecta um programa, mas executa antes do programa ser executado
      • Programas Executaveis
        • Sobreescreve arquivos executaveis
        • Facil de detectar, pois não executa o programa esperado
      • Parasita
        • Infecta um programa realizando o resultado esperado após sua
        • execução
      • Cavidade
        • Se infiltra nos espaços restantes dos segmentos
        • No Windows segmentos são x512 bytes, sendo o restante dos segmentos preenchido com 0’s pelo linker.
    • Tipos de Vírus
      • Um programa executável
      • Com um vírus à frente
      • Com um vírus no final
      • Com vírus espalhado pelos espaços livres dentro do programa
    • Tipos de Vírus
      • Residentes em Memória
        • Após ser executado, permanece na memoria
        • Pode modificar o endereço de Mapa de Bits para ficar oculto
      • Setor de Boot
        • Copia-se para RAM ao iniciar o sistema, no topo ou entre os vetores de interrupção
        • Ao formatar pelo fdisk do WIN a 1ª trilha do disco é ignorada
      • Dispositivos
        • Infecta um driver do dispostivo
      • Macros
        • Arquivos do Office, possuem macros que podem conter programas inteiros escritos em VB
      • Codigo-fonte
        • Infecta um código fonte: #include <virus.h> e run_virus( );
      • Vírus captura os vetores de interrupção e de desvio de controle
      • da CPU
      • (b) S.O. retoma o vetor de interrupção da impressora
      • (c) Vírus percebe a perda do vetor de interrupção da impressora e
      • recupera-o
      Vírus Setor de Boot
      • Vírus colocados onde há chance de serem copiados
        • Sites de Downloads
      • Programas copiados de fontes não-confiáveis
        • Infectam programas no disco rígido, disquetes, pendrivers
        • Podem se disseminar na rede local
      • Anexam-se à mensagens eletrônicas aparentemente inocentes
        • quando executados, usam listas de contatos
        • para replicar
      Como os Vírus se Disseminam
      • Briga constante e evolutiva de um
      • contra o outro.
      Antivírus X Antiantivírus
      • Verificadores de Vírus
        • Coletam amostras do vírus para estudo e assim conseguir entende-lo
        • Armazenam dados sobre os vírus num banco de dados
        • Caso seja um vírus polimórfico, tentam achar o motor de mutação
      • Verificação de Integridade
        • Calcula a Soma de verificação ( checksum ) para cada arquivo
        • Quando executado, recalculará e detectará os arquivos infectados
      • Verificação de Comportamento
        • Antivírus, residente em memoria capturando as chamadas ao sistema e monitorando as atividades.
      • Prevenção
        • Opte por sistemas com alto grau de segurança, use apenas software originais, use um antivirus potente e faça backup
      • Recuperação
        • Quando infectado, reinicie o sistema por uma midia protegida contra escrita (CD-ROM), execute um antivírus, salve os arquivos não infectados e formate o HD
      Antivírus X Antiantivírus
      • Exemplos de um possível vírus polimórfico
      Antivírus X Antiantivírus
      • As convenções de denominação de vírus do Norton AntiVirus (Symantec) é Prefixo .Nome. Sufixo :
        • O prefixo denota a plataforma em que o vírus é duplicado ou o tipo do vírus. Em geral, os vírus de DOS não contêm um prefixo.
        • O nome é o nome da família do vírus.
        • O sufixo pode não existir sempre. Os sufixos diferenciam variantes da mesma família e, em geral, são um número que denota o tamanho do vírus ou uma letra.
      • Por exemplo, WM.Cap.A seria uma variante da família Cap. O WM significa que o vírus é um vírus de macro para Word.
      Convenções de Denominação: Vírus
      • Worms ou vermes
        • Programas que se auto-replicam com o intuito de se disseminar sem causar graves danos aos sistemas.
      • Hijackers
        • Programas ou scripts que &quot;sequestram&quot; navegadores de Internet, alterando a página inicial do browser, impedindo o usuário de mudá-la e exibindo propagandas em pop-ups ou janelas novas.
      • Keylogger
        • Programas que ficam escondidos no sistema operacional, sem que a vitima saiba que está sendo monitorada, sendo utilizados para obter senhas pessoais.
      Ainda tem Mais …
      • SandBoxing ou Caixa de Areia
        • Confina cada applet a um intervalo limitado de endereços virtuais.
        • Utilização de um monitor de referência para checar JMP e CALL
      • Interpretação
        • Executar o applet de forma interpretativa sem deixar eles tomarem controle real do hardware.
      • Assinatura de código
        • Aceitar apenas applets de fontes confiáveis e que assinaram digitalmente seus applets.
      Código Móvel - Applet
      • Applets podem ser interpretadas por um navegador Web
      Código Móvel - Applet
      • JDK 1.0
        • Applets confiáveis (local) e não confiáveis (remoto)
      • JDK 1.1
        • Empregado a assinatura de código
      • JDK 1.2
        • Empregado política de segurança com granularidade fina e configurável.
      Código Móvel - Applet
    • 6. Mecanismos de Proteção
      • Domínios de Proteção
        • Conjunto de pares (objetos, diretos)
        • Objetos: arquivo, impressora, ...
        • Diretos: leitura, escrita, execução, ...
      Mecanismos de Proteção
      • No Unix
        • O domínio de um processo é definido pela combinação do UID e GID
      • Alternância de Domínios
        • Cada processo tem duas partes:
              • Parte do Usuário
              • Parte do Núcleo (Chamadas ao Sistema)
        • SetUID e SetGID
        • SetUID: Processo em execução terá mesmos direitos que o dono do arquivo.
        • SetGID: Processo em execução terá mesmos direitos que o grupo do dono do arquivo.
      Mecanismos de Proteção
      • Modelo Conceitual
      Matriz de Proteção
      • Matriz de Proteção com Domínios como Objetos
      Matriz de Proteção Exemplo de execução de processo com SetUID ativado.
      • Matriz contém muitos espaços vazios
        • Seu armazenamento seria muito custoso.
      • Método prático de representar a Matriz
        • Por Colunas:
          • Lista de Controle de Acesso (ACL)
        • Por Linhas:
          • Capacidades (Capabilities)
      Representação da Matriz de Proteção
      • Associação Objeto – Lista (Dom, Dir)
        • Associa a cada objeto uma lista contendo domínios e seus respectivos direitos .
      Lista de Controle de Acesso (ACL)
      • Em sistemas que utilizam grupos:
        • UID1, GID1 : direitos1; UID2, GID2 : direitos; ...
      • Utilização de Caracteres-chave
        • Generalização
          • Exemplo: Ana, * : RW
        • Especificação
          • Exemplo: Teresa, * : (none); *, * : RW
      Lista de Controle de Acesso (ACL)
      • Associação Processo – Lista (Objeto, Dir)
        • Associa a cada processo uma lista contendo objetos e seus respectivos direitos .
      Capacidades (Capabilities)
      • Ambas são equivalentes
      • Revogação
        • ACL : Facil, mas não imediata.
        • Capabilities: Mais complicada.
      • Checagem
        • ACL: Lenta, para muitos grupos.
        • Capabilities: Mais rápida.
      ACL X Capabilities
    • 7. Sistemas Confiáveis
      • TCB (Trusted Computing Base)
        • Monitor de Referência : Parte do sistema operacional que é responsável pela imposição da política de segurança
      Sistemas Confiáveis
      • Controle de acesso discricionário
        • Usuário individual pode configurar um mecanismo de controle de acesso para permitir ou proibir o acesso a um objeto.
      • Controle de acesso compulsório
        • Quando um mecanismo do sistema controla o acesso a um objeto e um usuário individual não pode alterar este acesso.
      Políticas de Controle de Acesso
      • Modelo Bell-LaPadula ( Bell & LaPadula, 1975 )
      • Modelo Biba (Biba, 1977)
      • Modelo Clark-Wilson ( Clark & Wilson, 1987 )
      • Modelo Chinese Wall ( Brewer & Nash , 1989 )
      • Controle de Acesso Baseado em Papéis ( Ferraiolo et al., 2001 )
      Modelos de Segurança
      • Política de confidencialidade
        • Lida com o fluxo da informação
        • Prevenir a liberação não autorizada da informação
      • Modelo de segurança multinível
        • Classificação no estilo militar
      • Influência para muitos outros modelos
      Modelo Bell-LaPadula
      • Propriedade simples
        • Ler apenas no seu nível ou no nível inferior
      • Propriedade *
        • Escrever apenas no seu nível ou no nível superior
      Modelo Bell-LaPadula
      • Alteração do Modelo Bell-LaPadula
        • Objetiva a integridade invés da confidencialidade
      • Modelo de segurança multinível
        • Classificação no estilo empresarial
      • Propriedade simples:
        • Escrever apenas no seu nível ou no nível inferior
      • Propriedade *:
        • Ler apenas no seu nível ou no vível superior
      Modelo Biba
      • Modelo de referencia da NIST
      Controle de Acesso Baseado em Papéis (RBAC)
      • Separação de Responsabilidades
        • Estática
        • Dinâmica
      • Hierarquias de Papéis
        • Genérica (Grafo)
        • Limitada (Árvore)
      • Apesar de todos esse sistemas teóricos serem seguros,
      • na prática Lampson (1973) definiu o problema do
      • confinamento :
      Canais Subliminares
      • Um canal subliminar usando impedimento de arquivo
      Canais Subliminares
      • Técnicas de Esteganografia
        • Imagem à direita contém os textos de 5 peças de Shakespeare
        • 1024 x 768 x 3 bits = 294 912 bytes
      Canais Subliminares Zebras Hamlet, Macbeth, Julius Caesar Mercador de Veneza, Rei Lear
    •