Prévia do material em texto
REDES IV – SISTEMA DE PROTEÇÃO E SEGURANÇA DE REDES AULA 6 Prof. Luis José Rohling 2 CONVERSA INICIAL Para a implementação das soluções de segurança das redes, além do Firewall, temos os sistemas de IDS – Intrusion Detection System e de IPS – Intrusion Prevention System, que têm funções distintas do Firewall e complementam a segurança da rede e dos sistemas. A operação do Firewall, conforme vimos anteriormente, consiste basicamente na monitoração do tráfego, permitindo ou bloqueando o tráfego, de acordo com as regras estabelecidas. E esse processo também sofreu uma grande evolução, iniciando com a configuração dos filtros de pacotes, em que era necessária a configuração manual de permissão dos pacotes, de acordo com as informações de camada três e quatro, e evoluiu para os Firewalls do tipo Statefull, que monitoram o tráfego e acompanham as sessões, incluindo os Firewalls de camada de aplicação, que conseguem acompanhar também as diversas sessões abertas, em função da operação das tecnologias de comunicação, tal como o VoIP. No entanto, nem todos os tipos de ameaças nas redes podem ser bloqueados pelo Firewall, sendo necessários outros sistemas de segurança. Assim, um dos primeiros sistemas de segurança foi o IDS, que consiste em detectar tentativas de acesso indevido, alertando a equipe de segurança para que esta tome as devidas providências. Fazendo-se a comparação com os sistemas de segurança patrimonial, o IDS seria equivalente aos sistemas de detecção de invasão do perímetro, tal como um sensor de movimento, por exemplo, que irá gerar um alarme caso esse detector seja acionado pela detecção de movimento na área de cobertura do sensor. Além do processo de detecção de intrusão, realizada pelo IDS, podemos também automatizar a ação para o bloqueio da tentativa de intrusão, o que é realizado então pelos sistemas de IPS. Ou seja, o IPS poderá, além da detecção de uma tentativa de acesso indevido, também realizar o bloqueio dessa tentativa de intrusão. E poderemos ter ainda essas funções implementadas de maneira integrada, com o dispositivo de segurança executando as funções de Firewall e de IDS/IPS simultaneamente. E para entendermos como os sistemas de IPS/IDS deverão operar, é necessário entendermos como os ataques de intrusão são estruturados, para identificarmos quais são os mecanismos de detecção e de bloqueio que podem ser empregados, o que estudaremos nesta nossa aula. 3 TEMA 1 – A DETECÇÃO DE INTRUSÃO Uma das primeiras medidas adotadas para a implementação da segurança das redes e dos sistemas foi a detecção de intrusão, chamada de IDS, que consistia em identificar se algum acesso não autorizado estava sendo feito à rede interna ou aos sistemas. Conforme vimos anteriormente, os mecanismos de IDS funcionam de maneira semelhante ao sistema de alarme da segurança patrimonial, em que, caso haja uma invasão do perímetro monitorado, deverá ser disparado algum tipo de alarme para o acionamento da equipe de segurança. Para que isso ocorra, nos sistemas de segurança patrimonial, são instalados os sensores de movimentação ou de barreira, posicionados nos pontos críticos, onde pode ocorrer uma invasão do perímetro. Assim, os sistemas de IDS também deverão ser posicionados em uma rede, de modo que possam monitorar seus pontos críticos, sendo que o ponto de maior vulnerabilidade certamente é a conexão com a rede externa. Dessa forma, o IDS poderia estar posicionado da mesma maneira que o Firewall, sendo que as soluções mais atuais de equipamentos de segurança já contemplam essas duas funcionalidades no mesmo dispositivo. Quanto aos pontos de monitoração, se considerarmos novamente a abordagem da segurança patrimonial, normalmente temos diversos sensores instalados, em diversos pontos, dentro da área a ser protegida. No caso da rede de dados, é muito comum a instalação do IDS apenas para a monitoração do tráfego que vem da rede externa, na borda entre a rede LAN e a Internet. Porém, assim como na segurança patrimonial, uma monitoração eficiente deverá cobrir todos os possíveis pontos de invasão do perímetro, que no caso da rede de dados poderia ser qualquer computador, pois um computador na rede interna poderia executar um malware que tenha sido recebido em um cavalo de Tróia, por exemplo. Dessa forma, um sistema de IDS deveria também monitorar os pontos de conexão de todos os usuários, tornando o sistema bastante complexo. 4 Figura 1 – O IDS Se realizarmos uma pesquisa sobre as soluções comerciais de IDS, encontraremos diversos sistemas que operam integrados com o firewall, pois como esse equipamento já tem a finalidade de realizar a inspeção do tráfego de rede e estará instalado na conexão da rede interna com a rede externa, está no ponto ideal para a detecção das tentativas de intrusão vindas da rede externa. No entanto, é importante estarmos cientes de que, nesse modelo de implementação, o IDS detectará apenas as ameaças vindas da rede externa, e não poderá detectar eventuais ameaças na rede interna. Fazendo-se a analogia com a segurança patrimonial, o IDS instalado na borda da rede seria equivalente à instalação de apenas um sensor de alarme na porta de entrada principal, detectando uma invasão do perímetro apenas naquele ponto. 1.1 Os tipos de ataques Para identificar as possíveis tentativas de intrusão, o IDS deverá realizar a análise de todo o tráfego que está passando por ele, buscando identificar se o comportamento desse tráfego apresenta um padrão diferente do que seria o tráfego “normal”. E esse é o grande desafio dos sistemas de IDS: saber identificar o que é, ou não, um comportamento normal de rede. Para isso, um dos parâmetros utilizados é a quantidade de tráfego vindo de um único endereço de destino, o que poderia caracterizar uma tentativa de ataque de acesso, por exemplo, caracterizando um ataque chamado de força bruta, no qual o atacante testa inúmeras possibilidades de combinações de credenciais, com diversos usuários e senhas distintos. Portanto, para detectar esse tipo de ataque, o IDS INTERNET Monitoração e detecção IDS 5 teria que contabilizar o número de pacotes recebidos, tendo como origem um mesmo endereço, e cujo destino seria um determinado servidor ou serviço. Figura 2 – O IDS e o ataque de acesso Outro tipo de ataque que deve ser detectado pelo IDS é o ataque de reconhecimento. Assim, para detectar esse tipo de ataque, que poderia ser do tipo varredura de ping, por exemplo, o IDS deve contabilizar a quantidade de requisições vindas de um mesmo endereço IP de origem, porém para vários destinos diferentes. Ou seja, nesse caso, temos uma diferença entre um ataque de acesso e um ataque de reconhecimento, em relação ao destino dos pacotes recebidos. Entretanto, para que não seja necessário bloquear totalmente o protocolo ICMP na entrada da rede, podemos utilizar o IDS para realizar essa monitoração, gerando um alarme quando isso ocorrer, para que a equipe de segurança tome as medidas necessárias. Figura 3 – O IDS e o ataque de reconhecimento INTERNET Grande quantidade de mensagens INTERNET Varredura de endereços 6 1.2 Processo de detecção Um dos aspectos relacionados à operação do IDS é que, para o seu correto funcionamento, é necessário ajustar a chamada sensibilidade do IDS, que no exemplo anterior, do ataque empregando a varredura de ping, seria a quantidade de endereços de destino para os quais foram enviadas as mensagens ICMP, vindas de um mesmo endereço de origem. E essa contagem também estará associada à variável tempo, ou seja, o IDS irá acumular a contagem de pacotes que foram recebidos em um determinado intervalo de tempo. Normalmente como esses ataques são feitos a partir de um software, o intervalo entre cada pacote poderáser da ordem de milissegundos, o que caracteriza um ataque de uma máquina, e não seria a ação de um administrador de rede testando a conectividade da rede, pois o intervalo entre a digitação de comandos por um administrador será muito maior. Já para prevenir um ataque de acesso, o IDS deverá contabilizar a quantidade de pacotes enviados para um mesmo endereço, a partir de uma mesma origem. O problema é diferenciar esse tráfego do que seria a resposta de um servidor externo, a uma solicitação de um dispositivo interno, para uma aplicação do tipo streaming de vídeo, por exemplo. Assim, o IDS teria que operar em conjunto com o Firewall, que detectaria se esse tráfego é uma resposta a uma solicitação interna. No entanto, essa técnica de detecção é eficiente para os servidores internos, pois, a princípio, eles não devem solicitar informações externas, mas apenas atender essas solicitações. Portanto, se tivermos um tráfego excessivo vindo em direção ao servidor, deverá ser gerado um alarme de tentativa de ataque de acesso, pois o tráfego normal esperado é termos um volume de tráfego elevado do servidor em direção aos clientes, ou seja, no sentido contrário. Portanto, o IDS também deverá ser capaz de diferenciar os dispositivos internos, saber se estes são de servidores ou de terminais de usuários, para então gerar o alarme de tentativa de intrusão, de acordo com a funcionalidade do dispositivo. Portanto, será necessário que o dispositivo que executará essa tarefa possua uma alta capacidade de processamento para que essa análise seja executada sem afetar significativamente o desempenho da rede. E também esse processo consumirá muito recurso de memória, pois o IDS terá que armazenar 7 as informações das sessões para realizar essa análise estatística dos pacotes trafegados. 1.3 Implementação do IDS Uma das técnicas utilizadas para evitar que o IDS cause a degradação do desempenho da rede consiste em copiar o tráfego para uma outra porta, na qual estará instalado o IDS. Esse tipo de implementação também permite que o IDS monitore toda a rede, bastando enviar a cópia dos quadros de todos os switches para o IDS. Entretanto, nesse modelo, é importante que a rede LAN esteja devidamente implementada e dimensionada para comportar esse tráfego adicional. E é necessário também que todos os switches da rede suportem esse tipo de configuração, conhecido por espelhamento de portas, conforme visto na aula sobre as ferramentas de monitoração de tráfego. Figura 4 – Operação do IDS a partir da cópia do tráfego A grande limitação do IDS é que ele apenas detecta a tentativa de intrusão, não tomando nenhuma ação efetiva de bloqueio da tentativa de invasão, ou seja, ele apenas irá gerar um alarme, sendo necessário que outro sistema ou um administrador da rede tome as medidas cabíveis para o bloqueio. Outro aspecto do IDS é o nível de sensibilidade da geração de alarmes, pois o comportamento de uma tentativa de invasão pode ser muito parecido com um tráfego válido. Assim, o IDS poderá gerar os chamados Falsos Positivos, que são os alarmes gerados indicando que aquele tráfego é uma tentativa de ataque ou invasão, mas na realidade é um tráfego válido. Como os alarmes deverão ser INTERNET Cópia do tráfego para inspeção 8 analisados por outro sistema ou pessoal especializado, esses Falsos Positivos poderão ser identificados nessa segunda análise, antes de serem tomadas as medidas de bloqueio. TEMA 2 – A PREVENÇAO DE INTRUSÃO Além do IDS, que foi uma das primeiras implementações de segurança em redes, temos o IPS – Intrusion Prevention System, que é uma evolução do IDS, pois, além de detectar uma intrusão, também irá atuar para bloquear essa intrusão, de forma automática. Ou seja, o IDS é um elemento que atua de maneira passiva, que faz a análise do tráfego e apenas gera um alarme, caso seja detectada uma tentativa de invasão. Já o IPS é um elemento ativo, pois além de detectar a tentativa de invasão, também irá bloquear esse tráfego. Dessa forma, a instalação do IPS deve ser feita na entrada da rede, fazendo com que o tráfego passe todo através dele, permitindo essa ação de bloqueio. Porém, nesse caso, poderemos ter um impacto no desempenho do tráfego de entrada da rede, pois o dispositivo de IPS deverá analisar todo o tráfego em tempo real, decidindo se irá permitir ou bloquear o tráfego, semelhante ao processo do Firewall. E além de bloquear o tráfego, o sistema de IPS também deverá gerar os alarmes, tal como é feito pelo sistema de IDS, para alertar o administrador da rede de que uma tentativa de invasão foi detectada, bem como para registrar as ocorrências desses ataques. Figura 5 – O IPS Um dos efeitos indesejados no uso do IPS é que ele poderá bloquear o tráfego válido quando estiver configurado para um nível maior de segurança, no INTERNET Inspeção e bloqueio IPS 9 caso dos chamados Falsos Positivos. Já o IDS, no caso dos Falsos Positivos, apenas geraria um alarme indevido, não prejudicando a comunicação. Inclusive essa é uma vulnerabilidade dos sistemas de IPS, pois o Hacker poderia simular uma tentativa de invasão apenas para bloquear um tráfego legítimo, falsificando o endereço de origem. Mesmo assim, na atualidade, são utilizados os IPS como dispositivos de segurança, e não apenas os IDS. Para detectar um ataque, os IDS utilizam dois mecanismos distintos: padrões de assinatura e estatística de tráfego. Além disso, como os mecanismos de ataque também têm evoluído, os IPS necessitam ter seus padrões de assinatura constantemente atualizados, o que demanda a contratação de um serviço de suporte do fabricante, que irá atualizar esses dispositivos à medida que novos padrões de ataque sejam descobertos. Nesse caso, esse processo assemelha-se às ferramentas de antivírus, que necessitam manter seu banco de dados constantemente atualizado, à medida que novos vírus são descobertos. 2.1 O IDS/IPS Snort Uma das soluções disponíveis no mercado para a implementação de um sistema de IPS é o Snort, que utiliza uma série de regras que permitem detectar uma atividade de rede maliciosa, utilizando essas regras para identificar os pacotes que correspondam a elas e gerando alertas para os usuários, e assim operando como um sistema de IDS. E o Snort também pode ser utilizado para bloquear esses pacotes maliciosos, que representem uma tentativa de intrusão, operando com um sistema de IPS. O IPS Snort é baseado em plataforma Open Source e disponível para download no site <snort.org>, que é mantido pelo chamado Snort Team, tendo sido criado por Marty Roesch e mantido por uma equipe de desenvolvedores, listados no mesmo site. Após baixadas e configuradas, as regras do Snort são divididas em dois conjuntos distintos, que são o Community Ruleset e o Snort Subscriber Ruleset. Este último é desenvolvido, testado e aprovado pela Cisco Talos. Seus assinantes receberão o conjunto de regras, chamado de ruleset, quando são liberados para os clientes da Cisco. E essas regras podem ser baixadas do site <snort.org> e implantadas nas redes. O Community Ruleset é desenvolvido pela 10 comunidade Snort e QAed pela Cisco Talos e está disponível gratuitamente para todos os usuários. O Snort pode ser instalado em um equipamento que esteja implantado de forma que o tráfego da rede passe todo através dele, de forma que possa bloquear os pacotes que caracterizarem uma invasão. O Snort pode ser empregado de três formas diferentes, como um farejador de pacotes, tal como a ferramenta tcpdump, ou como um gerador de logs dos pacotes, o que pode ser útil para depuração de tráfego de rede, ou pode ainda ser utilizado como um sistema completo de prevenção de intrusões de rede. O Snort pode ser baixado e configurado tanto para uso pessoal quanto para o uso empresarial, sendo que, para sua utilização,basta fazer o download do software no site <snort.org> e instalá-lo em uma plataforma Linux. O Snort não apresenta grande dificuldade para sua instalação e configuração, porém como apresenta muitas opções de configuração, operando no modo de linha de comando, poderá não ser fácil identificar quais as combinações de configurações que vão levar ao desempenho desejado, ou qual será a melhor opção ou combinação de configurações. Em relação à operação, o Snort pode ser configurado para ser executado em três modos distintos (Snort Project, 2020), que são: • Sniffer mode: realiza apenas a captura dos pacotes, exibindo o resultado dessa captura em um fluxo contínuo, na tela de console. • Packet Logger mode: captura e armazena os pacotes em disco. • Network Intrusion Detection System (NIDS) mode: realiza detecção e análise do tráfego de rede, sendo esse o modo mais complexo e configurável 2.2 Configurando o Snort Para utilizarmos o Snort na configuração básica, onde temos o Snort operando no modo apenas de captura e monitoração na tela do computador, que é o modo de Sniffer, basta executarmos o comando: ./snort -v Esse comando executará o Snort e mostrará os cabeçalhos de camada de rede, que é o protocolo IP, e os protocolos TCP/UDP/ICMP, e nenhuma outro 11 mais. Assim, para visualizarmos os dados das aplicações que estão passando através do equipamento, deveremos executar o Snort com o comando: /snort -vd Desse modo, o Snort exibirá os dados dos pacotes, bem como os dados dos cabeçalhos. E, se desejarmos uma visualização com ainda mais detalhes, mostrando os cabeçalhos de camada de enlace de dados, devermos executar o comando: ./snort -vde Os parâmetros para o comando de execução do Snort podem ser digitados separadamente ou de forma combinada, conforme vimos anteriormente. Assim, para a execução do Snort no modo visto acima, poderíamos utilizar o comando mostrado abaixo, que produzirá o mesmo resultado. ./snort -d -v -e Para a execução do Snort no modelo Packet Logger, devemos executar o comando mostrado abaixo, lembrando que para gravarmos os pacotes em disco, é necessário especificarmos um diretório de registro, sendo que com esse comando Snort entrará automaticamente no modo de logger de pacotes: ./snort -dev -l ./log Para esse exemplo, devemos considerar que existirá um diretório chamado log no diretório atual. Caso contrário, o Snort exibirá uma mensagem de erro. Assim, quando o Snort é executado nesse modo, ele irá coletar todos os pacotes capturados, que serão colocados em uma hierarquia de diretório, com base no endereço IP de cada um dos hosts, identificados pelos endereços contidos nos pacotes IP. 12 Figura 6 – O SNORT como Packet Logger Se for especificado apenas o parâmetro -l, o Snort às vezes utilizará o endereço do computador remoto como o diretório no qual ele coloca pacotes, e às vezes ele utilizará o endereço de host local. Assim, para gerar os logs em um cenário de uma rede residencial, por exemplo, é necessário definir qual é a rede doméstica, utilizando-se o comando mostrado abaixo: ./snort -dev -l ./log -h 192.168.1.0/24 Essa regra configura o Snort para gravar os dados do link e dos cabeçalhos TCP/IP, bem como os dados do aplicativo, no diretório ./log, e que deverão ser registrados os pacotes que pertencerem à rede classe C 192.168.1.0. Assim, todos os pacotes recebidos serão gravados em subdiretórios, do diretório de registro, sendo que os nomes do diretório serão baseados no endereço do host remoto, e não utilizando os endereços da rede 192.168.1.0. Caso ambos os hosts, de origem e destino, estejam na mesma rede, os pacotes serão gravados no diretório baseado no maior dos dois números de porta contidos no pacote. Ou seja, o pacote será gravado no diretório cujo endereço de camada três corresponda ao maior número de porta, de camada quatro. E, em caso de termos novamente um empate de valores, será utilizado como critério de escolha a gravação no diretório do endereço de origem. Caso tenhamos uma rede de alta velocidade ou quisermos registrar os pacotes em um arquivo mais compacto, para análise posterior, poderemos utilizar o registro dos dados no modo binário. No modo binário, o Snort irá registrar os pacotes, no formato do tcpdump, em um único arquivo binário, armazenado no diretório de registro, e cujo comando será: INTERNET SNORT Diretório ./log logs 13 ./snort -l ./log –b Figura 7 – Armazenamento em arquivo único Agora não será mais necessário especificar uma rede, pois o modo binário irá registrar todos os dados em um único arquivo, o que elimina a necessidade de informar como deverá ser formatada a estrutura do diretório de saída. Além disso, não é mais necessário que o Snort seja executado no modo de exibição dos dados na tela, nem será necessário especificar os parâmetros -d ou -e, porque no modo binário, todos os dados do pacote são registrados, e não apenas partes dos pacotes. Assim, para configurar o Snort no modo logger, basta especificar um diretório para o armazenamento do arquivo, utilizando na linha de comando o parâmetro -l e o nome do diretório, e, adicionalmente, o parâmetro - b, para que o armazenamento seja feito no formato binário, diferente do formato de armazenamento padrão, que é o formato de texto ASCII. Após os pacotes terem sido salvos no arquivo binário, eles poderão ser lidos novamente com qualquer aplicação de sniffer que suporte o formato binário tcpdump, tal como a aplicação tcpdump ou o Ethereal. O próprio Snort também poderá ser empregado para a leitura dos pacotes, utilizando o parâmetro -r na linha de comando, o que coloca o Snort no modo de reprodução do arquivo. Os pacotes de qualquer arquivo que tenha o formato do tcpdump podem ser processados através do Snort, em qualquer um dos modos de execução. Por exemplo, para executarmos um arquivo de log binário, utilizando o Snort no modo sniffer, para visualizarmos os pacotes na tela, o comando a ser utilizado será: ./snort -dv -r packet.log INTERNET ./snort -l ./log -b Arquivo binário único logs 14 Figura 8 – Acesso aos dados de log Os dados armazenados no arquivo poderão ser manipulados de várias maneiras, através dos modos de registro de pacotes e de detecção de intrusão do Snort, bem como através da interface BPF disponível na linha de comando. Por exemplo, para visualizarmos os pacotes ICMP do arquivo de registro, basta especificarmos um filtro BPF na linha de comando e o Snort somente exibirá os pacotes ICMP contidos no arquivo, conforme a linha de comando mostrada abaixo: ./snort -dvr packet.log icmp TEMA 3 – OS SISTEMAS DE IDS E IPS Para a implementação dos sistemas de IDS e IPS, temos basicamente duas técnicas primárias de detecção de ameaças, que são a detecção baseada em assinaturas e a detecção baseada em anomalias. Assim, quando estamos escolhendo uma solução para a implementação desse sistema em uma rede, é necessário conhecer e diferenciar esses dois mecanismos de detecção, pois teremos que identificar quais são as soluções disponíveis no mercado e que poderão estar baseadas em uma dessas técnicas, assinatura ou em anomalia, podendo também encontrar soluções de mercado que já contemplam ambas as técnicas, pois elas são complementares. INTERNET Arquivo binário único logs Essação de monitoramento de segurança Comando: ./snort -dv -r packet.log 15 Outro aspecto associado à operação dos sistemas de IDS são os chamados falsos positivos. Nesse caso, um alarme é gerado, apesar de o tráfego em questão ser um tráfego normal e não uma tentativa de invasão. E a geração de falsos positivos poderá ocorrer caso o ajuste do nível de sensibilidade do sistema não esteja correto. Por exemplo, em um horário de pico de tráfego, poderemos ter um aumento significativodo tráfego, com destino a um determinado servidor, e essa variação do tráfego poderia ser interpretada pelo IDS como um ataque. Em relação a isso, com a utilização do modelo de detecção baseada em assinaturas, teremos menos falsos positivos, pois essas alterações no volume de tráfego, caso sejam normais, não iriam gerar um alarme. Porém, como nesse modelo apenas as assinaturas conhecidas são sinalizadas, poderemos ter uma brecha de segurança para as novas ameaças que ainda não foram identificadas. Assim, mesmo com a possibilidade de mais falsos positivos no sistema de detecção baseada em anomalias, desde que configurados corretamente, poderemos ter a detecção de ameaças que eram até então desconhecidas. 3.1 Os modos de operação do IDS Em um sistema de IDS baseado em assinatura, que também é conhecido como IDS baseado em conhecimento, existem regras ou padrões de tráfego malicioso característicos, que são procurados em um processo de análise do tráfego da rede. Uma vez que uma correspondência com uma assinatura é encontrada, um alerta é gerado. E esses alertas podem ser gerados aos serem descobertos problemas tais como malwares conhecidos, atividades de varredura de rede, ataques aos servidores entre outros. E, conforme vimos anteriormente, como as ameaças evoluem continuamente, em um sistema de IDS baseado em assinatura, é necessária a atualização constante da base de conhecimento, ou seja, das assinaturas, para que todas as novas ameaças possam ser detectadas adequadamente. Caso contrário, o sistema de IDS ficará obsoleto, identificando apenas as ameaças existentes em um tempo passado, e vulnerável às ameaças surgidas posteriormente. Para a atualização dos sistemas de IDS baseados em assinatura, os fornecedores de soluções mantêm uma equipe de especialistas em segurança, que estão constantemente acompanhando as novas ameaças e atualizando a base de conhecimento a ser utilizada pelos sistemas. Assim, novas assinaturas 16 são adicionadas à base de dados de ameaças dos IDS dos diversos fabricantes, sendo necessário que as empresas que utilizam essas soluções tenham um contrato de serviço com os fornecedores, de modo que recebam essas atualizações constantemente. Os seja, no processo de avaliação das soluções de mercado, é necessário verificar, além do custo de aquisição das soluções, também o custo de manutenção da base da assinatura de ameaças, o que normalmente é feito através de um contrato anual do serviço de suporte. Em um sistema de IDS baseado em anomalias, que também é chamado de IDS baseado em comportamento do tráfego, o processo de geração do tráfego é muito mais importante do que o conteúdo do tráfego em si. Assim, uma solução de IDS baseada em anomalias depende do comportamento do tráfego, e não de padrões baseados em assinaturas. Esse tipo de IDS irá procurar por atividades incomuns, que se desviem das médias estatísticas de atividades anteriores, ou se diferenciem significativamente de atividades previamente vistas. Esse modelo de análise pode ser comparado com o modelo empregado para implementar a segurança em operações financeiras, principalmente em compras com cartão de crédito. Assim, para um consumidor cujas compras são sempre realizadas em uma determinada cidade, que normalmente é a cidade onde reside, e que tem um valor médio de compras, caso seja feita uma compra em oura localidade, que pode ser outra cidade, outro estado, ou até mesmo outro país e com um valor muito maior do que a média, normalmente o processo de pagamento dessa compra será bloqueado, pois está muito diferente do comportamento “padrão” desse consumidor. Da mesma forma, para um sistema de IDS baseado no padrão de tráfego, caso um usuário, que sempre faz o acesso a um servidor da matriz, acessando os arquivos de um determinado departamento, tente fazer o acesso a um servidor em outra localidade e em arquivos de outro departamento, esse comportamento deverá ser identificado pelo sistema de IDS e gerado um alarme para a equipe de segurança. Assim, um sistema de IDS eficiente deverá contemplar os dois modelos, utilizando a base de dados de um sistema de assinatura, que permite a identificação das ameaças e sua evolução, bem como utilizando o modelo de análise do tráfego, onde um acesso poderá não corresponder a um padrão identificado pelas assinaturas, mas em função da identificação de uma mudança 17 significativa no perfil de tráfego, poderá também caracterizar uma tentativa de invasão. 3.2 Os sistemas de IDS baseados em rede Os sistemas de detecção de intrusões baseados em rede, também chamados de NIDS – Network-based Intrusion Detection System, operam realizando a inspeção de todo o tráfego em um segmento de rede, a fim de detectar atividades maliciosas que caracterizem uma ameaça à rede ou aos sistemas. Na implementação de um sistema de NIDS, uma cópia do tráfego que cruza a rede é enviada para o dispositivo de NIDS, espelhando o tráfego dos switches da rede e também dos roteadores. Assim, um dispositivo NIDS deverá monitorar o tráfego da rede e gerar alertas, baseados em padrões de tráfego ou em assinaturas, e quando esses eventos maliciosos são sinalizados pelo dispositivo de NIDS, as informações sobre esses eventos deverão ser registradas. Esses dados precisam, então, ser monitorados para que seja identificada a ocorrência de um evento de segurança, sendo que, combinadas essas informações com eventos coletados de outros sistemas e dispositivos, poderemos ter uma imagem completa do cenário de segurança da uma rede. Normalmente, nenhuma dessas ferramentas de segurança conseguirá agregar todas as informações e realizar a correlação entre os eventos, de modo que para isso, teremos um sistema específico, que é o Gerenciador de Informações de Segurança e Eventos, conhecido como SIEM – Security Information and Event Manager. E assim como temos diversas soluções de mercado para os sistemas de IDS e IPS, também teremos diversas opções de sistemas de SIEM, disponibilizadas por diversos fornecedores de sistemas de segurança. Uma das opções para a implementação de um NIS é o Snort, cuja configuração básica para a operação como um Sniffer ou como um Packet Logger já vimos anteriormente. E depois, veremos a sua configuração para operação como um IDS efetivamente. O Snort é bastante conhecido no mercado também por seu logotipo, que é o de um porquinho realizando o farejamento, indicando sua ação na rede. O Snort teve sua primeira versão lançada em 1998, por Martin Roesch, inicialmente como um farejador de pacotes, tornando-se posteriormente um IDS, graças às contribuições da comunidade por se tratar de uma solução de código aberto. E como a maioria das aplicações Open Source, 18 o Snort não tem interface gráfica e sua configuração é feita através de linha de comando, o que nem sempre é muito fácil de utilizar. Mas temos algumas ferramentas de código aberto que foram desenvolvidas para facilitar a configuração com uma interface web para consulta e análise dos alertas, que são as aplicações BASE e SGUIL. As principais características do Snort são: uma longa vida útil do produto, sem sinais de ser descontinuado, grande apoio da comunidade de desenvolvedores para as plataformas de código aberto, grande quantidade de ferramentas para interfaces de gerenciamento administrativo, totalmente testado e comprovado pelo mercado. Além do Snort, outra solução para um NIDS é o Suricata, cuja arquitetura é diferente do Snort, porém operando basicamente da mesma maneira que Snort e podendo utilizar as mesmas assinaturas, porém com maiores recursos e funcionalidades. E também para o Suricata existem diversas ferramentas de código aberto de terceiros disponíveis para a utilização de uma interface web para consulta e analise dos alertas gerados pelo IDS do Suricata. E a seguir, temos algumasdas funcionalidades desse IDS. O Snort é executado em um único segmento, o que significa que ele só pode usar uma CPU por vez, sendo que o Suricata pode executar muitas threads simultaneamente, o que é chamado de Multi-Threaded, permitindo que ele utilize todos os núcleos ou CPUs que estão disponíveis. Porém, existe alguma divergência se efetivamente isso representa uma vantagem. Outro recurso do Suricato é a capacidade de aceleração do Hardware, o que permite a utilização de interfaces gráficas para a inspeção do tráfego da rede. E também permite a extração dos arquivos, o que pode ser utilizado para realizar a captura e análise do tráfego capturado, para identificação de eventuais ameaças. O Suricato permite a captura e o registro dos protocolos TLS/SSL, solicitações HTTP e solicitações de DNS e possui uma grande comunidade de suporte. TEMA 4 – O SNORT COMO IDS Para executarmos o Snort no modo de IDS, que é o modo chamado de NIDS – Network Intrusion Detection System, não é necessário realizar a gravação de todos os pacotes transmitidos pela rede, sendo necessário apenas 19 a aplicação das regras. Assim, no exemplo visto anteriormente, para utilizar o Snort como um IDS, podemos utilizar o comando abaixo: ./snort -dev -l ./log -h 192.168.1.0/24 -c snort.conf Nesse exemplo, o parâmetro -c indica que o nome do arquivo de configuração do Snort, que conterá as regras, é o arquivo snort.conf. Com isso, o Snort aplicará as regras contidas no arquivo snort.conf a cada pacote, definindo se deverá ser executada alguma ação específica, baseada no tipo de regra que estará contida no arquivo. Se não for especificado o diretório para a gravação dos Logs, que forem gerados de acordo com as regras do programa, ele utilizará como padrão o caminho /var/log/snort. Figura 9 – Regras de IDS Caso o Snort seja utilizado por um longo prazo, operando efetivamente como um IDS, o parâmetro -v não deve ser utilizado na linha de comando, pois como a tela é um dispositivo de saída lento, esse processo pode comprometer o desempenho do sistema e os pacotes podem ser descartados, enquanto são encaminhados para o monitor. E também não será necessário gravar os cabeçalhos do link de dados para a maioria dos aplicativos, podendo-se então ser omitido o parâmetro -e. Assim, podemos utilizar o seguinte comando: ./snort -d -l ./log -c snort.conf Esse exemplo configurará o Snort para ser executado no modo NIDS mais básico, registrando em disco os pacotes que corresponderem às regras especificadas no arquivo snort.conf, no formato ASCII simples, empregando uma INTERNET Snort.conf Regras 20 estrutura de diretório hierárquico, assim como é realizado no modo apenas de registro de pacotes. 4.1 Opções do modo de saída do NIDS Existem várias opções de configuração para a saída do Snort no modo NIDS. Os mecanismos padrão de registro e alerta são utilizados para registrar os dados no formato ASCII e utilizar os alertas completos. O mecanismo chamado de alerta completo imprime a mensagem de alerta, além dos cabeçalhos completos do pacote. Existem vários outros modos de saída de alerta disponíveis na linha de comando, bem como duas formas de registro. Os modos de alerta são um pouco mais complexos, sendo que temos sete modos de alerta disponíveis em linha de comando: completo, rápido, soquete, syslog, console, cmg e nenhum. Seis desses modos são acessados com o parâmetro -A de linha de comando. Essas opções são: • -A fast: modo de alerta rápido, que grava o alerta em um formato simples, com registro de data e hora, mensagem de alerta e portas de origem e destino. • -A full: modo de alerta completo, que é o modo de alerta padrão e será usado automaticamente se não for especificado um modo. • -A unsock: envia alertas para um socket UNIX, que poderá ser recebido por outro programa. • -A none: Desliga o envio de alertas. • -A console: Envia alertas “fast-style” para a tela do console. • -A cmg: Gera alertas do tipo “cmg style”. Os pacotes podem também ser gravados no formato ASCII padrão ou em um arquivo de log binário, utilizando o parâmetro -b na linha de comando. Para desativar completamente o registro dos pacotes, devemos utilizar o parâmetro - N na linha de comando. As opções de armazenamento de logs em linha de comando substituem todas as opções de saída especificadas no arquivo de configuração, o que permite a depuração de problemas de configuração rapidamente, com a utilização da linha de comando. Para enviar alertas para um sistema de syslog, deve ser utilizado o parâmetro -s. As mensagens padrão para o mecanismo de alerta dos sistemas 21 de syslog são LOG AUTHPRIV e LOG ALERT. Podemos ainda configurar outras mensagens de saída para um sistema de syslog, utilizando as diretivas de plugin de saída no arquivo de configuração snort.conf. Por exemplo, para registrar as mensagens no formato ASCII padrão e enviar alertas para o sistema de syslog devemos utilizar a seguinte linha de comando: ./snort -c snort.conf -l ./log -h 192.168.1.0/24 -s Em outro exemplo, para armazenamento das mensagens em /var/log/snort e enviar alertas para um arquivo de alerta rápido, devemos utilizar a seguinte linha de comando: ./snort -c snort.conf -A fast -h 192.168.1.0/24 As mensagens de alerta geradas pelo Snort normalmente têm o seguinte formato: [**] [116:56:1] (snort_decoder): T/TCP Detected [**] O primeiro valor é o Generator ID, que identifica qual foi o componente do Snort que gerou esse alerta, e que está listado em etc/geradores no diretório fonte do Snort. Nesse caso, poderemos identificar que esse evento foi originado pelo componente “decode” do Snort, que corresponde ao valor 116. O segundo valor é o Snort ID, também chamado de Signature ID, sendo que a lista de SIDs está disponível em etc/gen-msg.map. Os SIDs são baseados em regras, sendo escritos diretamente nas regras com as diversas opções de SID. Nesse caso, o valor 56 representa um evento do tipo T/TCP. O terceiro valor é o ID de revisão, que é utilizado principalmente ao escrever as assinaturas, pois cada descrição de uma regra deverá incrementar esse número, com a opção rev. 4.2 Configurações adicionais Para uma configuração de alta performance, quando se deseja que o Snort opere mais rapidamente, tal como para acompanhar uma conexão de 1000 Mbps, é necessário utilizar um registro do tipo unified2 e um leitor de mensagens unified2, tal como o barnyard2. Isso permitirá que o Snort registre os alertas de forma binária, o mais rápido possível, enquanto outro programa realizará as ações mais lentas, tal como a gravação em um banco de dados. 22 Caso seja necessário a geração de um arquivo de texto que seja facilmente analisado, mas ainda com maior rapidez, a opção será a geração de um arquivo binário, que representa também um mecanismo de saída mais rápido, que armazenará os pacotes no formato tcpdump e produzirá alertas mínimos. Para isso, poderemos utilizar o comando: ./snort -b -A fast -c snort.conf Outra alteração que pode ser realizada na configuração do Snort é a alteração da ordem dos alertas, pois a forma padrão pela qual o Snort aplica as regras configuradas aos pacotes pode não ser apropriada para todas as implementações. As regras de permissão, que são as regras de “Pass”, são aplicadas primeiro, depois as regras de descarte, que são as regras de “Drop”, depois as regras de Alerta, que são as regras de “Alert” e, finalmente, as regras de registro, que são as regras de “Log” são aplicadas. Às vezes, uma regra de permissão incorreta pode fazer com que os alertas não sejam gerados, e nesse caso, seria necessário alterar a ordem padrão para permitir que as regras de “Alert” sejam aplicadas antes das regras de “Pass”. Temos diversas opções de comandos que podem ser utilizados para alterar a ordem em que as regrasde ação sejam executadas, conforme mostrado a seguir. • --alert-before-pass: força as regras de alerta a serem executadas antes das regras de permissão. • --treat-drop-as-alert: faz com que as regras de descarte e de rejeição, e quaisquer alertas associados, serem registrados como alertas, em vez de executar a ação normal. Isso permite o uso de uma política do dispositivo em linha operando no modo passivo de IDS. As regras de “sdrop” não são carregadas. • --process-all-events option: faz com que o Snort processe todos os eventos associados a um pacote, ao mesmo tempo em que toma as ações com base na definição das regras. Sem essa opção, ou seja, no modo padrão, apenas os eventos definidos para a primeira ação, com base na sequência de regras, são processados. As regras do tipo “Pass” são um caso especial, no qual o processamento é encerrado quando uma regra de permissão é encontrada, independentemente do uso do comando --process-all-events. 23 4.3 Aquisição de pacotes A versão do Snort 2.9 introduz a biblioteca DAQ - Data Acquisition, para entrada e saída dos pacotes, sendo que o DAQ substitui as chamadas diretas para as funções do libpcap por uma camada de abstração, o que facilita a operação em uma série de interfaces de hardware e de software, sem exigir alterações no Snort. Podemos executar o Snort assim como foi feito para a leitura de arquivo ou de inspeção de uma interface, podendo-se também selecionar e configurar o DAQ quando o Snort for iniciado, com as seguintes configurações: ./snort \ [--daq <type>] \ [--daq-mode <mode>] \ [--daq-dir <dir>] \ [--daq-var <var>] config daq: <type> config daq_dir: <dir> config daq_var: <var> config daq_mode: <mode> <type> ::= pcap | afpacket | dump | nfq | ipq | ipfw <mode> ::= read-file | passive | inline <var> ::= arbitrary <name>=<value> passed to DAQ <dir> ::= path where to look for DAQ module so’s O tipo, modo, variável e diretório do DAQ podem ser especificados através da linha de comando ou no arquivo conf, sendo que podemos incluir quantas variáveis e diretórios sejam necessários, repetindo o arg/config. O tipo DAQ pode ser especificado no máximo uma vez no conf e uma vez na linha de comando; sendo que, caso seja configurada em ambos os lugares, a linha de comando substitui a conf. Se o modo não for definido explicitamente, o parâmetro -Q irá forçar para que seja definido em linha e comando, e se isso não tiver sido definido, o parâmetro -r irá forçar a ser lido em arquivo, e se isso não tiver sido definido, o modo padrão será o modo passivo. Além disso, -Q e -daq são permitidos para a configuração em linha de comando, uma vez que não há conflito, mas -Q e qualquer outro modo DAQ causará um erro fatal na inicialização do Snort. 24 Além disso, se o Snort encontrar várias versões de uma determinada biblioteca, a versão mais recente será selecionada, sendo que isso se aplica a versões estáticas e dinâmicas da mesma biblioteca. ./snort --daq-list[=<dir>] ./snort --daq-dir=<dir> --daq-list Os comandos mostrados acima realizam uma pesquisa nos diretórios especificados, para os módulos DAQ, tipos de impressão, versão e atributos de cada um. Esse recurso não está disponível no arquivo conf. O Snort irá parar de processar após a análise da lista de DAQ, sendo que poderão ser adicionados um ou mais diretórios, adicionando-se a opção –daq-dir antes do parâmetro – daq-list na linha de comando. Como o diretório é opcional para o parâmetro – daq-list, deve-se utilizar um sinal de igual “=”, sem espaços, para essa opção. O pcap é o DAQ padrão do Snort, sendo que se o Snort vai operar sempre utilizado esse módulo, o que equivale aos comandos: ./snort -i <device> ./snort -r <file> ./snort --daq pcap --daq-mode passive -i <device> ./snort --daq pcap --daq-mode read-file -r <file> Podemos ainda especificar o tamanho do buffer a ser utilizado pelo pcap, com o comando mostrado a seguir, sendo que o pcap não conta os pacotes filtrados. ./snort --daq pcap --daq-var buffer_size=<#bytes> Além do pcap, temos ainda outros sistemas para aquisição dos pacotes, conforme mostrado a seguir: • Afpacket: opera de maneira semelhantes ao pcap, mas não requer nenhuma biblioteca externa. • NFQ: a nova e melhorada maneira de procestar pacotes iptables. • IPQ: é a maneira antiga de procestar pacotes com o iptables. • IPFW: disponível para sistemas BSD. • Dump: permite testar os vários recursos do modo inline disponíveis no Snort para injeção e normalização. 25 TEMA 5 – O UTM Conforme vimos anteriormente, para a implementação da segurança das redes, temos a instalação do FW na entrada da rede, que será o ponto de instalação também das ferramentas de inspeção e detecção de ameaças, que são o IDS e o IPS. Assim, muitos desses equipamentos, fornecidos pelos diversos desenvolvedores de tecnologia de segurança do mercado que forneciam as soluções apenas de Firewall, também já incorporaram essas outras funções, como o IDS e IPS, e também já incluem a inspeção do conteúdo do tráfego, em busca dos códigos maliciosos já conhecidos, que são os vírus. Dessa forma, além da proteção individual dos equipamentos dos usuários, com a instalação de um antivírus em cada computador, podemos ter já uma primeira linha de defesa feita pelo FW. Nesse caso, esse equipamento de segurança integrado deverá manter atualizada a sua base de dados dos vírus conhecidos, que também deve ser atualizado periodicamente, bem como a base de assinaturas do IDS, quando operando nesse modo. Portanto, será necessária a contratação desses serviços junto ao fornecedor da solução adotada, para garantir que esses mecanismos de segurança estejam atualizados. Nesse cenário em que temos diversas funções de segurança implementadas no mesmo equipamento, normalmente esse equipamento é conhecido como UTM – Unified Threat Management, caracterizando que ele executa diversas tarefas distintas, não se tratando apenas de um FW que está filtrando o tráfego. Outro termo muito utilizado, que busca caracterizar os equipamentos com maiores recursos e maior capacidade de processamento, é o NGFW (Next Generation Firewall). No entanto, nesse caso, trata-se de uma referência ao equipamento que consegue fazer uma filtragem de maneira muito mais efetiva, mas que não necessariamente executará as funções de IDS, IPS ou antivírus, que seriam executadas por um UTM. Em outras palavras, um equipamento de segurança classificado como um UTM deverá incluir a função de Firewall, que provavelmente será um NGFW e um equipamento do tipo NGFW necessitará das soluções complementares de segurança para a rede. E um aspecto fundamental dessas soluções de segurança é o desempenho do processo, pois como todo o tráfego deverá passar pelo UTM, ele deverá apresentar o menor atraso possível no encaminhamento do tráfego. 26 Por esse motivo, algumas empresas optam por utilizar equipamentos distintos para as diversas funções de segurança, evitando uma eventual sobrecarga de um equipamento único. Portanto, para escolher o equipamento adequado para uma determinada rede, é necessário conhecer o perfil de tráfego da rede e a topologia das conexões da rede. E nesse cenário, temos diversos parâmetros envolvidos. No caso dos UTMs, é necessário também avaliar as demais funções que estão sendo executadas no equipamento, pois a execução simultânea dos processos de monitoração de IPS e de antivírus poderá afetar o desempenho da conexão dos usuários à rede WAN. Assim, em alguns casos, mesmo que o equipamento suporte várias funcionalidades de segurança, nem todas as funções precisam ser ativadas, o que poderá diminuir a carga de processamento do equipamento. De qualquer forma, em uma rede de maior porte, o que também demandará um maior volume de tráfego e de processamento do equipamento, deveráser realizada a monitoração em tempo real tanto da análise de ameaças quanto da capacidade de processamento do equipamento. 5.1 As funções de um UTM O termo UTM é aplicado ao equipamento em que vários recursos ou serviços de segurança são combinados em um único dispositivo de segurança de rede, que visa proteger os usuários da rede com vários recursos diferentes, incluindo antivírus, filtragem de conteúdo, filtragem de e-mail e web, AntiSpam e outros, além da proteção da rede e dos servidores. Dessa forma, a utilização de um UTM permite que a empresa consolide os serviços de segurança de TI em um único dispositivo, potencialmente simplificando a proteção da rede, possibilitando também a monitoração de todas as ameaças e atividades relacionadas à segurança, através de um único painel de gerenciamento e monitoração da rede. Uma das funções integradas ao UTM é o antivírus. Nesse caso, teremos um software antivírus instalado nesse equipamento e que poderá monitorar o tráfego da rede, detectando e impedindo que um vírus possa danificar os sistemas ou dispositivos conectados a essa rede. Esse processo é realizado com base nas informações dos bancos de dados de assinatura, que contêm os perfis dos vírus, verificando se algum deles está ativo dentro do sistema ou se está tentando obter acesso a algum dispositivo da rede. Algumas das ameaças que 27 o software antivírus que está sendo executado em um UTM pode bloquear são: arquivos infectados, Trojans, worms, spyware e outros tipos de malwares. Mesmo com a funcionalidade de Antivírus sendo executada pelo UTM, é necessário que todos os computadores na rede também tenham uma solução de antivírus instalada localmente, pois podemos ter a infecção dos computadores por um malware que esteja instalado em um pen drive, por exemplo, o que não seria detectado pelo UTM. Inclusive, temos também soluções de proteção para as estações de usuário que incluem os mecanismos de IDS/IPS, além do software de antivírus, aumentando o nível de segurança dos computadores. Uma das vantagens da instalação de um antivírus no UTM é que podemos garantir a atualização de assinaturas em um único ponto, facilitando o gerenciamento desse processo e aumentando a segurança da rede. Assim, caso um novo vírus seja enviado para um computador que esteja com sua assinatura desatualizada, o que permitiria a execução do vírus, o antivírus do UTM já fará o bloqueio dessa ameaça, não deixando que o arquivo contaminado seja encaminhado para o computador, fazendo o seu bloqueio na entrada da rede. Outra funcionalidade do UTM é a proteção da rede contra malwares, que fará a sua detecção e bloqueio. Assim, um UTM poderá ser configurado para detectar os malwares conhecidos, filtrando o fluxo de dados que caracteriza ou contém esse malware, impedindo-o de entrar na rede e no sistema. E o UTM também poderá detectar novas ameaças de malware, utilizando a chamada análise heurística, que envolve um conjunto de regras que analisam o comportamento do tráfego e as características dos arquivos. Por exemplo, se um programa for projetado para evitar o funcionamento adequado da câmera de um computador, uma abordagem heurística poderá identificar esse programa como malware. Na função de Firewall, o UTM irá detectar as tentativas de invasão, examinando o tráfego que vem da Internet e que não seja o retorno do tráfego solicitado, ou uma aplicação legítima da rede interna, tal como os serviços da DMZ ou as chamadas de VoIP. Como os firewalls UTM irão examinar todos os dados que entram e saem da rede, eles poderão impedir que os dispositivos internos sejam utilizados para espalhar um malware para as outras redes que se conectam a eles. 28 Como o UTM estará posicionado na entrada da rede, ele também poderá operar com os recursos de rede privada virtual, implementando as VPNs – Virtual Private Network. Uma VPN é um recurso que permite criarmos uma rede privada com a infraestrutura de uma rede pública, implementando túneis seguros através dessa rede pública, permitindo que os usuários possam enviar e receber os dados com total segurança. Isso é possível pois todas as transmissões serão criptografadas, e assim, mesmo que alguém capture os dados, não seria possível a interpretação das informações contidas nos pacotes IP. Para isso, o UTM deverá ser configurado adequadamente para suportar as diversas conexões de VPN, que poderão ser do tipo site-to-site ou client-to-site. O recurso de filtragem web do UTM, que é chamado de web filtering, poderá impedir que os usuários acessem sites específicos ou tipos de sites, de acordo com a política de segurança da empresa, tais como as ferramentas de mídias sociais e de conversas via chat, que são acessadas através do navegador WEB. Ou seja, teremos a inspeção, e eventual bloqueio, do tráfego da saída, que é o sentido oposto da ação do Firewall, sendo uma função distinta da operação deste. Esse bloqueio de acesso também pode ser realizado baseado em categorias de sites, em que temos uma lista de nomes de sites que pertencem a determinado tipo de conteúdo. No entanto, nesse caso, como temos novos sites sendo ativados todos os dias, para a atualização dessas listas de categorias de sites, pode ser contratado o serviço de suporte junto ao provedor da solução de UTM implementada. Outra funcionalidade suportada pelo UTM, e que está associada ao tráfego de saída da rede, assim como o web filtering, é a prevenção de perda de dados, que é chamada de DLP – Data Loss Prevention. Esse recurso permite detectar violações na política de envio de dados e tentativas de vazamento de dados sensíveis, realizando o seu bloqueio. Para realizar essa tarefa, o sistema de prevenção de perda de dados monitora os dados confidenciais e, quando identificada uma tentativa de roubo desses dados, bloqueia essa tentativa, protegendo os dados da empresa. 5.2 Assinaturas e Sandbox Um sistema de UTM poderá também suportar a função de prevenção de intrusões, realizando a detecção e o bloqueio, operando assim como um sistema de detecção de intrusões (IDS) ou sistema de prevenção de intrusões (IPS). Para 29 identificar as ameaças, na função de IPS, o UTM irá analisar os pacotes de dados, procurando por padrões conhecidos que caracterizem uma ameaça. E quando um desses padrões é reconhecido, o IPS interromperá o ataque. Porém, em alguns casos, ele poderá operar apenas com um IDS, detectando o pacote de dados considerado perigoso e gerando um alarme, para que então uma equipe de segurança possa definir como irá atuar em relação a essa ameaça. Portanto, as medidas tomadas para bloquear o ataque podem ser automatizadas ou executadas manualmente, de acordo com a política de segurança da empresa. E isso poderá ocorrer quando temos uma ocorrência elevada de falsos positivos, que irão então bloquear o tráfego válido. Assim, a equipe de segurança poderá desabilitar a ação automática de bloqueio, de modo que o UTM opere apenas como IDS e não como IPS, temporariamente, até a verificação e correção das causas dos falsos positivos. O UTM também irá registrar os eventos maliciosos, que poderão então ser analisados posteriormente, e utiliza as informações para evitar outros ataques futuros. Para realizar a detecção de ameaças, o UTM também poderá usar o recurso chamado de sandbox, como uma medida para executar a proteção contra os malwares que possam apresentar um comportamento ou código diferente das assinaturas já conhecidas. O recurso de sandbox consiste de uma célula, dentro do computador, que está confinada a um espaço seguro, para onde será enviado o arquivo suspeito que foi capturado. E dentro dessa célula, o suposto malware será executado, porém, o ambiente seguro do sandbox impede que ele interaja com outros programas no computador, causando outros danos ao sistema. 30Figura 10 – O Sandbox Normalmente, esse recurso também é disponibilizado como um serviço pelo fornecedor da solução de segurança, de modo que todo o tráfego suspeito, que não corresponda a um padrão de malware já conhecido, será enviado para a infraestrutura do provedor de serviço, onde será executado dentro de um sandbox, que irá analisar o resultado da execução do arquivo suspeito, validando a suspeita e orientando o UTM a descartar esse tráfego, ou verificando se tratar de um tráfego normal, permitindo o ingresso na rede. FINALIZANDO Há um tempo, as empresas acreditavam que, apenas com a instalação de um Firewall na conexão com a Internet, sua rede e seus sistemas estariam seguros. No entanto, logo perceberam que uma solução única não era suficiente para garantir essa segurança, pois, além das ameaças externas, existiam as ameaças internas, além da evolução das ameaças, que apenas o mecanismo de Firewall não era suficiente para um bloqueio eficiente. Assim, as empresas passaram a utilizar as soluções de IDS/IPS, bem como a implementação da proteção básica dos computadores dos usuários, com a instalação das ferramentas de Antivírus. Com a evolução das ameaças e da complexidade dos sistemas e aplicações, os mecanismos de segurança também tiveram que evoluir para garantirem a sua eficiência em relação a essa evolução do cenário de ameaças. INTERNET Envio de tráfego suspeito UTM Sandbox 31 Assim, as soluções de Firewall, que iniciaram apenas como um filtro de pacotes, evoluíram para o modelo de Firewall Stateful, acompanhando as sessões abertas pelos computadores da rede interna, e também examinando o tráfego na camada de aplicação e com suporte às aplicações mais complexas, que demandam a abertura de mais sessões, ou de uma troca de mensagens mais complexas. E esses equipamentos, que operavam apenas na borda da rede, passaram a fazer a filtragem do tráfego na rede interna, com o modelo de operação baseado em zonas de segurança. Outra evolução dos equipamentos de segurança foi o desenvolvimento dos chamados UTMs, que agregam diversas funcionalidades, além da operação como Firewall, em um equipamento dedicado para essa finalidade, tendo-se assim um ponto central de controle, facilitando o gerenciamento e a aplicação da política de segurança da rede. No entanto, mesmo com a adoção do UTM, operando com a segmentação da rede em zonas de segurança, ainda é necessária a implementação da segurança dos equipamentos terminais. Assim, deverão ser instaladas as soluções de antimalware nos computadores dos usuários, e as ferramentas de Firewall nos servidores, em uma solução de Firewall interno desenvolvido para o ambiente de virtualização, pois apenas o Firewall baseado em zonas não conseguirá atingir a granularidade necessária para um ambiente mais complexo de Data Center. E para a integração das diversas soluções que compõem o sistema de segurança de uma rede mais complexa, teremos ainda a necessidade da utilização de uma ferramenta de SIEM, que permitirá efetivamente o gerenciamento dos sistemas de segurança, realizando-se a monitoração, operação e manutenção do sistema de segurança de maneira centralizada. Portanto, temos as soluções de segurança para os diversos tamanhos de redes, das mais diversas complexidades, que vão da utilização de um Firewall embarcado em um roteador, para um ambiente residencial, até um sistema com UTM, Firewall Interno distribuído e SIEM, por exemplo, em uma rede corporativa de grande porte. E em todos esses cenários, devemos também utilizar as ferramentas de segurança dos equipamentos dos usuários, que incluem o antivírus e, atualmente, o Firewall do próprio sistema operacional, que jamais deve ser desabilitado, mesmo com a utilização do Firewall de rede. Assim, termos um ambiente menos vulnerável aos ataques cibernéticos, porém, 32 devemos sempre estar cientes de que as ameaças continuam evoluindo, o que exige também uma evolução constante dos sistemas de segurança. 33 REFERÊNCIAS NETO, U. Dominando Linux Firewall Iptables. Rio de Janeiro, Ciência Moderna, 2004. SNORT User Manual. The Snort Project. 2020. Disponível em: <https://www.snort.org/>. Acesso em: 2 jul. 2021. TANEMBAUM, A. S. Redes de computadores. 2. ed. São Paulo: Pearson Education do Brasil, 2011. WENDELL, O. CCNA ICND guia oficial de certificação. 2. ed. Rio de Janeiro: Alta Books, 2008.