Senza essere disturbato da un server DNS che utilizza la versione più recente del protocollo DNS. Voglio monitorare i pacchetti DNS sui computer client e voglio classificarli come falsificati o meno.
C'è un modo per farlo?
Senza essere disturbato da un server DNS che utilizza la versione più recente del protocollo DNS. Voglio monitorare i pacchetti DNS sui computer client e voglio classificarli come falsificati o meno.
C'è un modo per farlo?
Probabilmente è impossibile guardare un singolo pacchetto DNS e sapere se è falso o meno. Tuttavia, se si tratta di un pacchetto di risposta DNS su un sistema senza una richiesta DNS corrispondente, poco prima è probabile che si verifichi uno spoofing. E se c'è una richiesta DNS proveniente dalla macchina ma la risposta DNS in entrata risponde alla query DNS ma non corrisponde alla richiesta DNS in port e id, probabilmente questo è anche un tentativo di spoofing, specialmente se ci sono molti di questi mismatching pacchetti.
Se stai monitorando le richieste DNS sui tuoi client, allora avrei pensato a qualsiasi richiesta in cui l'IP di origine è quello della macchina client non sarebbe falsificato, e qualsiasi altra cosa sarebbe stata falsificata.
Dal punto di vista del server, è un po 'più complicato, ma possibile fino a un certo punto:
Alcuni ulteriori dettagli sulla configurazione e le motivazioni potrebbero aiutare a pensare ad altre aree, ma si spera che quelle sopra siano di qualche utilità.
Modifica :
Leggendo i commenti, mi sono reso conto di aver frainteso la domanda come se si trattasse di richieste di spoofing, piuttosto che di risposte spoofed.
Come sottolineato da altri, per le risposte DNS, le cose sono più complicate. Dei suggerimenti di cui sopra, solo guardando TTL sembra che varrebbe la pena considerarlo.
Potresti essere in grado di mettere qualcosa in atto per i tuoi record DNS interni (magari confrontando le risposte DNS interne ai valori previsti). Ma sembra una piccola parte del problema generale, per il quale una soluzione è piuttosto difficile da trovare.
Immagino che un'altra cosa che potresti esaminare sia la definizione dei profili TTL DNS (così come i TTL IP): siti significativi come google, facebook, ecc hanno TTL abbastanza bassi (300 secondi) per i record A, ad esempio, e tu potrebbe aspettarsi che qualcuno tenti di avvelenare le cache abbia interesse a utilizzare TTL molto più alti per questi record.
Per i record A, potresti anche ottenere qualcosa dall'effettiva analisi delle risposte: provare a controllare chi usa GeoIP, ad esempio, potrebbe aiutare.
Per quanto efficace tutto ciò che sarebbe (rispetto a quanto lavoro sarebbe da mantenere) è sicuramente una domanda, però.
Rilevare risposte DNS UDP falsificate è complesso. Puoi considerare di fare richieste DNS solo via TCP e respingere le risposte DNS via UDP con una regola del firewall. Dal momento che TCP richiede un handshake a tre vie, è molto difficile spoofare.
Leggi altre domande sui tag network