Si puede recopilar la información del DNS de antemano, establezca esos datos en un archivo host priorizado. De lo contrario, tendría que forzar las consultas a servidores DNS casi aleatorios en Internet, idealmente desde una red completamente separada para evitar la modificación en el medio (posiblemente a través de un teléfono celular en una red de operador) y comparar los resultados con lo que obtuvo. desde el servidor DNS cuestionable.
En cuanto a cómo recopilar información segura de DNS / IP, verifique los Certificados mediante TLS / SSL si los sistemas remotos son compatibles con TLS / SSL (posiblemente otros protocolos que también usan certificados).
Una implementación de DNS dividida bien configurada en la que los servidores DNS internos no se retiran de los servidores DNS externos, evitará el envenenamiento externo de las resoluciones internas de DNS.
Es una gran pregunta y un defecto de diseño interesante con el que todos tenemos que trabajar.
Creo que lo importante es saber cómo implementar Split DNS correctamente para que sus hosts internos no se envenenen.
También puede canalizar todas sus solicitudes de DNS a un servidor o conjunto de servidores de confianza para evitar el problema del problema.
La solución más complicada es volver a escribir su cliente DNS para sondear varios servidores DNS confiables para comparar sus resultados con el local para detectar el envenenamiento de DNS.