1 / 24

UNIPAR – UNIVERSIDADE PARANAENSE Cidade Universitária Paranavaí-PR

UNIPAR – UNIVERSIDADE PARANAENSE Cidade Universitária Paranavaí-PR. Segurança em Ambientes de Redes e Internet. Prof. Júlio César Pereira – juliocesarp@unipar.br. Sistemas de detecção de intrusão (IDS).

Télécharger la présentation

UNIPAR – UNIVERSIDADE PARANAENSE Cidade Universitária Paranavaí-PR

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIPAR – UNIVERSIDADE PARANAENSE Cidade Universitária Paranavaí-PR Segurança em Ambientes de Redes e Internet Prof. Júlio César Pereira – juliocesarp@unipar.br

  2. Sistemas de detecção de intrusão (IDS) Chama-se IDS (IntrusionDetection System) a um mecanismo que ouve o tráfego na rede de maneira furtiva, para localizar atividades anormais ou suspeitas e permitindo assim ter uma ação de prevenção sobre os riscos de intrusão. Existem duas grandes famílias distintas de IDS: Os N-IDS (Network BasedIntrusionDetection System), asseguram a segurança a nível da rede. Os H-IDS (Host BasedIntrusionDetection System),asseguram a segurança a nível dos hóspedes.

  3. Sistemas de detecção de intrusão (IDS) O N-IDS necessita um material dedicado e constitui um sistema capaz de controlar os pacotes que circulam numa ou várias ligaçõe(s) de rede, com o objetivo de descobrir se um ato malicioso ou anormal tem lugar. O N-IDS coloca uma ou várias placas de interface rede do sistema dedicado em modo promiscuidade (promiscuous mode), estão então em modo “furtivo” para que não tenham endereço IP. Também não têm não pilha de protocolo associada. É freqüente encontrar vários IDS nas diferentes partes da rede e em especial colocar uma sonda fora da rede para estudar as tentativas de ataques bem como uma sonda internamente, para analisar os pedidos que atravessaram o firewall ou efetuadas do interior.

  4. Sistemas de detecção de intrusão (IDS) O H-IDs reside num hóspede específico e a gama destes softwares cobre, por conseguinte, uma grande parte dos sistemas de exploração como Windows, Solaris, Linux, HP-UX, AIX, etc… O H-IDs comporta-se como um demónio ou um serviço standard num sistema hóspede. Tradicionalmente, o H-IDS analisa informações específicas nos diários de registros (syslogs, messages, lastlog, wtmp…) e também captura os pacotes redes que entram/saem do hóspede, para detectar sinais de intrusões (Recusa de Serviços, de Backdoors, cavalos de troia, tentativas de acesso não - autorizados, execução de códigos maliciosos, ataques por profusão de buffers…).

  5. Sistemas de detecção de intrusão (IDS) As técnicas de detecção O tráfego rede (em todo o caso na Internet) é constituído geralmente por datagramas IP. Uns N-IDS é capaz de capturar os pacotes quando circulam nas ligações físicas sobre às quais está conectado. Os N-IDS consiste numa pilha de TCP/IP que reúne os datagramas IP e as conexões TCP. Pode aplicar as técnicas seguintes para reconhecer as intrusões: Verificação da pilha protocolar : Um número de intrusões, como por exemplo “Ping-Of-Death” e “TCP StealthScanning” recorrem a violações dos protocolos IP, TC, UDP e ICMP com o objetivo de atacar uma máquina. Uma simples verificação protocolar pode realçar os pacotes inválidos e assinalar este tipo de técnica muito usada. Verificação dos protocolos aplicativos : numerosas intrusões utilizam comportamentos protocolares inválidos, como por exemplo “WinNuke”, que utiliza dados NetBIOS inválidos (adição de dados OOB data). Para detectar eficazmente este tipo de intrusão, o N-IDS deve re-aplicar uma grande variedade de protocolos aplicativos como NetBIOS, TCP/IP,… Esta técnica é rápida (não é necessário procurar sequências de bytes na exaustividade da base de assinaturas), elimina em parte os falsos alertas e mostra-se, por conseguinte, mais eficiente. Por exemplo, graças à análise protocolar o N-IDS distinguirá um acontecimento de tipo “Back Orifice PING” (perigosidade baixa) de um acontecimento de tipo “Back Orifice COMPROMETIDO” (perigosidade elevada).

  6. Sistemas de detecção de intrusão (IDS) A principal vantagem desta técnica reside na facilidade da sua atualização e evidentemente na quantidade importante de assinaturas contidas na base dos NIDS. No entanto, não há nenhuma certeza de que quantidade rima com qualidade. Por exemplo, os 8 bytes “CE63D1D2 16E713CF” quando são dispostos no início dos dados do protocolo UDP, indicam tráfego Back Orifice com uma palavra-passe por defeito. Ainda que 80% das intrusões utilizem a palavra-passe configurada por defeito, os outros 20% utilizam senha personalizadas e não são reconhecida absolutamente pelos NIDS. Por exemplo, se alterar a palavra-passe “evade”, então a sequência de bytes transformar-se-á em “8E42A52C 0666BC4A”, o que se traduzirá automaticamente por uma ausência de sinalização dos NIDS. Esta técnica provoca também inelutavelmente um número importantes de falsos alertas ou falsos positivos. Existem ainda outros métodos para detectar e assinalar uma intrusão, como o reconhecimento dos ataques por PatternMatchingStateful e/ou a auditoria de tráfego de redes perigosas ou anormais. Em conclusão, um N-IDS perfeitos é um sistema que utiliza o melhor de cada uma das técnicas citadas acima.

  7. Sistemas de detecção de intrusão (IDS) Reconhecimento dos ataques por “PatternMatching”: Esta técnica de reconhecimento de intrusões é o mais antigo método de análise do N-IDS e é ainda muito corrente. Trata-se da identificação de uma intrusão pelo simples exame de um pacote e o reconhecimento numa sequência de bytes do pacote de uma sequência características de uma assinatura precisa. Por exemplo, a investigação da cadeia de caracteres “/cgi-bin/phf”, que indica uma tentativa de exploração do certificado CGI chamado “phf”. Este método é também utilizado em complemento de filtros nos endereços IP fonte, destino utilizados pelas conexões, as portas fontes e/ou destino. Pode-se acoplar este método de reconhecimento para o afinar com a sucessão ou a combinação de flags TCP. Esta técnica é generalizada nos NIDs de tipo “Network Grep”, baseado na captura dos pacotes brutos numa ligação supervisionada, e comparação via um parser de tipo “expressões regulares” que vai tentar fazer corresponder as sequência da base de assinaturas byte por byte com o conteúdo do pacote capturado.

  8. Sistemas de detecção de intrusão (IDS) As diferentes ações IDS Os principais métodos utilizados para assinalar e bloquear as intrusões nos N-IDS são os seguintes: Reconfiguração de equipamento terceiro (firewall, ACL sobre routers) : Ordem enviada pelos N-IDS a um equipamento terceiro (filtro de pacotes, firewalls) para reconfiguração imediata com o objetivo de bloquear um intruso fonte de intrusões. Esta reconfiguração é possível através da passagem das informações que detalham um alerta (em cabeça (s) de pacote (s)). Envio de um trap SNMP a um hipervisor terceiro : Envio do alerta (e o detalhe das informações que o constituem) em formato de um datagrama SNMP a uma consola terceira como HP OpenView, Tivoli, Cabletron Spectrum, etc. Envio de um e-mail a um ou vários utilizadores : Envio de um e-mail para uma ou várias caixas de correio para notificar uma intrusão séria. Registro (log) do ataque : Salvaguarda dos detalhes do alerta numa base de dados central, como por exemplo as informações seguintes: timestamp, @IP do intruso, @IP do alvo, protocolo utilizado, payload). Salvaguarda dos pacotes suspeitos : Salvaguarda do conjunto dos pacotes redes (rawpackets) capturados e/ou único (s) os pacotes que desencadearam um alerta. Início de uma aplicação : Lançamento de um programa externo para executar uma ação específica (envio de uma mensagem sms, emissão de um alerta auditivo…). Envio de um “ResetKill” : Construção de um pacote TCP FIN para forçar o fim de uma conexão (unicamente válido sobre técnicas de intrusão que utilizam o protocolo de transporte TCP). Notificação visual do alerta : Afixação do alerta numa ou várias consola(s) de gestão.

  9. Sistemas de detecção de intrusão (IDS) Os desafios IDS Os editores e a imprensa especializada falam cada vez mais de IPS (IntrusionPrevention System) em substituição dos IDS “tradicionais” ou para os distinguir. O IPS é um Sistema de Prevenção/Proteção contra as intrusões e não apenas de reconhecimento e sinalização das intrusões, como a maior parte dos IDS. A principal diferença entre um IDS (rede) e um IPS (rede) reside principalmente em 2 características: o posicionamento em corte na rede do IPS e não apenas à escuta na rede para o IDS (tradicionalmente posicionado como um sniffer na rede). a possibilidade de bloquear imediatamente as intrusões e independentemente do tipo de protocolo de transporte utilizado e sem reconfiguração de um equipamento terceiro, o que induz que o IPS é constituído em como nativo numa técnica de filtragem de pacotes e meios de bloqueio (drop connection, dropoffendingpackets, blockintruder,…).

  10. Diretor dos Sistemas de Informação (DSI) O Diretor dos Sistemas de Informação (igualmente chamado DSI) possui uma dupla competência de gerente e de técnico. É encarregado da adequação dos sistemas de informação à estratégia da empresa, da definição e gestão dos orçamentos e da coordenação das equipas técnicas. O diretor dos sistemas de informação é considerado como fazendo parte da Direção da empresa. A esse respeito, participa no Comitê de Direção e deve tomar em conta os pedidos das outras direções e prestar contas da sua atividade. Competências O ofício de Diretor dos Sistemas de Informação requer sólidas bagagens técnicas em informática e uma visão estratégica da inovação e da mudança, associadas a aptidões de gestão. Além disso, DSI deve possuir uma abordagem metódica e rigorosa do seu ofício, qualidades relacionais no que diz respeito às suas equipas e capacidades de negociação. Por último, deve dominar o inglês numa abordagem de relação com os parceiros internacionais da empresa.

  11. Diretor dos Sistemas de Informação (DSI) Estudos Não existe formação para DSI. Este posto é confiado a pessoas em meados/fim de carreira que tenham uma grande experiência nos diferentes domínios da informática e que geriram numerosos projeto de informática. Salário O salário de um DSI começa ao redor de 50.000 € e pode facilmente exceder os 100.000 € anuais.

  12. Sistemas de detecção de intrusão (IDS) Temos aqui alguns IDS disponíveis no mercado. Snort: NIDS um dos mais utilizados. faz análise em tempo real. seu mecanismo de detecção utiliza arquitetura modular através de   plugins. gera alertas em tempo real. arquitetura centralizada. análise baseada em assinaturas. simples e eficiente boa base de dados de assinaturas trabalha em UNIX ou Windows. distribuição livre (www.snort.org)

  13. Sistemas de detecção de intrusão (IDS) -Bro:            NIDS arquitetura centralizada análise baseada em assinaturas base de dados pobre. utilizado em DecUnix, FreeBSD, Solaris, SunOS e Linux. distribuição livre (www-nrg.ee.lbl.gov) AAFID (Autonomous Agents for Intrusion Detection): NIDS e HIDS arquitetura hierárquica. análise de acordo com os agentes EMERALD (Event Monitoring Enabling Response to Anomalous Live Disturbance): NIDS e HIDS. arquitetura distribuída análise baseada em conhecimento e em assinaturas projetado para redes de larga escala

  14. SNORT O que é o Snort O SNORT é uma ferramenta NIDS desenvolvida por Martin Roesch open source bastante popular por sua flexibilidade nas configurações de regras e constante atualização frente às novas ferramentas de invasão . Outro ponto forte desta ferramenta é o fato de ter o maior cadastro de assinaturas, ser leve, pequeno, fazer escaneamento do micro e verificar anomalias dentro de toda a rede ao qual seu computador pertence. O código fonte é otimizado, desenvolvido em módulos utilizando linguagem de programação C e, junto, com a documentação, são de domínio público. O Snort conta ainda, com o permanente desenvolvimento e atualização, que são feitos diariamente, tanto em relação ao código propriamente dito, como das regras de detecção. Os padrões utilizados na construção das regras de detecção das subversões são introduzidos no sistema de configuração, tão rápido quando são enviados os alertas originados pelos órgãos responsáveis, como por exemplo o CERT, Bugtraq (lista de discussão), entre outros. Por ser uma ferramenta peso leve, a utilização do Snort é indicada para monitorar redes TCP/IP pequenas, onde pode detectar uma grande variedade do tráfego suspeito, assim como ataques externos e então, fornece argumento para as decisões dos administradores. Os módulos que compõe o Snort são ferramentas poderosas, capazes de produzir uma grande quantidade de informação sobre os ataques monitorados, dado que é possível avaliar tanto o cabeçalho quanto o conteúdo dos pacotes, além de disponibilizar, por exemplo, a opção de capturar uma sessão inteira.

  15. SNORT O Snort monitora o tráfego de pacotes em redes IP, realizando análises em tempo real sobre diversos protocolos (nível de rede e aplicação) e sobre o conteúdo (hexa e ASCII). Outro ponto positivo desse software é o grande número de possibilidades de tratamento dos alertas gerados. O subsistema de registro e alerta é selecionado em tempo de execução através de argumentos na linha de comando, são três opções de registro e cinco de alerta. O registro pode ser configurado para armazenar pacotes decodificados e legíveis em uma estrutura de diretório baseada em IP, ou no formato binário do tcpdump em um único arquivo. Para um incremento de desempenho, o registro pode ser desligado completamente, permanecendo os alertas. Já os alertas podem, ser enviados ao syslog, registrados num arquivo de texto puro em dois formatos diferentes, ou ser enviados como mensagens WinPopup usando o smbclient. Os alertas podem ser enviados para arquivo texto de forma completa e o alerta rápido. O alerta completo escreve a mensagem de alerta associada à regra e a informação do cabeçalho do pacote até o protocolo de camada de transporte. A opção de alerta rápido escreve um subconjunto condensado de informação do cabeçalho alerta. Por fim, uma última opção desabilita os alertas completamente.Existe também, a possibilidade de utilizar métodos como o Database Plug-in por exemplo, para registrar pacotes em uma variedade de bases de dados diferentes (MySQL, PostgreSQL, entre outros), as quais contam com recursos próprios para efetuar consultas, correlações e dispõem de mecanismos de visualização para analisar dados.

  16. SNORT O Snort deve trabalhar em todos os lugares que o libpcap trabalha, e o mesmo foi compilado com sucesso nas seguintes plataformas: • i386 Sparc M68k/PPC Alpha Other X X X X X Linux X X X - - OpenBSD X - - X - FreeBSD X - X - - NetBSD X X - - - Solaris - X - - - SunOS 4.1.x - - - - X HP-UX - - - - X AIX - - - - X IRIX - - - X - Tru64 - - X - - MacOS X Server - - - - Win32 - (win9x-/NT/2000)

  17. SNORT O Snort poderá assumir três modalidades a seguir: Sniffer: Esta modalidade simplesmente captura os pacotes e imprime continuamente no console. Packetlogger: Registra os pacotes capturados no disco rígido. Network intrusiondetection system: Esta modalidade é a mais complexa e versátil, permitindo que o Snort analise o tráfego da rede de encontro a regras definidas pelo usuário, executando diversas ações baseadas em suas regras.

  18. SNORT IDS - Virtudes do SNORT Extremamente flexível: Algoritmos de inspeção baseados em regras. Sem falsos positivos inerentes. Controle total do refinamento das regras. Metodologias de detecção multi-dimensional: Assinaturas (impressões digitais) do ataque. Anomalias no protocolo. Anomalias no comportamento. Imensa adoção (comunidade SNORT): Dezenas de milhares de instalações (42 mil). Algumas das maiores empresas do mundo (Microsoft, Intel, PWC) Milhares de contribuidores fazendo regras para novas vulnerabilidades. Infra-estrutura de suporte da comunidade open source: Rápida respostas às ameaças. Velocidade de inovação. Velocidade de refinamento.

  19. SNORT IDS - Fraquezas do SNORT Performance modesta: Menos de 30mbps, para redes de até 10Mbps. Interface gráfica limitada: Configuração do sensor. Gerenciamento de regras. Implementação lenta e cansativa (pelo menos 10 dias). Capacidade analítica limitada. Sem suporte comercial: Dependência de pessoas "capacitadas", nem sempre estáveis... Gastos significativos com recursos humanos.

  20. SNORT A arquitetura e o funcionamento do Snort O Snort é um aplicativo que habilita a placa de rede do computador onde foi configurado, para modo promíscuo, ou seja, permite que todos os pacotes que trafegam pelo segmento de rede daquela máquina sejam capturados. Através de regras que são as assinaturas conhecidas dos ataques, é possível descobrir uma variedade de ataques e sondagens, como buffer overflow , port scans, ataques CGI (Common Gateway Interface), verificação de SMB (Server Message Block).O Snort com capacidade de alerta em tempo real, pode enviar os alertas a um arquivo de alerta individual ou a um meio externo como o WinPopUp (utilitário responsável por mandar mensagens de uma máquina para outra em uma rede). A engenharia de detecção é programada usando um idioma simples que descreve a programação de testes de pacote e ações. A facilidade de uso simplifica e agiliza o desenvolvimento de regras de descoberta de novos ataques. A arquitetura do Snort enfoca o desempenho, simplicidade e flexibilidade. Há três subsistemas primários que o compõem: Decodificador de pacote; Engenharia de Detecção; Subsistema de login e alerta. Estes subsistemas são desenvolvidos sobre a biblioteca Libpcap. Esta biblioteca oferece uma API (Aplication Program Interface) independente do sistema operacional que permite as aplicações capturarem pacotes de uma rede para gravá-los em um arquivo, e também ler arquivos contendo capturas gravadas. A configuração do programa, analise do arquivo de regras e geração dos dados estruturados acontece antes da seção de captura ser inicializada.

  21. SNORT O decodificador de pacotes A arquitetura de decodificação é organizada ao redor das camadas da pilha protocolar presentes e suportadas pelo protocolo TCP/IP. Estas rotinas de decodificação são chamadas ordenadamente pela pilha protocolar, do nível de dados, subindo para o nível de transporte terminando finalmente no nível de aplicação. A velocidade é enfatizada, e a maioria das funcionalidades do decodificador consistem na colocação de ponteiros nos pacotes de dados, para mais tarde serem analisados pela arquitetura de detecção. A ferramenta Snort provê capacidades para decodificar pacotes em redes Ethernet, SLIP (Serial Line Internet Protocol), PPP (Point to Point Protocol), sendo que o suporte a ATM (AsynchronousTransferMode) está sendo desenvolvido. A arquitetura de detecção A ferramenta Snort mantém suas regras de descoberta de intrusão em duas listas denominadas Chain Headers (Cabeçalho da Regra) e Chain Options (Cabeçalho de Opções). Chain Headers contém os atributos comuns de uma regra, e Chain Options armazena os padrões de ataque que serão pesquisados dentro dos pacotes capturados e as ações que serão tomadas caso um ataque seja diagnosticado.

  22. SNORT Arquitetura de armazenamento de regras A arquitetura de armazenamento de regras é examinada pela arquitetura de detecção de forma recursiva, para cada pacote de dados capturado. Quando o cabeçalho da regra for idêntico ao cabeçalho do pacote capturado, os dados contidos no pacote são comparados com o cabeçalho das opções da regra. Se a ocorrência de um ataque for identificada, uma ação especifica definida na regra é disparada. Uma revisão da arquitetura de descoberta está atualmente em planejamento e em fase de desenvolvimento. A próxima versão da arquitetura incluirá a capacidade para que os usuários possam escrever e distribuir módulos compatíveis com as palavras chaves da linguagem da arquitetura de detecção. Isto permitirá a customização do programa para situações específicas. O subsistema de login/alerta O subsistema de login e alerta é selecionado em tempo real com comandos condicionais de interrupção. Há atualmente três opções de login e cinco de alerta As opções de login podem ser fixadas para armazenar pacotes decodificados, em formato legível para o ser humano.

  23. SNORT O formato decodificado de login permite análise rápida de dados armazenados pelo sistema. Os login podem ser deixados parcialmente incompletos para agilizar a performance. O administrador pode ser avisado de novos alertas através do envio de mensagem ao syslog (programa responsável por gerar e armazenar logs no Linux/Unix) ou armazenar em um arquivo texto que pode ser utilizado em multi-plataformas. Existem três opções disponíveis para criação de arquivos de alerta. A primeira opção possibilita a criação de um arquivo texto com informações completas do alerta, registrando a mensagem de alerta e a informação de cabeçalho de pacote fornecido pelo protocolo do nível de transporte. A segunda opção cria um arquivo que registra um subconjunto condensado de informações, permitindo maior desempenho que a primeira opção. A última opção é utilizada para desconsiderar alertas e é extremamente útil quando os registros são desnecessários ou impróprios. Esta situação ocorre quando a rede está passando por testes de penetração.

  24. Redes de Computadores 24

More Related