Пример (1) ожидаемого результата поиска DNS:
nslookup google.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: google.com
Address: 173.194.123.41
Name: google.com
Address: 173.194.123.33
...
Пример (2) того, что я спрашиваю, действителен или нет:
nslookup google.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: google.coM
Address: 173.194.123.33
Name: google.coM
Address: 173.194.123.34
...
Обратите внимание на последнюю букву M во втором примере. Это было недавно замечено в сети с Verizon Fios Quantum.
В спецификации DNS говорится, что можно получить ответ, отличный от того, который вы запрашиваете? Я знаю, что DNS нечувствителен к регистру в том отношении, что если вы введете www.GooGLe.cOM, вы получите тот же IP-адрес, что и www.google.com, но я бы подумал, что в обоих этих случаях ответ должен / должен соответствовать запросу именно.
В вашем случае вполне вероятно, что распознаватель добавляет Кодировка 0x20 на ваш запрос, и эта кодировка кэшируется и обслуживается локально вопреки общепринятой практике:
Поскольку все ** реализации DNS копируют запрос именно в ответ (на практике), запрос домена в смешанном регистре возвращается как таковой. Клиент может рандомизировать регистр символов и сравнить ответ сервера, который должен соответствовать:
(Раздел 2.2) Например, следующие имена вопросов будут обрабатываться респондентом как равные, но запрашивающая может рассматриваться как неравные:
www.ietf.org WwW.iEtF.oRg wWw.IeTf.OrG WWW.IETF.ORG
Злоумышленнику необходимо будет угадать случайную кодировку, иначе клиент ее проигнорирует. Поскольку сила кодирования зависит от длины имени домена, более длинный домен обеспечивает большую безопасность - больше символов, больше энтропии.
Возможно, что для реализованного клиента, отличного от 0x20 (и после исключения вероятности того, что посредник вводит кодирование), ответ возвращается с кодировкой не в исходном запросе может быть результатом попытки отравления.