Также утилита dig может использоваться для определения версии серверов DNS. Поступив таким образом, злоумышленник может собрать необходимые для начала атаки сведения о хосте. Но, самостоятельно определив версию сервера имен, специалист по безопасности сможет сам найти потенциально уязвимый сервер и повысить безопасность охраняемой системы (вспомните метод определения версий).
Проанализируйте следующий пример использования утилиты dig:
elliptic@ellipse:~$ dig @pi.cipherpunks.com TXT CHAOS
version.bind
; <<>> DiG 8.2 <<>> @pi.cipherpunks.com TXT CHAOS
version.bind
; (1 server found)
;; res options: init recurs defnam dnsrch
;; got answer:
;; ->>HEADER<<– opcode: QUERY, status: NOERROR, id: 6
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0,
ADDITIONAL: 0
;; QUERY SECTION:
;; version.bind, type = TXT, class = CHAOS
;; ANSWER SECTION:
VERSION.BIND. 0S CHAOS TXT “8.2.1”
;; Total query time: 172 msec
;; FROM: ellipse to SERVER: pi.cipherpunks.com 192.168.1.252
;; WHEN: Mon Dec 10 07:53:27 2001
;; MSG SIZE sent: 30 rcvd: 60
Из отчета можно определить версию BIND, установленную на pi в домене cipherpunks.com. А также то, что на pi запущена версия BIND, уязвимая для многих атак, одна из которых – переполнение NXT-буфера, известная с 1999 года и позволяющая злоумышленнику получить удаленный доступ к системе с правами программы BIND (обычно выполняющейся с правами привилегированного пользователя root).
Сервисы преобразования имен зачастую могут сообщать больше информации, чем ожидается. Утилиты типа dig могут выполнять и иные DNS-сервисы, например передачу зоны. DNS использует передачу зоны для распределения записей преобразования имен между остальными хостами. Инициировав вручную передачу зоны, злоумышленник может получить ценную информацию о системах и преобразовании адресов серверами DNS.
nslookup
nslookup (Name Service Lookup – служба поиска имен) – полезная утилита, которая свободно распространяется консорциумом программного обеспечения Интернет.
Принцип работы nslookup почти такой же, как и dig. Пользователю точно так же предоставляется как диалоговый интерфейс, так и интерфейс командной строки. После запуска утилита собирает информацию о хостах с помощью DNS. О доменах nslookup выдает хотя и общедоступную, но очень важную информацию.
Например, nslookup может использоваться для поиска почтовых доменов или записей типа MX (Mail Exchanger). В результате станут возможными различные атаки на почтовый сервер: посылка спама для достижения отказа в обслуживании, атаки на программное обеспечение с целью получения доступа к серверу или использование почтового сервера для рассылки спама другим хостам, если это разрешено. Посмотрите на следующий пример:
elliptic@ellipse:~$ nslookup
Default Server: cobalt.speakeasy.org
Address: 216.231.41.22
> set type=MX
> cipherpunks.com.
Server: cobalt.speakeasy.org
Address: 216.231.41.22
cipherpunks.com preference = 10, mail exchanger = parabola.
cipherpunks.com
cipherpunks.com nameserver = DNS1.ENOM.COM
cipherpunks.com nameserver = DNS2.ENOM.COM
cipherpunks.com nameserver = DNS3.ENOM.COM
cipherpunks.com nameserver = DNS4.ENOM.COM
cipherpunks.com