Screenshot 2024 05 02 At 5.06.20 Am.png

El área de investigación de este estudio es la inteligencia artificial (IA) y el aprendizaje automático, centrándose específicamente en las redes neuronales que pueden comprender el código binario. El objetivo es automatizar los procesos de ingeniería inversa entrenando a la IA para que comprenda archivos binarios y proporcione descripciones en inglés. Esto es importante porque los archivos binarios pueden resultar difíciles de comprender debido a su complejidad y falta de transparencia. Las tareas de análisis de malware e ingeniería inversa son particularmente exigentes, y la escasez de profesionales con experiencia acentúa aún más la necesidad de soluciones automatizadas eficientes.

La investigación aborda un problema importante: comprender qué hace el código binario es difícil porque requiere habilidades y conocimientos especializados. A menudo, los ingenieros inversos tienen que profundizar en el código para discernir su funcionalidad. El equipo de investigación pretendía simplificar este proceso mediante la creación de una herramienta automatizada para analizar el código y generar descripciones significativas en inglés, ayudando a los expertos en seguridad a comprender un software, ya sea malicioso o benigno. Esta herramienta podría ahorrar tiempo y brindar claridad cuando los métodos tradicionales tienen dificultades.

Los enfoques actuales implican grandes modelos de lenguaje (LLM) y conjuntos de datos que vinculan el código con descripciones en inglés. Sin embargo, los conjuntos de datos utilizados tienen deficiencias notables, como muestras insuficientes, descripciones vagas o un enfoque en lenguajes interpretados en lugar de lenguajes compilados. Por ejemplo, conjuntos de datos como XLCoST y GitHub-Code tienen limitaciones a la hora de proporcionar descripciones de código precisas. Por el contrario, otros como Deepcom-Java y CoNaLa carecen de cobertura para lenguajes compilados ampliamente utilizados como C y C++.

Los investigadores del Laboratorio Lincoln del MIT, Lexington, MA, EE. UU., presentaron un nuevo conjunto de datos de Stack Overflow, una de las comunidades de programación en línea más grandes. Con más de 1,1 millones de entradas, este conjunto de datos estaba destinado a traducir mejor los binarios a descripciones en inglés. El equipo diseñó un método para extraer datos de este vasto recurso, transformándolos en un conjunto de datos estructurado que combina archivos binarios con descripciones textuales. Este conjunto de datos se convirtió en una fuente importante de información para entrenar modelos de aprendizaje automático.

El enfoque de los investigadores implicó analizar páginas de Stack Overflow etiquetadas con C o C++ y convertirlas en fragmentos. Estos fragmentos contenían código y explicaciones textuales, que se procesaron para extraer la información más relevante. Luego, el equipo generó archivos binarios compilables a partir de estos datos y los comparó con las explicaciones de texto apropiadas, creando un conjunto de datos de 73.209 muestras válidas. Este conjunto de datos les permitió entrenar redes neuronales para comprender el código binario de manera más efectiva.

El equipo desarrolló una nueva metodología llamada Correlación de distancia de incrustación (EDC) para evaluar su conjunto de datos. Para determinar la calidad del conjunto de datos, su objetivo era medir la correlación entre las muestras binarias y sus descripciones en inglés asociadas. Desafortunadamente, sus hallazgos indicaron una baja correlación entre el código binario y las descripciones textuales, similar a otros conjuntos de datos. El método del equipo destacó que su conjunto de datos era insuficiente para entrenar un modelo de manera efectiva porque la correlación entre el código y las explicaciones era demasiado débil para proporcionar resultados confiables.

En conclusión, el estudio revela la complejidad de desarrollar conjuntos de datos de alta calidad que entrenen adecuadamente modelos de aprendizaje automático para resumir código. A pesar del importante esfuerzo requerido para construir un conjunto de datos a partir de más de 1,1 millones de entradas, los resultados sugieren que aún se necesitan técnicas mejoradas para el aumento y la evaluación de datos. Los investigadores destacaron los desafíos en la construcción de conjuntos de datos que puedan capturar suficientemente los matices del código binario y traducirlos en descripciones significativas, lo que indica que se requiere más investigación e innovación en este campo.


Revisar la Papel. Todo el crédito por esta investigación va a los investigadores de este proyecto. Además, no olvides seguirnos en Gorjeo. Únete a nuestro Canal de telegramas, Canal de discordiay LinkedIn Grarriba.

Si te gusta nuestro trabajo, te encantará nuestro Boletin informativo..

No olvides unirte a nuestro SubReddit de más de 40.000 ml


Asjad es consultor interno en Marktechpost. Está cursando B.Tech en ingeniería mecánica en el Instituto Indio de Tecnología, Kharagpur. Asjad es un entusiasta del aprendizaje automático y el aprendizaje profundo que siempre está investigando las aplicaciones del aprendizaje automático en la atención médica.