51
Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Embed Size (px)

Citation preview

Page 1: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança

Raul Fernando Weber

Instituto de Informática

Univ. Federal do Rio Grande do Sul

Page 2: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Tipos de segurança

• Segurança Física

• Segurança Lógica– Segurança de Dados

» Integridade

» Privacidade

» Autenticidade

– Segurança de Programas

» Programas Daninhos (vírus, cavalos de Tróia, backdoors, etc)

– Segurança de Acesso

» Intrusos (humanos e digitais)

Page 3: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança

• Segurança Lógica

• Confidencialidade– Inclui privacidade e autenticidade

– Utiliza mecanismos de controle de acesso

– Utiliza criptografia

• Integridade– Prevenção: impedir alterações

– Detecção: descobrir alterações “o mais cedo possível”

• Disponibilidade– Ataques de negação de serviço

Page 4: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança em PCs

• Aspectos de segurança retirados no projeto

• Arquitetura aberta

• Sistema Operacional aberto

• Controle de acesso ineficaz

• Baixo custo

• Uso muito difundido

• Conhecimento disseminado

Page 5: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança na Internet

• Início: ARPANET, 1969

• Interligação de universidades e agencias de pesquisa

• Uso acadêmico

• Pouca preocupação com segurança– Uso por especialistas

– Correio Eletrônico

– Troca de arquivos e documentos

– Acesso restrito

– Confiança mútua

– Poucos casos de má utilização

Page 6: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Situação atual da Internet

• Utilização para situações não previstas

• Acesso irrestrito

• Mecanismos fracos de identificação e autenticação

• Sociedade eletrônica– Utopia x Caos

– Fonte de conhecimento x Validade da Informação

– Autoestrada da Informação x Superoferta de Informação

– Código de ética não escrito

– Existência de vândalos, malfeitores, bandidos, terroristas

– Necessidade de mecanismos de defesa

Page 7: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Problemas de Segurança

• Atacante Passivo– Capaz de monitorar toda a transmissão

– Pode obter cópia da transmissão

– Pode reproduzir dados transmitidos

– Pode requerer equipamento sofisticado

– Fácil de ser realizado na Internet (hardware barato e software disponível)

• Atacante Ativo– Capaz de interceptar e alterar a transmissão

– Ataque do “homem no meio”

– Pode ser realizado por Engenharia Social

– Capaz de inserir dados falsos

Page 8: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Segurança em Computação

• Segurança é um atributo negativo

• Segurança diminui a facilidade de uso

• Segurança diminui a liberdade do usuário

• Problemas– Falta de normalização

– Falta de suporte nos sistemas de computação

– Problemas legais de exportação/importação

– Gerenciamento da segurança

– Falta de conscientização

– Problemas de engenharia social

Page 9: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Sistema Seguro

• Especificação segura (Política de segurança)

• Projeto seguro

• Implementação segura

• Manutenção de um estado seguro– Inicialização segura

– Execução de qualquer programa mantém estado seguro

– Fluxo de informação de acordo com a política de segurança

Page 10: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Política de segurança

• Promíscuo– Tudo é permitido

• Permissivo– Tudo que não é proibido é permitido

• Prudente– Tudo o que não é permitido é proibido

• Paranóico– Tudo é proibido

Page 11: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Ameaças a segurança

• Ataque interno x externo– Conhecimento do atacante sobre o sistema

• Ataque local x remoto– Acesso físico ao sistema

• Ataque Benigno– Cópia de informação

– Consumo de recursos (tempo de computador, espaço de armazenamento, largura de banda, etc)

• Ataque maligno– Destruição de informação/serviços

– Alteração de informação/serviços

Page 12: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Fases de um ataque

• Selecionar um alvo• Coletar informações sobre alvo• Lançar um ataque sobre o alvo• Destruir evidências da invasão• Obter senhas de outras contas• Obter acesso root na máquina invadida• Configurar caminhos secundários de alguns

serviços• Encontrar máquinas que confiam na máquina

invadida• Utilizar a máquina invadida como base para outros

ataques

Page 13: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Níveis de um ataque

• Ataque ao correio eletrônico (mail bomb)

• Suspensão de serviços (denial of service)

• Usuário local realiza leitura não autorizada

• Usuário local realiza escrita não autorizada

• Usuário remoto obtém acesso à rede local

• Usuário remoto realiza leitura não autorizada

• Usuário remoto realiza escrita não autorizada

• Usuário remoto obtém privilégios de administrador

Page 14: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Principais ataques

• Engenharia social

• Coleta de informação

• Varredura

• Negação de serviço

• Exploração de bugs

• Exploração de protocolos

• Sniffers

• Ataque do dicionário

• Código malicioso

Page 15: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Engenharia Social

• Método: enganar as vítimas, por conversa, telefone ou correio eletrônico

• Objetivos:

– Obter informações valiosas

– Obter privilégios

– Convencer a vítima a executar ações indevidas e perigosas

Page 16: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Engenharia Social

• Prevenção: educação e conscientização

– Não fornecer informações a estranhos

– Exigir identificação

– Escolher boas senhas

– Não executar ações sem pensar (como executar um programa anexo à uma mensagem)

Page 17: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Coleta de Informação

• Informações úteis (ao atacante) Sobre o domínio e seus servidores (obtida por whois e nslookup)

Sobre números IP utilizados (obtida por nslookup e traceroute)

Sobre a arquitetura das máquinas (tipo e modelo de CPU, sistema operacional)

Sobre os servidores (versões e plataforma) Sobre serviços de proteção (firewall, redes privadas (VPNs),

mecanismos de controle de acesso (ACL) Sobre acesso remoto (números de telefone, usuários autorizados) Sobre localização (endereço geográfico, conexões à Internet) Sobre usuários (nomes, cargos, funções)

Page 18: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Coleta de Informação

• Problema: algumas informações devem ser públicas

• Prevenção: evitar o fornecimento de informação desnecessária

• Toda a informação vital para operação deve ser obviamente fornecida, mas qualquer informação adicional deve ser suprimida

Page 19: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Varredura (Scanning)

• Teste sistemático dos números IP de uma organização

• Determinação dos serviços estão ativos (quais portas estão escutando)

– Varredura com ping– Consultas ICMP– Varredura de portas (strobe, udp_scan, netcat)

• Programas de varredura: COPS,ISS, SATAN, SAINT, Nessus, nmap

Page 20: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Varredura (Scanning)

• Prevenção: limitar o tráfego desnecessário (filtro de pacotes ou firewall)

• Bloqueio do acesso a todas as portas que não necessitem ser visíveis para a Internet

• Não ativar mais serviços em uma máquina do que o necessário (nem todo mundo precisa de sendmail ou webserver)

• Uso de programas específicos para detectar que uma varredura automática está sendo realizada

Page 21: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Negação de Serviço

• DoS, ou denial-of-service

• Objetivo: impedir o uso legítimo do sistema, ou “derrubar” a máquina

• Inúmeras formas

Ping of Death Teardrop Nestea Syn Flood Smurf Attack UDP Flood

Page 22: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Negação de Serviço

• Impedir ataques de negação de serviço é quase impossível

• Toda máquina que aceita conexões do mundo externo é passível de ser atacada

• Distribuir os serviços para a maioria permanecer operacional

• Providenciar recursos suficientes para que o sistema continue funcionando mesmo com carga extrema

• Manter-se atualizado sobre as vulnerabilidades apresentadas pela versão atual do sistema

Page 23: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Exploração de bugs

• Explorar “furos” de implementação para obter privilégios

• Para evitar este tipo de ataque (em programas próprios)

– Utilizar boas práticas de engenharia de software

– Verificar erros comuns que podem causar grandes danos

– Não permitir estouros de buffers ou acessos fora dos limites

– Tratar falta de memória e falta de espaço em disco

– Verificar as entradas

– Implementar a lei do menor privilégio

– Não fornecer a processos mais poder do que necessitam

Page 24: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Exploração de bugs

• Para evitar este tipo de ataque (em programas de terceiros)

– Verificar vulnerabilidades conhecidas

– Aplicar os patches disponíveis

– Manter-se informado e atualizado

• Nenhum sistema é seguro

• Nenhum patch é perfeito

• Mas a maioria dos atacantes só sabe explorar bugs, e não criá-los

Page 25: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Exploração de protocolos

• Muitos são derivados de falhas no mecanismo de autenticação

– No IP spoofing, o atacante falsifica ou utiliza um endereço IP confiável

– A idéia do DNS Spoofing é subverter (envenenar) o servidor de nomes

– O Source Routing Attack se utiliza dos mecanismos de roteamento

– Um ataque ao RIP (Routing Informatin Protocol) consiste no envio de informações de roteamento falsas

– No ICMP (Internet Control Message Protocol) as mensagens ICMP mais exploradas são redirect e destination unreachable

Page 26: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Sniffer

• sniffing - interface de rede que opera modo promíscuo, capturando todos os pacotes

• É fácil para um sniffer obter username e password dos usuários

• Utilização de sniffer é difícil de ser detectada

• Medidas contra sniffer requerem o uso de hardware específico, ou aplicativos que utilizem criptografia

Page 27: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Ataque do dicionário

• Um dos arquivos mais cobiçados por atacantes é o de senhas

• Unix: /etc/passwd• Windows: *.pwl• Windows NT: SAM• Senhas não são armazenadas na forma de um

texto normal, mas sim são cifradas através de um algoritmo unidirecional (hash), não reversível

• Para impedir que usuários com a mesma senha tenham o mesmo hash, utiliza-se um identificador único para o usuário (salt)

Page 28: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Ataque do dicionário

• Na autenticação (login), o hash é novamente gerado a partir da senha fornecida pelo usuário

• Se o resultado é igual ao hash armazenado, o usuário é autenticado

• Pessoas utilizam senhas facilmente memorizáveis, como nomes próprios ou palavras de uso corriqueiro

• Neste fato se baseia o ataque do dicionário• O atacante compõe um dicionário e experimenta

todas as palavras deste dicionário contra o hash armazenado no arquivo de senhas

Page 29: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Ataque do dicionário

• Vários programas disponíveis (Crack, etc)

• Ação preventiva: atacar o próprio arquivo de senhas

• Não utilizar senhas derivadas de palavras e nomes

• Utilizar letras iniciais de frases ou palavras com erros

Page 30: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Código Malicioso

• Vermes (via redes)– Verme da Internet (1988)

• Cavalos de Tróia (não se propagam)– Falsa tela de Login

– Falsa Operação

• Vírus– Vírus de Boot (bootstrap)

– Vírus de Arquivo (executáveis)

– Vírus de Macro (MS Word)

• Backdoors

• Controle Remoto (Netbus, Back Orifice)

Page 31: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Código Malicioso

• Prevenção: Monitores

• Detecção: Verificadores de Integridade

• Identificação: Reconhecedores de vírus e código daninho

• Impossível tratamento exato e confiável

• Manter anti-vírus atualizado

• Preparar procedimento de emergência

• Preparar procedimento manual

Page 32: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Medidas de segurança

• O que se está querendo proteger?

• O que é preciso para proteger?

• Qual a probabilidade de um ataque?

• Qual o prejuízo se o ataque for bem sucedido?

• Implementar procedimentos de segurança irá ser vantajoso no ponto de vista custo-benefício?

Page 33: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Mecanismos para segurança

• Wrappers

• Firewalls

• Mecanismos de autenticação

• Ferramentas de detecção de falhas

• Métodos criptográficos

Page 34: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Wrapers

• TCP Wrappers são um conjunto de programas que “encapsulam” os daemons dos serviços de rede visando aumentar sua segurança

• Funcionam como um filtro e estendem o serviço original

• O wrapper não pode ser considerado uma ferramenta para segurança total

• Visa suprir deficiências dos servidores atuais e aumentar o controle sobre sua utilização

• Ótima ferramenta para registro (log)

Page 35: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Firewalls

• Um firewall é um conjunto de componentes colocados entre duas redes e que coletivamente implementam uma barreira de segurança

• Sua finalidade é retardar os efeitos de um ataque até que medidas administrativas contrárias sejam executadas

• O objetivo básico de um firewall é defender a organização de ataques externos. Como efeito secundário, ele pode ser utilizado para regular o uso de recursos externos pelos usuários internos

Page 36: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Firewalls

• Um firewall pode ser implementado utilizando dois mecanismos básicos:

– filtragem de pacotesanálise dos pacotes que passam pelo firewall

–servidores proxyanálise dos serviços sendo utilizados

Page 37: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Arquiteturas firewall

• Screening router: somente um filtro de pacotes

• Dual homed host: somente um bastion host

• Screened subnet: dois filtros de pacotes e uma sub-rede para os bastion hosts. É a arquitetura mais recomendada, pois cada componente individual (filtros e hosts) tem funções simples e portanto são fáceis de configurar

• Screened host: é uma arquitetura screened subnet sem o roteador (filtro) interno

Page 38: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Arquiteturas firewall

Filtro Interior

Filtro Exterior

perimeter network

Rede Interna

Rede Externa

Bastion Hosts

Page 39: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Mecanimos de autenticação

• A grande maioria dos serviços utilizam o mecanismo “alguma coisa que você sabe” (senha)

• Senhas podem ser capturadas por sniffers ou descobertas por um ataque do dicionário

• Uma solução possível é utilizar senhas que não são reusáveis (one time passwords)

• O sistema apresenta ao usuário um desafio (challenge). O usuário realiza cálculos sobre este desafio, incluindo uma pass phrase secreta, e devolve o resultado ao servidor (que verifica o resultado)

Page 40: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Detecção de falhas

• Ferramentas de análise

• Verificadores de integridade

• Verificadores de senhas

• Analisadores de log

• Sistemas de Detecção de Intrusão

Page 41: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Ferramentas de Análise

• COPS (Computer Oracle and Password Program)

• SATAN (Security Analysis Tool for Auditing Network)

• ISS (Internet Security Scanner)

• SAINT (Security Administrator’s Integrated Network Tool)

• TIGER (auditoria e análise de arquivos)

• Nessus (um dos mais atuais)

Page 42: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Verificadores de Integridade

• Verificar se arquivos e configurações permanecem inalterados

• Compara a situação atual com a situação inicial

• Utiliza funções de checksum e hash

• Hash a nível criptográfico: MD5, SHA

• Exemplo: Tripwire, TAMU

Page 43: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Verificadores de Senhas

• Verificar se uma senha pode ser “quebrada”

– Exemplo: Crack

• Verificar se uma senha é “fácil”

– Exemplos: npasswd, passwd+

Page 44: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Analisadores de Logs

• Facilitar a análise de arquivos de logs

• Realizar logs mais detalhados (além de um grep)

• Exemplos: – Swatch (Simple Watcher)– Netlog– LogSurfer

Page 45: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Sistemas de Detecção de Intrusão

• Detectar um intruso o mais cedo possível

• Detectar tentativas de intrusão

• Detectar ações suspeitas

• Detectar desvios nos padrões dos usuários

• Análise em “tempo real” (o mais cedo possível)

Page 46: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Métodos criptográficos

• Não existe sistema absolutamente seguro

• Toda criptografia pode ser “quebrada”

• Complexidade temporal

• Complexidade econômica

• Segurança “computacional”

Page 47: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Criptografia de chave única

• Única chave para cifragem e decifragem

• Substituição, permutação, operações algébricas

• Alta velocidade

• Problemas na distribuição de chaves

• Exemplos– DES (Data Encryption Standard) - 56 bits

– 3DES - DES triplo - 112 bits

– RC4_128 - 128 bits

– RC2_CBC_40 - 40 bits

– IDEA (Inter. Data Encryption Algorithm) - 128 bits

– CAST - 64 bits

Page 48: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Criptografia de chave pública

• Duas chaves: uma pública e outra secreta

• Cifragem com uma chave somente é decifrada com a outra chave

• Privacidade: cifrar com chave pública; somente chave secreta pode decifrar

• Assinatura: cifrar com chave secreta; chave pública decifra e identifica usuário

• Operação: funções aritméticas complexas

• Baixa velocidade, fácil distribuição de chaves

• Exemplos: RSA, DSS, DH, El Gamal (512 a 2048 bits)

Page 49: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Métodos criptográficos

• PGP (Pretty Good Privacy)

• RIPEM (Riordan’s Internet PEM) - uma implementação do PEM (Privacy Enhanced Mail)

• SSH (Secure Shell)

• SSL (Secure Sockets Layer) - Netscape

• PCT (Private Communication Technology) - Microsoft

• Kerberos - um protocolo de autenticação

• SET - Secure Electronic Transaction

• IPv6 e IPsec - IP com suporte a autenticação e privacidade, implementadas através de extensões do cabeçalho

Page 50: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Conclusões

• Espectro de aplicações da Internet é muito maior que os seus projetistas jamais sonharam

• Com o crescimento da Internet cresceram também, e em uma escala muito maior, os seus problemas de segurança

• A maioria dos serviços da rede foi projetado e desenvolvido quando a confiança mútua ainda existia na rede, e os casos de vandalismo eram raros e isolados

• Ambiente da Internet intrinsicamente inseguro

Page 51: Segurança Raul Fernando Weber Instituto de Informática Univ. Federal do Rio Grande do Sul

Conclusões

• Segurança implica em:– Conscientização

– Boa administração

– Contínua atualização

– Boa compreensão das ferramentas

• Muitas soluções na própria Internet– CERT, FIRST, COAST

– PGP, SSH, Nessus

– Vários sites dedicados à segurança