La confusione di tipo è un bug di sicurezza della memoria in cui il software tratta un valore, un oggetto o un puntatore come se fossero dati di tipo diverso da quello corretto. Per esempio, un programma può presumere che una struttura contenga un determinato layout o un valore numerico, quando in realtà contiene qualcos'altro. Questa discrepanza può far sì che successive letture e scritture colpiscano la memoria sbagliata, causando corruzione, arresti anomali o, in alcuni casi, esecuzione di codice.
Nella sicurezza informatica, la confusione di tipo è importante perché è una debolezza comune nei motori dei browser, nei parser di file e in altro codice complesso che elabora input non attendibili. Gli attaccanti spesso la cercano nei motori JavaScript e nei compilatori JIT, dove un piccolo errore logico può compromettere i controlli dei limiti o la gestione degli oggetti. I difensori riducono il rischio con il fuzzing, la convalida rigorosa, pratiche di memoria più sicure, mitigazioni contro gli exploit e il sandboxing, ma un bug di confusione di tipo raggiungibile resta comunque un bersaglio serio quando è esposto a dati controllati dall'attaccante.


