Возник вопрос, а как можно получить список всех поддоменов доменного имени?
Наприме, возьмём два домена ukrhub.net и olden.org.ua - какие тут есть поддомены третьего и четвёртого уровней, соответственно?
Для ответа на поставленный вопрос нам потребуется два инструмента - whois и dig.
Для начала через whois узнаем нейм-сервера зон:
Далее к нейм-серверам зон через dig отсылаем запрос axfr:
Наприме, возьмём два домена ukrhub.net и olden.org.ua - какие тут есть поддомены третьего и четвёртого уровней, соответственно?
Для ответа на поставленный вопрос нам потребуется два инструмента - whois и dig.
Для начала через whois узнаем нейм-сервера зон:
~$ whois ukrhub.net | awk '$1~/^Name$/ && $2~/^Server:$/ { print $3 }' | sort -u NS190.UKRHUB.NET NS94.UKRHUB.NET ~$ whois olden.org.ua | awk '$1~/^nserver:/ { print $2 }' | sort -u ns2.olden.org.ua ns.olden.org.ua
Далее к нейм-серверам зон через dig отсылаем запрос axfr:
~$ dig @ns2.olden.org.ua olden.org.ua +multiline +nottlid -t axfr ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns2.olden.org.ua olden.org.ua +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd olden.org.ua. IN SOA olden.org.ua. oldengremlin.gmail.com. ( 2014042900 ; serial 86400 ; refresh (1 day) 7200 ; retry (2 hours) 3600000 ; expire (5 weeks 6 days 16 hours) 172800 ; minimum (2 days) ) olden.org.ua. IN NS ns.olden.org.ua. ... 8< skip-skip 8< ... www.olden.org.ua. IN CNAME olden.org.ua. olden.org.ua. IN SOA olden.org.ua. oldengremlin.gmail.com. ( 2014042900 ; serial 86400 ; refresh (1 day) 7200 ; retry (2 hours) 3600000 ; expire (5 weeks 6 days 16 hours) 172800 ; minimum (2 days) ) ;; Query time: 1 msec ;; SERVER: 212.90.160.2#53(212.90.160.2) ;; WHEN: Fri Oct 3 09:25:59 2014 ;; XFR size: 22 records (messages 1, bytes 554) ~$ dig @ns.ukrhub.net ukrhub.net +multiline +nottlid -t axfr ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns.ukrhub.net ukrhub.net +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ukrhub.net. IN SOA ns94.ukrhub.net. hostmaster.ukrhub.net. ( 2014093000 ; serial 3600 ; refresh (1 hour) 1800 ; retry (30 minutes) 1209600 ; expire (2 weeks) 7200 ; minimum (2 hours) ) ukrhub.net. IN NS ns94.ukrhub.net. ... 8< skip-skip 8< ... zemkadast-nop.ukrhub.net. IN A 212.90.170.202 ukrhub.net. IN SOA ns94.ukrhub.net. hostmaster.ukrhub.net. ( 2014093000 ; serial 3600 ; refresh (1 hour) 1800 ; retry (30 minutes) 1209600 ; expire (2 weeks) 7200 ; minimum (2 hours) ) ;; Query time: 15 msec ;; SERVER: 212.90.160.2#53(212.90.160.2) ;; WHEN: Fri Oct 3 09:29:33 2014 ;; XFR size: 944 records (messages 1, bytes 24617)
Однако тут же отмечу, что использовать запрос axfr выйдет не для всех зон. Почему? Да потому, что по большому счёту он открывает путь к "уязвимости" известной как Valve и системными администраторами, которым не чужда информационная безопасность, фиксится - трансфер зон разрешается лишь для доверенных ip. К примеру, попытка axfr запросов для доменов xda-developers.com, fb.com и vk.com, в той или иной степени, будут не успешными и список поддоменов таким образом нам получить не получится:
~$ DOMAIN=xda-developers.com; for NS in $( whois ${DOMAIN} | awk '$1~/^Name$/ && $2~/^Server:$/ { print $3 }' | sort -u ); do dig @${NS} ${DOMAIN} +multiline +nottlid -t axfr; done ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS1.XDA-DEVELOPERS.COM xda-developers.com +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS2.XDA-DEVELOPERS.COM xda-developers.com +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS3.XDA-DEVELOPERS.COM xda-developers.com +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. ~$ DOMAIN=fb.com; for NS in $( whois ${DOMAIN} | awk '$1~/^Name$/ && $2~/^Server:$/ { print $3 }' | sort -u ); do dig @${NS} ${DOMAIN} +multiline +nottlid -t axfr; done ;; Connection to 69.171.239.12#53(69.171.239.12) for fb.com failed: connection refused. ;; Connection to 69.171.239.12#53(69.171.239.12) for fb.com failed: connection refused. ;; Connection to 69.171.255.12#53(69.171.255.12) for fb.com failed: connection refused. ;; Connection to 69.171.255.12#53(69.171.255.12) for fb.com failed: connection refused. ~$ DOMAIN=vk.com; for NS in $( whois ${DOMAIN} | awk '$1~/^Name$/ && $2~/^Server:$/ { print $3 }' | sort -u ); do dig @${NS} ${DOMAIN} +multiline +nottlid -t axfr; done ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS1.VKONTAKTE.RU vk.com +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd vk.com. IN SOA ns1.vkontakte.ru. ncc.vkontakte.ru. ( 2014093001 ; serial 3600 ; refresh (1 hour) 900 ; retry (15 minutes) 604800 ; expire (1 week) 900 ; minimum (15 minutes) ) ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS2.VKONTAKTE.RU vk.com +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd vk.com. IN SOA ns1.vkontakte.ru. ncc.vkontakte.ru. ( 2014093001 ; serial 3600 ; refresh (1 hour) 900 ; retry (15 minutes) 604800 ; expire (1 week) 900 ; minimum (15 minutes) ) ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS3.VKONTAKTE.RU vk.com +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd vk.com. IN SOA ns1.vkontakte.ru. ncc.vkontakte.ru. ( 2014093001 ; serial 3600 ; refresh (1 hour) 900 ; retry (15 minutes) 604800 ; expire (1 week) 900 ; minimum (15 minutes) ) ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @NS4.VKONTAKTE.RU vk.com +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd vk.com. IN SOA ns1.vkontakte.ru. ncc.vkontakte.ru. ( 2014093001 ; serial 3600 ; refresh (1 hour) 900 ; retry (15 minutes) 604800 ; expire (1 week) 900 ; minimum (15 minutes) ) ; Transfer failed.
А вот попытка "выстрелить" по доменам tlc.ks.ua, unio.kherson.ua и plusnet.ks.ua оказалась вполне успешной:
~$ for DOMAIN in tlc.ks.ua unio.kherson.ua plusnet.ks.ua; do for NS in $( whois ${DOMAIN} | awk '$1~/^nserver:/ { print $2 }' | sort -u ); do dig @${NS} ${DOMAIN} +multiline +nottlid -t axfr; done; done ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns01.tlc.ks.ua tlc.ks.ua +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd tlc.ks.ua. IN SOA virtual2.ks-host.com. support.ks-host.com. ( 2014082507 ; serial 10800 ; refresh (3 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 86400 ; minimum (1 day) ) tlc.ks.ua. IN TXT "v=spf1 ip4:62.149.13.45 a mx ~all" tlc.ks.ua. IN NS ns01.tlc.ks.ua. tlc.ks.ua. IN NS ns02.tlc.ks.ua. tlc.ks.ua. IN NS ns03.tlc.ks.ua. tlc.ks.ua. IN MX 10 mail.tlc.ks.ua. tlc.ks.ua. IN A 62.149.13.45 ftp.tlc.ks.ua. IN A 62.149.13.45 imap.tlc.ks.ua. IN A 62.149.13.45 mail.tlc.ks.ua. IN A 62.149.13.45 ns01.tlc.ks.ua. IN AAAA 2a03:6300:1:12::13:45 ns01.tlc.ks.ua. IN A 62.149.13.45 ns02.tlc.ks.ua. IN A 77.120.125.20 ns03.tlc.ks.ua. IN AAAA 2001:1608:10:38::87b0:f63a ns03.tlc.ks.ua. IN A 84.200.213.106 pop.tlc.ks.ua. IN A 62.149.13.45 smtp.tlc.ks.ua. IN A 62.149.13.45 www.tlc.ks.ua. IN A 195.38.16.2 tlc.ks.ua. IN SOA virtual2.ks-host.com. support.ks-host.com. ( 2014082507 ; serial 10800 ; refresh (3 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 86400 ; minimum (1 day) ) ;; Query time: 1 msec ;; SERVER: 62.149.13.45#53(62.149.13.45) ;; WHEN: Fri Oct 3 09:50:45 2014 ;; XFR size: 19 records (messages 1, bytes 489) ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns02.tlc.ks.ua tlc.ks.ua +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns03.tlc.ks.ua tlc.ks.ua +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns02.ks-host.com.ua unio.kherson.ua +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns03.ks-host.com.ua unio.kherson.ua +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd ; Transfer failed. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns04.ks-host.com.ua unio.kherson.ua +multiline +nottlid -t axfr ; (2 servers found) ;; global options: +cmd unio.kherson.ua. IN SOA virtual2.ks-host.com. support.ks-host.com. ( 2014091001 ; serial 10800 ; refresh (3 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 86400 ; minimum (1 day) ) unio.kherson.ua. IN TXT "v=spf1 ip4:62.149.13.45 a mx ~all" unio.kherson.ua. IN NS ns02.ks-host.com.ua. unio.kherson.ua. IN NS ns03.ks-host.com.ua. unio.kherson.ua. IN NS ns04.ks-host.com.ua. unio.kherson.ua. IN MX 10 mail.unio.kherson.ua. unio.kherson.ua. IN A 62.149.13.45 ftp.unio.kherson.ua. IN A 62.149.13.45 mail.unio.kherson.ua. IN A 62.149.13.45 pop.unio.kherson.ua. IN A 62.149.13.45 smtp.unio.kherson.ua. IN A 62.149.13.45 www.unio.kherson.ua. IN A 62.149.13.45 unio.kherson.ua. IN SOA virtual2.ks-host.com. support.ks-host.com. ( 2014091001 ; serial 10800 ; refresh (3 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 86400 ; minimum (1 day) ) ;; Query time: 1 msec ;; SERVER: 62.149.13.45#53(62.149.13.45) ;; WHEN: Fri Oct 3 09:50:45 2014 ;; XFR size: 13 records (messages 1, bytes 382) ;; Connection to 77.121.4.19#53(77.121.4.19) for plusnet.ks.ua failed: timed out. ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> @ns.plusnet.ks.ua plusnet.ks.ua +multiline +nottlid -t axfr ; (1 server found) ;; global options: +cmd plusnet.ks.ua. IN SOA plusnet.ks.ua. hostmaster.plusnet.ks.ua. ( 2013102200 ; serial 86400 ; refresh (1 day) 7200 ; retry (2 hours) 3600000 ; expire (5 weeks 6 days 16 hours) 172800 ; minimum (2 days) ) plusnet.ks.ua. IN NS ns.plusnet.ks.ua. plusnet.ks.ua. IN NS ns2.plusnet.ks.ua. plusnet.ks.ua. IN MX 10 mail.plusnet.ks.ua. plusnet.ks.ua. IN A 77.121.4.50 *.plusnet.ks.ua. IN A 77.121.4.50 clan.plusnet.ks.ua. IN A 77.121.4.50 cs.plusnet.ks.ua. IN A 77.121.4.50 ban.cs.plusnet.ks.ua. IN A 77.121.4.50 data.cs.plusnet.ks.ua. IN A 77.121.4.50 datasvit.cs.plusnet.ks.ua. IN A 77.121.4.50 forum.cs.plusnet.ks.ua. IN A 77.121.4.50 gungame.cs.plusnet.ks.ua. IN A 77.121.4.50 monitor.cs.plusnet.ks.ua. IN A 77.121.4.50 plusnet.cs.plusnet.ks.ua. IN A 77.121.4.50 stats.cs.plusnet.ks.ua. IN A 77.121.4.50 ftp.plusnet.ks.ua. IN CNAME plusnet.ks.ua. localhost.plusnet.ks.ua. IN A 127.0.0.1 m.plusnet.ks.ua. IN A 93.79.167.142 mail.plusnet.ks.ua. IN A 77.121.4.50 ns.plusnet.ks.ua. IN A 77.121.4.50 ns2.plusnet.ks.ua. IN A 77.121.4.19 rc.plusnet.ks.ua. IN A 77.121.4.50 ts.plusnet.ks.ua. IN A 77.121.4.50 vik.plusnet.ks.ua. IN A 77.121.4.50 www.plusnet.ks.ua. IN CNAME plusnet.ks.ua. plusnet.ks.ua. IN SOA plusnet.ks.ua. hostmaster.plusnet.ks.ua. ( 2013102200 ; serial 86400 ; refresh (1 day) 7200 ; retry (2 hours) 3600000 ; expire (5 weeks 6 days 16 hours) 172800 ; minimum (2 days) ) ;; Query time: 108 msec ;; SERVER: 77.121.4.50#53(77.121.4.50) ;; WHEN: Fri Oct 3 09:50:53 2014 ;; XFR size: 27 records (messages 1, bytes 612)
Немає коментарів:
Дописати коментар