The increasing complexity of modern software systems, coupled with the continuous rise in reported vulnerabilities, has underscored the urgent need for scalable and automated approaches to vulnerability detection. In recent years, transformer-based architectures have emerged as state-of-the-art solutions for Static Application Security Testing (SAST), consistently outperforming traditional rule-based methods. However, despite these advances, significant challenges remain concerning the optimal formulation of the detection task, the quality and diversity of available datasets, and the robustness of current detectors against adversarial manipulations. This thesis addresses these three complementary challenges through a set of interrelated studies. First, we investigate different architectural choices for vulnerability detection, starting with an analysis of multitask learning and subsequently evaluating the effectiveness of Llama 3 and CodeLlama for SAST. Our results show that these models achieve competitive performance in both vulnerability detection and line-level localization, with CodeLlama benefiting from its specialized pre-training on source code. Second, we conduct a systematic evaluation of existing vulnerability datasets, analyzing their biases, limitations, and impact on model generalization. We find that data quality and diversity are more decisive than model complexity in determining real-world applicability. Strategies such as dataset aggregation and duplication removal prove effective in mitigating bias and improving generalization across projects and vulnerability types. Third, we assess the robustness of state-of-the-art detectors under adversarial scenarios. By applying semantics-preserving code transformations—such as identifier renaming and dead code injection—we demonstrate that current transformer-based models are highly sensitive to lexical and semantic perturbations, exposing critical weaknesses in security-critical contexts. Together, these contributions provide a comprehensive perspective on the strengths and limitations of modern AI-based vulnerability detectors. By bridging architectural innovation, dataset reliability, and robustness analysis, this thesis advances the state of automated software vulnerability detection and outlines pathways toward more generalizable, trustworthy, and resilient solutions.

L’aumentata complessità dei moderni sistemi software, unita al costante incremento delle vulnerabilità segnalate, ha messo in evidenza l’urgente necessità di approcci scalabili e automatizzati per il rilevamento delle vulnerabilità. Negli ultimi anni, le architetture basate su transformer si sono affermate come soluzioni all’avanguardia per il controllo statico di sicurezza delle applicazioni (SAST), superando con costanza i metodi tradizionali basati su regole. Tuttavia, nonostante questi progressi, permangono sfide significative riguardanti la formulazione ottimale del compito di rilevazione, la qualità e la diversità dei dataset disponibili, e la robustezza dei rilevatori esistenti contro manipolazioni avversarie. Questa tesi affronta queste tre sfide complementari attraverso una serie di studi interconnessi. In primo luogo, vengono analizzate diverse scelte architetturali per il rilevamento delle vulnerabilità, a partire dallo studio dell’apprendimento multitask fino alla valutazione dell’efficacia di Llama 3 e CodeLlama nel contesto del SAST. I risultati mostrano che tali modelli raggiungono prestazioni competitive sia nella rilevazione di vulnerabilità sia nella loro localizzazione a livello di linea di codice, con CodeLlama che beneficia del suo pre-addestramento specializzato sul codice sorgente. In secondo luogo, viene condotta una valutazione sistematica dei dataset di vulnerabilità esistenti, analizzandone bias, limitazioni e impatto sulla capacità di generalizzazione dei modelli. Si osserva che la qualità e la diversità dei dati risultano più determinanti della complessità del modello per l’applicabilità in scenari reali. Strategie come l’aggregazione dei dataset e la rimozione dei duplicati si rivelano efficaci nel mitigare i bias e migliorare la generalizzazione tra progetti e tipologie di vulnerabilità. In terzo luogo, viene valutata la robustezza dei rilevatori allo stato dell’arte in scenari avversari. Applicando trasformazioni del codice che preservano la semantica — come la rinomina degli identificatori e l’iniezione di codice morto — si dimostra che i modelli basati su transformer sono altamente sensibili a perturbazioni sia lessicali che semantiche, evidenziando debolezze critiche in contesti legati alla sicurezza. Nel complesso, questi contributi offrono una visione completa dei punti di forza e delle limitazioni dei moderni rilevatori di vulnerabilità basati sull’intelligenza artificiale. Integrando innovazione architetturale, affidabilità dei dataset e analisi di robustezza, questa tesi contribuisce all’avanzamento dello stato dell’arte nel rilevamento automatico delle vulnerabilità software e traccia percorsi verso soluzioni più generalizzabili, affidabili e resilienti.

AI-driven software security: from static vulnerability detection to adversarially robust defense [Sicurezza software IA-Driven: dalla rilevazione statica delle vulnerabilità alla Difesa avversarialmente robusta]

CURTO, CLAUDIO
2025

Abstract

The increasing complexity of modern software systems, coupled with the continuous rise in reported vulnerabilities, has underscored the urgent need for scalable and automated approaches to vulnerability detection. In recent years, transformer-based architectures have emerged as state-of-the-art solutions for Static Application Security Testing (SAST), consistently outperforming traditional rule-based methods. However, despite these advances, significant challenges remain concerning the optimal formulation of the detection task, the quality and diversity of available datasets, and the robustness of current detectors against adversarial manipulations. This thesis addresses these three complementary challenges through a set of interrelated studies. First, we investigate different architectural choices for vulnerability detection, starting with an analysis of multitask learning and subsequently evaluating the effectiveness of Llama 3 and CodeLlama for SAST. Our results show that these models achieve competitive performance in both vulnerability detection and line-level localization, with CodeLlama benefiting from its specialized pre-training on source code. Second, we conduct a systematic evaluation of existing vulnerability datasets, analyzing their biases, limitations, and impact on model generalization. We find that data quality and diversity are more decisive than model complexity in determining real-world applicability. Strategies such as dataset aggregation and duplication removal prove effective in mitigating bias and improving generalization across projects and vulnerability types. Third, we assess the robustness of state-of-the-art detectors under adversarial scenarios. By applying semantics-preserving code transformations—such as identifier renaming and dead code injection—we demonstrate that current transformer-based models are highly sensitive to lexical and semantic perturbations, exposing critical weaknesses in security-critical contexts. Together, these contributions provide a comprehensive perspective on the strengths and limitations of modern AI-based vulnerability detectors. By bridging architectural innovation, dataset reliability, and robustness analysis, this thesis advances the state of automated software vulnerability detection and outlines pathways toward more generalizable, trustworthy, and resilient solutions.
18-dic-2025
Inglese
L’aumentata complessità dei moderni sistemi software, unita al costante incremento delle vulnerabilità segnalate, ha messo in evidenza l’urgente necessità di approcci scalabili e automatizzati per il rilevamento delle vulnerabilità. Negli ultimi anni, le architetture basate su transformer si sono affermate come soluzioni all’avanguardia per il controllo statico di sicurezza delle applicazioni (SAST), superando con costanza i metodi tradizionali basati su regole. Tuttavia, nonostante questi progressi, permangono sfide significative riguardanti la formulazione ottimale del compito di rilevazione, la qualità e la diversità dei dataset disponibili, e la robustezza dei rilevatori esistenti contro manipolazioni avversarie. Questa tesi affronta queste tre sfide complementari attraverso una serie di studi interconnessi. In primo luogo, vengono analizzate diverse scelte architetturali per il rilevamento delle vulnerabilità, a partire dallo studio dell’apprendimento multitask fino alla valutazione dell’efficacia di Llama 3 e CodeLlama nel contesto del SAST. I risultati mostrano che tali modelli raggiungono prestazioni competitive sia nella rilevazione di vulnerabilità sia nella loro localizzazione a livello di linea di codice, con CodeLlama che beneficia del suo pre-addestramento specializzato sul codice sorgente. In secondo luogo, viene condotta una valutazione sistematica dei dataset di vulnerabilità esistenti, analizzandone bias, limitazioni e impatto sulla capacità di generalizzazione dei modelli. Si osserva che la qualità e la diversità dei dati risultano più determinanti della complessità del modello per l’applicabilità in scenari reali. Strategie come l’aggregazione dei dataset e la rimozione dei duplicati si rivelano efficaci nel mitigare i bias e migliorare la generalizzazione tra progetti e tipologie di vulnerabilità. In terzo luogo, viene valutata la robustezza dei rilevatori allo stato dell’arte in scenari avversari. Applicando trasformazioni del codice che preservano la semantica — come la rinomina degli identificatori e l’iniezione di codice morto — si dimostra che i modelli basati su transformer sono altamente sensibili a perturbazioni sia lessicali che semantiche, evidenziando debolezze critiche in contesti legati alla sicurezza. Nel complesso, questi contributi offrono una visione completa dei punti di forza e delle limitazioni dei moderni rilevatori di vulnerabilità basati sull’intelligenza artificiale. Integrando innovazione architetturale, affidabilità dei dataset e analisi di robustezza, questa tesi contribuisce all’avanzamento dello stato dell’arte nel rilevamento automatico delle vulnerabilità software e traccia percorsi verso soluzioni più generalizzabili, affidabili e resilienti.
GIORDANO, Daniela
Università degli studi di Catania
Catania
File in questo prodotto:
File Dimensione Formato  
AI_Driven_Software_Security__From_Static_Vulnerability_Detection_to_Adversarially_Robust_Defense.pdf

accesso aperto

Licenza: Tutti i diritti riservati
Dimensione 805.99 kB
Formato Adobe PDF
805.99 kB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14242/359620
Il codice NBN di questa tesi è URN:NBN:IT:UNICT-359620