Firewall3D controlla l’hardware delle stampanti 3D per individuare manomissioni del firmware

Un gruppo di ricercatori della Texas A&M University ha sviluppato Firewall3D, un prototipo hardware progettato per riconoscere gli attacchi informatici che alterano il comportamento delle stampanti 3D intervenendo sul firmware. Il sistema è stato presentato da Seyed Ali Ghazi Asgar e Narasimha Reddy in un paper pubblicato l’11 luglio 2026.

Firewall3D non è un prodotto commerciale e non è il nome di un’azienda. Si tratta di un progetto di ricerca che propone di aggiungere alla stampante 3D un dispositivo indipendente, incaricato di osservare ciò che accade sul piano fisico durante la produzione.

Il principio è differente da quello dei normali strumenti di sicurezza informatica. Firewall3D non si limita a controllare il file STL, il G-code, la rete aziendale o l’integrità del software. Il dispositivo misura le correnti dei motori, le temperature, l’attività delle ventole e i segnali dei finecorsa, confrontando questi dati con le operazioni che la stampante dovrebbe eseguire.

L’obiettivo è individuare una possibile differenza tra il comando previsto e il comportamento reale della macchina, anche quando il firmware compromesso continua a mostrare all’operatore valori apparentemente corretti.

Perché un attacco al firmware è difficile da riconoscere

Il processo di stampa 3D a estrusione di materiale parte da un modello digitale, spesso esportato in formato STL. Un software di slicing trasforma la geometria del modello in una sequenza di istruzioni G-code.

Queste istruzioni definiscono, tra gli altri parametri, gli spostamenti degli assi, la quantità di materiale estruso, la velocità di stampa, la temperatura dell’ugello, la temperatura del piano e il funzionamento delle ventole.

Il firmware riceve il G-code e lo traduce in segnali elettrici destinati ai componenti della stampante. Controlla quindi i motori passo-passo, i riscaldatori, i sensori termici, i finecorsa e gli altri dispositivi collegati alla scheda madre.

Questa posizione rende il firmware un elemento particolarmente delicato. Un file G-code può essere verificato prima della stampa, ma un firmware alterato potrebbe interpretare quel file in modo diverso da quanto previsto.

Un comando che richiede uno spostamento di 10 millimetri potrebbe essere trasformato in uno spostamento di 9,9 millimetri. Una singola deviazione potrebbe non produrre conseguenze evidenti, ma una sequenza di piccole modifiche potrebbe compromettere le tolleranze dimensionali o la struttura interna del componente.

Il firmware potrebbe anche modificare la temperatura dell’ugello, ridurre l’estrusione, disattivare la ventola oppure falsificare le informazioni mostrate sul display. L’operatore vedrebbe i parametri richiesti, mentre la macchina eseguirebbe condizioni differenti.

Dalla sicurezza dei file alla sicurezza della macchina

La protezione delle stampanti 3D viene spesso affrontata controllando l’accesso ai file CAD, ai modelli STL e ai programmi G-code. Queste misure rimangono necessarie, ma non coprono tutti i possibili punti di attacco.

Una stampante 3D è un sistema cyber-fisico: le istruzioni digitali producono movimenti, temperature e trasformazioni fisiche del materiale. Un attacco può quindi colpire sia le informazioni sia il risultato della produzione.

Gli effetti possono includere la sottrazione della proprietà intellettuale, la fabbricazione di copie non autorizzate, il danneggiamento della macchina o l’introduzione di difetti difficili da individuare nel componente.

Nel caso di un oggetto decorativo, la conseguenza potrebbe essere una stampa fallita. Nel caso di un elemento funzionale utilizzato in un drone, in una macchina industriale o in un dispositivo medico, una modifica interna potrebbe ridurre la resistenza meccanica senza alterare in modo evidente l’aspetto esterno.

Firewall3D cerca di affrontare questo problema creando un secondo livello di osservazione che non dipende dalle informazioni comunicate dal firmware della stampante.

Un dispositivo indipendente tra la scheda madre e i componenti

I ricercatori della Texas A&M University descrivono l’architettura di Firewall3D come un sistema “bump in the wire”. Il dispositivo viene inserito nel percorso elettrico tra la scheda madre della stampante e alcuni sensori o attuatori.

Quando la scheda madre invia un segnale a un motore, a una ventola o a un riscaldatore, Firewall3D può misurarlo prima che raggiunga il componente. Il dispositivo può inoltre leggere le risposte provenienti dai sensori, come la temperatura dell’ugello o lo stato dei finecorsa.

La soluzione non richiede, secondo il paper, modifiche al firmware o alla scheda madre. Sono però necessari collegamenti aggiuntivi per inserire il circuito di monitoraggio nei percorsi elettrici della stampante.

Firewall3D riceve anche una copia del G-code originale. In questo modo il sistema conosce le operazioni attese e può confrontarle con le grandezze fisiche rilevate sulla macchina.

Se il G-code richiede uno spostamento di 30 millimetri ma la corrente dei motori indica uno spostamento di 25 millimetri, Firewall3D può segnalare la discrepanza. Lo stesso principio viene applicato alla velocità, alla temperatura, alle ventole e alle procedure di azzeramento degli assi.

Quali segnali vengono controllati

Il prototipo analizza quattro categorie principali di segnali.

La prima comprende le correnti dei motori passo-passo. Una stampante FFF dispone normalmente di motori dedicati agli assi X, Y e Z, oltre a un motore per l’estrusore. Misurando le correnti delle bobine, Firewall3D può ricostruire la rotazione del motore e stimare lo spostamento lineare corrispondente.

La seconda categoria riguarda le temperature. Il sistema controlla il sensore dell’hotend e l’attività del riscaldatore del piano, verificando se il comportamento termico corrisponde ai valori richiesti dal G-code.

La terza categoria riguarda le ventole. Firewall3D misura il segnale PWM utilizzato per controllarne la velocità. Una ventola disattivata o rallentata senza un comando corrispondente può essere interpretata come un’anomalia.

La quarta categoria comprende i finecorsa. Questi interruttori permettono alla stampante di individuare le posizioni di riferimento degli assi durante la procedura di homing. Un firmware compromesso potrebbe dichiarare che la calibrazione è stata completata senza aver raggiunto il finecorsa. Il dispositivo esterno può verificare se l’interruttore è stato realmente attivato.

I componenti elettronici utilizzati nel prototipo

Il centro della scheda Firewall3D è un microcontrollore STM32F103C8K6 prodotto da STMicroelectronics. Questo componente gestisce l’acquisizione dei segnali analogici, le comunicazioni seriali e USB, il display OLED e le interazioni con i comandi del dispositivo.

I ricercatori hanno utilizzato sensori TMCS1107A3B prodotti da Texas Instruments per misurare le correnti dei motori passo-passo. Si tratta di sensori a effetto Hall capaci di misurare correnti continue e alternate mantenendo l’isolamento galvanico.

Ogni motore contiene due bobine e richiede quindi due sensori. Per controllare i quattro motori della configurazione sperimentale sono stati utilizzati otto canali di misurazione.

La comunicazione tra il circuito Firewall3D e il computer è affidata a un convertitore MCP2221A prodotto da Microchip Technology. Il componente converte la connessione USB del computer in interfacce seriali e I²C utilizzabili dal sistema elettronico.

Poiché il microcontrollore non dispone di un numero sufficiente di ingressi analogici per tutti i segnali, il prototipo impiega anche un multiplexer ADG708 prodotto da Analog Devices. Questo componente consente di indirizzare più sorgenti analogiche verso un singolo canale di acquisizione.

STMicroelectronics, Texas Instruments, Microchip Technology e Analog Devices sono citate come produttrici dei componenti elettronici impiegati. Il paper non presenta queste aziende come partner del progetto di ricerca della Texas A&M University.

Come Firewall3D ricostruisce gli spostamenti

Il controllo dei movimenti rappresenta uno degli aspetti più interessanti del progetto. Firewall3D non legge soltanto il comando digitale inviato dalla scheda madre, ma misura la corrente che attraversa le due bobine di ciascun motore.

Le correnti cambiano secondo una sequenza periodica durante la rotazione. Confrontando i due segnali e calcolandone la relazione di fase, il microcontrollore può stimare la posizione angolare del rotore.

Il valore angolare viene poi convertito in uno spostamento lineare mediante un fattore di calibrazione specifico per la stampante. Questo fattore dipende da elementi come il numero di passi del motore, il microstepping, le pulegge, le cinghie e le viti utilizzate sugli assi.

Nella configurazione sperimentale descritta dai ricercatori della Texas A&M University, il sistema ha raggiunto una risoluzione di 0,1 millimetri nella stima della posizione.

Le prove sono state effettuate con velocità comprese tra 500 e 2.000 millimetri al minuto. Gli errori misurati sono rimasti generalmente compresi tra −0,1 e +0,1 millimetri.

Firewall3D può stimare anche la velocità. Il sistema registra l’inizio e la fine del movimento, misura il tempo impiegato e lo combina con la distanza ricostruita. Nei test dichiarati dai ricercatori, l’errore massimo è rimasto inferiore all’1% per un comando impostato a 2.500 millimetri al minuto.

Un’architettura divisa tra microcontrollore e computer

Firewall3D utilizza un’architettura ibrida. Le operazioni che richiedono un campionamento rapido vengono eseguite direttamente dal microcontrollore di STMicroelectronics.

Le correnti dei motori vengono campionate a 4 kHz. I dati sono trasferiti nella memoria del microcontrollore attraverso il sistema DMA, riducendo il carico sulla CPU e consentendo di elaborare i segnali senza inviare al computer ogni campione grezzo.

Il computer esegue invece le verifiche di livello superiore. Può leggere il G-code, controllarne la coerenza e trasformare i valori acquisiti dai sensori in temperature o percentuali di funzionamento delle ventole.

Questa separazione permette al dispositivo hardware di concentrarsi sulle misure che richiedono tempi precisi, lasciando al computer le analisi più complesse e gli eventuali aggiornamenti delle regole di sicurezza.

I dati possono essere mostrati attraverso un’interfaccia grafica che presenta all’operatore le condizioni della macchina e le anomalie rilevate.

Il test sulla modifica dei movimenti

Per verificare la capacità di riconoscere una manipolazione del movimento, i ricercatori della Texas A&M University hanno preparato un G-code che richiedeva all’ugello di percorrere un quadrato con lati di 30 millimetri.

Nella prova normale, Firewall3D ha rilevato movimenti coerenti con i valori previsti. Nella simulazione dell’attacco, una delle istruzioni è stata modificata per produrre uno spostamento di 25 millimetri anziché 30.

Il sistema ha misurato la distanza effettivamente percorsa e ha individuato la differenza di 5 millimetri rispetto al comando originale.

Una seconda prova ha riguardato la velocità. Tre lati del quadrato sono stati percorsi a 1.500 millimetri al minuto, mentre il firmware simulato come compromesso ha ridotto la velocità del quarto lato a 1.000 millimetri al minuto.

Firewall3D ha rilevato la variazione confrontando il tempo di esecuzione e la distanza percorsa. Una modifica di questo tipo potrebbe alterare la deposizione del materiale, la qualità delle pareti o il comportamento termico del filamento.

Il controllo delle temperature e delle ventole

Un firmware manomesso potrebbe impostare una temperatura diversa da quella indicata nel G-code. Potrebbe inoltre continuare a mostrare sul display il valore corretto, impedendo all’operatore di accorgersi della modifica.

Firewall3D legge il sensore termico dell’hotend attraverso un circuito buffer, progettato per non interferire con la misura utilizzata dalla scheda madre. Il valore acquisito viene inviato al computer e convertito nella temperatura corrispondente.

Per distinguere una normale fase di riscaldamento da un’anomalia, il sistema deve conoscere il comportamento termico della macchina. I ricercatori hanno quindi misurato il tempo necessario per portare l’ugello da 50 °C a diversi valori di destinazione.

Dopo un intervallo di assestamento, la temperatura deve rimanere all’interno di una fascia di tolleranza. Nel prototipo è stato adottato un margine pari al 10% del valore impostato.

In uno degli scenari sperimentali, il G-code richiedeva una temperatura di 210 °C, mentre l’attacco simulato riduceva il valore a 150 °C. Firewall3D ha identificato l’uscita dalla fascia ammessa e ha generato un allarme.

Il sistema utilizza un principio analogo per le ventole. Il segnale PWM viene convertito in una tensione continua mediante un circuito isolato e filtrato. La tensione permette di stimare la percentuale di funzionamento.

Durante il test, il valore previsto per la ventola era 255, corrispondente alla velocità massima, mentre l’attacco lo portava a zero. Firewall3D ha riconosciuto che il comportamento fisico non corrispondeva al comando previsto.

I rischi delle manipolazioni termiche

Una modifica della temperatura può causare problemi differenti. Una temperatura troppo bassa può ridurre l’adesione tra gli strati e produrre un componente apparentemente corretto ma meno resistente.

Una temperatura troppo alta può degradare il polimero, generare emissioni indesiderate, danneggiare il tubo in PTFE oppure provocare l’ammorbidimento di parti vicine all’hotend.

Un attacco potrebbe anche disattivare le protezioni contro il thermal runaway. In condizioni normali, il firmware interrompe il riscaldamento quando la temperatura non segue l’andamento atteso. Se lo stesso firmware è stato alterato, però, questa protezione potrebbe essere disattivata o ingannata.

Il monitoraggio esterno proposto dalla Texas A&M University crea una seconda catena di controllo. Il dispositivo non dipende dal valore dichiarato dal firmware, perché legge direttamente il sensore e i segnali elettrici dei riscaldatori.

La manipolazione dei finecorsa

I finecorsa stabiliscono il punto zero degli assi. Durante l’homing, l’asse si muove fino ad attivare l’interruttore, si allontana per una breve distanza e lo raggiunge una seconda volta con maggiore precisione.

Questa operazione produce una sequenza riconoscibile nei segnali elettrici. Firewall3D può quindi verificare se il finecorsa è stato realmente premuto.

Nel test dei ricercatori, l’asse Y avrebbe dovuto eseguire una nuova calibrazione prima di tornare alla posizione di 100 millimetri. Nello scenario di attacco, il movimento di homing è stato sostituito con uno spostamento di soli 85 millimetri.

Il finecorsa non è stato attivato e l’asse ha accumulato uno scostamento di 15 millimetri. Se la stampa fosse proseguita, gli strati successivi sarebbero stati depositati in una posizione errata.

Firewall3D ha riconosciuto l’assenza della sequenza prevista sul finecorsa, nonostante il firmware simulato dichiarasse di aver completato la calibrazione.

Un controllo esterno quando il firmware non è affidabile

Le stampanti 3D includono già diversi sistemi di sicurezza. Il firmware può applicare limiti ai movimenti, controllare le temperature, verificare i sensori e interrompere la macchina in caso di errore.

Questi controlli funzionano però all’interno dello stesso ambiente software che un attaccante potrebbe aver compromesso. Affidare al firmware il compito di certificare il proprio comportamento crea quindi un limite strutturale.

Firewall3D introduce un osservatore indipendente. Il dispositivo conosce le istruzioni originali e controlla gli effetti fisici delle operazioni senza affidarsi alle informazioni presentate dalla scheda madre.

Il metodo è paragonabile a un sistema di supervisione industriale che confronta il comando impartito con la risposta effettiva dell’impianto. Non sostituisce la protezione della rete o la verifica dei file, ma aggiunge un controllo in prossimità degli attuatori.

Le ricerche precedenti sugli attacchi alle stampanti 3D

Il rischio analizzato da Firewall3D è supportato da diversi studi sulla sicurezza della produzione additiva.

Il progetto FLAW3D ha dimostrato che un trojan inserito nel bootloader di stampanti compatibili con il firmware Marlin può modificare le istruzioni durante l’esecuzione. Il codice malevolo descritto dai ricercatori occupava meno di 1,7 kilobyte e poteva ridurre fino al 50% la resistenza a trazione dei provini stampati.

Uno studio presentato a USENIX WOOT 2024 ha classificato gli attacchi al firmware delle stampanti FFF e ha sperimentato nove modalità differenti. Gli scenari comprendevano modifiche alla velocità, all’estrusione, alla temperatura, alla ventilazione e ai dati visualizzati.

Un’altra ricerca presentata a USENIX Security 2025 ha individuato 278 istruzioni G-code potenzialmente utilizzabili per attacchi di divulgazione delle informazioni, negazione del servizio o manipolazione del modello.

Questi studi mostrano che il problema non riguarda soltanto il furto del file originale. Una sequenza formalmente valida può produrre effetti pericolosi a causa delle modalità con cui viene interpretata o combinata con altre istruzioni.

La posizione del NIST sulla sicurezza della produzione additiva

Il National Institute of Standards and Technology, conosciuto come NIST, considera la sicurezza della produzione additiva un caso specifico della sicurezza dei sistemi cyber-fisici.

Secondo il NIST, un attacco può colpire i dati di progetto, il processo produttivo, la macchina oppure il componente fabbricato. Una strategia adeguata deve quindi proteggere più livelli e non soltanto il perimetro informatico.

Il NIST ha studiato anche l’impiego dei gemelli digitali per confrontare il comportamento osservato con quello atteso. In questi sistemi, un modello della macchina riceve dati dal processo fisico e cerca deviazioni che possano indicare un guasto o un attacco.

Firewall3D segue una logica compatibile con questo approccio, pur utilizzando un’architettura specifica. Il sistema costruisce un riferimento a partire dal G-code e dalle caratteristiche della stampante, quindi verifica se le grandezze fisiche rimangono entro i limiti previsti.

I limiti dichiarati dai ricercatori

Il paper della Texas A&M University presenta Firewall3D come un prototipo e riconosce alcune condizioni non ancora risolte.

La prima riguarda l’integrità dello stesso dispositivo di sicurezza. Gli esperimenti assumono che il firmware di Firewall3D non sia compromesso. Un sistema destinato all’impiego industriale dovrebbe proteggere il proprio microcontrollore da aggiornamenti non autorizzati, accessi fisici e tentativi di riprogrammazione.

La seconda riguarda la comunicazione con il computer. Il prototipo presume che il collegamento tra Firewall3D e il PC sia sicuro. Se un attaccante potesse modificare i dati scambiati, potrebbe nascondere un’anomalia o generare segnalazioni false.

I ricercatori propongono, come sviluppo successivo, un canale cifrato e un sistema per verificare l’integrità del firmware installato sul microcontrollore di STMicroelectronics.

Un altro limite riguarda la calibrazione. Il rapporto tra correnti dei motori, rotazione e distanza dipende dall’architettura della stampante. Firewall3D deve quindi conoscere le caratteristiche meccaniche e termiche di ogni modello.

Anche i valori normali di temperatura, velocità e ventilazione variano in funzione del materiale, del profilo di slicing e delle condizioni ambientali. Le soglie dovrebbero essere abbastanza strette da riconoscere un attacco, ma non tanto da interrompere la produzione per una variazione innocua.

Il paper non descrive una sperimentazione estesa su numerosi modelli di stampanti, schede madri o firmware. La capacità di adattare il sistema a macchine differenti dovrà quindi essere verificata attraverso ulteriori test.

Dal prototipo a un possibile sistema industriale

Per diventare una soluzione utilizzabile in una farm di stampa, Firewall3D dovrebbe essere integrato nei flussi di produzione e nelle procedure di sicurezza aziendali.

Il dispositivo dovrebbe identificare ogni macchina, registrare la versione del firmware, conservare il G-code autorizzato e produrre un rapporto associato alla singola commessa. Gli eventi dovrebbero essere firmati digitalmente per impedire modifiche successive.

Sarebbe inoltre necessario definire cosa accade quando viene rilevata un’anomalia. L’arresto immediato può essere appropriato in alcuni casi, ma deve essere eseguito senza lasciare riscaldatori o motori in una condizione pericolosa.

Un’applicazione industriale richiederebbe anche procedure per distinguere un attacco da un guasto. Una cinghia allentata, un motore usurato o un sensore difettoso possono produrre una divergenza tra il comando e il comportamento fisico senza che sia avvenuta una manomissione.

Questa caratteristica potrebbe rappresentare anche un vantaggio. Un sistema come Firewall3D potrebbe essere utilizzato non soltanto per la sicurezza informatica, ma anche per la manutenzione e il controllo del processo, segnalando deviazioni meccaniche o termiche prima che causino una serie di componenti difettosi.

Una nuova catena di fiducia per la stampa 3D

Firewall3D parte da un principio preciso: quando la scheda madre e il firmware non possono essere considerati affidabili, occorre osservare direttamente ciò che la macchina sta facendo.

Il prototipo della Texas A&M University confronta le istruzioni attese con le correnti dei motori, le temperature, le ventole e i finecorsa. Nei test descritti nel paper ha identificato modifiche agli spostamenti, alla velocità, al comportamento termico e alle procedure di homing.

L’impiego di componenti prodotti da STMicroelectronics, Texas Instruments, Microchip Technology e Analog Devices dimostra che l’architettura può essere realizzata con circuiti disponibili sul mercato. Questo non significa però che il sistema sia pronto per una distribuzione commerciale.

Prima di un utilizzo produttivo dovranno essere protetti il firmware del dispositivo, la comunicazione con il computer e le procedure di configurazione. Saranno inoltre necessari test su un numero maggiore di stampanti e condizioni operative.

Il contributo principale di Firewall3D consiste nell’estendere il controllo oltre il dominio digitale. Proteggere il modello e il G-code rimane essenziale, ma la verifica termina soltanto quando il comportamento fisico della stampante corrisponde alle istruzioni autorizzate.

Di Fantasy

Lascia un commento