DLF: Un Marco de Aprendizaje de Conjunto Activo Profundo para la Generación de Casos de Prueba
Autores: Lu, Yaogang; Peng, Yibo; Zhu, Dongqing
Idioma: Inglés
Editor: MDPI
Año: 2025
Acceso abierto
Artículo científico
2025
DLF: Un Marco de Aprendizaje de Conjunto Activo Profundo para la Generación de Casos de Prueba
Categoría
Gestión y administración
Subcategoría
Gestión de la tecnología y la inovación
Palabras clave
Casos de prueba
Fiabilidad del software
Seguridad
Ejecución simbólica
Aprendizaje en conjunto
Predicciones del modelo
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 1
Citaciones: Sin citaciones
Los casos de prueba de alta calidad son vitales para garantizar la fiabilidad y seguridad del software. Sin embargo, las herramientas de ejecución simbólica existentes generalmente dependen de estrategias de búsqueda de un solo camino, tienen una capacidad de extracción de características limitada y exhiben predicciones de modelo inestables. Estas limitaciones las hacen propensas a óptimos locales en tareas complejas o de múltiples escenarios y obstaculizan su capacidad para equilibrar la calidad de las pruebas con la eficiencia de ejecución. Para abordar estos desafíos, este documento propone un Marco de Aprendizaje Activo en Conjunto Profundo para la exploración de caminos de ejecución simbólica. Durante el entrenamiento, el marco integra el aprendizaje activo con el aprendizaje en conjunto para reducir los costos de anotación y mejorar la robustez del modelo, mientras construye un conjunto de modelos heterogéneos para aprovechar las fortalezas complementarias de los modelos. En la etapa de prueba, un mecanismo de conjunto dinámico basado en la similitud de muestras selecciona de manera adaptativa el modelo predictivo óptimo para guiar la exploración de caminos simbólicos. Además, se emplea una red neuronal gráfica con compuertas para extraer características estructurales y semánticas del gráfico de flujo de control, mejorando la comprensión del comportamiento del programa. Para equilibrar la eficiencia y la cobertura, un mecanismo de ventana deslizante dinámica basado en la densidad de ramas permite el ajuste en tiempo real de la ventana bajo la conciencia de la complejidad del camino. Los resultados experimentales en múltiples programas de referencia del mundo real muestran que el marco propuesto detecta hasta 16 vulnerabilidades y logra un aumento acumulativo del 27.5% en los caminos de ejecución descubiertos en la fuzzing híbrida. Además, el mecanismo de ventana deslizante dinámica eleva la puntuación F1 al 93%.
Descripción
Los casos de prueba de alta calidad son vitales para garantizar la fiabilidad y seguridad del software. Sin embargo, las herramientas de ejecución simbólica existentes generalmente dependen de estrategias de búsqueda de un solo camino, tienen una capacidad de extracción de características limitada y exhiben predicciones de modelo inestables. Estas limitaciones las hacen propensas a óptimos locales en tareas complejas o de múltiples escenarios y obstaculizan su capacidad para equilibrar la calidad de las pruebas con la eficiencia de ejecución. Para abordar estos desafíos, este documento propone un Marco de Aprendizaje Activo en Conjunto Profundo para la exploración de caminos de ejecución simbólica. Durante el entrenamiento, el marco integra el aprendizaje activo con el aprendizaje en conjunto para reducir los costos de anotación y mejorar la robustez del modelo, mientras construye un conjunto de modelos heterogéneos para aprovechar las fortalezas complementarias de los modelos. En la etapa de prueba, un mecanismo de conjunto dinámico basado en la similitud de muestras selecciona de manera adaptativa el modelo predictivo óptimo para guiar la exploración de caminos simbólicos. Además, se emplea una red neuronal gráfica con compuertas para extraer características estructurales y semánticas del gráfico de flujo de control, mejorando la comprensión del comportamiento del programa. Para equilibrar la eficiencia y la cobertura, un mecanismo de ventana deslizante dinámica basado en la densidad de ramas permite el ajuste en tiempo real de la ventana bajo la conciencia de la complejidad del camino. Los resultados experimentales en múltiples programas de referencia del mundo real muestran que el marco propuesto detecta hasta 16 vulnerabilidades y logra un aumento acumulativo del 27.5% en los caminos de ejecución descubiertos en la fuzzing híbrida. Además, el mecanismo de ventana deslizante dinámica eleva la puntuación F1 al 93%.