SSL_accept() è la funzione di OpenSSL lato server che avvia e gestisce un handshake TLS. Viene chiamata quando un server è pronto a negoziare i parametri di crittografia con un client in arrivo, prima che vengano scambiati dati dell'applicazione. Durante questa fase, OpenSSL analizza i messaggi di handshake, sceglie le impostazioni dei cifrari e configura le chiavi per la sessione sicura.
Questa funzione è importante perché si colloca su un confine di fiducia. Se l'elaborazione dell'handshake gestisce in modo errato input controllati dall'attaccante, un client remoto può causare un uso eccessivo di memoria, crash o altri guasti pre-autenticazione prima che il login o i controlli del certificato siano completati. Negli attacchi, questo può essere usato per un denial of service contro server web, proxy, gateway VPN e altri servizi abilitati a TLS. In difesa, gli amministratori cercano build di OpenSSL vulnerabili, applicano rapidamente le patch e monitorano handshake incompleti ripetuti, picchi di memoria e riavvii anomali sui listener TLS.


