Un messaggio di handshake è un pacchetto di protocollo scambiato mentre due peer stanno stabilendo una sessione sicura. In TLS e DTLS, questi messaggi negoziano versioni, algoritmi, certificati, chiavi e altri stati necessari prima che il traffico protetto possa fluire. Ogni messaggio deve essere analizzato, ordinato, memorizzato nel buffer e talvolta frammentato o ritrasmesso.
I messaggi di handshake sono importanti perché fanno parte del percorso di codice più sensibile in un canale sicuro. Se l'analisi è errata, un attaccante può mandare in crash il servizio, desincronizzare lo stato o esporre memoria tramite traffico malformato o riprodotto. In DTLS, che funziona su reti a datagrammi non affidabili, i messaggi di handshake possono essere reinviati dopo la perdita di pacchetti, quindi la logica di ritentativo e gli offset dei buffer diventano critici per la sicurezza. I difensori si concentrano su controlli rigorosi dei limiti, convalida dello stato e gestione attenta delle ritrasmissioni per prevenire perdite di dati e denial of service.


