Analisi Basata su Metriche per Identificare Rilasci Anomali nella Catena di Fornitura del Software dell'Ecosistema npm

Mostra/ Apri
Autore
Frattini, Michele <2000>
Data
2026-07-27Disponibile dal
2026-08-06Abstract
L'ecosistema del software open-source si basa fortemente su gestori di pacchetti come node package manager (npm), che ospita oltre due milioni di librerie. Tuttavia, la sua natura aperta lo rende vulnerabile agli attacchi alla catena di approvvigionamento del software (SSCAs), in cui del codice malevolo viene iniettato in pachetti legittimi. Gli strumenti di rilevamento esistenti condividono due limiti: analizzano solo la release più recente, mancando quindi di una prospettiva longitudinale, e hanno costi operativi elevati a causa dell'esecuzione in sandbox o l'uso di large language model commerciali.
Questa tesi propone un approccio basato su metriche per identificare release npm anomale tracciandone l'evoluzione tra le versioni. Abbiamo studiato innanzitutto quattro SSCAs che hanno colpito l'ecosistema npm nel 2025: l'iniezione di una libreria malevola per Windows, un attacco mirato al furto di criptovalute e due varianti del worm autopropagante Shai-Hulud. Da questi casi abbiamo definito cinque metriche: File Types, Package Size, Longest Line Length, Unique Hexadecimal Values e Unique Ethereum Addresses.
Dunque abbiamo valuto queste metriche su una base di riferimento composta da 629 pacchetti popolari legittimi, considerando le loro 20 versioni più recenti, e su una collezione di malware costituita da 20 release compromesse. I risultati mostrano che ogni attacco è rilevabile da almeno una metrica, ma nessuna li identifica tutti e quattro simultaneamente, confermando la validità di questo approccio, che può essere combinato alle soluzioni esistenti. The Open-Source Software ecosystem relies heavily on package managers such as Node Package Manager (npm), which hosts over two million libraries. However, its open nature makes it vulnerable to Software Supply Chain Attacks (SSCAs), where malicious code is injected into legitimate components. Existing detection tools share two limitations: they analyze only the most recent release, lacking a longitudinal perspective, and incur high operational costs through sandbox execution or commercial Large Language Model inference.
This thesis proposes a metric-based approach to identify anomalous npm releases by tracking their evolution across versions. We first study four SSCAs that affected the npm ecosystem in 2025: a malicious Windows library injection, a cryptocurrency-stealing attack, and two Shai-Hulud self-propagating worm variants. From these, we define five metrics: File Types, Package Size, Longest Line Length, Unique Hexadecimal Values, and Unique Ethereum Addresses. We evaluate these metrics against a goodware baseline of 629 popular packages across their 20 most recent versions, and a malware collection of 20 compromised releases.
Results show that each attack is detectable by at least one metric, but no single one identifies all four simultaneously, highlighting the value of combining lightweight measures as a practical complement to semantically rich approaches.
Tipo
info:eu-repo/semantics/masterThesisCollezioni
- Laurea Magistrale [8032]

