25.07.2008

Уязвимость в DNS. Джин на свободе?

Уязвимость в DNS – безусловно, одно из самых ярких событий года в сфере информационной безопасности. В этой статье мы попробуем разобраться, насколько эта уязвимость опасна и как злоумышленники смогут ею воспользоваться.

Краткое предисловие

DNS является одним из самых критичных компонентов сети Интернет, поэтому уязвимости в серверах имен всегда вызывали повышенный интерес у злоумышленников. 8-9 июля многие производители выпустили исправления, устраняющие фунаментальную ошибку, которая позволяет злоумышленнику произвести спуфинг атаку. Дэн Камински в своем блоге http://www.doxpara.com/?p=1165 опубликовал более подробное описание уязвимости и сделал доступным эксплоит.

В чем заключается уязвимость?

Уязвимость существует из-за того, что DNS сервер использует предсказуемый номер порта для отправки DNS запросов. Злоумышленник может угадать номер порта, который используется для отправки данных, и с помощью специально сформированного ложного DNS-ответа подменить данные в кеше DNS сервера.

Для подтверждения наличия уязвимости можно воспользоваться эксплоитами и утилитой:

BIND 9.4.1-9.4.2 Remote DNS Cache Poisoning Flaw Exploit (meta)
BIND 9.x Remote DNS Cache Poisoning Flaw Exploit (py)
Утилита http://www.onzra.com/CacheAudit-Latest.tgz

Насколько опасна уязвимость?

Спуфинг атака – атака, направленная в первую очередь на клиента, а не на сервер. Уязвимость, которую мы сейчас обсуждаем, неспособна дать повышенные привилегии на уязвимой системе или выполнить произвольный код, но в сочетании с другими незначительными ошибками программного обеспечения или социальной инженерией, может стать очень опасным инструментом в руках злоумышленника.

В тестах, которые проводил Камински, ему удалось отравить кеш сервера имен приблизительно за 5-10 секунд. Эта уязвимость позволяет атакующему перезаписать данные, которые уже находятся в кеше сервера. Сервера имен, которые являются только авторитетными, не подвержены этой уязвимости. Установка высокого значения TTL для ваших хостов на авторитетном сервере не помешает злоумышленнику отравить кеш уязвимых резолверов, так как атака обходит защиту TTL.

Уязвимость затрагивает также и клиентские библиотеки (рабочие станции и сервера, которые обращаются к вышестоящим серверам имен) и может быть проведена против одиночного хоста. Также, некоторые МСЭ с функционалом трансляции адресов, рассчитанные на домашний сектор, используют предсказуемые номера для порта источника запросов, что позволяет злоумышленнику удачно произвести атаку, даже если было установлено исправление на сервер имен или клиент.

Итак, подытожим:

  1. Отравление кеша DNS сервера можно произвести довольно быстро (5-10 секунд)
  2. Злоумышленник может изменить данные, которые уже находятся в кеше сервера
  3. Уязвимость может использоваться как против сервера имен, так и против рабочей станции.
  4. Сервера и рабочие станции, которые находятся за бюджетными МСЭ с включенным NAT, подвержены уязвимости не зависимо от установленных исправлений.
  5. Эксплоит находится в публичном доступе.
  6. Целью атаки может стать любой промежуточный DNS сервер на пути к авторитетному серверу или DNS клиент. Это означает, что если вышестоящий DNS сервер уязвим, то не зависимо от наличия исправлений на ваших серверах, вы можете стать жертвой атаки.

Векторы атаки

Как я уже писал выше, спуфинг атака – атака, направлена на клиента, а не на сервер. Злоумышленник может:

  • произвести фишинг атаку и получить доступ к важным данным
  • произвести атаку типа «Человек посередине» и получить доступ к потенциально важным данным (паролям, номерам кредитных карт и другим данным, которые вы передаете).
  • используя уязвимость в ПО, получить доступ к важным данным и даже скомпрометировать целевую систему (например, из-за недостаточной проверки подлинности сервера при установке обновлений приложения, при перенаправлении пользователя на специально сформированный сайт и т.д.).

Исправления

Для устранения уязвимости необходимо установить исправления не только на хосты, которые находятся под вашим контролем, но и на все сервера имен, которые участвуют в обмене данными, иначе всегда будет существовать возможность спуфинг атаки.
Исправления доступны для Windows, Linux, UNIX и других систем. Для получения исправления обратитесь к соответствующему производителю. Список производителей доступен по адресу: http://www.kb.cert.org/vuls/id/800113

Выводы

Уязвимость достаточно опасна и может эксплуатироваться как против сервера, так и против клиента. Исправления хотя и существуют, но установлены далеко не везде. Армагеддон, конечно же не наступает, но у злоумышленников появилась дополнительное преимущество, которым они не постесняются воспользоваться в последующих атаках на ваши сети.

или введите имя

CAPTCHA
Страницы: 1  2  
25-07-2008 18:08:10
придётся ходить по сетевым адресам в интернет. Состовляем список наиболее посещаемых ресурсов =)
0 |
25-07-2008 22:44:48
ндаааа.. дошло наконец до всего мира то с чем успешно фишили фиширы еще лет 5 назад... а какие чудные были времена, когда это было 0деем...
0 |
27-07-2008 11:17:39
нее... это не до мира дошло,а до отдельных его представителей )))
0 |
28-07-2008 09:49:15
А я щас точно на секлабе? Что-то пароль спросили... ))
0 |
Я правильно понимаю, что для реализации атаки требуется только знание IP-адреса машины жертвы? В том случае если атакуется непропатченный клиент, о атаке самих DNS-серверов сейчас не говорим
0 |
28-07-2008 19:16:26
To Shanker: Module options: Name Current Setting Required Description ---- --------------- -------- ----------- HOSTNAME pwned.example.com yes Hostname to hijack NEWADDR 1.3.3.7 yes New address for hostname RECONS 208.67.222.222 yes Nameserver used for reconnaissance RHOST yes The target address SRCPORT yes The target server's source query port (0 for automatic) XIDS 10 yes Number of XIDs to try for each query Код metasploit реализует атаку на UDP канал сервер-сервер. Чемто напоминает обычный DNS-poisoning однако основан на другом принципе. Суть: цели(атакуемому серверу) отсылается куча запросов на разрешение несуществующих имен, одновременно ему же от имени авторитетного сервера (спуфинг) отправляются ответы на эти запросы в которых также содержится дополнительная запись - как раз то, что необходимо внедрить. Вывод: ставим патчи или мигрируем на TCP-соединения.
0 |
Страницы: 1  2