In an era where cloud computing is ubiquitous, it is common for multiple tenants to share the same hardware, raising significant security concerns regarding data confidentiality. While granting users access to performance counters is not standard practice, developers often require them for performance evaluation and optimization. In this context, if a user can infer sensitive information from another user's computations through performance counters, it could result in a severe security vulnerability. In this work, we explore through a systematic approach whether specific performance counters leak information about the data processed by a target function or program, potentially enabling a side-channel attack. Our methodology consists of four key phases: identifying a target function for the attack, analyzing the machine architecture and selecting relevant performance counters, collecting and processing data to evaluate potential information leakage, and performing statistical analysis to quantify the risk. We evaluate our approach on the BearSSL cryptographic library, specifically targeting the point multiplication on an elliptic curve, a fundamental operation in the Diffie-Hellman x25519 key exchange.

In un'epoca in cui il cloud computing è onnipresente, è comune che più utenti condividano lo stesso hardware, sollevando significativi problemi di sicurezza riguardanti la confidenzialità dei dati. Sebbene concedere agli utenti l'accesso ai "Performance Counters" (HPC) non sia una pratica standard, gli sviluppatori spesso ne necessitano per valutare e ottimizzare le prestazioni. In questo contesto, se un utente può inferire informazioni sensibili dalle computazioni di un altro utente attraverso gli HPC, potrebbe risultare in una considerevole falla di sicurezza. In questo lavoro, esploriamo attraverso un approccio sistematico se specifici HPC rilascino informazioni sui dati elaborati da una funzione o programma target, potenzialmente abilitando un attacco Side-Channel. La nostra metodologia consiste in quattro fasi chiave: identificare una funzione target per l'attacco, analizzare l'architettura della macchina e selezionare gli HPC rilevanti, raccogliere e processare i dati per valutare la potenziale fuga di informazioni e condurre un'analisi statistica per quantificare il rischio. Valutiamo il nostro approccio sulla libreria crittografica BearSSL, mirando specificamente alla moltiplicazione di punti su una curva ellittica, un'operazione fondamentale nello scambio di chiavi Diffie-Hellman x25519.

An exploration of the information content of micro-architectural performance counters

Sarro, Riccardo
2024/2025

Abstract

In an era where cloud computing is ubiquitous, it is common for multiple tenants to share the same hardware, raising significant security concerns regarding data confidentiality. While granting users access to performance counters is not standard practice, developers often require them for performance evaluation and optimization. In this context, if a user can infer sensitive information from another user's computations through performance counters, it could result in a severe security vulnerability. In this work, we explore through a systematic approach whether specific performance counters leak information about the data processed by a target function or program, potentially enabling a side-channel attack. Our methodology consists of four key phases: identifying a target function for the attack, analyzing the machine architecture and selecting relevant performance counters, collecting and processing data to evaluate potential information leakage, and performing statistical analysis to quantify the risk. We evaluate our approach on the BearSSL cryptographic library, specifically targeting the point multiplication on an elliptic curve, a fundamental operation in the Diffie-Hellman x25519 key exchange.
ING - Scuola di Ingegneria Industriale e dell'Informazione
3-apr-2025
2024/2025
In un'epoca in cui il cloud computing è onnipresente, è comune che più utenti condividano lo stesso hardware, sollevando significativi problemi di sicurezza riguardanti la confidenzialità dei dati. Sebbene concedere agli utenti l'accesso ai "Performance Counters" (HPC) non sia una pratica standard, gli sviluppatori spesso ne necessitano per valutare e ottimizzare le prestazioni. In questo contesto, se un utente può inferire informazioni sensibili dalle computazioni di un altro utente attraverso gli HPC, potrebbe risultare in una considerevole falla di sicurezza. In questo lavoro, esploriamo attraverso un approccio sistematico se specifici HPC rilascino informazioni sui dati elaborati da una funzione o programma target, potenzialmente abilitando un attacco Side-Channel. La nostra metodologia consiste in quattro fasi chiave: identificare una funzione target per l'attacco, analizzare l'architettura della macchina e selezionare gli HPC rilevanti, raccogliere e processare i dati per valutare la potenziale fuga di informazioni e condurre un'analisi statistica per quantificare il rischio. Valutiamo il nostro approccio sulla libreria crittografica BearSSL, mirando specificamente alla moltiplicazione di punti su una curva ellittica, un'operazione fondamentale nello scambio di chiavi Diffie-Hellman x25519.
File allegati
File Dimensione Formato  
2025_04_Sarro.pdf

accessibile in internet per tutti

Dimensione 2.99 MB
Formato Adobe PDF
2.99 MB 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/236411