Model sharing has become a common practice in the Machine Learning (ML) community. Thanks to platforms like Hugging Face and Kaggle, users can easily share and download pre-trained models for various tasks and applications. Federated learning also relies on model sharing, with the central server distributing an initial model to all the participating clients to enable collaborative training. However, model sharing poses significant security risks during deserialization. Models are programs, and when loaded, they can execute arbitrary code on the system. ML frameworks facilitate the easy sharing of models through common serialization formats like Pickle or HDF5, which are not designed with security in mind. This thesis explores vulnerabilities in model serialization and proposes a dynamic analysis solution to improve the detection of related threats. Current techniques primarily rely on static analysis to identify known attack patterns in serialized model files. Recent vulnerabilities have demonstrated how these static methods can be bypassed, resulting in successful zero-day attacks. The proposed solution involves monitoring the model behavior during loading in a controlled environment. The analyzed behavior is then compared against a trusted profile based on a dataset of legitimate models. If the model deviates from the expected profile, it is flagged as potentially malicious. Experimental validation demonstrates that dynamic analysis significantly improves the detection of deserialization attacks from zero-day vulnerabilities. In addition, static analysis tools are prone to false positives, incorrectly flagging features with legitimate purposes as malicious. By analyzing models based on their runtime behavior instead, it is possible to evaluate legitimate use cases more effectively and reduce false positives compared to current solutions. Furthermore, a large-scale analysis of popular ML models has demonstrated the ability of the implemented solution to reduce false alarms. The results of this thesis could contribute to the future development of more secure model-sharing practices in ML, particularly in federated contexts, ultimately improving the overall security of model-sharing systems.

La condivisione dei modelli è diventata una pratica comune in Machine Learning (ML). Grazie a piattaforme come Hugging Face e Kaggle, gli utenti possono facilmente condividere e scaricare modelli pre-addestrati. Anche in federated learning la condivisione di modelli è fondamentale, con il server centrale che distribuisce un modello iniziale a tutti i partecipanti per consentirne l'addestramento. Tuttavia, la condivisione dei modelli comporta rischi significativi per la sicurezza durante il processo di deserializzazione. I modelli sono programmi e il loro caricamento può comportare l'esecuzione di codice arbitrario sul sistema. I framework di ML consentono di condividere facilmente i modelli utilizzando formati di serializzazione come Pickle o HDF5, che non sono stati progettati con obiettivi di sicurezza. Questa tesi esplora le vulnerabilità associate alla serializzazione dei modelli, proponendo come soluzione l'utilizzo di analisi dinamica per migliorarne il rilevamento. Le tecniche attuali si basano principalmente sull'analisi statica per identificare pattern noti all'interno dei file dei modelli. Recenti vulnerabilità hanno dimostrato come questi metodi possano essere aggirati, portando con successo a termine attacchi senza essere rilevati. La soluzione proposta prevede il monitoraggio del comportamento del modello durante il caricamento in un ambiente controllato. Il comportamento analizzato viene quindi confrontato con un profilo basato su un set di modelli legittimi. Se il modello caricato si discosta dal profilo atteso, viene segnalato come potenzialmente malevolo. I test eseguiti dimostrano che l'analisi dinamica migliora significativamente il tasso di rilevamento degli attacchi da vulnerabilità zero-day. Inoltre, le tecniche di analisi statica sono soggette a falsi positivi, segnalando modelli legittimi come malevoli a causa di import che non rientrano nelle allowlist utilizzate per l'analisi statica. L'analisi del comportamento a runtime consente invece di valutare meglio i casi d'uso legittimi e ridurre i falsi positivi. I risultati ottenuti contribuiscono allo sviluppo di pratiche di condivisione dei modelli più sicure nella comunità di ML, in particolare nei contesti federativi, migliorando la sicurezza complessiva dei sistemi di condivisione.

Dynamic analysis for improved detection of model serialization attacks in Machine Learning

Pastore, Francesco
2024/2025

Abstract

Model sharing has become a common practice in the Machine Learning (ML) community. Thanks to platforms like Hugging Face and Kaggle, users can easily share and download pre-trained models for various tasks and applications. Federated learning also relies on model sharing, with the central server distributing an initial model to all the participating clients to enable collaborative training. However, model sharing poses significant security risks during deserialization. Models are programs, and when loaded, they can execute arbitrary code on the system. ML frameworks facilitate the easy sharing of models through common serialization formats like Pickle or HDF5, which are not designed with security in mind. This thesis explores vulnerabilities in model serialization and proposes a dynamic analysis solution to improve the detection of related threats. Current techniques primarily rely on static analysis to identify known attack patterns in serialized model files. Recent vulnerabilities have demonstrated how these static methods can be bypassed, resulting in successful zero-day attacks. The proposed solution involves monitoring the model behavior during loading in a controlled environment. The analyzed behavior is then compared against a trusted profile based on a dataset of legitimate models. If the model deviates from the expected profile, it is flagged as potentially malicious. Experimental validation demonstrates that dynamic analysis significantly improves the detection of deserialization attacks from zero-day vulnerabilities. In addition, static analysis tools are prone to false positives, incorrectly flagging features with legitimate purposes as malicious. By analyzing models based on their runtime behavior instead, it is possible to evaluate legitimate use cases more effectively and reduce false positives compared to current solutions. Furthermore, a large-scale analysis of popular ML models has demonstrated the ability of the implemented solution to reduce false alarms. The results of this thesis could contribute to the future development of more secure model-sharing practices in ML, particularly in federated contexts, ultimately improving the overall security of model-sharing systems.
ING - Scuola di Ingegneria Industriale e dell'Informazione
26-mar-2026
2024/2025
La condivisione dei modelli è diventata una pratica comune in Machine Learning (ML). Grazie a piattaforme come Hugging Face e Kaggle, gli utenti possono facilmente condividere e scaricare modelli pre-addestrati. Anche in federated learning la condivisione di modelli è fondamentale, con il server centrale che distribuisce un modello iniziale a tutti i partecipanti per consentirne l'addestramento. Tuttavia, la condivisione dei modelli comporta rischi significativi per la sicurezza durante il processo di deserializzazione. I modelli sono programmi e il loro caricamento può comportare l'esecuzione di codice arbitrario sul sistema. I framework di ML consentono di condividere facilmente i modelli utilizzando formati di serializzazione come Pickle o HDF5, che non sono stati progettati con obiettivi di sicurezza. Questa tesi esplora le vulnerabilità associate alla serializzazione dei modelli, proponendo come soluzione l'utilizzo di analisi dinamica per migliorarne il rilevamento. Le tecniche attuali si basano principalmente sull'analisi statica per identificare pattern noti all'interno dei file dei modelli. Recenti vulnerabilità hanno dimostrato come questi metodi possano essere aggirati, portando con successo a termine attacchi senza essere rilevati. La soluzione proposta prevede il monitoraggio del comportamento del modello durante il caricamento in un ambiente controllato. Il comportamento analizzato viene quindi confrontato con un profilo basato su un set di modelli legittimi. Se il modello caricato si discosta dal profilo atteso, viene segnalato come potenzialmente malevolo. I test eseguiti dimostrano che l'analisi dinamica migliora significativamente il tasso di rilevamento degli attacchi da vulnerabilità zero-day. Inoltre, le tecniche di analisi statica sono soggette a falsi positivi, segnalando modelli legittimi come malevoli a causa di import che non rientrano nelle allowlist utilizzate per l'analisi statica. L'analisi del comportamento a runtime consente invece di valutare meglio i casi d'uso legittimi e ridurre i falsi positivi. I risultati ottenuti contribuiscono allo sviluppo di pratiche di condivisione dei modelli più sicure nella comunità di ML, in particolare nei contesti federativi, migliorando la sicurezza complessiva dei sistemi di condivisione.
File allegati
File Dimensione Formato  
2026_03_Pastore_Tesi.pdf

solo utenti autorizzati a partire dal 27/02/2029

Dimensione 2.02 MB
Formato Adobe PDF
2.02 MB Adobe PDF   Visualizza/Apri
2026_03_Pastore_Executive_Summary.pdf

solo utenti autorizzati a partire dal 27/02/2029

Dimensione 420.85 kB
Formato Adobe PDF
420.85 kB Adobe PDF   Visualizza/Apri

I documenti in POLITesi 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/10589/253476