C'è stata una specifica sfida per la sicurezza informatica (Cyber Cube 2018, GE). In uno dei compiti, l'obiettivo era ottenere l'accesso ad alcuni file specifici inclusi nel server.
Dopo aver risolto con successo alcuni passaggi, c'era una stringa codificata in base 64:
bmFtZTogZXRlcm5hbHJvbWFuY2UsIHByb3RvY29sOiBkbnMoNTMvdGNwKQo=
La decodifica di questa stringa ha dato il seguente output:
'name: eternalromance, protocol: dns(53/tcp)\n'
Ho capito che l'unico modo per accedere al server era eseguire un attacco DNS.
I creatori di questa sfida hanno suggerito che la scelta della porta TCP su UDP per DNS potrebbe causare alcune vulnerabilità.
Non ho esperienza nei sistemi di nomi di dominio, ma so che generalmente DNS utilizza la porta UDP 53 per servire le richieste: le richieste DNS richiedono una singola richiesta di datagramma UDP e richiedono una singola risposta datagramma UDP. I motivi principali per scegliere il protocollo TCP è di rispondere con dati superiori a 512 byte (sebbene alcune implementazioni DNS possano consentire risposte del datagramma UDP fino a 4096 byte a mia conoscenza) e per i trasferimenti di zona DNS.
Ma quali vulnerabilità potrebbero avere i DNS quando TCP viene usato su UDP?
Grazie.