KeyTrap: come violare un server DNS con un solo pacchetto dannoso

Oggi vi parliamo dell’attacco denominato KeyTrap DoS in grado di disabilitare i server DNS con un solo pacchetto dannoso grazie allo sfruttamento di una vulnerabilità nel protocollo DNSSEC.

Un gruppo di ricercatori di diverse università e istituti tedeschi ha scoperto una vulnerabilità presente nel protocollo DNSSEC, una serie di estensioni del protocollo DNS progettate per migliorarne la sicurezza e soprattutto per combattere lo spoofing DNS.

Questo attacco, chiamato KeyTrap, sfrutta la vulnerabilità sopra indicata e può disabilitare un server DNS inviandogli un solo pacchetto di dati dannosi. Continuate a leggere per saperne di più su questo attacco.

Come funziona KeyTrap e perché è così pericoloso

La vulnerabilità DNSSEC è diventata di dominio pubblico solo di recente, ma è stata scoperta nel dicembre 2023 e registrata come CVE-2023-50387. Le è stato assegnato un punteggio CVSS pari a 3.1 su 7.5 ed è stata classificata come gravità “Alta”. Non sono ancora state pubblicate informazioni complete sulla vulnerabilità e sull’attacco ad essa associato.

Ecco come funziona KeyTrap. Il malintenzionato imposta un server DNS che risponde alle richieste dei server DNS di caching, cioè quelli che rispondono direttamente alle richieste dei clienti, con un pacchetto dannoso. Successivamente, l’hacker fa in modo che un server di caching richieda un registro DNS al proprio server dannoso. Il registro inviato in risposta è un registro dannoso firmato crittograficamente. Il modo in cui la firma è realizzata fa sì che il server DNS attaccato che cerca di verificarla operi alla massima capacità della CPU per un lungo periodo di tempo.

Secondo i ricercatori, basta solo un pacchetto dannoso per bloccare il server DNS per un periodo che va da 170 secondi a 16 ore, a seconda del software su cui viene eseguito. L’attacco KeyTrap non solo può negare l’accesso ai contenuti web a tutti i client che utilizzano il server DNS preso di mira, ma può anche compromettere vari servizi infrastrutturali come la protezione antispam, la gestione dei certificati digitali (PKI) e il routing sicuro cross-domain (RPKI).

I ricercatori definiscono KeyTrap “il peggior attacco al DNS mai scoperto”. È importante osservare che le vulnerabilità nella logica di convalida delle firme che rendono possibile KeyTrap sono state scoperte in una delle prime versioni della specifica DNSSEC, pubblicata nel 1999. In altre parole, la vulnerabilità sta per compiere 25 anni.

CVE-2023-50387 è presente nelle specifiche DNSSEC dal 1999

Le origini di KeyTrap possono risalire a RFC-2035, la specifica DNSSEC pubblicata nel 1999

Come combattere KeyTrap

I ricercatori hanno allertato tutti i software developer di server DNS e i principali provider di DNS pubblici. Aggiornamenti e avvisi di sicurezza per la correzione di CVE-2023-50387 sono ora disponibili PowerDNS, NLnet Labs Unbound e Internet Systems Consortium BIND9. Se siete amministratori di un server DNS, è opportuno che installiate gli aggiornamenti il prima possibile.

Tuttavia, tenete presente che i problemi di logica DNSSEC che hanno reso possibile KeyTrap sono di natura profonda e non sono facilmente risolvibili. Le patch rilasciate dagli sviluppatori di software DNS possono solo contribuire a risolvere il problema, poiché la vulnerabilità fa parte dello standard, piuttosto che di implementazioni specifiche. “Se lanciamo [KeyTrap] contro un resolver patchato, otteniamo ancora un utilizzo del 100% della CPU, ma può ancora rispondere”, afferma uno dei ricercatori.

Lo sfruttamento della vulnerabilità è ancora possibile, e ciò può comportare potenziali guasti imprevedibili ai resolver. Nel caso in cui ciò accada, gli amministratori di rete aziendali farebbero bene a preparare in anticipo un elenco di server DNS di backup, in modo da poterli cambiare a seconda delle necessità per mantenere il normale funzionamento della rete e permettere agli utenti di navigare senza intoppi e di utilizzare le risorse web di cui hanno bisogno.

Consigli