Авторизируйтесь,
чтобы продолжить
Некоторые функции доступны только зарегистрированным пользователям
Неправильный логин или пароль

Внимание! Теперь для входа на форум необходимо вводить единый пароль регистрации сервисов sibnet.ru!

Здравствуйте, гость ( Вход | Регистрация )



 
Ответить в эту темуОткрыть новую тему
> Особенности работы Dns (bind9), debian
CNN
сообщение 23.2.2017, 13:15
Сообщение #1


Болтун
Group Icon


Группа: Барнаульцы Сибнета
Сообщений: 552
Регистрация: 17.4.2009
Из: города основанного в 1730-х годах
Пользователь №: 99 184



Репутация:   76  


Товарищи, прошу, пожалуйста, консультацию.

В общем, поднял на базе bind9 DNS-сервер (без AD и домена).

db.site
Код

;
; BIND data file for local loopback interface
;
$TTL 604800
site. IN SOA debian.site.  admin.site. (
                           1323; Serial
                         604800; Refresh
                          86400; Retry
                        2419200; Expire
                         604800 ); Negative Cache TTL
;
site.          IN      NS      debian.site.
debian     IN      A       192.168.1.5
test       IN      A       192.168.1.5





db.192
Код
;
; BIND reverse data file for 192.168.1.site net
;
$TTL    604800
1.168.192.in-addr.arpa.       IN      SOA debian.site admin.site. (
                              2; Serial
                         604800; Refresh time
                          86400; Retry time
                        2419200; Expire time
                         604800 )    ; Negative Cache TTL
;
1.168.192.in-addr.arpa.       IN      NS      debian.site.
5       IN      PTR    debian.site.
5       IN      PTR    test.site.




Под windows командой nslookup проверяю работу:

nslookup debian.site
Код
Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:\Users\--->nslookup debian.site
╤хЁтхЁ:  test.site
Address:  192.168.1.5

╚ь :     debian.site
Address:  192.168.1.5


Почему на запрос nslookup debian.site отображается информация о test.site?

nslookup test.site
Код
C:\Users\--->nslookup test.site
╤хЁтхЁ:  debian.site
Address:  192.168.1.5

╚ь :     test.site
Address:  192.168.1.5


Почему на запрос nslookup test.site отображается информация о debian.site?


А вот еще два запроса:
Код
Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:\Users\--->nslookup yandex.ru
╤хЁтхЁ:  test.site
Address:  192.168.1.5

Не заслуживающий доверия ответ:
╚ь :     yandex.ru
Addresses:  2a02:6b8:a::a
          77.88.55.77
          77.88.55.88
          5.255.255.88
          5.255.255.77


C:\Users\--->nslookup yandex.ru
╤хЁтхЁ:  debian.site
Address:  192.168.1.5

Не заслуживающий доверия ответ:
╚ь :     yandex.ru
Addresses:  2a02:6b8:a::a
          77.88.55.77
          5.255.255.77
          77.88.55.88
          5.255.255.88


Почему то test.site то debian.site?

При этом если на базе апача2 поднять сайт debian.site, то открываться он будет и на test.site.
-------------------------

Я понимаю, что я в одной зоне "site" указал две "A" записи:
Код
debian     IN      A       192.168.1.5
test       IN      A       192.168.1.5

Разве в рамках одного домена (site) нельзя создавать несколько хостов: васяпупкин.site?

Спасибо.



P.S.
debian - это имя машины под линуксом.

Сообщение отредактировал CNN - 23.2.2017, 13:30
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
CNN
сообщение 23.2.2017, 13:40
Сообщение #2


Болтун
Group Icon


Группа: Барнаульцы Сибнета
Сообщений: 552
Регистрация: 17.4.2009
Из: города основанного в 1730-х годах
Пользователь №: 99 184



Репутация:   76  


Вот еще данные:
Код
root@debian:~# dig debian.site

; <<>> DiG 9.9.5-9+deb8u9-Debian <<>> debian.site
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34411
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;debian.site.                   IN      A

;; ANSWER SECTION:
debian.site.            604800  IN      A       192.168.1.5

;; AUTHORITY SECTION:
site.                   604800  IN      NS      debian.site.

;; Query time: 0 msec
;; SERVER: 192.168.1.5#53(192.168.1.5)
;; WHEN: Sun Feb 19 15:49:55 +07 2017
;; MSG SIZE  rcvd: 70

root@debian:~# dig test.site

; <<>> DiG 9.9.5-9+deb8u9-Debian <<>> test.site
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59872
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;test.site.                     IN      A

;; ANSWER SECTION:
test.site.              604800  IN      A       192.168.1.5

;; AUTHORITY SECTION:
site.                   604800  IN      NS      debian.site.

;; ADDITIONAL SECTION:
debian.site.            604800  IN      A       192.168.1.5

;; Query time: 0 msec
;; SERVER: 192.168.1.5#53(192.168.1.5)
;; WHEN: Sun Feb 19 15:50:43 +07 2017
;; MSG SIZE  rcvd: 91
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SnoochiBoochi
сообщение 23.2.2017, 14:32
Сообщение #3


Тише омут - злее черти :)
Group Icon


Группа: IRC Maniaque
Сообщений: 277
Регистрация: 21.4.2009
Из: г. Кемерово
Пользователь №: 100 000



Репутация:   113  


Цитата(CNN @ 23.2.2017, 13:15) *
Почему на запрос nslookup debian.site отображается информация о test.site?

Потому что ты для IP-адреса своего DNS-сервера зачем-то указал в обратной зоне две записи. Тупая винда непонятно по каким причинам делает PTR-запрос, чтобы узнать доменное имя прописанного в настройках DNS-сервера - и ты по уже понятным причинам видишь то один домен, то другой.

Цитата(CNN @ 23.2.2017, 13:15) *
При этом если на базе апача2 поднять сайт debian.site, то открываться он будет и на test.site.

А за такую настройку апача надо отгрызать пальцы. Web-сервер должен обслуживать только те домены, которые заведены у него в конфиге. На все остальные он должен либо возвращать 403/404, либо вообще рвать соединение без объяснения причин. Иначе в один прекрасный день придётся гуглить про DNS Rebinding smile.gif.

Кстати, ищу работу.

Сообщение отредактировал SnoochiBoochi - 23.2.2017, 14:41


» Спасибо сказали: «
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
CNN
сообщение 23.2.2017, 19:17
Сообщение #4


Болтун
Group Icon


Группа: Барнаульцы Сибнета
Сообщений: 552
Регистрация: 17.4.2009
Из: города основанного в 1730-х годах
Пользователь №: 99 184



Репутация:   76  


Цитата(SnoochiBoochi @ 23.2.2017, 14:32) *

Потому что ты для IP-адреса своего DNS-сервера зачем-то указал в обратной зоне две записи. Тупая винда непонятно по каким причинам делает PTR-запрос, чтобы узнать доменное имя прописанного в настройках DNS-сервера - и ты по уже понятным причинам видишь то один домен, то другой.

Спасибо.
Действительно. Только вопрос немного видоизменился, точнее разделился. biggrin.gif
db.192
Код
;
; BIND reverse data file for 192.168.1.site net
;
$TTL    604800
1.168.192.in-addr.arpa.       IN      SOA debian.site admin.site. (
                              2; Serial
                         604800; Refresh time
                          86400; Retry time
                        2419200; Expire time
                         604800 ); Negative Cache TTL
;
1.168.192.in-addr.arpa.       IN      NS      debian.site.
5       IN      PTR    debian.site.


1. nslookup debian.site
Код
Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:\Users\--->nslookup debian.site
╤хЁтхЁ:  debian.site
Address:  192.168.1.5

╚ь :     debian.site
Address:  192.168.1.5


А зачем, все же две записи: debian.site

2. nslookup test.site
Код
C:\Users\--->nslookup test.site
╤хЁтхЁ:  debian.site
Address:  192.168.1.5

╚ь :     test.site
Address:  192.168.1.5


Понятно, что винда делает запрос PTR записи, где теперь только debian.site.
Но зачем он выдает эту запись в ответ, когда запрос test.site или это нормальная ситуация для утилиты nslookup?
------------------------------------------

Цитата(SnoochiBoochi @ 23.2.2017, 14:32) *

А за такую настройку апача надо отгрызать пальцы. Web-сервер должен обслуживать только те домены, которые заведены у него в конфиге. На все остальные он должен либо возвращать 403/404, либо вообще рвать соединение без объяснения причин. Иначе в один прекрасный день придётся гуглить про DNS Rebinding smile.gif.

А что не так с апачем:
/etc/apache2/sites-available/debian.site.conf
Код
<VirtualHost *:80>
        ServerName debian.site
        ServerAlias www.debian.site
        ServerAdmin admin@mail.site
        DocumentRoot /var/www/debian.site/public_html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined


</VirtualHost>


Если из
db.site
Код

;
; BIND data file for local loopback interface
;
$TTL 604800
site. IN SOA debian.site.  admin.site. (
                           1323; Serial
                         604800; Refresh
                          86400; Retry
                        2419200; Expire
                         604800 ); Negative Cache TTL
;
site.          IN      NS      debian.site.
debian     IN      A       192.168.1.5
test       IN      A       192.168.1.5


убрать заись test IN A 192.168.1.5 и сделать другой домен, скажем, test.super, то такой проблемы не случается.

Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Jek
сообщение 23.2.2017, 19:51
Сообщение #5


     
Group Icon


Группа: Супермодераторы
Сообщений: 14 663
Регистрация: 27.9.2007
Из: Кемерово >>> Южный WEB: http://irc.k-42.ru IRC: irc.sibnet.ru #iclub
Пользователь №: 6 588



Репутация:   1746  


nslookup делает PTR-запрос для того DNS-сервера, к которому обращается. Видимо фишка у него такая. Ты прописал для 192.168.1.5 две PTR-записи зачем-то (это возможно, но крайне странно и не имеет какого-либо смысла), поэтому тебе эти записи показывались по очереди при каждом DNS-запросе через nslookup.

С апачем не так то, что злобный хакер может для какого-нибудь домена указать второй A-записью IP твоего сервера и внедрить в него вредоносный скрипт, который может пошариться по твоей внутренней сети и передать нужные данные в нужное место. Поэтому первый виртуальный хост в настройках должен быть совершенно пустым или демонстрировать заглушку при обращении к любому его ресурсу. При твоей настройке можно даже по http://192.168.1.5/ открыть то, что ты называешь debian.site.


» Спасибо сказали: «
Пользователь в онлайне!Карточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
CNN
сообщение 23.2.2017, 20:57
Сообщение #6


Болтун
Group Icon


Группа: Барнаульцы Сибнета
Сообщений: 552
Регистрация: 17.4.2009
Из: города основанного в 1730-х годах
Пользователь №: 99 184



Репутация:   76  


Цитата(Jek @ 23.2.2017, 19:51) *

С апачем не так то, что злобный хакер может для какого-нибудь домена указать второй A-записью IP твоего сервера и внедрить в него вредоносный скрипт, который может пошариться по твоей внутренней сети и передать нужные данные в нужное место. Поэтому первый виртуальный хост в настройках должен быть совершенно пустым или демонстрировать заглушку при обращении к любому его ресурсу. При твоей настройке можно даже по http://192.168.1.5/ открыть то, что ты называешь debian.site.

Честно говоря, малость не понял. sad.gif

Т.е. не понятно про первый виртуальный хост и заглушку.

Сообщение отредактировал CNN - 23.2.2017, 20:58
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Jek
сообщение 23.2.2017, 21:03
Сообщение #7


     
Group Icon


Группа: Супермодераторы
Сообщений: 14 663
Регистрация: 27.9.2007
Из: Кемерово >>> Южный WEB: http://irc.k-42.ru IRC: irc.sibnet.ru #iclub
Пользователь №: 6 588



Репутация:   1746  


Загугли DNS Rebinding - там кое-где объясняется по-простому, как эту дырень заюзать smile.gif.

Цитата(CNN @ 23.2.2017, 20:57) *
не понятно про первый виртуальный хост и заглушку.

Если внимательно прочитать документацию к апачу - окажется, что первый виртуальный хост в списке у него дефолтовый, и он будет использован в том случае, если запрашиваемый хост не совпадает ни с одним из указанных в других директивах <Virtualhost>. Поэтому если не предпринять никаких мер - он будет использоваться использоваться при любом запросе с некорректным полем Host.

http://httpd.apache.org/docs/2.4/vhosts/examples.html


» Спасибо сказали: «
Пользователь в онлайне!Карточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
CNN
сообщение 23.2.2017, 21:57
Сообщение #8


Болтун
Group Icon


Группа: Барнаульцы Сибнета
Сообщений: 552
Регистрация: 17.4.2009
Из: города основанного в 1730-х годах
Пользователь №: 99 184



Репутация:   76  


Цитата(Jek @ 23.2.2017, 21:03) *

Загугли DNS Rebinding - там кое-где объясняется по-простому, как эту дырень заюзать smile.gif.
Если внимательно прочитать документацию к апачу - окажется, что первый виртуальный хост в списке у него дефолтовый, и он будет использован в том случае, если запрашиваемый хост не совпадает ни с одним из указанных в других директивах <Virtualhost>. Поэтому если не предпринять никаких мер - он будет использоваться использоваться при любом запросе с некорректным полем Host.

http://httpd.apache.org/docs/2.4/vhosts/examples.html

Т.е. получается, что таая фигня происходит не по причине неправильной настройки DNS-сервера, а использования стандартной конфигурации апача? Уязвимость у него такая?

Что бы защититься от этой уязвимости необходимо первым блоком:
<VirtualHost *:80>
</VirtualHost>
указать какую-нить хрень, которая будет возвращать ошибку 404, а вторым реальный виртуальный хост?

И тогда {проверил} доступ к web-ресурсу будет только по его доменному имени, не по ip и любых других доменов, привязанных к этому ip

Сообщение отредактировал CNN - 23.2.2017, 21:58
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Jek
сообщение 23.2.2017, 22:02
Сообщение #9


     
Group Icon


Группа: Супермодераторы
Сообщений: 14 663
Регистрация: 27.9.2007
Из: Кемерово >>> Южный WEB: http://irc.k-42.ru IRC: irc.sibnet.ru #iclub
Пользователь №: 6 588



Репутация:   1746  


Цитата(CNN @ 23.2.2017, 21:57) *
Т.е. получается, что таая фигня происходит не по причине неправильной настройки DNS-сервера, а использования стандартной конфигурации апача? Уязвимость у него такая?

Если имеется ввиду открытие страницы по http://192.168.1.5/ и пр. - да, эта фигня исключительно по вине стандартной настройки апача.

Цитата(CNN @ 23.2.2017, 21:57) *
Что бы защититься от этой уязвимости необходимо первым блоком:
<VirtualHost *:80>
</VirtualHost>
указать какую-нить хрень, которая будет возвращать ошибку 404, а вторым реальный виртуальный хост?

Можно и такой вариант использовать.


» Спасибо сказали: «
Пользователь в онлайне!Карточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. просматривают этот форум (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Текстовая версия Сейчас: 16.7.2019, 21:24
Редакция: (383) 347-86-84

Техподдержка: (383) 347-22-44
help.sibnet.ru
Размещение рекламы:
тел: (383) 347-06-78, 347-10-50

Правила использования материалов