The OpenNET Project / Index page

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

Опубликован код эксплоита для атаки на DNS серверы

24.07.2008 13:54

Две недели назад исследователь Дэн Каминский (Dan Kaminsky) объявил об обнаружении метода помещения не соответствующих реальности данных в кэш DNS сервера. Теоретическая возможность такой атаки, вызванной недостаточным размером поля с идентификационным номером запроса (под query id отдано 16 бит) в DNS пакете, была предсказана ранее, но до сих пор относилась к разряду труднореализуемых на практике. Рабочий код с демонстрацией подмены доменного имени и полное описание новой техники DNS спуффинга планировалось опубликовать на конференции "Black Hat", которая состоится 7 августа, дав администраторам время на обновление программного обеспечения.

Из-за утечки информации от компании Matasano, получившей полные сведения о методе Каминского, уже спустя несколько часов был разработан эксплоит для данного вида атак, который представлен для свободной загрузки. Эксплоит представлен в формате для использования совместно с утилитой Metasploit, предназначенной для проверки безопасности на наличие проблем безопасности.

В демонстрационном примере показано, как пользователь, имеющий доступ к DNS серверу осуществляющему рекурсивные запросы, может подменить IP адрес для несуществующего хоста отправив порядка 7000 фиктивных запросов и одновременно 140 тысяч фиктивных ответов. Общее время, необходимое для осуществления успешной атаки на сервер с BIND 9.4.2 составляет 1-2 минуты (Дэн Каминский ранее заявлял, что его метод реализует атаку за считанные секунды). Полное описание метода атаки можно прочитать здесь.

Администраторам рекомендуется срочно произвести обновление BIND до версий 9.5.0-P1, 9.4.2-P1, 9.3.5-P1, а при использовании другого DNS сервера уточнить наличие уязвимости и исправлений. Например, при выборочной проверке крупных операторов связи выяснилось, что DNS серверы таких провайдеров, как SBC/AT&T, Comcast, Sprinklink, Verizon, Adelphia и Earthlink, уязвимы для данного вида атак.

  1. Главная ссылка к новости (http://blogs.zdnet.com/securit...)
  2. OpenNews: Фундаментальная уязвимость в DNS. Рекомендуется срочно обновить BIND
  3. Details of DNS Flaw Leaked; Exploit Expected by End of Today
  4. Researcher Spills Beans on DNS Flaw Specs
  5. Интервью wired.com с Дэном Каминским
  6. Attack code imminent for DNS flaw
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/17101-dns
Ключевые слова: dns, security, exploit
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (32) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 14:21, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Утечка))) ох уж эта информационная безопасность
     
  • 1.2, terminus (ok), 14:45, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    http://blog.invisibledenizen.org/2008/07/kaminskys-dns-issue-accidentally-lea
     
  • 1.3, Аноним (1), 15:06, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Vendor Status Date Updated
    djbdns Not Vulnerable 10-Jul-2008

    все что меня интересовало

     
  • 1.4, Abu (?), 16:07, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А с djbdns можно организовать динамический dns?
     
     
  • 2.5, terminus (ok), 16:15, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Слава Богу - нет.
     
     
  • 3.6, Аноним (1), 17:06, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и куда он уперся тогда? :)
    Впрочем все творения этого автора имеют такую же карму - они безопастны потому что нибубени не делают :)
     
     
  • 4.8, terminus (ok), 17:16, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >они безопастны
    >потому что нибубени не делают :)

    Не, не так. Софт от djb отлично делает то, для чего он предназначен, но не более.

     
     
  • 5.26, User294 (ok), 12:49, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Не, не так. Софт от djb отлично делает то, для чего он
    >предназначен, но не более.

    Угу.. вот только с IPv6 там как-то уныло.И когда его начнут юзать массово (а это кажется уже скоро) - что тогда?Ну да, с кучей танцев с бубном можно патчи применить.Получив какой-то совсем базовый функционал (я так понял что только AAAA записи, никаких MX и прочая не полагается).

     
     
  • 6.29, terminus (ok), 14:39, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Угу.. вот только с IPv6 там как-то уныло

    Не предназначен ;)

     
  • 3.15, Аноним (-), 20:20, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Слава Богу - нет.

    Кому слава а кому клава.Мне вот например динамический DNS нужен позарез.Не все айпи нынче статические а закладываться на сторонние сервисы как-то неохота.Свой днс обладает предсказуемостью, а что там "дяденьки" сделают завтра - хрен бы его знает.

    Итого вопрос: а есть небольшой и секурный DNS сервер чтобы не жрал вагон ресурсов, умел IPv6 (желательно и DNSSEC и TSIG на будущее), не был бы прорехой в безопасности как бинд, умел хоть какой-нибудь dynamic dns (cекурно) и т.п.?

    А то djbdns смотрел.Ну да, несколько лет назад был хороший выбор.Секурный, небольшой, ничего лишнего. Но. Автор на него походу забил.А вот IPv6 - будет.И даже довольно скоро.И там он как я понял мягко говоря, через ж*у (сторонний патч с вагоном issues внагрузку).DNSSEC и даже просто TSIG нет и как я понимаю и не будет.Такими темпами есть опасение что через несколько лет оно станет сугубо артефактом который отправится на свалку истории, может быть и непобежденным.Это конечно, почетно, но осваивать то что умрет в обозримом будущем - нелогично.Есть ли достойные альтернативы?Форки?Или что?

    BIND не понравился.Монструозный, навернутый, секурность у него хромая что предсказуемо.Да еще по дефолту зачем-то кучу процессов форкает.Прям апач какой-то а не днс сервер.А заменить его реально?Чтобы не было головняка хотя бы с dynamic dns и IPv6?

     
     
  • 4.19, terminus (ok), 21:12, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >заменить его реально?Чтобы не было головняка хотя бы с dynamic dns
    >и IPv6?

    Мог бы порекомендовать связку Unbound + NSD, но там тоже (пока?) нет DDNS в Unbound и view'ов в NSD. В остальном (IPv6, DNSSEC, TSIG, etc) все как полагается, а еще мало ресурсов жрет и секюрно. Сам перешел на использование Unbound + NSD вместо djbdns (tinydns + dnscache) ибо функционал устраевает.


     
     
  • 5.33, Sem (??), 16:43, 30/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>заменить его реально?Чтобы не было головняка хотя бы с dynamic dns
    >>и IPv6?
    >
    >Мог бы порекомендовать связку Unbound + NSD, но там тоже (пока?) нет
    >DDNS в Unbound и view'ов в NSD. В остальном (IPv6, DNSSEC,
    >TSIG, etc) все как полагается, а еще мало ресурсов жрет и
    >секюрно. Сам перешел на использование Unbound + NSD вместо djbdns (tinydns
    >+ dnscache) ибо функционал устраевает.

    Автор Unbound DDNS делать не будет. Но Unbound модульный. Можно сделать модуль и прикрутить его. Я сделал один для своих целей. Автор без проблем отвечает на вопросы.

     
  • 2.7, zuborg (?), 17:16, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Что Вы имеете в виду под динамическим днс ?
    Во первых, у djbdns для рекурсивного кеширующего резолвера один сервер, а для обычного обслуживания зон - другой.
    Во вторых - если под динамическим подразумевается зависимость ответа от IP запрашивающего - то умеет.
     
     
  • 3.9, terminus (ok), 17:17, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Зависимость от IP это view'ы - это есть. Кму надо DynDNS (?)
     
     
  • 4.10, zuborg (?), 17:27, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Сори, теперь вспомнил, это там где динамический DHCP работает иногда пользуют и динамический днс.
    Согласен, редко кому нужен, но найдутся же любители похаять все и вся, лишь бы повод был..
     
     
  • 5.18, Аноним (-), 20:59, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Сори, теперь вспомнил, это там где динамический DHCP работает иногда пользуют и
    >динамический днс.

    DHCP это одно, динамический днс несколько другое.Мало кому нужен?Расскажите ка это миллионам юзеров no-ip.com или dyndns.org

     
  • 5.21, Abu (?), 01:59, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Лично у меня не было такой цели, когда задавал вопрос, =похаять все и вся=. Но разговор получился интересным, да.

    Так вот. Не хватая с неба звезд (и не вспоминая, потому что DDNS на BIND'e настроен давным-давно), нашел в Википедии:

    =
    Динамический DNS — это технология, позволяющая информации на DNS-сервере обновляться в реальном времени, и (по желанию) в автоматическом режиме. Она применяется для назначения постоянного доменного имени компьютеру с изменяемым IP-адресом. Это может быть IP-адрес, полученный по DHCP или по IPCP в PPP-соединениях (например, при удаленном доступе через модем). Другие машины в Интернете могут устанавливать соединение с этой машиной по доменному имени и даже не знать, что IP-адрес изменился.
    =

    Вот это - умеет djdns?

    Если не умеет, то мне - нинада, но это не значит, конечно, что нинада всем - задачи разные у всех. А мне не интересно в локальной сети давать статические ip-адреса, и не интересно привязывать по MAC-адресу имена, и влом вписывать в DNS скачущих из подсети в подсеть юзеров. Мб есть более лучшее решение, чем динамическая раздача имен, в условиях миграции пользователей? Буду рад почитать.

    Если умеет, то буду смотреть.

     
  • 4.27, User294 (ok), 12:58, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Зависимость от IP это view'ы - это есть.

    Еще это иногда называют split horizon или как-то так.И к dynamic dns это никак не относится.

    > Кму надо DynDNS (?)

    Мне например надо.Это удобно.Когда имя хоста однозначно указывает на конкретную машину (IP которой вовсе не обязан быть статичным, ибо есть DHCP или линки на которых IP выдаются провайдерами динамически) - это хорошо, удобно и правильно.Без dynamic dns в такой ситуации имя хоста может начать показывать пальцем в небо, а то и на оказавшийся с этим айпишником чужой хост.А вот это нехорошо уже.

     
     
  • 5.28, terminus (ok), 14:34, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Там ошибка закралась - не "Кму надо DynDNS (?)" а "Ему надо DynDNS (?)" - пишу с клавы без русских букв и часто ошибаюсь...

    Я не спорю, что оно полезно и удобно.

     
  • 3.17, Аноним (-), 20:57, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Во вторых - если под динамическим подразумевается зависимость ответа от IP запрашивающего
    >- то умеет.

    Динамический dns как правило означает возможность обновлять айпи адрес на который показывает имя хоста за короткий срок (удобно чтобы имя показывало на конкретную машину даже если IP у нее меняется) а то и динамически создавать новые записи (для например LAN актуально).

     

  • 1.11, Аноним (11), 18:26, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А на каком языке эксплоит?
     
     
  • 2.20, migosm (?), 21:20, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >А на каком языке эксплоит?

    Ruby

     

  • 1.12, dmitry.kuzmenko (ok), 19:57, 24/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто-нить скажет, как залатать bind?
     
     
  • 2.13, Pilat (ok), 20:00, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Кто-нить скажет, как залатать bind?

    поставить новую версию, естественно.

     
     
  • 3.14, dmitry.kuzmenko (ok), 20:06, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    То есть в текущей версии проблема не воспроизводится?
     
     
  • 4.16, bill (??), 20:49, 24/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Написано же 9.5.0-P1, 9.4.2-P1, 9.3.5-P1. Что ещё за текущая версия?
     
     
  • 5.22, dmitry.kuzmenko (ok), 07:46, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Написано же 9.5.0-P1, 9.4.2-P1, 9.3.5-P1. Что ещё за текущая версия?

    В текущем треде ничего такого не написано. На офсайте бинда я тоже такой инфы не нашёл. Когда утверждаете что что-то где-то написано, давайте, пожалуйста ссылку.

     
     
  • 6.23, Аноним (-), 08:48, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    В новости написано, глаза разуй.
     
     
  • 7.24, dmitry.kuzmenko (ok), 09:22, 25/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >В новости написано, глаза разуй.

    ЧОРТ! =)) Я новость смотрел в сокращённом виде. Извиняюсь.

     

  • 1.30, Аноним (1), 17:03, 25/07/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    проверил, работает ! :)
     
     
  • 2.31, zzzxxx (?), 13:10, 28/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >проверил, работает ! :)

    Проверил, не запустилось :(

    поставил Ruby, metasploit v3.2-release из снапшота.
    В корне msf3 создал
    modules/auxiliary/spoof/dns/bailiwicked_host.rb с указанным в тексте письма содержимым.
    При старте msfconsole указывает на один экспл. больше чем при первоначальном запуске.
    Однако  

    msf > use auxiliary/spoof/dns/bailiwicked_host
    [-] Failed to load module: auxiliary/spoof/dns/bailiwicked_host

    Где могут быть грабли? Первый раз пробую msf. Или модуль ему как-то не так оформил..
    Скопировано было все от

    require 'msf/core'
    require 'net/dns'

    до

    end
    end

     
     
  • 3.32, Аноним (1), 15:10, 28/07/2008 [^] [^^] [^^^] [ответить]  
  • +/
    тянуть надо метасплоит из свн ихнего. Модуль этот туда копировать не надо - он уже в свн лежит.
     

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



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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