F FabGPT-FAQ

Cos'è la Memory Tagging Extension (MTE)?

Cybersecurity 2 min lettura Runbook verificato

La stragrande maggioranza delle vulnerabilità gravi (buffer overflow, use-after-free) nasce da errori di gestione della memoria in linguaggi come C/C++: codice che legge o scrive dove non dovrebbe. La Memory Tagging Extension (MTE) – nei processori ARM moderni – li intercetta in hardware: a ogni blocco di memoria allocato viene assegnato un tag (un piccolo numero), e ogni puntatore porta lo stesso tag; se un accesso usa un puntatore il cui tag non corrisponde a quello della memoria (perché è andato fuori dai limiti, o punta a memoria già liberata), l'hardware blocca l'operazione all'istante.

È un cambio di paradigma: invece di sperare che il codice sia corretto o di trovare i bug uno a uno, l'hardware rende la classe intera di attacchi molto più difficile da sfruttare – trasforma una corruzione silenziosa (che l'attaccante sfrutta) in un crash controllato (che al massimo è un denial of service). GrapheneOS e Android lo sfruttano già; sta arrivando lato server.

Si inserisce nel filone delle difese strutturali alla memory safety, insieme all'adozione di linguaggi memory-safe (Rust in testa – non a caso proxxx, zion e i tool Rust del portfolio eliminano intere classi di bug per costruzione) e alle protezioni classiche (ASLR, DEP, stack canary). MTE non risolve tutto, ma alza drasticamente il costo dello sfruttamento – la stessa filosofia della defense in depth: rendere l'attacco caro, non solo raro.

Hai una domanda specifica su questo tema?

Interroga direttamente il motore FabGPT-FAQ con risposta in tempo reale.