The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Фундаментальная уязвимость в DNS. Рекомендуется срочно обновить BIND

09.07.2008 10:19

Дэн Каминский (Dan Kaminsky) обнаружил критическую уязвимость в принципе работы большинства DNS серверов (проблема дизайна протокола), позволяющую добиться помещения не соответствующих реальности данных в кэш DNS сервера, работающего в роли рекурсивного резолвера. Например, злоумышленник может инициировать помещение в кэш DNS сервера некорректного IP для резолвинга определенного домена, который будет выдан клиенту при последующем запросе информации о заданном хосте.

Проблеме присвоен максимальный уровень опасности, рекомендуется как можно скорее установить обновление. Частичным утешением может выступить тот факт, что полное описание новой техники DNS спуффинга будет опубликовано Дэном Каминским на конференции "Black Hat", которая состоится 7 августа.

Организация ISC уже выпустила обновление BIND 9.5.0-P1, BIND 9.4.2-P1 и BIND 9.3.5-P1, а также опубликовала специальный пресс-релиз, в котором подчеркнута серьезность проблемы и необходимость скорейшего обновления. К сожалению исправление существенно понижает производительность сервера, что особенно начинает проявляться при нагрузке в 10 тыс. запросов в секунду и выше. В бета версиях 9.5.1b1/9.4.3b2 начато тестирование оптимизированного варианта исправления, который должен частично решить возникшие проблемы с производительностью. Тем не менее, полную защиту от данного вида атак может обеспечить только использование DNSSEC.

Проверить DNS сервер на уязвимость можно на данной странице. Доступность исправлений для различных платформ можно узнать здесь. Кроме BIND, в настоящий момент уязвимость подтверждена в Cisco IOS, Juniper JunOS, Microsoft Windows DNS Server. Проблема отсутствует в PowerDNS (резолвер выделен в отдельный продукт PowerDNS Recursor, об уязвимости которого ничего не сообщается).

  1. Главная ссылка к новости (http://www.us-cert.gov/cas/tec...)
  2. US-CERT: Multiple DNS implementations vulnerable to cache poisoning
  3. securityfocus.com: Alliance forms to fix DNS poisoning flaw
  4. ISC characterization: Query Port Randomization for BIND 9
  5. OpenNews: Вышла новая версия DNS сервера BIND с исправлением уязвимости
  6. OpenNews: Защищаем BIND 9 от "отравления кэша"
Лицензия: CC-BY
Тип: Интересно / Проблемы безопасности
Короткая ссылка: https://opennet.ru/16872-dns
Ключевые слова: dns, cache, security
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (55) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Aleksey (??), 11:29, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я правильно понимаю, что уязвимы любые DNS сервера?
     
     
  • 2.3, Aleksey (??), 11:30, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    "Updates are also being released for a variety of other platforms since this is a problem with the DNS protocol itself, not a specific implementation. The good news is this is a really strange situation where the fix does not immediately reveal the vulnerability and reverse engineering isn’t directly possible."

    Ага, видимо все просто плохо.

     
  • 2.49, DAN (??), 19:07, 11/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    складывается впечатление что комментирование строки
    // query-source address * port 53;
    в bind
    решает все проблемы, по кр мере если судить по http://doxpara.com/
     

  • 1.2, Аноним (-), 11:30, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ой, что сейчас будет...
     
  • 1.4, zoonman (ok), 11:36, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    port для freebsd есть?
     
     
  • 2.39, k561 (?), 06:19, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >port для freebsd есть?

    09 Jul 2008 20:02:01
       9.3.5.1

     

  • 1.5, terminus (ok), 11:39, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Опять? То есть, снова? То есть, как всегда, BIND...
     
     
  • 2.9, nrza (?), 11:58, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Опять? То есть, снова? То есть, как всегда, BIND...

    написано же, баг протокола, а не bind.

     
     
  • 3.10, terminus (ok), 12:14, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Тем не менее, те кеш сервера которые используют технику пандомизации портов (PowerDNS, Unbound, djbdns) это не затрагивает...

    PowerDNS признан безопасным, статус Unbound пока не установлен, но по-ходу так же не затрагивает...

     
     
  • 4.27, User294 (ok), 18:43, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >PowerDNS признан безопасным,

    На вид похоже на логический баг протокола DNS который позволяет аттакеру загнать в кеши серверам фуфел.

    > PowerDNS признан безопасным

    А где это написано? В новости указано только то что там указанный функционал вынесен в отдельный продукт - ресольвер.Про его (не)уязвимость ровным счетом ничего внятного.

    > статус Unbound пока не установлен

    Во-во.

    > но по-ходу так же не затрагивает...

    Так по ходу или не затрагивает?Извините, баг или есть или нет.Никаких по ходу тут быть не может.Учитывая что это похоже на логический баг в протоколе DNS что-то я не разделяю вашего неуемного оптимизма.Боком потом такой оптимизм выходит :\

     
     
  • 5.29, terminus (ok), 19:13, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Про Unbound отписали в mail листе http://unbound.net/pipermail/unbound-users/2008-July/thread.html Основная мысль, что DNSSEC рулез, но и без него можно спать спокойно...

    Про PowerDNS http://www.kb.cert.org/vuls/id/CRDY-7FFQZ6

     
     
  • 6.33, User294 (ok), 20:45, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Про Unbound отписали в mail листе
    >Про PowerDNS

    Во, так сразу и надо говорить.

     
  • 4.32, Sem (ok), 20:38, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Автор Unbound заявляет, что не затрагивает. Тесты подтверждают его слова.
     

  • 1.6, Аноним (6), 11:39, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Проверил виндовый DNS на тестовой странице. Your name server, at ***.***.***.***, appears to be safe. Походу это только BIND затрагивает.
     
     
  • 2.12, nrza (?), 12:15, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Проверил виндовый DNS на тестовой странице. Your name server, at ***.***.***.***, appears
    >to be safe. Походу это только BIND затрагивает.

    да нет...
    http://www.microsoft.com/technet/security/bulletin/ms08-037.mspx
    возможно вы просто уже обновились.

     
  • 2.16, Xavier (?), 13:17, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Проверил виндовый DNS на тестовой странице. Your name server, at ***.***.***.***, appears
    >to be safe. Походу это только BIND затрагивает.

    а там верно указан адрес вашего ДНС-сервера? У меня проверилась прокся, которая с ДНС-сервером нифига не совпадает.

     
  • 2.17, zoonman (ok), 13:32, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Проверил виндовый DNS на тестовой странице. Your name server, at ***.***.***.***, appears
    >to be safe. Походу это только BIND затрагивает.

    а где эту страницу найти можно?

     
     
  • 3.22, Vlad (??), 16:32, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Новость прочитать пробовали?
     
  • 2.36, ig0r (??), 22:51, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Проверил виндовый DNS на тестовой странице. Your name server, at ***.***.***.***, appears
    >to be safe. Походу это только BIND затрагивает.

    а днс ваш случайно не за натом? у меня бинд тоже так пишет когда за натом находится.

     

  • 1.7, Аноним (7), 11:47, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > полную защиту от данного вида атак может обеспечить только использование DNSSEC

    Так и надо делать

     
     
  • 2.34, User294 (ok), 20:53, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >> полную защиту от данного вида атак может обеспечить только использование DNSSEC
    >Так и надо делать

    Это наверное как и IP v6 - все знают что надо и придется, но реализовывать на практике не спешат ибо кто ж хочет много нового геморроя? :)

     

  • 1.11, Осторожный (?), 12:15, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    То-то сегодня в CentOS обновления для bind пришли
     
  • 1.13, Аноним (7), 12:17, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У нас forward на провайдеров, но всё равно надо обновиться.


     
     
  • 2.15, Lindemidux (??), 13:15, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    И кто теперь будет рассказывать сказку от том, что МС делает все сам?
     

  • 1.14, spamtrap (ok), 13:10, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а ссылку на технические подробности кто-нить может дать? а то, почитав некоторые новости, складывается ощущение, что полинета в панике от новой суперугрозы, а в чём угроза - непонятно, поэтому ещё страшнее :)
     
     
  • 2.18, shadowcaster (?), 13:37, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    попробуйте начать отсюда
    http://it.slashdot.org/it/08/07/08/195225.shtml
     

  • 1.19, mirivlad (?), 14:24, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хыхы))) В убунте уже в репах апдейт) Я уже скачал ^__^
     
  • 1.20, Touch (?), 15:03, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    что-то не понял обновился до 9.3.5-P1, а всё равно на сайте пишет что уязвим :(
     
     
  • 2.21, lomo (?), 16:31, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >что-то не понял обновился до 9.3.5-P1, а всё равно на сайте пишет
    >что уязвим :(

    Я вот тоже не понял.. У меня все то, что выставлено наружу - все без рекурсии.
    И все равно пишет, что уязвим..

     
     
  • 3.42, Indigo (??), 11:01, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Порт каждый раз при проверке один и тот же? Поищите в конфигах строку с "query-source". Там не должно быть числа после "port", там должны быть звездочка.
    Как "query-source    port *;"
     
     
  • 4.45, lomo (?), 17:43, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Порт каждый раз при проверке один и тот же? Поищите в конфигах
    >строку с "query-source". Там не должно быть числа после "port", там
    >должны быть звездочка.
    >Как "query-source    port *;"

    У меня вот так:
    query-source address * port 53;

    Почему это порочно? :)

     
     
  • 5.48, Indigo (??), 13:02, 11/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что все запросы самого сервера идут с одного порта. А значит именно на этот порт может прийти фейк-ответ, его даже вычислять не надо. И в кэше вашего сервера окажется нужная злоумышленнику запись.
     

  • 1.23, citrin (??), 16:41, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    IMHO этот Dan Kaminsky просто удачно пропиарился.

    Об этой уязвимости было известно очень давно, но на практике использовать её почти нереально. Так что поводов для беспокойства нет.

    16 бит для query id это мало, но с учётом того, что за несколько сотен миллисекунд (а чаще и того меньше) нужно послать на атакуемый рекурсор N*65535 пакетов, сделать это почти нереально.

     
     
  • 2.38, Yuri Trofimov (?), 00:28, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    +1
     
  • 2.40, to4me (?), 10:21, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    +1 citrin
    Может я не в теме, но мне кажется что Бернштейн давно объ этом писал, где то http://cr.yp.to/djbdns.html
     

  • 1.24, Аноним (7), 17:15, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Первый думающий человек в этой ветке, а не жующий пиво планктон )))))
     
     
  • 2.26, Аноним (7), 18:33, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Первый думающий человек в этой ветке, а не жующий пиво планктон )))))
    >

    Ну да - а чего же сами ICS плачутЪ? Нет бы гордо заявить что всё это планктон ....

     
     
  • 3.28, Freedom (?), 19:04, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Первый думающий человек в этой ветке, а не жующий пиво планктон )))))
    >>
    >
    >Ну да - а чего же сами ICS плачутЪ? Нет бы гордо
    >заявить что всё это планктон ....

    они не плачут, а публично реагирует на поднятую волну. То что они знали раньше о проблеме и забивали на нее, это другой вопрос.    

     

  • 1.25, Аноним (7), 17:36, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Даже для жующего пива планктона тоже не плохо обновиться
     
     
  • 2.30, Аноним (-), 20:13, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Даже для жующего пива планктона тоже не плохо обновиться

    Регулярно обновляться вообще рулез

     

  • 1.31, Ононим (?), 20:27, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    дебиановский пакет биндов уже пофиксен похоже. ни на етче ни на ленни проверка не показала уязвимость :)
     
  • 1.35, Аноним (6), 21:13, 09/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Бага в BIND :D
    Зато сразу повсплывали все подделки, чеснокоммуниздящие куски кода от биндов.
    может разработчики просто хотели выцепить код-стилеров?;)
     
     
  • 2.37, citrin (??), 23:01, 09/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Бага в BIND :D
    >Зато сразу повсплывали все подделки, чеснокоммуниздящие куски кода от биндов.

    Это не бага а архитектурное решение. И в том, что у многих серверов оно общее нет ничего удивительно, выбирать в данном случае приходится из двух вариантов: слать разнве запросы с одного src-port (как раньше было сделано в bind) или использовать для каждого запроса новый порт (как сделали сейчас).
    Первый вариант производительнее, и поэтому популярнее.


     
     
  • 3.41, borman (?), 10:33, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, нелишним будет проверить конфигурационные файлы на наличие директивы query-source. Если там указан статический порт (что-то вроде query-source * port 1053), то обновления будут бесполезными, нужно ее закомментировать.

    Так, на всякий случай...

     
     
  • 4.43, Андрей (??), 12:55, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    После обновления BINDа, windows клиенты перестали резолвить адреса. под linux все ок, видимо все таки кривизна патча.
     
     
  • 5.44, Осторожный (?), 13:27, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Windows-клиенты не забыл обновить ? :)
     
  • 4.46, longers (??), 19:26, 10/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Ну а как же тогда вот это?
    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.
     
     
  • 5.47, max (??), 07:48, 11/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    по поводу bind'а во FreeBSD.
    А не была-ли пофиксина эта проблема в FreeBSD-SA-07:07.bind от 2007-08-01?
     
     
  • 6.50, Аноним (7), 13:12, 12/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Хороший вопрос. :)
     
     
  • 7.51, wintester (ok), 17:33, 12/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Хороший вопрос. :)

    И всем лень полезть выяснить :)


     
     
  • 8.52, Аноним (7), 18:56, 12/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Я гуглил по этому поводу и нагуглил только http webwereld nl comments 51828 dn... текст свёрнут, показать
     
  • 8.53, max (??), 07:45, 14/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    В FreeBSD-SA-07 07 bind написано Problem Description When named 8 is operat... текст свёрнут, показать
     
     
  • 9.54, max (??), 08:04, 14/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Ан нет, путаю Вышло уведомление FreeBSD-SA-08 06 bind от 2008-07-13 ... текст свёрнут, показать
     

  • 1.63, pentarh (??), 00:28, 22/10/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Бернштайн форева ) Я всегда нос от бинда воротил
     
     
  • 2.64, Sem (ok), 01:05, 22/10/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Бернштайн форева ) Я всегда нос от бинда воротил

    Только умер он. djbdns я имею ввиду. Не развивается нисколько.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру