Real-Time Operating Systems (RTOSs) are essential for critical embedded applications in domains such as automotive, aerospace, medical devices, and industrial control systems, where strict timing guarantees and reliability are paramount. However, their predictable and deterministic scheduling behavior exposes them to scheduler-based side-channel attacks that can leak sensitive timing information about task execution patterns. This thesis focuses on ScheduLeak, a reconnaissance attack that exploits preemption timing in fixed-priority preemptive schedulers to infer the periods, phases, and execution characteristics of higher-priority tasks. This work recreates and demonstrates the attack on FreeRTOS, a widely used open-source RTOS, through an emulation-based framework on the ARM Cortex-M3 platform using QEMU. The framework automates taskset generation, compilation, execution, and preemption data collection, enabling systematic experiments across varying numbers of tasks (1 to 5) and system utilization (0.5 to 0.8). Results show that ScheduLeak reliably detects preemption patterns and infers scheduling parameters even in moderately complex scenarios, highlighting FreeRTOS’s vulnerability to such attacks. The study also discusses the inherent trade-offs between RTOS determinism and potential defenses like schedule randomization, which may introduce new vulnerabilities or violate real-time requirements. This work provides a demonstration of the attack’s feasibility in an emulated environment and offers insights for future security enhancements in real-time embedded systems.

I Real-Time Operating Systems (RTOSs) sono fondamentali per applicazioni critiche embedded in settori come automotive, aerospaziale, dispositivi medici e sistemi di controllo industriale, dove garanzie temporali rigorose e affidabilità sono essenziali. Tuttavia, il loro comportamento di scheduling deterministico li rende vulnerabili ad attacchi side-channel contro lo scheduler stesso, che possono rivelare informazioni sensibili sui pattern di esecuzione dei task. Questa tesi si concentra su ScheduLeak, un attacco di ricognizione che sfrutta i tempi di preemption in scheduler a priorità fissa preemptivi per recuperare periodi, fasi e caratteristiche di esecuzione dei task a priorità più alta. Questo lavoro ricrea e dimostra l’attacco su FreeRTOS, un RTOS open-source ampiamente utilizzato, attraverso un framework basato su emulazione sulla piattaforma ARM Cortex-M3 con QEMU. Il framework automatizza la generazione di taskset, la compilazione, l’esecuzione e la raccolta di dati di preemption, consentendo esperimenti sistematici su un numero variabile di task (da 1 a 5) e livelli di utilizzo del sistema (da 0.5 a 0.8). I risultati mostrano che ScheduLeak rileva in modo affidabile i pattern di preemption e inferisce i parametri di scheduling anche in scenari moderatamente complessi, evidenziando la vulnerabilità di FreeRTOS a tali attacchi. Lo studio discute inoltre i trade-off intrinseci tra determinismo dei RTOS e possibili difese come la randomizzazione dello schedule, che potrebbero introdurre nuove vulnerabilità o violare i requisiti real-time. Questo lavoro fornisce una dimostrazione della fattibilità dell’attacco in ambiente emulato e offre spunti per futuri miglioramenti della sicurezza nei sistemi embedded real-time.

Determinism as a vulnerability: a side-channel attack against the FreeRTOS scheduler

FIGINI, DAVIDE
2024/2025

Abstract

Real-Time Operating Systems (RTOSs) are essential for critical embedded applications in domains such as automotive, aerospace, medical devices, and industrial control systems, where strict timing guarantees and reliability are paramount. However, their predictable and deterministic scheduling behavior exposes them to scheduler-based side-channel attacks that can leak sensitive timing information about task execution patterns. This thesis focuses on ScheduLeak, a reconnaissance attack that exploits preemption timing in fixed-priority preemptive schedulers to infer the periods, phases, and execution characteristics of higher-priority tasks. This work recreates and demonstrates the attack on FreeRTOS, a widely used open-source RTOS, through an emulation-based framework on the ARM Cortex-M3 platform using QEMU. The framework automates taskset generation, compilation, execution, and preemption data collection, enabling systematic experiments across varying numbers of tasks (1 to 5) and system utilization (0.5 to 0.8). Results show that ScheduLeak reliably detects preemption patterns and infers scheduling parameters even in moderately complex scenarios, highlighting FreeRTOS’s vulnerability to such attacks. The study also discusses the inherent trade-offs between RTOS determinism and potential defenses like schedule randomization, which may introduce new vulnerabilities or violate real-time requirements. This work provides a demonstration of the attack’s feasibility in an emulated environment and offers insights for future security enhancements in real-time embedded systems.
ING - Scuola di Ingegneria Industriale e dell'Informazione
26-mar-2026
2024/2025
I Real-Time Operating Systems (RTOSs) sono fondamentali per applicazioni critiche embedded in settori come automotive, aerospaziale, dispositivi medici e sistemi di controllo industriale, dove garanzie temporali rigorose e affidabilità sono essenziali. Tuttavia, il loro comportamento di scheduling deterministico li rende vulnerabili ad attacchi side-channel contro lo scheduler stesso, che possono rivelare informazioni sensibili sui pattern di esecuzione dei task. Questa tesi si concentra su ScheduLeak, un attacco di ricognizione che sfrutta i tempi di preemption in scheduler a priorità fissa preemptivi per recuperare periodi, fasi e caratteristiche di esecuzione dei task a priorità più alta. Questo lavoro ricrea e dimostra l’attacco su FreeRTOS, un RTOS open-source ampiamente utilizzato, attraverso un framework basato su emulazione sulla piattaforma ARM Cortex-M3 con QEMU. Il framework automatizza la generazione di taskset, la compilazione, l’esecuzione e la raccolta di dati di preemption, consentendo esperimenti sistematici su un numero variabile di task (da 1 a 5) e livelli di utilizzo del sistema (da 0.5 a 0.8). I risultati mostrano che ScheduLeak rileva in modo affidabile i pattern di preemption e inferisce i parametri di scheduling anche in scenari moderatamente complessi, evidenziando la vulnerabilità di FreeRTOS a tali attacchi. Lo studio discute inoltre i trade-off intrinseci tra determinismo dei RTOS e possibili difese come la randomizzazione dello schedule, che potrebbero introdurre nuove vulnerabilità o violare i requisiti real-time. Questo lavoro fornisce una dimostrazione della fattibilità dell’attacco in ambiente emulato e offre spunti per futuri miglioramenti della sicurezza nei sistemi embedded real-time.
File allegati
File Dimensione Formato  
2026_Figini.pdf

accessibile in internet per tutti

Descrizione: Tesi
Dimensione 1.03 MB
Formato Adobe PDF
1.03 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/250829