Prevenindo o tunelamento DNS

Prevenindo o tunelamento DNS

Recentemente, assisti a um webinar de pentesting que demonstrou um ataque de tunelamento de DNS. Na seção de perguntas e respostas do webinar, alguém perguntou como esse túnel pode ser evitado. O conselho era não permitir que servidores DNS internos resolvessem endereços externos e executassem todas essas resoluções externas por meio de um proxy. Alguém pode explicar por que isso impedirá o tunelamento. Se o cliente estiver executando algo que envia um pacote DNS criado para o proxy com a carga oculta, ele não alcançará o servidor DNS relevante e será retornado ao cliente por meio do proxy?

Responder1

Resposta curta: Os proxies com reconhecimento de aplicação são capazes de analisar o conteúdo do pacote de uma forma inteligente de protocolo e podem determinar se a carga útil de um pacote remontado que passa está em conformidade com as estruturas de dados desse protocolo. Dessa forma, o proxy estará ciente se você estiver tentando encapsular dados HTTP (por exemplo) em segmentos DNS.

Responder2

Outra coisa que um proxy poderia fazer (ou algo que eu faria se estivesse preocupado com o tunelamento - e não requer um proxy - apenas um roteador decente) - é simplesmente limitar fortemente a quantidade de tráfego na porta 53. Isso não seria totalmente evitaria o tunelamento, mas reduziria bastante sua utilidade. (Por exemplo, permita, digamos, 100 kbit de dados em um intervalo de 120 segundos. Isso equivale a uma taxa de transferência máxima de <100 bytes por segundo, portanto, você não poderá obter uma grande quantidade de dados nesta conexão)

informação relacionada