Behavior-Specialized Anomaly Detection for Improving Alert Quality in Provenance-Based Intrusion Detection
Este artigo apresenta o Targeter, um framework especializado em comportamento que particiona os processos do sistema em categorias e treina autoencoders de grafos leves e dedicados para cada uma, alcançando, assim, um equilíbrio de precisão-revocação superior e uma qualidade de alerta aprimorada na detecção de intrusões baseada em proveniência, mantendo um baixo overhead computacional.
Artigo original sob licença CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
No mundo digital, cada ação que um computador realiza deixa um rastro, tal como pegadas na neve. Quando um usuário abre um arquivo, executa um programa ou envia uma mensagem, o sistema registra quem fez o quê, quando e com quais ferramentas. Especialistas em segurança usam esses registros para construir um mapa de causa e efeito, mostrando como um evento leva a outro. Esse mapa é chamado de grafo de proveniência. Durante anos, pesquisadores tentaram usar esses mapas para detectar ataques cibernéticos, esperando encontrar os passos ocultos que um invasor utiliza para roubar dados ou danificar um sistema. O desafio, entretanto, é que esses mapas são incrivelmente vastos e complexos. Um único computador pode gerar milhões dessas conexões em um curto período de tempo, e a maioria delas é perfeitamente normal. Quando um sistema de segurança tenta encontrar os maus atores em meio a uma multidão tão grande, ele frequentemente se confunde. Pode disparar um alerta para um arquivo inofensivo apenas por ele parecer ligeiramente incomum, ou pode perder um processo perigoso porque este está se escondendo entre milhões de processos comuns. O resultado é frequentemente uma inundação de alarmes falsos que sobrecarregam os analistas humanos ou, pior, uma falha silenciosa em perceber um ataque que já está em andamento.
Uma equipe de pesquisadores da Universidade de Tecnologia de Sharif, no Irã, propôs uma nova maneira de resolver esse problema ao mudar a forma como o computador observa os dados. Em vez de tentar ensinar um único e gigante programa de computador a entender todos os tipos possíveis de atividade em uma máquina, eles decidiram dividir o problema em partes menores e mais gerenciáveis. Eles perceberam que diferentes tipos de programas de computador se comportam de maneiras muito distintas. Um navegador web, por exemplo, naturalmente abre conexões de rede e lê tipos específicos de arquivos. Uma ferramenta do sistema que gerencia o relógio comporta-se de forma diferente, e um shell de linha de comando usado por administradores possui seu próprio ritmo único. Quando um único modelo de detecção tenta aprender o comportamento "normal" de todos esses diferentes programas ao mesmo tempo, ele tem dificuldade em distinguir uma variação inofensiva de uma ameaça real.
Para abordar isso, os pesquisadores criaram um sistema que chamam de Targeter. Este sistema primeiro classifica cada programa em execução em um computador em grupos específicos baseados no que ele realmente faz. Um navegador web entra em um grupo, um editor de texto em outro e um serviço do sistema em um terceiro. Uma vez que os programas são classificados, o sistema treina um detector especializado e separado para cada grupo. O detector para os navegadores web aprende apenas o que é o comportamento normal de um navegador. O detector para os serviços do sistema aprende apenas o que é o comportamento normal do sistema. Como cada detector é focado em um grupo de atividades estreito e consistente, ele se torna muito melhor em detectar quando algo dentro daquele grupo está agindo de forma estranha. Ele não está tentando ser um especialista em tudo; é um especialista em uma coisa específica.
Os pesquisadores testaram essa abordagem usando dados do programa DARPA Transparent Computing, uma coleção de logs de sistemas do mundo real que incluem tanto atividades normais quanto ataques cibernéticos sofisticados. Eles compararam seu novo sistema com vários métodos existentes que são atualmente considerados os melhores na área. Os resultados mostraram que o Targeter encontrou um melhor equilíbrio entre capturar ataques reais e evitar alarmes falsos. Sistemas anteriores frequentemente tinham que escolher entre serem muito rigorosos e perder muitos ataques, ou serem muito permissivos e sinalizar milhares de programas inocentes como suspeitos. O Targeter conseguiu capturar uma parte muito maior dos passos de ataque reais enquanto mantinha o número de alarmes falsos baixo o suficiente para ser útil para investigadores humanos. Em um teste envolvendo um conjunto de dados com mais de um milhão de eventos de sistema, o novo sistema identificou significativamente mais nós relacionados a ataques do que seus concorrentes, sem inundar o analista com ruído.
Uma parte fundamental do sucesso foi como o sistema lidou com os dados após a detecção inicial. Os pesquisadores adicionaram uma etapa final onde o sistema analisa as conexões entre os itens suspeitos encontrados. Se ele detecta um arquivo suspeito que está vinculado a um processo suspeito, ele adiciona esse arquivo à lista de coisas a serem investigadas, mesmo que o arquivo em si não parecesse estranho por conta própria. Isso ajuda a garantir que a investigação cubra todo o caminho do ataque, em vez de apenas fragmentos isolados. A equipe também verificou quanta potência de computação esse novo método exigia. Eles descobriram que o método é rápido e eficiente, rodando suavemente em processadores de computadores padrão sem a necessidade de hardware especializado e caro. Isso sugere que a abordagem pode ser prática para uso no mundo real, não apenas em um laboratório de pesquisa.
O estudo sugere que o caminho a seguir para a detecção de ataques cibernéticos não é necessariamente construir modelos maiores e mais complexos, mas sim construir modelos mais inteligentes e focados. Ao reconhecer que um navegador web e um utilitário de sistema são fundamentalmente diferentes, e ao dar a cada um deles seu próprio observador dedicado, o sistema ganha uma visão mais clara do que é verdadeiramente errado. Os pesquisadores observaram que, embora seu método funcione bem, ele atualmente depende de humanos para definir as categorias de programas. No futuro, eles esperam desenvolver uma maneira para que o sistema descubra essas categorias por conta própria. Por enquanto, no entanto, o trabalho demonstra que prestar atenção à natureza específica do que um programa faz, em vez de apenas à sua forma em um grafo de dados, pode levar a alertas de segurança muito mais precisos e confiáveis.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.