Я хотел бы создать несколько записей LOC DNS, и я хотел знать, можно ли запрашивать эти записи, не зная субдомен, к которому они прикреплены.
Например, было бы интересно провести охоту за GeoCache, где подсказка перечисляет поддомен DNS со следующей координатой в записи LOC (или что-то в этом роде). Но игру было бы легко проиграть, если бы кто-то мог просто dig domain.com any
и получить записи LOC для поддоменов.
я знаю это dig domain.com any
на самом деле не показывает записи LOC для поддоменов (geocache1.domain.com, hiddencache.domain.com и т. д.), но я хотел бы знать, есть ли другие способы их определения (кроме взлома моей учетной записи CloudFlare и просмотра все записи).
Эти записи так же скрыты, как случайные поддомены?
Возможно, будет возможно перечислить все имена в зоне, если он использует DNSSEC. Причина в том, что DNSSEC нужны подписанные записи, показывающие, что поддомен не существует. В этих записях указывается диапазон несуществующих доменных имен.
Если вы используете DNSSEC, любой может найти случайное несуществующее имя и по ответу узнать два ближайших существующих имени. Повторяя, можно было быстро идентифицировать все существующие поддомены.
Это можно уменьшить с помощью хеширования. Но все равно можно было бы использовать почти тот же подход для сбора всех хэшей и их перебора в автономном режиме.
Существуют криптографические инструменты, которые могли бы предотвратить такую грубую силу в автономном режиме, но они не были стандартизированы для DNSSEC.
DNSSEC был разработан для обеспечения целостности, а не конфиденциальности.
Если вы не используете DNSSEC, все равно можно получить полный список имен в зоне, если сервер был настроен так, чтобы позволить кому-либо запрашивать передачу зоны.
Наконец, данные отправляются в открытом виде и кэшируются на других DNS-серверах, поэтому, как только один человек запросил домен, некоторые другие могут иметь возможность прослушивать эти запросы из сети или серверов кеширования.