Defendendo Detectores de Malware com Análise Baseada em Blocos
Uma nova abordagem pra melhorar a detecção de malware através de análise por partes.
― 7 min ler
Índice
- O Problema com Ataques Adversariais
- Estratégias Atuais para Detecção de Malware
- Nosso Método de Defesa Proposto
- Como Testamos Nossa Abordagem
- Vantagens de Usar Classificação Baseada em Pedaços
- Configuração Experimental
- Avaliação de Desempenho
- Resultados Contra Ataques de Evasão
- Limitações e Trabalhos Futuros
- Conclusão
- Fonte original
- Ligações de referência
Detectores de malware são ferramentas importantes usadas pra identificar softwares prejudiciais. Recentemente, esses detectores começaram a usar deep learning, um tipo de inteligência artificial que aprende padrões a partir de uma tonelada de dados. Mas tem um problema: alguns criadores de softwares ruins acharam jeitos de enganar esses detectores fazendo pequenas mudanças nos seus malwares. Isso ajuda os programas prejudiciais a passarem despercebidos.
Nesse artigo, vamos falar sobre um jeito novo de proteger os detectores de malware dessas trapaças. Nosso método envolve quebrar o malware em pedaços menores e analisar esses pedaços separadamente. Essa abordagem ajuda a melhorar a detecção de malware, mesmo quando ele foi alterado pra escapar da detecção.
Ataques Adversariais
O Problema comAtaques adversariais acontecem quando alguém modifica o malware pra que ele consiga escapar da detecção dos detectores de malware. Isso pode envolver mudar só alguns bytes no código do programa. Com a ascensão dos detectores de malware baseados em deep learning, a necessidade de defesas contra esses ataques aumentou.
Os maus elementos são espertos e adaptam seus métodos pra escapar da detecção constantemente. Eles entendem como os modelos de machine learning funcionam, o que torna mais difícil pegá-los. Alguns métodos incluem injetar código benigno no software malicioso pra que pareça inofensivo. Isso pode confundir os detectores, fazendo com que eles classifiquem o malware como seguro.
Estratégias Atuais para Detecção de Malware
Tem várias maneiras de detectar malware. Alguns métodos dependem de procurar características específicas em arquivos. Isso pode ser demorado e precisa de um bom entendimento do formato e do código dos arquivos. Outros métodos usam modelos de deep learning pra aprender características dos dados brutos.
Modelos de deep learning, como o MalConv, podem aprender tanto com arquivos benignos quanto maliciosos. Eles procuram padrões nos dados, o que pode ajudar a classificar os arquivos de forma mais precisa. No entanto, esses modelos ainda podem ser enganados por exemplos adversariais bem elaborados.
Nosso Método de Defesa Proposto
Pra lidar com as vulnerabilidades dos modelos de deep learning, desenvolvemos um método de defesa inspirado em técnicas usadas em outras áreas de machine learning. Nossa abordagem envolve criar um sistema que foca em pedaços de dados em vez de analisar arquivos inteiros de uma vez.
Usamos duas estratégias principais: selecionar aleatoriamente pedaços de bytes e escolher pedaços adjacentes. Processando esses pedaços menores, podemos melhorar a robustez dos nossos detectores de malware. Assim, se uma pequena parte do arquivo for alterada, é menos provável que isso afete a classificação geral.
Como Testamos Nossa Abordagem
Pra validar nosso método, treinamos nossos detectores de malware usando um conjunto de dados chamado BODMAS. Esse conjunto contém uma mistura de arquivos de software benignos e maliciosos. Medimos o desempenho do nosso método contra vários ataques de evasão de ponta pra ver como ele se saiu.
Nossos testes mostraram que os métodos baseados em pedaços eram mais resilientes a malwares adversariais em comparação com modelos tradicionais. Mesmo diante de truques espertos dos atacantes, nossos detectores mantiveram uma taxa de acerto maior.
Vantagens de Usar Classificação Baseada em Pedaços
Usar nosso método baseado em pedaços tem várias vantagens.
Robustez a Mudanças: Ao quebrar arquivos em pedaços menores, nossos detectores conseguem lidar com pequenas mudanças de forma mais eficaz. Se um pedaço de malware for alterado, é menos provável que afete a classificação toda.
Eficiência: Processar pedaços menores permite uma análise mais rápida, tornando possível que os detectores operem mais rápido.
Melhor Compreensão: Analisar pedaços individuais ajuda a entender quais partes de um arquivo são maliciosas. Isso pode levar a melhores insights sobre o comportamento do malware.
Adaptabilidade: Nosso método pode ser adaptado a vários tipos de malware e diferentes técnicas de detecção.
Configuração Experimental
Realizamos nossos experimentos usando uma máquina equipada com uma CPU e GPU poderosas. O conjunto de dados BODMAS foi essencial pra nossa avaliação, pois forneceu um rico conjunto de exemplos pra testar nossos sistemas de detecção. O conjunto inclui um grande número de amostras de malware e arquivos benignos.
Pra avaliar nossos modelos, dividimos o conjunto de dados em conjuntos de treinamento, validação e teste. O conjunto de treinamento ajudou os modelos a aprender, enquanto os conjuntos de validação e teste avaliaram seu desempenho.
Avaliação de Desempenho
Pra avaliar nossa abordagem de forma completa, comparamos o desempenho dos nossos modelos baseados em pedaços com modelos tradicionais. Medimos sua precisão em detectar exemplos benignos e maliciosos. Nossos achados indicaram que nossos métodos baseados em pedaços superaram significativamente os modelos não suavizados, especialmente quando confrontados com exemplos adversariais.
Resultados Contra Ataques de Evasão
Testamos nossos detectores contra vários ataques de evasão pra ver como eles se saíram sob pressão. Aqui estão alguns resultados:
Ataque Slack+Padding: Esse ataque modifica as partes dos arquivos que não são usadas (espaço slack) e adiciona conteúdo extra. Nossos modelos baseados em pedaços mostraram resiliência, mantendo alta precisão mesmo contra esse método.
Ataque Shift: Aqui, o conteúdo dos arquivos é deslocado, criando espaço pra injetar cargas maliciosas. Nossos modelos alcançaram uma alta precisão de detecção em comparação com modelos tradicionais.
Ataque GAMMA: Esse ataque injeta conteúdo benigno em arquivos maliciosos, tentando enganar os detectores. Nossos métodos baseados em pedaços ainda conseguiram detectar uma grande porcentagem dos exemplos adversariais.
Ataque Code Caves: Ataque frequentemente embutido em áreas não utilizadas do código. Novamente, nossos modelos se saíram melhor na detecção desses arquivos alterados do que modelos não suavizados.
Limitações e Trabalhos Futuros
Embora nossa abordagem seja promissora, não está sem desafios. Uma limitação potencial é a suposição de que todos os pedaços em um arquivo são totalmente maliciosos ou benignos. Na real, alguns arquivos podem conter ambos os tipos de código.
Seguindo em frente, um etiquetamento mais detalhado dos pedaços poderia melhorar nossa precisão de detecção ainda mais. Além disso, investigar como identificar e remover conteúdo adversarial injetado poderia aumentar a eficácia dos nossos modelos.
Conclusão
Em resumo, nossa pesquisa apresenta um novo jeito de defender contra ataques adversariais em detectores de malware. Ao quebrar arquivos em pedaços e analisá-los individualmente, conseguimos melhorar as taxas de detecção e manter uma robustez contra truques inteligentes empregados pelos autores de malware. Os resultados dos nossos experimentos destacam a eficácia da nossa abordagem, já que ela supera métodos tradicionais em vários cenários.
A batalha contra o malware está em andamento, e é crucial continuar desenvolvendo e melhorando técnicas de detecção. Nosso trabalho estabelece a base pra futuras pesquisas em detecção de malware e defesas adversariais, ajudando a manter os usuários de software seguros contra programas prejudiciais.
Título: A Robust Defense against Adversarial Attacks on Deep Learning-based Malware Detectors via (De)Randomized Smoothing
Resumo: Deep learning-based malware detectors have been shown to be susceptible to adversarial malware examples, i.e. malware examples that have been deliberately manipulated in order to avoid detection. In light of the vulnerability of deep learning detectors to subtle input file modifications, we propose a practical defense against adversarial malware examples inspired by (de)randomized smoothing. In this work, we reduce the chances of sampling adversarial content injected by malware authors by selecting correlated subsets of bytes, rather than using Gaussian noise to randomize inputs like in the Computer Vision (CV) domain. During training, our ablation-based smoothing scheme trains a base classifier to make classifications on a subset of contiguous bytes or chunk of bytes. At test time, a large number of chunks are then classified by a base classifier and the consensus among these classifications is then reported as the final prediction. We propose two strategies to determine the location of the chunks used for classification: (1) randomly selecting the locations of the chunks and (2) selecting contiguous adjacent chunks. To showcase the effectiveness of our approach, we have trained two classifiers with our chunk-based ablation schemes on the BODMAS dataset. Our findings reveal that the chunk-based smoothing classifiers exhibit greater resilience against adversarial malware examples generated with state-of-the-are evasion attacks, outperforming a non-smoothed classifier and a randomized smoothing-based classifier by a great margin.
Autores: Daniel Gibert, Giulio Zizzo, Quan Le, Jordi Planes
Última atualização: 2024-02-26 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2402.15267
Fonte PDF: https://arxiv.org/pdf/2402.15267
Licença: https://creativecommons.org/licenses/by-nc-sa/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.