pavel.odintsov Posted July 7, 2015 Posted July 7, 2015 (edited) Всем добрый день Недавно мой мир рухнул и я хочу поговорить об этом. Воспитанный на RFC я был искренне уверен, что все клиентские запросы должны идти исключительно с высоких портов. Но тщательное исследование проведенное на очень нагруженном _авторитативном_ (никакой рекурсии, ни за километр!) DNS сервере показало, что мир рухнул и число валидных запросов с 53го порта просто зашкаливает. Итак, наши герои: выпилено по соображениям сетевого нейтралитета Вопрос - какой именно DNS демон творит такую непотребщину? Edited July 7, 2015 by pavel.odintsov Вставить ник Quote
bos9 Posted July 7, 2015 Posted July 7, 2015 из named.conf /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND versions 8 and later * use a pseudo-random unprivileged UDP port by default. */ // query-source address * port 53; Вставить ник Quote
pavel.odintsov Posted July 7, 2015 Author Posted July 7, 2015 Это его стандартная конфигурация или же нет? Вставить ник Quote
snvoronkov Posted July 7, 2015 Posted July 7, 2015 Это его стандартная конфигурация или же нет? Вот вроде-ж на нормальном языке написано: "Previous versions of BIND always asked questions using port 53, but BIND versions 8 and later..." Вставить ник Quote
f13 Posted July 7, 2015 Posted July 7, 2015 Воспитанный на RFC я был искренне уверен, что все клиентские запросы должны идти исключительно с высоких портов. это в каком рфц такое сказано? запросы можно слать с любого порта, главное что б прав хватило Вставить ник Quote
pavel.odintsov Posted July 7, 2015 Author Posted July 7, 2015 (edited) Воспитанный на RFC я был искренне уверен, что все клиентские запросы должны идти исключительно с высоких портов. это в каком рфц такое сказано? запросы можно слать с любого порта, главное что б прав хватило Я надеюсь это шутка? :) Для затравки даю вопрос DNS spoofing https://en.wikipedia.org/wiki/DNS_spoofing и даже цитату дам: Source port randomization for DNS requests, combined with the use of cryptographically-secure random numbers for selecting both the source port and the 16-bit cryptographic nonce, can greatly reduce the probability of successful DNS race attacks. Чем рискуют эти одаренные товарищи с байндом на 53м порту? А тем, что отрубают один из механизмом защиты DNS к чертям собачьим. Итак, в каждом запрошенном вами пакете есть 65 тыщ вариаций поля "id", который используется клиентом, чтобы проверить, что от сервера пришло то, что они просили. 65 тыщ комбинаций.Это перебирается за меньше секунды, просто пачкой запросов в днс и он отравлен. Все. Чтобы этого не было, умные люди (а не те, кто имеет BIND на 53м порту) отключили эту чудо фичу по умолчанию и DNS сервер стал слать запросы с рандомного из ~20 000 портов. Что усложняет реализацию атаки с 65 тыщ попыток до 65 000 * 20 000 = 130 миллионов пакетов. Такой объем хрен всунешь даже в 100 GE линк. Edited July 7, 2015 by pavel.odintsov Вставить ник Quote
pavel.odintsov Posted July 7, 2015 Author Posted July 7, 2015 Нашел отличную тулзу для проверки своего провайдера на кривой DNS: http://entropy.dns-oarc.net/test/ Вставить ник Quote
s.lobanov Posted July 7, 2015 Posted July 7, 2015 pavel.odintsov ну и в чём смысл публиковать номера этих AS? поставит какой-нибудь клиент в вашей AS "кривой" DNS и тоже станете "героем". Вообще, делить трафик на "валидный" и "невалидный" это неправильно. сетевой нейтралитет же нынче в моде. хотя - шлю с 53 порта. если кто-то блочит такой трафик, то это мои проблемы будут Вставить ник Quote
pppoetest Posted July 7, 2015 Posted July 7, 2015 сетевой нейтралитет же нынче в моде Его уже давно нет. Вставить ник Quote
pavel.odintsov Posted July 7, 2015 Author Posted July 7, 2015 (edited) Дело не только в блокировке, но и в полной инсекьюрности данного подхода. P.S. список выпилил. Но там отмечались "официальные резольверы", клиентов их видно сразу. Edited July 7, 2015 by pavel.odintsov Вставить ник Quote
s.lobanov Posted July 7, 2015 Posted July 7, 2015 сетевой нейтралитет же нынче в моде Его уже давно нет. ну вот лично вы делаете приоритет одних сервисов на другими или что-то зарезаете? берёте ли вы доп.плату за какие-то ресурсы? (приоритет портов ВНУТРИ абонентской трубы не считается) Вставить ник Quote
pppoetest Posted July 7, 2015 Posted July 7, 2015 сетевой нейтралитет же нынче в моде Его уже давно нет. ну вот лично вы делаете приоритет одних сервисов на другими или что-то зарезаете? Мультикаст красим. Вставить ник Quote
s.lobanov Posted July 7, 2015 Posted July 7, 2015 pppoetest это к сетевому нейтралитету особого отношения не имеет. отсутсвие нейтралитета это когда вы, например, блокируете чужой SIP, берёте деньги за просмотр порносайтов, мешаете абонентам пользоваться какими-то сервисами. Вставить ник Quote
Ivan_83 Posted July 7, 2015 Posted July 7, 2015 Чем рискуют эти одаренные товарищи с байндом на 53м порту? А тем, что отрубают один из механизмом защиты DNS к чертям собачьим. Почти ни чем, на практике. С одной стороны есть DNSSEC, который в принципе решает проблему. С другой, кроме собственно ID и srcPORT есть ещё и dstIP, те нормальные реализации резолверов следят не только за ID, именем но и за адресом откуда пришло. Был ещё вариант повышения секурности путём рандомизации регистра в запросах и проверки в ответах, те запрос вместо mail.ru mAIl.rU был бы, к примеру. Если бы мне нужна была мегасеркуность, то при отсутствии DNSSEC и наличии незапрошенных ответов для каких то доменов, я бы эти домены заносил в отдельный список, и ходил к ним по TCP с вопросами. Вставить ник Quote
pavel.odintsov Posted July 7, 2015 Author Posted July 7, 2015 (edited) Про рандомизацию региcтра - годная идея :) А кто именно из демонов так делает? Edited July 7, 2015 by pavel.odintsov Вставить ник Quote
s.lobanov Posted July 7, 2015 Posted July 7, 2015 pavel.odintsov я видел клиенты, которые так делают. кто именно - хз. вроде SOHO-роутеры какие-то, а там софт прикладного уровня как правило типичный opensource. Вставить ник Quote
Ivan_83 Posted July 7, 2015 Posted July 7, 2015 Про рандомизацию региcтра - годная идея :) А кто именно из демонов так делает? Хз, меня это не интересовало настолько. Видел драфт, вероятно оно так и осталось в черновиках и не пошло в стандарт. Клиентов не смотрел, о черновике узнал из каких то новостей лет 3+ назад. Вставить ник Quote
f13 Posted July 8, 2015 Posted July 8, 2015 Я надеюсь это шутка? :) так какой номер рфц? то что такой подход не безопасен я знаю Вставить ник Quote
pavel.odintsov Posted July 8, 2015 Author Posted July 8, 2015 Я надеюсь это шутка? :) так какой номер рфц? то что такой подход не безопасен я знаю Естественно тот, который описывает DNS и как должны слаться запросы, с учетом защиты от DNS spoofing :) Нумер искать лень. Вставить ник Quote
ipaddr.ru Posted July 8, 2015 Posted July 8, 2015 Думаю, полно еще в сети машин с bind4. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.