L'intero tipo di puzza di uno scenario "non è un mio problema" che non è davvero colpa tua e dovrebbe / potrebbe essere risolto al 100% prendendo l'azione appropriata, indipendentemente da quanto sia "difficile" o "difficile", e che sta terminando il tuo aprire il server ricorsivo .
Eliminalo gradualmente: comunica ai clienti che questo server sta per essere rimosso a partire dalla data X. Dopo quel tempo, devono installare una patch (supponendo che tu ne abbia una) per impedirle di usare il tuo server DNS. Questo è fatto tutto il tempo. Amministratori di sistema, amministratori di rete, ragazzi dell'helpdesk, programmatori? Lo capiamo ; questa cosa di fine vita accade continuamente, perché la sua procedura operativa standard per un fornitore / fornitore di servizi / partner ci dice di smettere di usare qualcosa dopo X date. Non sempre ci piace, ma è un dato di fatto nella vita dell'IT.
Dici di non avere questo problema sui dispositivi attuali, quindi suppongo di aver risolto questo problema con un aggiornamento o una patch del firmware. So che hai detto che non puoi toccare il dispositivo, ma sicuramente possono? Voglio dire, se stanno permettendo a queste caselle di telefonarti a casa, non possono davvero essere così anali su chi sta facendo cosa ai loro dispositivi; potresti avere una configurazione proxy inversa per quello che sanno, quindi perché non farli installare una patch che risolva questo problema o dire loro di usare i propri server DNS . Sicuramente il tuo dispositivo supporta DHCP; Non riesco a pensare a un dispositivo di rete (non importa quanto vecchio / fragile / dispari) che non lo fa .
Se non riesci a farlo, la prossima cosa da fare è controllare chi può accedere al tuo server ricorsivo : dici che è "difficile dire" chi lo sta usando e come, ma è tempo di scoprire con certezza e iniziare a eliminare il traffico che è non legittimo.
Queste sono organizzazioni "quasi militari / governative", giusto? Bene, probabilmente fanno parte di un netblock legittimo di loro proprietà; questi dispositivi non sono router domestici dietro IP dinamici. Scoprire. Contattali, spiega il problema e come stai risparmiando un sacco di soldi non forzando un firmware o una sostituzione del prodotto se solo loro possono confermare il netblock / indirizzo IP che il dispositivo utilizzerà per accedere al tuo server DNS.
Ciò avviene sempre: ho diversi clienti che limitano l'accesso extranet o gli ascoltatori HL7 ai partner sanitari in questo modo; è non è così difficileper convincerli a compilare un modulo e fornire l'IP e / o il netblock da cui dovrei aspettarmi il traffico: se vogliono accedere alla extranet, devono fornirmi un IP o una sottorete. E questo è raramente un obiettivo mobile, quindi non è che ti inonderai di centinaia di richieste di modifica IP ogni giorno: le grandi reti ospedaliere del campus che possiedono i propri blocchi di rete con centinaia di sottoreti e migliaia e migliaia di IP host mi danno regolarmente una manciata di indirizzi IP o una sottorete che dovrei aspettarmi; di nuovo, questi non sono utenti di laptop che vagano sempre in tutto il campus, quindi perché dovrei aspettarmi di vedere i pacchetti sorgente UDP da un indirizzo IP in continua evoluzione? Chiaramente sto facendo un presupposto qui, ma scommetto che non è tanto quanto pensi per <100s di dispositivi. Sì, sarà un lungo ACL, e sì,
Se per qualche motivo i canali di comunicazione non sono aperti (o qualcuno ha troppa paura o non può essere disturbato a contattare questi proprietari di dispositivi legacy e farlo correttamente), è necessario stabilire una base di utilizzo / attività normale in modo da poter formulare qualche altra strategia che aiuterà (ma non impedisce) la tua partecipazione agli attacchi di amplificazione DNS.
A lungo termine tcpdump
dovrebbe funzionare il filtro su UDP 53 in arrivo e la registrazione dettagliata sull'applicazione server DNS. Vorrei anche iniziare a raccogliere indirizzi IP di origine / netblock / informazioni geoIP (sono tutti i tuoi clienti negli Stati Uniti? Bloccare tutto il resto) perché, come dici tu, non stai aggiungendo nuovi dispositivi, stai semplicemente fornendo un lascito servizio agli impianti esistenti.
Questo ti aiuterà anche a capire quali tipi di record vengono richiesti e per quali domini, da chi e con quale frequenza : affinché l'amplificazione DNS funzioni come previsto, l'utente malintenzionato deve essere in grado di richiedere un tipo di record di grandi dimensioni (1) a un dominio funzionante (2).
"tipo di record di grandi dimensioni": i tuoi dispositivi hanno persino bisogno di record TXT o SOA per poter essere risolti dal tuo server DNS ricorsivo? Potresti essere in grado di specificare quali tipi di record sono validi sul tuo server DNS; Credo che sia possibile con BIND e forse Windows DNS, ma dovresti scavare. Se il tuo server DNS risponde SERVFAIL
a qualsiasi record TXT o SOA, e almeno quella risposta è un ordine di grandezza (o due) più piccolo del carico utile previsto. Ovviamente sei ancora "parte del problema" perché la vittima falsificata continuerebbe a ricevere quelle SERVFAIL
risposte dal tuo server, ma almeno non le stai martellando e forse il tuo server DNS viene "cancellato" dall'elenco (i) raccolto (i) i robot usano nel tempo per non "cooperare".
"dominio funzionante": potresti essere in grado di autorizzare solo i domini validi. Faccio questo sulle mie configurazioni di data center rinforzate in cui i server hanno bisogno solo di Windows Update, Symantec, ecc. Per funzionare. Tuttavia, stai solo mitigando il danno che stai causando a questo punto: la vittima verrebbe comunque bombardata NXDOMAIN
o con le SERVFAIL
risposte dal tuo server perché il tuo server continuerebbe a rispondere all'IP di origine contraffatto. Ancora una volta, lo script Bot potrebbe anche aggiornare automaticamente l'elenco dei server aperti in base ai risultati, in modo da rimuovere il server.
Vorrei anche usare una qualche forma di limitazione della velocità, come altri hanno suggerito, sia a livello di applicazione (ad esempio dimensioni del messaggio, limitazioni per richieste client) sia a livello di firewall (vedere le altre risposte), ma ancora una volta devi fare alcune analisi per assicurarti di non uccidere il traffico legittimo.
Un sistema di rilevamento delle intrusioni che è stato sintonizzato e / o addestrato (di nuovo, ha bisogno di una base di riferimento qui) dovrebbe essere in grado di rilevare nel tempo anche il traffico anormale per fonte o volume, ma probabilmente prenderebbe regolarmente baby sitter / tuning / monitoraggio per prevenire falsi positivi e / o vedi se sta effettivamente impedendo gli attacchi.
Alla fine della giornata, devi chiederti se ne valga la pena o se dovresti semplicemente insistere sul fatto che sia fatta la cosa giusta e che in primo luogo elimini il problema.