Come classificare i pacchetti DNS che arrivano ai client come falsificati o no?

1

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?

    
posta Vaibhav Kankal 06.03.2017 - 12:29
fonte

3 risposte

4

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.

    
risposta data 06.03.2017 - 13:12
fonte
2

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:

  • in termini di monitoraggio del traffico, potresti essere in grado di ottenere qualcosa di fuori dal controllo dei TTL dei pacchetti in arrivo - se il TTL suggerisce che una richiesta ha attraversato più salti di quelli che sai di avere nella tua rete, c'è una possibilità che potrebbe essere falsificato (o hai appena identificato qualcosa da esaminare in termini di routing)
  • La porta sorgente di
  • potrebbe essere d'aiuto - in particolare, tutto ciò che assomigliava al traffico da server a server e non proveniva da un server di cui sapevi potrebbe indicare che sta accadendo qualcosa di sconveniente. Se disponi di un intervallo noto di porte che i client devono configurare per l'utilizzo (ad esempio da 10000 a 30000), qualsiasi cosa al di fuori di tale intervallo potrebbe valere la pena di essere esaminata.
  • a seconda dei dettagli della tua configurazione, potresti essere in grado di ottenere alcune informazioni da dove proviene il traffico (ad esempio un firewall rivolto verso l'esterno sta registrando pacchetti in entrata con un IP di origine falsificato, o l'interfaccia in entrata per una richiesta non è t corretto
  • il loro potrebbe essere un processo di eliminazione che è possibile applicare: l'IP sorgente e / o l'intervallo in uso all'interno della rete? L'IP sorgente specifico è noto per essere attivo su un client legittimo (ad esempio, DHCP / ActiveDirectory / qualcos'altro correlato è un client reale)?

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ò.

    
risposta data 06.03.2017 - 15:39
fonte
0

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.

    
risposta data 07.03.2017 - 13:22
fonte

Leggi altre domande sui tag