Generando código vulnerable adversario contra detectores de vulnerabilidades basados en aprendizaje profundo
Autores: Yu, Xueqi; Li, Zhen; Huang, Xiang; Zhao, Shasha
Idioma: Inglés
Editor: MDPI
Año: 2023
Acceso abierto
Artículo científico
2023
Generando código vulnerable adversario contra detectores de vulnerabilidades basados en aprendizaje profundo
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Aprendizaje profundo
Modelos de detección de vulnerabilidades
Ataque adversarial
Ejemplos adversariales
Tareas de código fuente
Búsqueda de árbol de Monte Carlo
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 28
Citaciones: Sin citaciones
Los modelos de detección de vulnerabilidades basados en aprendizaje profundo han recibido una amplia atención; sin embargo, estos modelos son susceptibles a ataques adversarios, y los ejemplos adversarios son una dirección de investigación principal para mejorar la robustez de los modelos. Hay tres categorías principales de métodos de generación de ejemplos adversarios para tareas de código fuente: cambiar nombres de identificadores, agregar código muerto y cambiar la estructura del código. Sin embargo, estos métodos no se pueden aplicar directamente a la detección de vulnerabilidades. Por lo tanto, proponemos el primer estudio de ataque adversario a modelos de detección de vulnerabilidades. Específicamente, utilizamos transformaciones equivalentes para generar declaraciones candidatas e introducimos un algoritmo de búsqueda de árbol de Monte Carlo mejorado para guiar la selección de declaraciones candidatas para generar ejemplos adversarios. Además, ideamos un enfoque de caja negra que se puede aplicar a modelos de detección de vulnerabilidades generalizados. Los resultados experimentales muestran que nuestro enfoque logra tasas de éxito de ataque del 16,48%, 27,92% y 65,20%, respectivamente, en tres modelos de detección de vulnerabilidades con diferentes niveles de granularidad. En comparación con el método de ataque de código fuente de vanguardia ALERT, nuestro método puede manejar modelos con mapeo de nombres de identificadores, y nuestra tasa de éxito de ataque es un 27,59% más alta en promedio que ALERT.
Descripción
Los modelos de detección de vulnerabilidades basados en aprendizaje profundo han recibido una amplia atención; sin embargo, estos modelos son susceptibles a ataques adversarios, y los ejemplos adversarios son una dirección de investigación principal para mejorar la robustez de los modelos. Hay tres categorías principales de métodos de generación de ejemplos adversarios para tareas de código fuente: cambiar nombres de identificadores, agregar código muerto y cambiar la estructura del código. Sin embargo, estos métodos no se pueden aplicar directamente a la detección de vulnerabilidades. Por lo tanto, proponemos el primer estudio de ataque adversario a modelos de detección de vulnerabilidades. Específicamente, utilizamos transformaciones equivalentes para generar declaraciones candidatas e introducimos un algoritmo de búsqueda de árbol de Monte Carlo mejorado para guiar la selección de declaraciones candidatas para generar ejemplos adversarios. Además, ideamos un enfoque de caja negra que se puede aplicar a modelos de detección de vulnerabilidades generalizados. Los resultados experimentales muestran que nuestro enfoque logra tasas de éxito de ataque del 16,48%, 27,92% y 65,20%, respectivamente, en tres modelos de detección de vulnerabilidades con diferentes niveles de granularidad. En comparación con el método de ataque de código fuente de vanguardia ALERT, nuestro método puede manejar modelos con mapeo de nombres de identificadores, y nuestra tasa de éxito de ataque es un 27,59% más alta en promedio que ALERT.