Возможно вы искали: 'Too Many Geckos!'

May 15 2025 18:22:12
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Защита DNS используя механизм TSIG (dns security)

Защита DNS используя механизм TSIG (dns security)

Ключевые слова: dns, security, (найти похожие документы)

From: Andrey
Newsgroups: email
Date: Mon, 15 Aug 2005 14:31:37 +0000 (UTC)
Subject: Защита DNS используя механизм TSIG


> Как оказалось, автор стати скопироал, с некоторыми сокращениями,
> оригинальный текст 11 главы книги "DNS и BIND",
> авторы - Пол Альбитц и Крекет Ли, четвертое издание, Санкт-Питербург 2002.
> издательство: Символ-Плюс


В этой статье я постараюсь поверхностно рассказать вам про DNS, а
именно про его защиту, которая надо сказать очень сильно страдает. Я
постараюсь вам рассказать, что такое TSIG и как быстро можно поднять
данный механизм. На сколько профессионально написана данная статья я
не знаю, СУДИТЬ ВАМ, но я старался изложить все как можно коротко и
точно.

Чтобы защитить пользователей от нарушений работы DNS-сервера (к
примеру от несанкционированной отправки кэша крупных DNS-серверов
расположенных по всему миру, заставив их думать, что адресом для имени
"Вася.ру" в действительности является адрес "Катя.ру") необходимо
обеспечить безопасность DNS. Безопасность DNS можно обеспечить
несколькими способами. Можно обеспечить безопасность транзакций -
запросов, ответов и всех прочих сообщений, посылаемых и получаемых
DNS.


Можно задуматься о безопасности от так называемых избирательных
отказов в выполнении запросов, динамических обновлений и передаче
зональных данных - для неавторизованных адресов. Люди которые на
профессиональном уровне сталкивались с обеспечением безопасности
крупных DNS серверов, могут помнить, что в BIND 8.2 появился
принципиально новый механизм обеспечения безопасности для сообщений
DNS, который называется TSIG, в нем используется механизм общих
секретов и вычислительно необратимой хеш - функции для проверки
подлинности DNS сообщений (как правило в ответах и обновлениях). При
настроенном и работающем механизме TSIG DNS-сервер или автор
обновления добавляет TSIG запись в раздел дополнительных данных
сообщения DNS и подтверждает, что отправитель сообщения обладает общим
с получателем криптографическим ключом и что сообщение не изменилось
после того как было отправлено.

TSIG обеспечивает идентификацию и целостность данных посредством
использования специального вида математических формул, эта
хеш-функция известная наверное многим под названием криптографической
контрольной суммы или дайджеста сообщения, вычисляет хеш-значение
фиксированной длины на основе исходных данных произвольного объема.
Чудесность вычислительно необратимой хеш-функции заключается в том,
что она полностью зависит от каждого бита исходных данных. Если
изменить единственный бит исходных данных, хеш значение тоже
измениться.

Я не стану подробно рассматривать синтаксис TSIG записи, поскольку
нам нет необходимости его знать. TSIG-это мета запись, которая никогда
не отображается в данных зоны и никогда не кэшируется сервером и
клиентом. Отправитель сообщения DNS подписывает его с помощью TSIG
записи, а получатель удаляет и проверяет запись, прежде, чем выполнить
какие либо действия, например, кэширование данных сообщения.

Следует знать, что TSIG запись содержит хэш значение, вычисленного для
полного сообщения DNS (для начинающих администраторов хочу сказать,
что "вычисленное для" имеется в виду, что сообщение DNS в двоичном
формате и дополнительные поля (понятно какие ? (для особо одаренных))
обрабатываются алгоритмом HMAC-MD5 с целью получения хэш значения).

Хэш значения модифицируется по ключу, который является общим секретом
отправителя и получателя. К примеру дополнительные поля TSIG записи
включают время подписи сообщения DNS. Это позволяет отображать (мои
любимые) атаки повторного воспроизведения (replay attacks), суть этих
простых действий заключается в том, что хакер перехватывает
авторизованную транзакцию с подписью (например, динамическое
обновление, или удаление "важной" RR записи) и воспроизводит ее позже.
Получатель подписного сообщения DNS проверяет время подписи, чтобы
убедиться, что это время находиться в пределах допустимого (это время
определяется в отдельных полях TSIG).

Прежде чем начинать использовать TSIG для идентификации, необходимо
создать один или несколько TSIG ключей для сторон обменивающихся
данными.К примеру, если необходимо с помощью TSIG обезопасить передачу
зоны с DNS мастер-сервера, daun.ru на вторичный, следует настроить оба
сервера на использование общего ключа:

key ny-ti.daun.ru. {
algoritm hmac-md5;
secret "a5fds6af/FfjhfF86==";
};


ny-ti.daun.ru аргумент оператора key в приведенном примере (вот-вот)
является в действительности именем ключа. Помните, что очень важно,
чтобы имя ключа, а не только двоичные данные ключа - было одинаковым
для обеих сторон, участвующих в транзакциях. В противном случае
получатель в попытке проверить TSIG запись обнаружит, что ничего не
знает о ключе который тут упоминается и был использован для вычисления
хэш значения. Вся эта ... приводит к получению Даун - ошибки:

Nov 10 00:00:00 ny-ti named-xfer[20252]: SOA TSIG verification from server
[xxx.xxx.xxx.xxx], zone daun.ru: message had BADKEY set (17)


В настоящие время значение алгоритма всегда hmac-md5. Секрет
представляет собой ключ в кодировки (я думаю некоторым известной)
Base64, созданной с помощью программы dnssec-keygen, которая как вы
могли догадаться входит в состав BIND 9, или dnskeygen в BIND8. Вот
пример создания ключа с помощью dnssec-keygen

# dns-keygen -a HMAK-MD5 -b 128 -n HOST ny-ti.daun.ru.


dnssec-keygen и dnskeygen создают в своих рабочих каталогах файлы,
содержащие созданные ключи. dnssec-keygen печатает основу имен файлов
на стандартный вывод. В приведенном выше примере, были созданы файлы
ny-ti.daun.ru.+141+29664.key и ny-ti.daun.ru. +141+29664.private. Ключ
можно извлечь из любого файла. Если вас интересует, что это за цифры,
то скажу вам, что это не номера телефонов, а номера алгоритма DNSSEC
для ключа (141 соответствует алгоритму HMAC-MD5) и карта (fingerprint)
ключа 29664. Карта ключа абсолютно без полезна в контексте TSIG, но в
DNSSEC реализована поддержка нескольких ключей для зоны, поэтому важно
иметь возможность идентифицировать ключ по его карте. К примеру файл
ny-ti.daun.ru.+141+29664.key содержит строку:

ny-ti.daun.ru. IN KEY 545 4 141 asdhjKf/faTghjfv73H==


и пример файла ti.daun.ru. +141+29664.private.

Private-key-format: v1.2
Algorithm: 141 (HMAC-MD5)
Key: asdhjKf/faTghjfv73H==


Ну а в конце концов можно просто выбрать свой собственный ключ, и
перекодировать его с помощью софтины "mmencode" вот пример:

mmencode
mydilkin
Zm9FcdHdgm3


Существует проблема, которая крайне часта встречается при
использовании TSIG (ну и конечно опытные админы bind'a догадались,
если вы себя таким считаете и не смогли сразу понять, что это за
проблема, то вы ...). А проблема эта очень простая, синхронизация
времени, отметка времени в TSIG записи крайне полезна для
предотвращения атак, основанных на воспроизведении, но
работоспособность этого свойства изначально уменьшается тем фактом,
что часы DNS не синхронизированы. Это приводит к получению таких
ерроров:

Nov 10 00.00.00 ny-ti named-xfer[20252]: SOA TSIG verification from server
[xxx.xxx.xxx.xxx], zone daun.ru: BADTIME (-14)


Ну ведь мы с вами просто супер админы, и в момент избавляемся от этой
... простым использованием NTP.

Урааааа, теперь, после того как я вам рассказал, что это такое за
TSIG, можно переходить к его использованию, а именно мы с вами сейчас
настроим наши серверы на практическое применение этих ключей. Основой
настройки является предписание keys инструкции server, которое
сообщает DNS серверу, что ему нужно подписывать обычные запросы и
запросы на передачу зоны, направляемые определенному удаленному DNS
серверу. К примеру все делается очень просто, наша задача состоит в
том, что DNS ny-ti.daun.ru будит подписывать все запросы идущие на
xxx.xxx.xxx.xxx polniy.daun.ru

server xxx.xxx.xxx.xxx {
keys { polniy.daun.ru. ; };
};


на узле polniy.daun.ru мы можем очень просто ограничить передачу зоны
до пакетов, подписанных ключом polniy.daun.ru, вот пример

zone "daun.ru" {
type master;
file "db.daun.ru";
allow-transfer { key polniy.daun.ru. ;
};
};


Ну и конечно существует возможность ограничить динамические обновления
с помощью TSIG, используя предписание allow-update и update-policy (я
надеюсь, что вы знаете как это делать, !вы ведь суп. админы!).
Программы nsupdate, которые входят в состав bind'a поддерживают
посылку динамических обновлений с TSIG записями. Если ключевые файлы,
созданные софтиной dnssec-keygen все еще у вас существуют, имя любого
из них можно указать в качестве аргумента ключа -k

nsupdate -k ny-ti.daun.ru.+141+29664.key


или

nsupdate -k ny-ti.daun.ru.+141+29664.private


Если файлов под рукой нет, можно указать все параметры прямо в
командной строке

nsupdate -y ny-ti.daun.ru. : asdhjKf/faTghjfv73H==


Ну вот это и все, что я хотел вам сказать (рассказать), если стать
подобного рода будет востребована вами, то я могу написать и на другие
темы.
992 Прочтений •  [Защита DNS используя механизм TSIG (dns security)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Защита DNS используя механизм TSIG ... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка