Por que é necessário sandboxing na rede para interromper ransomware

Autor

Portnet Tecnologia

Categorias

Blog Segurança em TI

sandbox

Os firewalls de próxima geração utilizam assinaturas e heurísticas de forma muito bem-sucedida. Mas ao defender contra os ataques mal-intencionados de hoje em dia, eles não são mais suficientes. Os desafios dos ataques direcionados e das ameaças de zero-day fazem da inclusão de sandboxing uma atividade essencial para uma postura de segurança eficaz.

Entendendo o desafio real e o que fazer com ele

O crescimento das ameaças externas hoje em dia é impressionante. Os invasores combinam a natureza oportunista da automação com o conceito do fornecedor de software para evoluir suas ameaças constantemente, tudo para ter a maior amplitude possível, sem serem detectados. E dado o impacto negativo sofrido por uma organização que sofre uma violação de dados ou um ataque de ransomware, detectar códigos mal-intencionados antes que eles impactem a rede é de extrema importância para as organizações de TI.

O desafio real não é o ransomware que já se espalhou na Internet. Os desafios reais são os ataques direcionados e as ameaças zero-day. Os ataques direcionados envolvem códigos nunca antes vistos e criados com o propósito específico para a organização sendo atacada, enquanto as ameaças zero-day exploram vulnerabilidades recentemente descobertas para as quais os fornecedores ainda precisam emitir patches. As organizações precisam se preocupar mais com esses tipos de ataques, que, geralmente, são mais bem-sucedidos do que seus antigos equivalentes. Então, qual é a melhor maneira de evitar ameaças provenientes de dentro da sua rede?

Você tem algumas opções em termos de onde deseja abordar ataques mal-intencionados e como detectá-los e eliminá-los. O objetivo é detectar e remover códigos mal-intencionados o mais próximo possível da fonte do ataque. Em relação a onde abordar um ataque, as organizações normalmente optam por dois campos: o campo de segurança de endpoint, no qual o código mal-intencionado avança para um endpoint e então é detectado e destruído, e o campo de sandboxing, no qual o código mal-intencionado é identificado e destruído antes de entrar na rede. Até que haja uma solução 100% eficaz, ambas as tecnologias continuarão sendo camadas importantes de defesa. Uma solução de sandboxing pode fornecer prevenção na borda, se implementada da forma certa.

Mantenha o código mal-intencionado distante

Se você pensar na sua rede como um castelo, não há lugar melhor para interromper um ataque do que no portão, um ponto de bloqueio que nada nem ninguém passe sem ser inspecionado para obter permissão de entrada. Ao adotar uma solução capaz de detectar o código mal-intencionado dentro do firewall de próxima geração (NGFW), você coloca um guardião no portão do castelo. Nada entra sem o conhecimento do guardião. Durante a entrada dos dados, é realizada uma varredura nos dados do tráfego por meio de diversos métodos para a detecção de códigos mal-intencionados:

• Assinaturas: Com um banco de dados de assinaturas digitais mal-intencionadas, é realizada uma varredura no tráfego a procura de quaisquer dados que correspondam a uma assinatura. Se for encontrada uma correspondência, o código será identificado como mal-intencionado.

• Heurísticas: Diferente das assinaturas, que procuram por correspondências específicas dentro de um banco de dados, a varredura baseada em heurística utiliza regras e algoritmos para detectar códigos que possam ser mal-intencionados.

• Sandboxing: Em vez de tentar procurar pelo código para encontrar tentativas ou assinaturas mal-intencionadas, a solução de sandboxing permite que o código seja detonado ou executado como pretendido para monitorar o comportamento da atividade mal-intencionada. Esse processo é realizado em um ambiente criado com esse propósito, ou sandbox, que não causará nenhum dano.

Usar essa combinação de táticas é mais eficiente e eficaz, já que os códigos mal-intencionados mais comuns ou mais simples podem ser detectados pelas tecnologias tradicionais mais rápidas e com menos recursos. Isso permite que o sandbox se concentre no conteúdo restante que realmente requer seu nível de investigação.

O motivo pelo qual as assinaturas e as heurísticas não são boas o suficiente

A detecção baseada em assinatura é somente tão boa quanto o banco de dados que ela utiliza para identificar o código mal-intencionado. Mesmo se o seu banco de dados não for atualizado a cada minuto, você pode perder um ataque, pois demora certo tempo para os fornecedores de AV identificarem o malware, atualizarem seus bancos de dados e o distribuírem a você. Além disso, as pessoas que gravam um código mal-intencionado estão cientes da detecção baseada em assinatura e utilizam um código para evitá-la.

As heurísticas também podem ser imprecisas. Uma parte do código pode simplesmente ser o tráfego que não se enquadrou no padrão esperado, causando falsos positivos. Algumas vezes, o código mal-intencionado não parece perigoso inicialmente, até ser reconstituído no back-end e tornar as heurísticas ineficientes.

Vamos pegar o ransomware como exemplo. O código que foi feito download inicialmente não é perigoso. Ele vira uma arma quando é conectado a um servidor de comando e controle (C2) e faz download de um código adicional. Outro exemplo é uma macro dentro de um documento do Microsoft Word. A menos que a macro mal-intencionada utilize um método de ataque suspeito ou conhecido, nem as assinaturas e nem as heurísticas poderão dizer se a macro em si é boa ou ruim.

Usar assinaturas ou heurísticas para fazer uma varredura passiva do tráfego possui limitações. A varredura não permite que o código se torne ativo e os invasores conseguem ofuscar o código ruim (a partir de uma perspectiva de varredura) dentro de um código “bom”. Entretanto, a maneira mais eficaz de detectar um código mal-intencionado é interagir com uma versão completamente armada.

Brincando com fogo

A única forma de capturar um código mal-intencionado avançado é “detoná-lo”. O processo de detonação é muito diferente de simplesmente fazer uma varredura no código. Ele é similar ao processo de cultura de um micróbio perigoso em um laboratório de contenção de perigo biológico ou à detonação de uma bomba em uma câmara de contenção. A sandbox fornece um local seguro para que os dados interceptados sejam abertos e executados sob observação. Se for confirmado um comportamento suspeito ou mal-intencionado, o arquivo e a ameaça contida nele poderão ser eliminados.

Sandboxes tentam detonar todos os tipos de arquivo:

• Arquivos com conteúdo ativo: Esses arquivos incluem executáveis, scripts e DLLs. Os arquivos podem ser executados e interagir com a sandbox normalmente para que seja possível monitorá-los em relação a ações mal-intencionadas, como modificar as configurações de firewall do sistema operacional ou estabelecer conexões de saída com a Internet.

• Arquivos de conteúdo passivo: Esses arquivos incluem qualquer tipo de documento, PDFs, arquivos compactados (por exemplo, ZIP, JZIP, RAR) e até mesmo arquivos de imagem. Esses arquivos são analisados com o uso do aplicativo padrão para monitorar atividades mal-intencionadas, como uma tentativa de macro do Word em fazer download de um código adicional na Internet. Sem ter todas as partes do software disponíveis em uma sandbox, é impossível analisar cada arquivo passivo. No final, sua sandbox deve ser configurada com a capacidade de inspecionar a maior quantidade de tipos de arquivo possível.

Malware em uma imagem

Você deve se perguntar o motivo pelo qual os arquivos de imagem devem ser analisados, já que eles representam um dos tipos de dados mais supostamente benignos. Mas os arquivos de imagem podem conter dados de payload mal-intencionados. Pegue como exemplo um recente ataque no Brasil em que um PDF anexado continha um link para um arquivo ZIP. Dentro desse arquivo ZIP estava um executável e um arquivo PNG. Esse PNG era pequeno (inferior a 64 pixels quadrados), mas continha um arquivo de mais de 1 MB. Após a inspeção do executável adjacente, ficou evidente que o código foi projetado para ser extraído e executar um binário mal-intencionado e oculto de dentro do PNG.

Aprimoramento de assinaturas com a sandbox

Como mencionado anteriormente, uma abordagem multifacetada é a melhor maneira de detectar código mal-intencionado. Aprimorar o método de varredura passivo pode ajudar a tornar o processo de detecção mais eficiente, já que ele precisa de bem menos ciclos de CPU para concluir a verificação em um banco de dados de assinaturas do que para gerar e manter uma sandbox capaz de detonar uma única instância de código mal-intencionado.

Além da detonação, a sandbox pode ser utilizada para criar assinaturas quando o código for determinado a ser mal-intencionado, afinal, ela possui um lugar na primeira fila para a execução desses códigos. Quando um código mal-intencionado é identificado, é criada uma assinatura e um banco de dados de assinaturas pode ser atualizado, o que aprimora a velocidade e a precisão das futuras detecções de códigos mal-intencionados.

Ainda assim, as técnicas de varredura passivas possuem suas carências em relação à detecção. Por isso, é justo perguntar o quanto uma sandbox é mais bem-sucedida.

Como uma sandbox funciona

A sandbox funciona como um ambiente de “sacrifício”, que monitora o código mal-intencionado e sua interação com o sistema operacional. As sandbox procuram pelo seguinte:

• Chamadas do sistema operacional: inclusive chamadas do sistema de monitoramento e funções de API

• Alterações do sistema de arquivos: qualquer tipo de ação, inclusive a criação, modificação, exclusão e criptografia de arquivos

• Alterações na rede: qualquer tipo de estabelecimento atípico de conexões de saída

• Alterações de registro: quaisquer modificações para estabelecer persistência ou alterações nas configurações de rede ou segurança

• Além e entre: monitoramento das instruções que um programa executa entre as chamadas do sistema operacional para complementar o contexto de outras observações

Quão eficaz é uma sandbox?

A detecção baseada em assinatura é perfeita para descobrir o código malintencionado de ontem, mas não faz nada para interromper ataques zero-day ou ataques simplesmente alterados (ou seja, malware específico que não corresponde a uma assinatura devido à mutação). As heurísticas encaram a detecção como uma etapa na direção certa, à procura de padrões atípicos no código. Mas como demonstrado no uso de um arquivo de imagem para fornecer um payload, os arquivos iniciais (por exemplo, um PDF com um link para um arquivo ZIP externo) não levantam quaisquer suspeitas.

A questão é o motivo pelo qual a sandbox é um método de detecção tão eficaz. Mesmo com ataques zero-day sem nenhuma assinatura e um código nunca antes visto, a sandbox é o único método que detecta comportamentos mal-intencionados. No final do dia, o código mal-intencionado realiza um número limitado de ações, inclusive fazer uma conexão externa, fazer download de payloads adicionais, conectar a um servidor C2 e tentar fazer alterações no sistema operacional. Nenhuma dessas ações é necessariamente normal para arquivos relacionados ao trabalho.

Há diversas formas de proteger a sua organização contra um código mal-intencionado. Ao mesmo tempo que proteger o endpoint é importante, isso pode colocar a sua organização em um risco ainda maior ao permitir o código mal-intencionado na rede. Uma solução de sandboxing fornece uma maneira de interromper as ameaças antes que elas entrem na rede.

Podemos te ajudar com a sua estratégia de sandboxing com as soluções da nossa parceira Sonicwall. Fale com a gente! 

Fonte: © 2017 SonicWall Inc.

 

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *