Técnicas para la detección de vulnerabilidades relacionadas con la memoria de programas codificados en C y C++

Loading...
Thumbnail Image

Official URL

Full text at PDC

Publication date

2025

Advisors (or tutors)

Editors

Journal Title

Journal ISSN

Volume Title

Publisher

Citations
Google Scholar

Citation

Abstract

El objetivo principal del TFM es desarrollar algoritmos basados en Deep Learning que permitan identificar errores de programación asociados al manejo de la memoria. El fin de esto es ofrecer una herramienta que ofrezca la posibilidad de evaluar y prevenir vulnerabilidades en código que puedan ser explotadas con fines ilícitos. Para el desarrollo de esta herramientas se hará uso de técnicas basadas en análisis de código estático en lenguaje C. La herramienta proporcionada es un modelo de RoBertA. El lenguaje utilizado junto a este modelo de NPL, ha sido Python. En este trabajo de fin de grado, se han hecho diferentes experimentos: el primero, consta de la evaluación de funciones en C, cuya evaluación se basa en la detección de problemas de fugas de memoria; el segundo, se ha tratado de identificar la línea en la que se encuentra el error de fuga de memoria y por último se ha realizado la clasificación de código según el tipo de error que contiene. Así mismo se dejará el trabajo realizado a durante la realización de este trabajo de fin de máster. También se dejará el código creado para la realización de estos tres experimentos, con el fin de que el lector o cualquier particular pueda probarlo, mejorarlo o usarlo de referencia.
The main objective of this final master project is offer a tool that allows the possibility of evaluating and preventing vulnerabilities inside of the code which can be exploited for illicit behaviours. For the develop of the mentioned tool, it will be used techniques based on static code C analysis. The provided tool is a model based on RoBertA. The language used with this model is Python. In this final master project, has been made three different experiments: the first one, it evaluates C functions and it evaluate the possible problems of memory that these function could have; the second one, it tries to identify the exact line of the errorwhich is in the function and the third one, it, classifies the functions with the different vulnerabilities. Moreover, it will be reflected all the job made in this final master project. In addition, the made code that has been used for these three experiments will be registered. That is for the reader and someone who wants to test it, improve it or just use it.

Research Projects

Organizational Units

Journal Issue

Description

Trabajo de Fin de Máster en Ingeniería Informática, Facultad de Informática UCM, Departamento de Ingeniería de Software e Inteligencia Artificial, Curso 2024/2025.

Keywords