Eduardo Luzeiro Feitosa Segurança em Sistemas de Informação.
Transcript of Eduardo Luzeiro Feitosa Segurança em Sistemas de Informação.
Eduardo Luzeiro Feitosa
Segurança em Sistemas de Informação
Agenda
Conceitos Normas de Segurança Avaliação de Riscos Políticas de Segurança Detecção de Vulnerabilidades Ataque
Conceitos
Segurança da Informação
Segurança da Informação (SI) é a proteção de sistemas de informação contra desastres, erros e manipulação de modo a minimizar a probabilidade e impacto de incidentes
Prevenção:ConfidencialidadeConfidencialidade
IntegridadeIntegridade
DisponibilidadeDisponibilidade
Segurança da Informação
ConfidencialidadeGarantia de que a informação é acessível
somente por pessoas autorizadasNão deve acontecer divulgação intencional
(ou não) de informações reservadasQuestões de confidencialidade surgem porque
processos e informação sensíveis do negócio só devem ser divulgados para pessoal / programas autorizados
Necessidade de controlar acesso
Segurança da Informação
IntegridadeGarantia da exatidão e completude da
informação e dos métodos de processamentoInformações não devem ser
Modificadas por pessoas/processos desautorizadosModificações desautorizadas não sejam feitas por
pessoas/processos autorizadosInconsistentes
Necessidade de garantir que os objetos são precisos e completos
Segurança da Informação
DisponibilidadeGarantia que usuários autorizados obtenham
acesso à informação e aos ativos correspondentes sempre que necessário
Informação e serviços do negócio devem estar disponíveis quando necessáriosNecessidade de controles para garantir
confiabilidade dos serviços
Segurança da Informação
Como a SI pode ser obtida?Implementando controles para garantir que os
objetivos de segurança sejam alcançados Porque SI é necessária?
A informação, processos, sistemas e redes são importantes ativos para os negócios
Confidencialidade, integridade e disponibilidade são essenciais para preservar o negócio
As informações são constantemente “ameaçadas”
Dependência dos SIs gera vulnerabilidadesQuase nada é projetado para ser seguro
Segurança da Informação
Requisitos de segurançaAvaliação de riscos dos ativos
Avaliação de ameaças, vulnerabilidades, probabilidade de ocorrência de incidentes, impacto ao negócio
Legislação vigente, estatutos, regulamentação, cláusulas contratuaisDevem ser obrigatoriamente atendidos
Normas para Segurança da Informação
Norma BS 7799 (BS = British Standard)
BS-7799-1:2000 – Primeira parte Publicada em 1995 pela primeira vez Versão atual de 2000 Código de prática para a gestão da segurança da
informação Objetivo da organização: conformidade
BS-7799-2:2002 – Segunda parte Publicada em 1998 pela primeira vez Versão atual de 2002 Especificação de sistemas de gerenciamento de
segurança da informação (ISMS – information security management system)
Objetivo da organização: certificação
Norma ISO/IEC 17799
Internacionalização da norma BS 7799 ISO/IEC 17799:2000, substitui a norma britânica
Inclui 127 controles e 36 objetivos de controle agrupados em 10 áreas de controle
Controles baseados na experiência das organizações e melhores práticas
Atualmente está sendo atualizado ISO/IEC 17799:2005: disponível maio/junho 2005 Várias modificações gerais e específicas http://www.aexis.de/17799CT.htm
Norma NBR 17799
NBR ISO/IEC 17799 Versão brasileira da norma ISO, homologada pela
ABNT em setembro de 2001 Tradução literal da norma ISO www.abnt.org.br
No Brasil, deve-se usar a norma brasileira Em outros países, recomenda-se verificar se existe
uma norma local
Detalhe importante: Deve-se pagar pelas normas
Vantagens das Normas (1 # 2)
Conformidade com regras dos governos para o gerenciamento de riscos
Maior proteção das informações confidenciais da organização
Redução no risco de ataques de hackers Recuperação de ataques mais fácil e rápidas Metodologia estruturada de segurança que
está alcançando reconhecimento internacional
Vantagens das Normas (2 # 2)
Maior confiança mútua entre parceiros comerciais
Custos possivelmente menores para seguros de riscos computacionais
Melhores práticas de privacidade e conformidade com leis de privacidade
Gerenciamento e Avaliação de Riscos
Terminologia (1 # 2)
RiscoPossibilidade de sofrer perda ou dano; perigo
AtaqueAcesso a dados ou uso de recursos sem
autorizaçãoExecução de comandos como outro usuárioViolação de uma política de segurança, etc
VulnerabilidadeÉ uma falha que pode permitir a condução de
um ataque
Terminologia (2 # 2)
IncidenteA ocorrência de um ataque; exploração de
vulnerabilidades Ameaça
Qualquer evento que pode causar dano a um sistema ou rede
A existência de uma vulnerabilidade implica em uma ameaça
Exploit codeUm código preparado para explorar uma
vulnerabilidade conhecida
Exemplos de Ameaças
Pessoas chaves para uma organizaçãoFerimento, morte
Servidores de arquivosAtaques DoS
Dados dos alunosAcesso interno não autorizado
Equipamentos de produçãoDesastre natural
Exemplos de Vulnerabilidades
Pessoas chaves para uma organizaçãoSem controle de acesso
Servidores de arquivosAplicação incorreta de correções (patches)
Dados dos alunosTerceirizados não averiguados
Equipamentos de produçãoControles fracos de acesso físicos
Gerenciamento de Riscos
O gerenciamento de riscos é baseado no:Identificação (conhecimento) e avaliação
(estimativa) de riscosControle (minimização) de riscos
Identificação de Riscos
Conhecimento do AmbienteIdentificar, examinar e compreender como a
informação e como ela é processada, armazenada e transmitida
Iniciar um programa detalhado de gerenciamento de riscos
Conhecimento do inimigoIdentificar, examinar e compreender as ameaçasGestores devem estar preparados para
identificar as ameaças que oferecem riscos para a organização e a segurança dos seus ativos
Estimativa de Riscos
Passo 1: Caracterização do sistemaO que há para gerenciar?Como a TI está integrada no processo?
Passo 2: Identificação das ameaçasQuais fontes de ameaças devem ser
consideradas?(Interna/externa, acidental/intencional, maliciosa/não-
maliciosa)
Passo 3: Identificação de vulnerabilidadesQuais falhas/fraquezas podem ser exploradas?
Passo 4: Análise de controlesQuais são os controles atuais e planejados?
Estimativa de Riscos
Passo 5: Determinação das possibilidadesAlta, Média e Baixa
Passo 6: Análise de ImpactoO que a exploração da vulnerabilidade pode
resultar?Alta, Média e Baixa
Passo 7: Determinação dos riscosPossibilidade x Impacto
Passo 8: Recomendações de controles Passo 9: Documentação
Políticas de Segurança da Informação
Tipos de políticas
1. Programa de Política (organizacional) Diretrizes da diretoria para criar um
“programa” de segurança, estabelecer os seus objetivos e atribuir responsabilidades
2. Políticas de sistemas Regras de segurança específicas para
proteger sistemas (redes, máquinas, software) específicos
Implementação de Políticas
PadrõesUniformidade de uso de tecnologias,
parâmetros ou procedimentos, para beneficiar a organizaçãoEx: Uso de Windows 2000 (mesmo existindo XP)
DiretrizesEm alguns casos, a aplicação de padrões não
é possível, conveniente ou acessível (custos)Ex: auxílio no desenvolvimento de procedimentos
ProcedimentosPassos detalhados para serem seguidos pelos
funcionários Ex: Cuidados na criação de contas de e-mail
Política (componentes)
ObjetivoPor que a política?
EscopoToda a organização ou parte dela?
ResponsabilidadesQuem são as pessoas? Estrutura formal?
Conformidade Como fiscalizar”?O que acontece para quem não cumprir?
Intencional, não-intencional (falta de treinamento?)
Exemplo: SANS Institute para roteador
ObjetivoEste documento descreve uma configuração
mínima de segurança para todos os roteadores e switches conectados na rede de produção da <organização>
EscopoTodos os roteadores e switches conectados na
rede de produção da <organização> são afetados.Roteadores em laboratórios internos/seguros são
excluídosRoteadores dentro da DMZ devem seguir política
específica
Exemplo: SANS Institute para roteador Política: padrões de configuração
1. Contas locais não devem ser configuradas nos roteadores. Roteadores devem usar TACACS+ (AAA) para todas as autenticações de usuários
2. A senha de “enable” deve ser criptografada 3. Deve ser desabilitado
1. Broadcast IP direcionado (sub-redes que o host não está)2. Recepção de pacotes com endereços inválidos (ex: RFC1918)3. Serviços “pequenos” TCP e UDP (echo, chargen, daytime,
discard) 4. Roteamento pela fonte (source routing)5. Serviços web rodando no roteador
4. Não usar comunidade SNMP public (criar padrões)5. Regras de acesso devem ser definidas pela
necessidade6. ...
Vulnerabilidades
Terminologia
RFC 2828 – Glossário de segurança da InternetUma falha ou fraqueza em um sistemaQue pode ocorrer
No projetoNa implementaçãoNa operação ou gerenciamento
Que pode ser explorada para violar a política de segurança do sistema
Livro do NessusErro de programação ou configuração errada
que pode permitir que um intruso tenha acesso não autorizado a algum ativo
Tipos de Vulnerabilidades
Não existe ainda consenso sobre classificação e/ou taxonomia para vulnerabilidadesPor serviço afetadoPor gravidadePor sistema operacional alvo
Classificação por impacto potencial (Nessus)Vulnerabilidades CríticasVazamento de informaçõesNegação de serviçosFalha em implementar melhores práticas
Vulnerabilidades críticas
São os problemas de mais alta prioridade A sua exploração podem levar a execução de
programas, escalada de privilégios, comprometimento do sistema, etc
Critérios para classificar uma falha como críticaPossibilidade de exploração remotaExploração sem conta de usuário localPermissão de acesso privilegiado Exploração automática e confiável (para o atacante)
Vermes exploram vulnerabilidades críticas
Vulnerabilidades críticas (exemplos) Sasser worm
Buffer overflow no Local Security Authority Subsystem Service (LSASS) do Windows
Witty wormBuffer overflow no parser do ICQ de produtos para
IDS da Internet Security Systems (ISS) Slapper worm
Falha na biblioteca OpenSSL do Apache que permite executar uma shell remota e explorar DoS
Solaris sadmind O serviço RPC do sadmind permite que usuários
não autenticados executem comandos como root
Vulnerabilidades críticas (classificação)
Buffer overflow (transbordamento de memória)
Travessia de diretórios Ataques de formatação de strings Senhas default Configurações erradas Backdoors conhecidos
Vulnerabilidades críticas
Buffer OverflowO tipo mais famoso e explorado de vulnerabilidade
críticaO programador não limita a quantidade de informação
que pode ser escrita em uma determinada área de memória (string, array, etc)
O transbordo da memória ocorre quando o programa copia os dados de entrada para o buffer sem verificar o seu tamanho
Metade das vulnerabilidades descobertas nos últimos anos são de buffer overflow (CERT)
http://www.sans.org/rr/whitepapers/threats/481.php
Vulnerabilidades críticas
Travessia de DiretóriosProblema comum encontrado em várias
protocolos/aplicações que mapeiam pedidos dos usuários para caminhos de arquivos locais
Exemplo: através de uma conta de FTP que remete ao /home/userX, o atacante consegue acessar outros diretórios e arquivos
Vulnerabilidades descobertasTFTPApachersyncMcrosoft IIS
Vulnerabilidades críticas
Formatação de stringsPermite que um atacante passe como
parâmetro especificadores de conversão (ex: %d”, “%s”) e faça com que seja processados mais dados do que o programador considerou originalmente
Permite que endereços de memória sejam sobrescritos e código malicioso seja executado
O atacante precisa ter muito conhecimento, ou seja, precisa ser um “hacker de verdade”
Vulnerabilidades descobertasSolaris rpc.rwalldTripwire
Vulnerabilidades críticas
Senhas defaultA maioria dos equipamentos e softwares vem
configurados com usuários e senhas default (padrão), documentados e bem conhecidosElas facilitam a instalação e configuração inicial
É muito comum os administradores esquecerem de alterar esses usuários e contas
ExemplosCisco: conta: cisco, senha: ciscoWLAN: SSID (service set identifier) linksysSNMP: comunidade publicWindows: administrator
Vulnerabilidades críticas
Configurações erradasA vida dos administradores de sistemas e de
redes é duraEles sempre têm que fazer tudo às pressas
Por inexperiência, displicência ou pressa, muitas vezes configurações erradas ficam ativas por muito tempo
Exemplo: FTP anônimoPara permitir que um web designer um
administrador configura um FTP “seguro” e esquece da conta padrão “anonymous”
Um atacante coletou durante 3 meses o arquivo de senhas de uma instituição financeira, antes que o problema fosse detectado
Vulnerabilidades críticas
Backdoors conhecidosGeralmente são programas que escutam
portas e possibilitam algum tipo de acesso Redes com administradores inexperientes
facilmente facilmente têm pelo menos um sistema com backdoors conhecidosTrojans: capturadores de teclado, mouse, senhas,
área de desktop, relay para outros sistemasGeralmente são instalados por um atacante
para ter novo acesso após um ataque bem sucedido
Ou seja, um backdoor significa que a rede já foi atacada e vários ativos podem ter sido comprometidos
Anatomia de um ataque
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
1. Footprinting (reconhecimento)
Informações básicas podem indicar a postura e a política de segurança da empresa
Coleta de informações essenciais para o ataque Nomes de máquinas, nomes de login, faixas de IP,
nomes de domínios, protocolos, sistemas de detecção de intrusão
São usadas ferramentas comuns da rede Engenharia Social
Qual o e-mail de fulano? Aqui é Cicrano. Poderia mudar minha senha? Qual o número IP do servidor SSH? e o DNS?
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
2. Scanning (varredura ou mapeamento) De posse das informações coletadas, determinar
Quais sistemas estão ativos e alcançáveisPortas de entrada ativas em cada sistema
FerramentasNmap, system banners, informações via SNMP
Descoberta da TopologiaAutomated discovery tools: cheops, ntop, …Comandos usuais: ping, traceroute, nslookup
Detecção de Sistema OperacionalTécnicas de fingerprint (nmap)
Busca de senhas contidas em pacotes (sniffing)Muitas das ferramentas são as mesmas usadas para
gerenciamento e administração da rede
Mapeamento de rede
Tela do Cheops (http://cheops-ng.sourceforge.net)
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
3. Enumeration (enumeração)
Coleta de dados intrusivaConsultas diretas ao sistemaEstá conectado ao sistema e pode ser notado
Identificação de logins válidos Banners identificam versões de HTTP, FTP
servers Identificação de recursos da rede
Compartilhamentos (windows) - Comandos net view, nbstat
Exported filesystems (unix) - Comando showmount Identificação de Vulnerabilidades comuns
Nessus, SAINT, SATAN, SARA, TARA, ... Identificação de permissões
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
4. Ganhando acesso (invasão)
Informações coletadas norteiam a estratégia de ataque
Invasores tem uma “base” de vulnerabilidades Bugs de cada SO, kernel, serviço, aplicativo – por
versão Tentam encontrar sistemas com falhas conhecidas
Busca privilégio de usuário comum (pelo menos) Técnicas
Password sniffing, password crackers, password guessing
Session hijacking (sequestro de sessão) Ferramentas para bugs conhecidos (buffer overflow)
Hackers constróem suas próprias ferramentas
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
5. Escalada de privilégios
Uma vez com acesso comum, busca acesso completo ao sistema (administrator, root)
Ferramentas específicas para bugs conhecidos "Exploits"
TécnicasPassword sniffing, password crackers, password
guessingSession hijacking (sequestro de sessão)Replay attacksBuffer overflowTrojans
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
7. Ocultação de rastros
Invasor usa tenta evitar detecção da presença
Usa ferramentas do sistema para desabilitar auditoria
Toma cuidados para não deixar “buracos” nos logsexcessivo tempo de inatividade vai denuciar
um ataque Existem ferramentas para remoção
seletiva do Event Log Esconde arquivos “plantados” (back
doors)
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
8. Instalação de Back doors
Objetivo é a manutenção do acessoRootkits – ferramentas ativas, mas escondidasTrojan horses – programas falsificadosBack doors – acesso/controle remoto sem autenticação
Trojans podem mandar informação para invasorCaptura teclado Manda um e-mail com a senha
Rootkits se confundem com o sistemaComandos modificados para não revelar o invasor
Back doorsSistemas cliente/servidorCliente na máquina invasora controlando Servidor na
máquina remotaNão aparecem na "Task List" do Windows NT/2k
Anatomia de um ataque
ReconhecimentoVarredura
Enumeração
InvasãoEscalando privilégios
Acesso à informação
Ocultação de rastros
Negação de Serviços
Instalação de back doors
9. Denial of Service (negação de serviço)
Ataques com objetivo de bloquear serviços, através de:Consumo de banda de redeEsgotamento de recursosExploração de falhas de programação (ex:
ping da morte)Sabotagem de RoteamentoSabotagem no DNS
DDoS Distributed Denial of ServiceAtaques coordenados de múltiplas fontes