SlideShare a Scribd company logo
Безопасность DNS
Филипп Кулин
2
Откиньтесь на спинку кресла
Knot 3.0+
ppa:cz.nic-labs/knot-dns-latest
knot-dnsutils
copr @cznic/knot-dns-latest
knot-utils
ISC BIND 9.17.11+
ppa:isc/bind-dev
bind9-dnsutils
copr isc/bind-dev
isc-bind-bind-utils
docker cznic/knot:latest
• Эта презентация сделана с помощью L
A
TEX
• Я расскажу страшную сказку про DNS
3
DNS — всему голова
• Жизнь пользователей в сети
• Запросы к API, работа с CDN
• Облака, микросервисы, автообнаружение и
конфигурация
• Невообразимое количество всего
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
• MySQL определяет домен для подключившегося IP
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
• MySQL определяет домен для подключившегося IP
• Apache определяет домен для подключившегося IP
даже если HostnameLookups Off, но есть Require
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
• MySQL определяет домен для подключившегося IP
• Apache определяет домен для подключившегося IP
даже если HostnameLookups Off, но есть Require
• Microsoft Windows постоянно шлёт DNS Update в
сеть
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
• MySQL определяет домен для подключившегося IP
• Apache определяет домен для подключившегося IP
даже если HostnameLookups Off, но есть Require
• Microsoft Windows постоянно шлёт DNS Update в
сеть
• Docker, Kubernetes, etc…
4
Тайная жизнь привычных программ
• SSHD определяет домен для подключившегося IP
и этот факт является одним из источников седых волос у админов
• MySQL определяет домен для подключившегося IP
• Apache определяет домен для подключившегося IP
даже если HostnameLookups Off, но есть Require
• Microsoft Windows постоянно шлёт DNS Update в
сеть
• Docker, Kubernetes, etc…
• Запустите tcpdump/WireShark
5
DNS — это просто?
Три каверзных вопроса:
• Каков максимальный размер доменного имени?
• Точку на конце надо ставить?
• Что именно спрашивает ресолвер, и что отвечают
DNS-сервера при рекурсивном обходе?
6
Как устроен DNS
7
Особенности классического DNS
• UDP-транспорт. Нет соединения
• Нет идентификации серверов DNS
• Нет контроля данных
• Нет шифрования
• Мало что изменилось с тех пор
8
Угорозы в системе DNS
9
Заложенная в DNS безопасность
9
Заложенная в DNS безопасность
“… действия, которые с современной точки зрения
могут показаться неправильными или ошибочными,
часто оказывались естественным следствием
господствовавшего в те времена понимания тех или
иных вещей, а также ограниченности доступных
ресурсов.“
— Брайан Керниган²⁶
10
Основные проблемы
• Подделка
• Прослушка
11
Основные проблемы. Подделка
• Отравление, подмена
• Взлом серверов и замена записей
• Поддельные серверы, BGP-hijacking
• Атака на Route53 в апреле 2018 года²³
www.internetsociety.org/blog/2018/04/amazons-route-53-bgp-hijack/
• Госрегулирование
• Блокировка сайтов в Европе и России
dig +short @a.res-nsdi.ru. rutracker.org A
12
Основные проблемы. Прослушка
• Реклама, сбор статистики, что-то ещё²⁴
en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs
• Шпионаж и промышленный шпионаж
• RFC7626: 73.1% могут быть узнаны по слепку DNS²⁷
12
Основные проблемы. Прослушка
• Реклама, сбор статистики, что-то ещё²⁴
en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs
• Шпионаж и промышленный шпионаж
• … с использованием госрегулирования
• RFC7626: 73.1% могут быть узнаны по слепку DNS²⁷
• Госрегулирование
• Помощь в оперативной блокировке²⁵
usher2.club/articles/mt-free-pre-block/
13
А так ли страшен чёрт?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
• Ваш сетевой периметр защищен? Точно?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
• Ваш сетевой периметр защищен? Точно?
• Ваша сеть получает подписанные маршруты?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
• Ваш сетевой периметр защищен? Точно?
• Ваша сеть получает подписанные маршруты?
• Вы ведете журнал странных анонсов?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
• Ваш сетевой периметр защищен? Точно?
• Ваша сеть получает подписанные маршруты?
• Вы ведете журнал странных анонсов?
• Ваши сервисы проверяют сертификат соединения?
13
А так ли страшен чёрт?
• Вы знаете, кто, когда и как использует какой DNS?
• Ваш сетевой периметр защищен? Точно?
• Ваша сеть получает подписанные маршруты?
• Вы ведете журнал странных анонсов?
• Ваши сервисы проверяют сертификат соединения?
• Однако, современные взломы чаще основаны на
бардаке
14
Защита от подделки
• Не «взлетевший» DNSCurve
• Расширение DNSSEC
15
DNSCurve
Концепция
• Аутентификация авторитативного DNS-сервера
• Защита обмена между ресолвером и
авторитативным сервером
Принцип действия
• Публичный ключ DNS-сервера с магическим
префиксом ”uz5” в NS-записи домена:
uz5qry75vfy162c239jgx7v2knkwb01g3d04qd4379s6mtcx2f0828.dnscurve.io
• Обмен с DNS-сервером шифруется
16
DNSCurve. Особенности
• Не меняет саму спецификацию DNS
• Основан на вере в целостность системы
• Не предусмотрена замена ключа
• Зависит от источника ответа
• Внедрение практически отсутствует
17
DNSSEC
• Концепция
• Источник записи неважен. Используя
доверенный корневой ключ, возможно
проверить любую подписанную запись
• Принцип действия
• Записи зоны подписаны ключом зоны
• Подтверждения подписи выстраиваются в
цепочку доверия
18
DNSSEC. Принцип действия
Подпись зоны
18
DNSSEC. Принцип действия
Подпись зоны Цепочка доверия
19
DNSSEC. Особенности
• Источник ответа неважен
• Требует аккуратности и непрерывного
обслуживания даже в статическом состоянии
• Требует стартовых настроек клиента
требуются актуальные корневые ключи
• Сложные реализации «отрицательного ответа»
• Большой размер ответа
• Крайне слабая глубина внедрения
• Это единственный вариант в этой категории
20
DNSSEC. Настройка клиентов
• Прозрачная проверка
Потребитель получает фильтрованные ответы
• Явная проверка
Потребитель явно указывает ресолверу, что хочет получить
проверенный результат. Проверяет флаги ответа
• Усиленная проверка
Потребитель проверяет подписи сам
delv @8.8.8.8 dxdt.ru A
21
DNSSEC. Must have
• Подпишите свои домены
• CoreDNS и Knot DNS — отличные реализации
21
DNSSEC. Must have
• Подпишите свои домены
• CoreDNS и Knot DNS — отличные реализации
• Настройте ваши ресолверы на проверку DNSSEC
• CoreDNS не умеет проверять DNSSEC
• systemd-resolved, unbound, Knot Resolver —
умеют
22
DNSSEC. Вкусняшка SSHFP
SSH Fingerprint
• Запись SSHFP содержит хэш публичного ключа
хоста
• На клиенте /.ssh/config: VerifyHostKeyDNS yes
• На сервере ssh-keygen -R ‘hostname‘
• Не надо все алгоритмы, не тяните за собой легаси
• Работает только с DNSSEC
• RFC 4255 — SSH Fingerprint⁷
23
Защита от прослушки DNS
Шифрование сообщений
• DNSCrypt
23
Защита от прослушки DNS
Шифрование сообщений
• DNSCrypt
Защищенный канал
• DNS-over-HTTPS Google API
• DNS-over-TLS
• DNS-over-HTTP/2
• DNS-over-QUIC
23
Защита от прослушки DNS
Шифрование сообщений
• DNSCrypt
Защищенный канал
• DNS-over-HTTPS Google API
• DNS-over-TLS
• DNS-over-HTTP/2
• DNS-over-QUIC
Заметание следов
• Минимизация QNAME при запросах
• EDNS0 Client subnets
24
DNSCrypt
Принцип действия
• Настройка мастер-ключа и имени сервера
• Получение «короткого» ключа и сертификата
• Запросы к серверу, идентичные DNSCurve
dig @77.88.8.78 -p 15353 2.dnscrypt-cert.browser.yandex.net. 
-t TXT +short
25
DNSCrypt. Особенности
• Не меняет спецификацию DNS
• Нет ни RFC, ни Draft. Только спецификация на сайте
• Не предусмотрена замена мастер-ключа
• Заметное количество программ
• Нет автообнаружения
• Не «взлетел»
26
DNS-over-HTTPS (Google API)
Google предоставляет JSON-API к DNS
Страница с описанием:
https://developers.google.com/speed/public-dns/docs/dns-over-https
Массово используется для веб-приложений
curl -H ’accept: application/dns-json’ 
’https://dns.google/resolve?name=example.com’ | jq
curl -H ’accept: application/dns-json’ 
’https://cloudflare-dns.com/dns-query?name=example.com’ | jq
27
DNS-over-TLS (DoT)
• Устанавливается защищенное TLS-соединение
(порт 853)
• Внутри соединения – стандартный DNS-протокол
• Самая простая инсталляция – проксирование nginx через
ngx_stream_ssl_module на обычный DNS
kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1
dig +tls @1.1.1.1 highload.ru
27
DNS-over-TLS (DoT)
• Устанавливается защищенное TLS-соединение
(порт 853)
• Внутри соединения – стандартный DNS-протокол
• Самая простая инсталляция – проксирование nginx через
ngx_stream_ssl_module на обычный DNS
kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1
dig +tls @1.1.1.1 highload.ru
• А есть ещё DNS-over-DTLS…
27
DNS-over-TLS (DoT)
• Устанавливается защищенное TLS-соединение
(порт 853)
• Внутри соединения – стандартный DNS-протокол
• Самая простая инсталляция – проксирование nginx через
ngx_stream_ssl_module на обычный DNS
kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1
dig +tls @1.1.1.1 highload.ru
• А есть ещё DNS-over-DTLS…
• … и DNS-over-QUIC…
28
DNS-over-TLS (DoT). Особенности
• Не меняет спецификацию DNS
• Требует установки TLS-соединения (дорого)
• Требует стартовых настроек клиента
требует «бутстрапа» имени сервера
• Нет автообнаружения
• Специальный 853 порт
29
DNS-over-HTTPS (DoH)
• Защищенным транспортом является обычный
HTTP/2
• Запросы/ответы — стандартные DNS-пакеты
• Формируется специальный HTTP-запрос
• GET — DNS-пакет кодируется в параметр
• POST — DNS-пакет в application/dns-message
kdig +https @8.8.8.8 highload.ru # попробуйте 195.208.4.1
dig +https @1.1.1.1 highload.ru
30
DNS-over-HTTPS (DoH). Особенности
• Не меняет спецификацию DNS
• Требует установки HTTP/2-соединения (дорого)
• Требует стартовых настроек клиента
требует «бутстрапа» имени сервера
• Нет автообнаружения
• Не сильно выделяется в HTTP-трафике
31
Защита. Must have
• Локальные кэши в каждом периметре
• NodeLocal DNSCache в Kubernetes
• systemd-resolved, unbound, Knot Resolver
• DoT/DoH через недоверенные сети
особенно локальные домены
• Агрегирующие DoT/DoH-ресолверы
32
Защита канала. Вот незадача
33
Минимизация QNAME
34
EDNS Client subnet
Это расширение DNS
• Добавляет в запрос подсеть клиента
• Например, для геобалансинга
Поддержка
• Google DNS принципиально да
dig +short @8.8.8.8 -t TXT o-o.myaddr.l.google.com
• Cloudflare DNS принципиально нет
dig +short @1.1.1.1 -t TXT o-o.myaddr.l.google.com
35
Известные сервисы отладки
• whoami.akamai.net A
• whoami.akamai.net AAAA
• o-o.myaddr.l.google.com TXT
• whoami.cloudflare.com TXT
• whoami.ipv6.akahelp.net TXT
• whoami.ipv4.akahelp.net TXT
• whoami.ds.akahelp.net TXT
36
Настройка локальных кэшей
• Включение/выключение QNAME
• Манипуляции с Client subnet
37
Реакционизм. Подделка
• Не позволяет подставлять «свой» ответ
• Противоречит корпоративным политикам
• Мешает спецслужбам проводить спецоперации
• Переусложненное обслуживание приводит к
ошибкам
38
Реакционизм. Прослушка
• Не позволяет анализировать DNS-запросы
• Нарушает корпоративные стандарты
безопасности
• Мешает приложениям защиты отслеживать
действия браузера
• Создаёт видимость безопасности
38
Реакционизм. Прослушка
• Не позволяет анализировать DNS-запросы
• Нарушает корпоративные стандарты
безопасности
• Мешает приложениям защиты отслеживать
действия браузера
• Создаёт видимость безопасности
• Дополнительная нагрузка
• Цикл получения ответа неприемлемо долгий
39
Реакционизм. Гоcрегулирование
• Давление UK ISPA и IWF
www.opennet.ru/opennews/art.shtml?num=51046
• Большинство «госблокировок» в мире основано на манипуляциях с DNS
40
Национальная система доменных имен
41
Госрегулирование РФ. НСДИ
Национальная система доменных имен
• Определена в законе 90-ФЗ от 01.05.2019
Приказ Роскомнадзора от 31.07.2019 № 229
• Государственный публичный DNS
• Дублирует . (корень)
• Уменьшает ущерб от манипуляций с .RU
гипотетических, со стороны США в лице ICANN
• Обслуживается ЦМУ ССОП
• Предоставляется в том числе AXFR
42
Заложенная в НСДИ безопасность
42
Заложенная в НСДИ безопасность
43
Держитесь подальше
от торфяных болот
• DNS таит в себе множество угроз
• Не используйте DNS для всего на свете
• Избегайте использования DNS
43
Держитесь подальше
от торфяных болот
• DNS таит в себе множество угроз
• Не используйте DNS для всего на свете
• Избегайте использования DNS
когда есть специализированные сервисы
44
Многое осталось за кадром
• EDNS(0) Padding, Cookies, etc…
• Обслуживание DNS, DNSSEC, DoT/DoH
• Применение DNSSEC: DANE, etc…
• Обзор серверов, включая stub-ресолверы
• Обзор клиентов и инструментов
• DNS Stamps (ссылки sdna://)
• glibc и resolv.conf
• Ampliphication attack, etc…
• …
45
Вопросы
В любом случае пишите мне
schors@gmail.com
46
Ссылки. DNSCurve и DNSCrypt
[1] DNSCurve.io ‐ A Community for DNSCurve. Основной сайт DNSCurve. https://dnscurve.io/.
[2] M. Dempsky. Link‐Level Security for the Domain Name System. 26 февр. 2010.
https://datatracker.ietf.org/doc/html/draft-dempsky-dnscurve-01.
[3] Dq is a package with DNS/DNSCurve related software. https://mojzis.com/software/dq/.
[4] World’s fastest‐to‐synchronize Secondary DNS service. Единственный известный DNS‐сервис с поддержкой
DNSCurve. https://www.buddyns.com/.
[5] DNSCrypt version 2 protocol specification. https://dnscrypt.info/protocol/.
[6] dnscrypt‐proxy. https://github.com/DNSCrypt/dnscrypt-proxy.
47
Ссылки. DNSSEC
[7] RFC 4255. Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints. Янв. 2006.
https://datatracker.ietf.org/doc/html/rfc4255.
[8] Визуализация DNSSEC. http://dnsviz.net/.
[9] Филипп Кулин. DNSSEC. Руководство регистратора доменов. Дек. 2016.
https://www.slideshare.net/schors/dnssec-71055077.
[10] Филипп Кулин. DNSSEC. Руководство оператора доменов. Окт. 2017.
https://www.slideshare.net/schors/enog14-dnssec.
[11] RFC 4033. Введение в DNSSEC. Март 2005. https://tools.ietf.org/html/rfc4033.
[12] RFC 4034. Ресурсные записи для DNSSEC. Март 2005. https://tools.ietf.org/html/rfc4034.
[13] RFC 4035. Модификации протокола DNS для DNSSEC. Март 2005.
https://tools.ietf.org/html/rfc4035.
[14] RFC 6781. Эксплуатация DNSSEC. Дек. 2012. https://tools.ietf.org/html/rfc6781.
[15] RFC 7583. Соображения по ротации ключей DNSSEC. Окт. 2015.
https://tools.ietf.org/html/rfc7583.
[16] RFC 7129. Authenticated Denial of Existence in the DNS. Определение белой лжи. Февр. 2014.
https://datatracker.ietf.org/doc/html/rfc7129.
[17] Dani Grant (Cloudflare). Economical With The Truth: Making DNSSEC Answers Cheap. Определение черной лжи.
24 июня 2016. https://blog.cloudflare.com/black-lies/.
48
Ссылки. DoH/Dot
[18] RFC 7858. Specification for DNS over Transport Layer Security (TLS). Май 2016.
https://datatracker.ietf.org/doc/html/rfc7858.
[19] RFC 8310. Usage Profiles for DNS over TLS and DNS over DTLS. Март 2018.
https://datatracker.ietf.org/doc/html/rfc8310.
[20] RFC 8484. DNS Queries over HTTPS (DoH). Окт. 2018.
https://datatracker.ietf.org/doc/html/rfc8484.
[21] Specification of DNS over Dedicated QUIC Connections. draft‐huitema‐dprive‐dnsoquic‐00. Май 2020.
https://datatracker.ietf.org/doc/html/draft-huitema-dprive-dnsoquic.
[22] Experimental DNS‐over‐TLS Auto‐discovery. https://github.com/CZ-NIC/knot-resolver/tree/
c8cb9740f8ebd34219c7d860106969fcbb6c7bf6/modules/experimental_dot_auth.
49
Ссылки. Инциденты
[23] Aftab Siddiqui. What Happened? The Amazon Route 53 BGP Hijack to Take Over Ethereum Cryptocurrency Wallets.
27 апр. 2018.
https://www.internetsociety.org/blog/2018/04/amazons-route-53-bgp-hijack/.
[24] Wikipedia. DNS hijacking. Manipulation by ISPs.
https://en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs.
[25] Леонид Евдокимов. Тайный список запрещённых ресурсов. 25 сент. 2018.
https://usher2.club/articles/mt-free-pre-block/.
50
Ссылки. Разное
[26] Brian Kernighan. UNIX: A History and a Memoir. 18 окт. 2019.
[27] RFC 7816. DNS Query Name Minimisation to Improve Privacy. Март 2016.
https://datatracker.ietf.org/doc/html/rfc7816.
[28] RFC 7871. EDNS(0) Client Subnet. Май 2016. https://datatracker.ietf.org/doc/html/rfc7871.
[29] RFC 4892. Requirements for a Mechanism Identifying a Name Server Instance. Июнь 2007.
https://datatracker.ietf.org/doc/html/rfc4892.
[30] Google Public DNS. Troubleshooting.
https://developers.google.com/speed/public-dns/docs/troubleshooting.
[31] Have problems with 1.1.1.1? *Read Me First*. https://community.cloudflare.com/t/have-
problems-with-1-1-1-1-read-me-first/15902.
[32] Introducing a New whoami Tool for DNS Resolver Information.
https://developer.akamai.com/blog/2018/05/10/introducing-new-whoami-tool-dns-
resolver-information.
51
Ссылки. L
A
TEX
[33] Beamer ‐ Overleaf, Online LaTeX Editor. https://www.overleaf.com/learn/latex/Beamer.
[34] Uri Nativ. How to present code. 2016. https://www.slideshare.net/LookAtMySlides/codeware.
[35] Филипп Кулин. Пишем презентации в LaTeX. 14 окт. 2019. https://habr.com/ru/post/471352/.

More Related Content

What's hot

Андрей Лескин, QratorLabs/HLL
Андрей Лескин, QratorLabs/HLLАндрей Лескин, QratorLabs/HLL
Андрей Лескин, QratorLabs/HLL
Ontico
 
DDoS как актуальная проблема безопасности
DDoS как актуальная проблема безопасностиDDoS как актуальная проблема безопасности
DDoS как актуальная проблема безопасности
Qrator Labs
 
Защищаем сеть от DDoS-атак
Защищаем сеть от DDoS-атакЗащищаем сеть от DDoS-атак
Защищаем сеть от DDoS-атак
SkillFactory
 
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.orgЗащита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
IT61
 
DDoS-­атаки: почему они возможны, и как их предотвращать
 DDoS-­атаки: почему они возможны, и как их предотвращать DDoS-­атаки: почему они возможны, и как их предотвращать
DDoS-­атаки: почему они возможны, и как их предотвращать
Qrator Labs
 
UDP Amplifiers на примере DNS и способы противодействия
UDP Amplifiers на примере DNS и способы противодействияUDP Amplifiers на примере DNS и способы противодействия
UDP Amplifiers на примере DNS и способы противодействия
Andrey Leskin
 
HighLoad весна 2014 лекция 2
HighLoad весна 2014 лекция 2HighLoad весна 2014 лекция 2
HighLoad весна 2014 лекция 2
Technopark
 
HighLoad весна 2014 лекция 6
HighLoad весна 2014 лекция 6HighLoad весна 2014 лекция 6
HighLoad весна 2014 лекция 6
Technopark
 
Dyn DNS story
Dyn DNS storyDyn DNS story
Dyn DNS story
Ilya Siganov
 
Secure data transfer (безопасная передача данных)
Secure data transfer (безопасная передача данных)Secure data transfer (безопасная передача данных)
Secure data transfer (безопасная передача данных)
Acceptic
 
DNSSEC
DNSSECDNSSEC
HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3
Technopark
 
HighLoad весна 2014 лекция 5
HighLoad весна 2014 лекция 5HighLoad весна 2014 лекция 5
HighLoad весна 2014 лекция 5
Technopark
 
Современные методы защиты от DDoS атак
Современные методы защиты от DDoS атакСовременные методы защиты от DDoS атак
Современные методы защиты от DDoS атак
SkillFactory
 
Как получить максимум от сетевого экрана Cisco ASA?
Как получить максимум от сетевого экрана Cisco ASA?Как получить максимум от сетевого экрана Cisco ASA?
Как получить максимум от сетевого экрана Cisco ASA?
SkillFactory
 
Новые вызовы кибербезопасности
Новые вызовы кибербезопасностиНовые вызовы кибербезопасности
Новые вызовы кибербезопасности
Cisco Russia
 
Марина Широчкина: Верстка. Вид снизу
Марина Широчкина: Верстка. Вид снизуМарина Широчкина: Верстка. Вид снизу
Марина Широчкина: Верстка. Вид снизу
Yandex
 
Вебинар "Дизайн и архитектура UCCE Live Data"
Вебинар "Дизайн и архитектура UCCE Live Data"Вебинар "Дизайн и архитектура UCCE Live Data"
Вебинар "Дизайн и архитектура UCCE Live Data"
Cisco Russia
 
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системахDrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
DrupalSPB
 

What's hot (20)

Андрей Лескин, QratorLabs/HLL
Андрей Лескин, QratorLabs/HLLАндрей Лескин, QratorLabs/HLL
Андрей Лескин, QratorLabs/HLL
 
DDoS как актуальная проблема безопасности
DDoS как актуальная проблема безопасностиDDoS как актуальная проблема безопасности
DDoS как актуальная проблема безопасности
 
Защищаем сеть от DDoS-атак
Защищаем сеть от DDoS-атакЗащищаем сеть от DDoS-атак
Защищаем сеть от DDoS-атак
 
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.orgЗащита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
Защита веб-ресурса от DDoS-атак на примере нашего клиента - Rutracker.org
 
DDoS-­атаки: почему они возможны, и как их предотвращать
 DDoS-­атаки: почему они возможны, и как их предотвращать DDoS-­атаки: почему они возможны, и как их предотвращать
DDoS-­атаки: почему они возможны, и как их предотвращать
 
Ddos
DdosDdos
Ddos
 
UDP Amplifiers на примере DNS и способы противодействия
UDP Amplifiers на примере DNS и способы противодействияUDP Amplifiers на примере DNS и способы противодействия
UDP Amplifiers на примере DNS и способы противодействия
 
HighLoad весна 2014 лекция 2
HighLoad весна 2014 лекция 2HighLoad весна 2014 лекция 2
HighLoad весна 2014 лекция 2
 
HighLoad весна 2014 лекция 6
HighLoad весна 2014 лекция 6HighLoad весна 2014 лекция 6
HighLoad весна 2014 лекция 6
 
Dyn DNS story
Dyn DNS storyDyn DNS story
Dyn DNS story
 
Secure data transfer (безопасная передача данных)
Secure data transfer (безопасная передача данных)Secure data transfer (безопасная передача данных)
Secure data transfer (безопасная передача данных)
 
DNSSEC
DNSSECDNSSEC
DNSSEC
 
HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3
 
HighLoad весна 2014 лекция 5
HighLoad весна 2014 лекция 5HighLoad весна 2014 лекция 5
HighLoad весна 2014 лекция 5
 
Современные методы защиты от DDoS атак
Современные методы защиты от DDoS атакСовременные методы защиты от DDoS атак
Современные методы защиты от DDoS атак
 
Как получить максимум от сетевого экрана Cisco ASA?
Как получить максимум от сетевого экрана Cisco ASA?Как получить максимум от сетевого экрана Cisco ASA?
Как получить максимум от сетевого экрана Cisco ASA?
 
Новые вызовы кибербезопасности
Новые вызовы кибербезопасностиНовые вызовы кибербезопасности
Новые вызовы кибербезопасности
 
Марина Широчкина: Верстка. Вид снизу
Марина Широчкина: Верстка. Вид снизуМарина Широчкина: Верстка. Вид снизу
Марина Широчкина: Верстка. Вид снизу
 
Вебинар "Дизайн и архитектура UCCE Live Data"
Вебинар "Дизайн и архитектура UCCE Live Data"Вебинар "Дизайн и архитектура UCCE Live Data"
Вебинар "Дизайн и архитектура UCCE Live Data"
 
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системахDrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
DrupalCafe #1: Екатерина Маршалкина - Права на файлы Drupal в Unix-системах
 

Similar to A popular DNS security overview

Учет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сетиУчет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сети
Cisco Russia
 
Учет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сетиУчет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сети
Cisco Russia
 
Dnssec in UA - Talk at UAdom 2011
Dnssec in UA - Talk at UAdom 2011Dnssec in UA - Talk at UAdom 2011
Dnssec in UA - Talk at UAdom 2011
Dmitry Kohmanyuk
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Ontico
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
Ontico
 
Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"
Tanya Denisyuk
 
Евгений Потапов, АйТиСумма
Евгений Потапов, АйТиСуммаЕвгений Потапов, АйТиСумма
Евгений Потапов, АйТиСумма
Ontico
 
Rootconf2016 nginx-lua-balancing
Rootconf2016 nginx-lua-balancingRootconf2016 nginx-lua-balancing
Rootconf2016 nginx-lua-balancing
Andrey Kononov
 
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
Ontico
 
Обзор решения Cisco для управления пространством IP адресов
Обзор решения Cisco для управления пространством IP адресовОбзор решения Cisco для управления пространством IP адресов
Обзор решения Cisco для управления пространством IP адресов
Cisco Russia
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012
Roman Pavlushko
 
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Ontico
 
Балансировка нагрузки и отказоустойчивость в Одноклассниках
Балансировка нагрузки и отказоустойчивость в ОдноклассникахБалансировка нагрузки и отказоустойчивость в Одноклассниках
Балансировка нагрузки и отказоустойчивость в Одноклассниках
Ontico
 
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
Dmitry Lazarenko
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
Alex Chistyakov
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Ontico
 
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
Ontico
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?
Vadim Madison
 
Как мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerКак мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows Docker
Positive Hack Days
 
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯDDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
StormWall.pro
 

Similar to A popular DNS security overview (20)

Учет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сетиУчет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сети
 
Учет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сетиУчет и управление IP-ресурсами сети
Учет и управление IP-ресурсами сети
 
Dnssec in UA - Talk at UAdom 2011
Dnssec in UA - Talk at UAdom 2011Dnssec in UA - Talk at UAdom 2011
Dnssec in UA - Talk at UAdom 2011
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
 
Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"
 
Евгений Потапов, АйТиСумма
Евгений Потапов, АйТиСуммаЕвгений Потапов, АйТиСумма
Евгений Потапов, АйТиСумма
 
Rootconf2016 nginx-lua-balancing
Rootconf2016 nginx-lua-balancingRootconf2016 nginx-lua-balancing
Rootconf2016 nginx-lua-balancing
 
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
 
Обзор решения Cisco для управления пространством IP адресов
Обзор решения Cisco для управления пространством IP адресовОбзор решения Cisco для управления пространством IP адресов
Обзор решения Cisco для управления пространством IP адресов
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012
 
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
 
Балансировка нагрузки и отказоустойчивость в Одноклассниках
Балансировка нагрузки и отказоустойчивость в ОдноклассникахБалансировка нагрузки и отказоустойчивость в Одноклассниках
Балансировка нагрузки и отказоустойчивость в Одноклассниках
 
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
Высокая доступность приложений в гибридном облаке на базе Jelastic и Azure Tr...
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
Чему мы научились, разрабатывая микросервисы / Вадим Мадисон (RuTube)
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?
 
Как мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerКак мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows Docker
 
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯDDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
DDOS-АТАКИ: ЧТО ЭТО И КАК С НИМИ БОРОТЬСЯ
 

More from Philipp Kulin

Разбор и сравнение данных в большом XML на маленькой VDS
Разбор и сравнение данных в большом XML на маленькой VDSРазбор и сравнение данных в большом XML на маленькой VDS
Разбор и сравнение данных в большом XML на маленькой VDS
Philipp Kulin
 
ENOG-14. Руководство оператора DNSSEC
ENOG-14. Руководство оператора DNSSECENOG-14. Руководство оператора DNSSEC
ENOG-14. Руководство оператора DNSSEC
Philipp Kulin
 
ENOG-14. Ограничение доступа в России
ENOG-14. Ограничение доступа в РоссииENOG-14. Ограничение доступа в России
ENOG-14. Ограничение доступа в России
Philipp Kulin
 
Опыт использования IPv6 год спустя
Опыт использования IPv6 год спустяОпыт использования IPv6 год спустя
Опыт использования IPv6 год спустя
Philipp Kulin
 
Как взломать WordPress/Joomla за 5 минут
Как взломать WordPress/Joomla за 5 минутКак взломать WordPress/Joomla за 5 минут
Как взломать WordPress/Joomla за 5 минут
Philipp Kulin
 
Опыт внедрения IPv6 и статистика
Опыт внедрения IPv6 и статистикаОпыт внедрения IPv6 и статистика
Опыт внедрения IPv6 и статистика
Philipp Kulin
 
Внедрение IPv6
Внедрение IPv6Внедрение IPv6
Внедрение IPv6
Philipp Kulin
 
Хостинг-провайдер и противоправный контент
Хостинг-провайдер и противоправный контентХостинг-провайдер и противоправный контент
Хостинг-провайдер и противоправный контент
Philipp Kulin
 
перспективы черного списка
перспективы черного спискаперспективы черного списка
перспективы черного списка
Philipp Kulin
 

More from Philipp Kulin (9)

Разбор и сравнение данных в большом XML на маленькой VDS
Разбор и сравнение данных в большом XML на маленькой VDSРазбор и сравнение данных в большом XML на маленькой VDS
Разбор и сравнение данных в большом XML на маленькой VDS
 
ENOG-14. Руководство оператора DNSSEC
ENOG-14. Руководство оператора DNSSECENOG-14. Руководство оператора DNSSEC
ENOG-14. Руководство оператора DNSSEC
 
ENOG-14. Ограничение доступа в России
ENOG-14. Ограничение доступа в РоссииENOG-14. Ограничение доступа в России
ENOG-14. Ограничение доступа в России
 
Опыт использования IPv6 год спустя
Опыт использования IPv6 год спустяОпыт использования IPv6 год спустя
Опыт использования IPv6 год спустя
 
Как взломать WordPress/Joomla за 5 минут
Как взломать WordPress/Joomla за 5 минутКак взломать WordPress/Joomla за 5 минут
Как взломать WordPress/Joomla за 5 минут
 
Опыт внедрения IPv6 и статистика
Опыт внедрения IPv6 и статистикаОпыт внедрения IPv6 и статистика
Опыт внедрения IPv6 и статистика
 
Внедрение IPv6
Внедрение IPv6Внедрение IPv6
Внедрение IPv6
 
Хостинг-провайдер и противоправный контент
Хостинг-провайдер и противоправный контентХостинг-провайдер и противоправный контент
Хостинг-провайдер и противоправный контент
 
перспективы черного списка
перспективы черного спискаперспективы черного списка
перспективы черного списка
 

A popular DNS security overview

  • 2. 2 Откиньтесь на спинку кресла Knot 3.0+ ppa:cz.nic-labs/knot-dns-latest knot-dnsutils copr @cznic/knot-dns-latest knot-utils ISC BIND 9.17.11+ ppa:isc/bind-dev bind9-dnsutils copr isc/bind-dev isc-bind-bind-utils docker cznic/knot:latest • Эта презентация сделана с помощью L A TEX • Я расскажу страшную сказку про DNS
  • 3. 3 DNS — всему голова • Жизнь пользователей в сети • Запросы к API, работа с CDN • Облака, микросервисы, автообнаружение и конфигурация • Невообразимое количество всего
  • 4. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов
  • 5. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов • MySQL определяет домен для подключившегося IP
  • 6. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов • MySQL определяет домен для подключившегося IP • Apache определяет домен для подключившегося IP даже если HostnameLookups Off, но есть Require
  • 7. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов • MySQL определяет домен для подключившегося IP • Apache определяет домен для подключившегося IP даже если HostnameLookups Off, но есть Require • Microsoft Windows постоянно шлёт DNS Update в сеть
  • 8. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов • MySQL определяет домен для подключившегося IP • Apache определяет домен для подключившегося IP даже если HostnameLookups Off, но есть Require • Microsoft Windows постоянно шлёт DNS Update в сеть • Docker, Kubernetes, etc…
  • 9. 4 Тайная жизнь привычных программ • SSHD определяет домен для подключившегося IP и этот факт является одним из источников седых волос у админов • MySQL определяет домен для подключившегося IP • Apache определяет домен для подключившегося IP даже если HostnameLookups Off, но есть Require • Microsoft Windows постоянно шлёт DNS Update в сеть • Docker, Kubernetes, etc… • Запустите tcpdump/WireShark
  • 10. 5 DNS — это просто? Три каверзных вопроса: • Каков максимальный размер доменного имени? • Точку на конце надо ставить? • Что именно спрашивает ресолвер, и что отвечают DNS-сервера при рекурсивном обходе?
  • 12. 7 Особенности классического DNS • UDP-транспорт. Нет соединения • Нет идентификации серверов DNS • Нет контроля данных • Нет шифрования • Мало что изменилось с тех пор
  • 14. 9 Заложенная в DNS безопасность
  • 15. 9 Заложенная в DNS безопасность “… действия, которые с современной точки зрения могут показаться неправильными или ошибочными, часто оказывались естественным следствием господствовавшего в те времена понимания тех или иных вещей, а также ограниченности доступных ресурсов.“ — Брайан Керниган²⁶
  • 17. 11 Основные проблемы. Подделка • Отравление, подмена • Взлом серверов и замена записей • Поддельные серверы, BGP-hijacking • Атака на Route53 в апреле 2018 года²³ www.internetsociety.org/blog/2018/04/amazons-route-53-bgp-hijack/ • Госрегулирование • Блокировка сайтов в Европе и России dig +short @a.res-nsdi.ru. rutracker.org A
  • 18. 12 Основные проблемы. Прослушка • Реклама, сбор статистики, что-то ещё²⁴ en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs • Шпионаж и промышленный шпионаж • RFC7626: 73.1% могут быть узнаны по слепку DNS²⁷
  • 19. 12 Основные проблемы. Прослушка • Реклама, сбор статистики, что-то ещё²⁴ en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs • Шпионаж и промышленный шпионаж • … с использованием госрегулирования • RFC7626: 73.1% могут быть узнаны по слепку DNS²⁷ • Госрегулирование • Помощь в оперативной блокировке²⁵ usher2.club/articles/mt-free-pre-block/
  • 20. 13 А так ли страшен чёрт?
  • 21. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS?
  • 22. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS? • Ваш сетевой периметр защищен? Точно?
  • 23. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS? • Ваш сетевой периметр защищен? Точно? • Ваша сеть получает подписанные маршруты?
  • 24. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS? • Ваш сетевой периметр защищен? Точно? • Ваша сеть получает подписанные маршруты? • Вы ведете журнал странных анонсов?
  • 25. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS? • Ваш сетевой периметр защищен? Точно? • Ваша сеть получает подписанные маршруты? • Вы ведете журнал странных анонсов? • Ваши сервисы проверяют сертификат соединения?
  • 26. 13 А так ли страшен чёрт? • Вы знаете, кто, когда и как использует какой DNS? • Ваш сетевой периметр защищен? Точно? • Ваша сеть получает подписанные маршруты? • Вы ведете журнал странных анонсов? • Ваши сервисы проверяют сертификат соединения? • Однако, современные взломы чаще основаны на бардаке
  • 27. 14 Защита от подделки • Не «взлетевший» DNSCurve • Расширение DNSSEC
  • 28. 15 DNSCurve Концепция • Аутентификация авторитативного DNS-сервера • Защита обмена между ресолвером и авторитативным сервером Принцип действия • Публичный ключ DNS-сервера с магическим префиксом ”uz5” в NS-записи домена: uz5qry75vfy162c239jgx7v2knkwb01g3d04qd4379s6mtcx2f0828.dnscurve.io • Обмен с DNS-сервером шифруется
  • 29. 16 DNSCurve. Особенности • Не меняет саму спецификацию DNS • Основан на вере в целостность системы • Не предусмотрена замена ключа • Зависит от источника ответа • Внедрение практически отсутствует
  • 30. 17 DNSSEC • Концепция • Источник записи неважен. Используя доверенный корневой ключ, возможно проверить любую подписанную запись • Принцип действия • Записи зоны подписаны ключом зоны • Подтверждения подписи выстраиваются в цепочку доверия
  • 32. 18 DNSSEC. Принцип действия Подпись зоны Цепочка доверия
  • 33. 19 DNSSEC. Особенности • Источник ответа неважен • Требует аккуратности и непрерывного обслуживания даже в статическом состоянии • Требует стартовых настроек клиента требуются актуальные корневые ключи • Сложные реализации «отрицательного ответа» • Большой размер ответа • Крайне слабая глубина внедрения • Это единственный вариант в этой категории
  • 34. 20 DNSSEC. Настройка клиентов • Прозрачная проверка Потребитель получает фильтрованные ответы • Явная проверка Потребитель явно указывает ресолверу, что хочет получить проверенный результат. Проверяет флаги ответа • Усиленная проверка Потребитель проверяет подписи сам delv @8.8.8.8 dxdt.ru A
  • 35. 21 DNSSEC. Must have • Подпишите свои домены • CoreDNS и Knot DNS — отличные реализации
  • 36. 21 DNSSEC. Must have • Подпишите свои домены • CoreDNS и Knot DNS — отличные реализации • Настройте ваши ресолверы на проверку DNSSEC • CoreDNS не умеет проверять DNSSEC • systemd-resolved, unbound, Knot Resolver — умеют
  • 37. 22 DNSSEC. Вкусняшка SSHFP SSH Fingerprint • Запись SSHFP содержит хэш публичного ключа хоста • На клиенте /.ssh/config: VerifyHostKeyDNS yes • На сервере ssh-keygen -R ‘hostname‘ • Не надо все алгоритмы, не тяните за собой легаси • Работает только с DNSSEC • RFC 4255 — SSH Fingerprint⁷
  • 38. 23 Защита от прослушки DNS Шифрование сообщений • DNSCrypt
  • 39. 23 Защита от прослушки DNS Шифрование сообщений • DNSCrypt Защищенный канал • DNS-over-HTTPS Google API • DNS-over-TLS • DNS-over-HTTP/2 • DNS-over-QUIC
  • 40. 23 Защита от прослушки DNS Шифрование сообщений • DNSCrypt Защищенный канал • DNS-over-HTTPS Google API • DNS-over-TLS • DNS-over-HTTP/2 • DNS-over-QUIC Заметание следов • Минимизация QNAME при запросах • EDNS0 Client subnets
  • 41. 24 DNSCrypt Принцип действия • Настройка мастер-ключа и имени сервера • Получение «короткого» ключа и сертификата • Запросы к серверу, идентичные DNSCurve dig @77.88.8.78 -p 15353 2.dnscrypt-cert.browser.yandex.net. -t TXT +short
  • 42. 25 DNSCrypt. Особенности • Не меняет спецификацию DNS • Нет ни RFC, ни Draft. Только спецификация на сайте • Не предусмотрена замена мастер-ключа • Заметное количество программ • Нет автообнаружения • Не «взлетел»
  • 43. 26 DNS-over-HTTPS (Google API) Google предоставляет JSON-API к DNS Страница с описанием: https://developers.google.com/speed/public-dns/docs/dns-over-https Массово используется для веб-приложений curl -H ’accept: application/dns-json’ ’https://dns.google/resolve?name=example.com’ | jq curl -H ’accept: application/dns-json’ ’https://cloudflare-dns.com/dns-query?name=example.com’ | jq
  • 44. 27 DNS-over-TLS (DoT) • Устанавливается защищенное TLS-соединение (порт 853) • Внутри соединения – стандартный DNS-протокол • Самая простая инсталляция – проксирование nginx через ngx_stream_ssl_module на обычный DNS kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1 dig +tls @1.1.1.1 highload.ru
  • 45. 27 DNS-over-TLS (DoT) • Устанавливается защищенное TLS-соединение (порт 853) • Внутри соединения – стандартный DNS-протокол • Самая простая инсталляция – проксирование nginx через ngx_stream_ssl_module на обычный DNS kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1 dig +tls @1.1.1.1 highload.ru • А есть ещё DNS-over-DTLS…
  • 46. 27 DNS-over-TLS (DoT) • Устанавливается защищенное TLS-соединение (порт 853) • Внутри соединения – стандартный DNS-протокол • Самая простая инсталляция – проксирование nginx через ngx_stream_ssl_module на обычный DNS kdig +tls @8.8.8.8 highload.ru # попробуйте 195.208.4.1 dig +tls @1.1.1.1 highload.ru • А есть ещё DNS-over-DTLS… • … и DNS-over-QUIC…
  • 47. 28 DNS-over-TLS (DoT). Особенности • Не меняет спецификацию DNS • Требует установки TLS-соединения (дорого) • Требует стартовых настроек клиента требует «бутстрапа» имени сервера • Нет автообнаружения • Специальный 853 порт
  • 48. 29 DNS-over-HTTPS (DoH) • Защищенным транспортом является обычный HTTP/2 • Запросы/ответы — стандартные DNS-пакеты • Формируется специальный HTTP-запрос • GET — DNS-пакет кодируется в параметр • POST — DNS-пакет в application/dns-message kdig +https @8.8.8.8 highload.ru # попробуйте 195.208.4.1 dig +https @1.1.1.1 highload.ru
  • 49. 30 DNS-over-HTTPS (DoH). Особенности • Не меняет спецификацию DNS • Требует установки HTTP/2-соединения (дорого) • Требует стартовых настроек клиента требует «бутстрапа» имени сервера • Нет автообнаружения • Не сильно выделяется в HTTP-трафике
  • 50. 31 Защита. Must have • Локальные кэши в каждом периметре • NodeLocal DNSCache в Kubernetes • systemd-resolved, unbound, Knot Resolver • DoT/DoH через недоверенные сети особенно локальные домены • Агрегирующие DoT/DoH-ресолверы
  • 53. 34 EDNS Client subnet Это расширение DNS • Добавляет в запрос подсеть клиента • Например, для геобалансинга Поддержка • Google DNS принципиально да dig +short @8.8.8.8 -t TXT o-o.myaddr.l.google.com • Cloudflare DNS принципиально нет dig +short @1.1.1.1 -t TXT o-o.myaddr.l.google.com
  • 54. 35 Известные сервисы отладки • whoami.akamai.net A • whoami.akamai.net AAAA • o-o.myaddr.l.google.com TXT • whoami.cloudflare.com TXT • whoami.ipv6.akahelp.net TXT • whoami.ipv4.akahelp.net TXT • whoami.ds.akahelp.net TXT
  • 55. 36 Настройка локальных кэшей • Включение/выключение QNAME • Манипуляции с Client subnet
  • 56. 37 Реакционизм. Подделка • Не позволяет подставлять «свой» ответ • Противоречит корпоративным политикам • Мешает спецслужбам проводить спецоперации • Переусложненное обслуживание приводит к ошибкам
  • 57. 38 Реакционизм. Прослушка • Не позволяет анализировать DNS-запросы • Нарушает корпоративные стандарты безопасности • Мешает приложениям защиты отслеживать действия браузера • Создаёт видимость безопасности
  • 58. 38 Реакционизм. Прослушка • Не позволяет анализировать DNS-запросы • Нарушает корпоративные стандарты безопасности • Мешает приложениям защиты отслеживать действия браузера • Создаёт видимость безопасности • Дополнительная нагрузка • Цикл получения ответа неприемлемо долгий
  • 59. 39 Реакционизм. Гоcрегулирование • Давление UK ISPA и IWF www.opennet.ru/opennews/art.shtml?num=51046 • Большинство «госблокировок» в мире основано на манипуляциях с DNS
  • 61. 41 Госрегулирование РФ. НСДИ Национальная система доменных имен • Определена в законе 90-ФЗ от 01.05.2019 Приказ Роскомнадзора от 31.07.2019 № 229 • Государственный публичный DNS • Дублирует . (корень) • Уменьшает ущерб от манипуляций с .RU гипотетических, со стороны США в лице ICANN • Обслуживается ЦМУ ССОП • Предоставляется в том числе AXFR
  • 62. 42 Заложенная в НСДИ безопасность
  • 63. 42 Заложенная в НСДИ безопасность
  • 64. 43 Держитесь подальше от торфяных болот • DNS таит в себе множество угроз • Не используйте DNS для всего на свете • Избегайте использования DNS
  • 65. 43 Держитесь подальше от торфяных болот • DNS таит в себе множество угроз • Не используйте DNS для всего на свете • Избегайте использования DNS когда есть специализированные сервисы
  • 66. 44 Многое осталось за кадром • EDNS(0) Padding, Cookies, etc… • Обслуживание DNS, DNSSEC, DoT/DoH • Применение DNSSEC: DANE, etc… • Обзор серверов, включая stub-ресолверы • Обзор клиентов и инструментов • DNS Stamps (ссылки sdna://) • glibc и resolv.conf • Ampliphication attack, etc… • …
  • 67. 45 Вопросы В любом случае пишите мне schors@gmail.com
  • 68. 46 Ссылки. DNSCurve и DNSCrypt [1] DNSCurve.io ‐ A Community for DNSCurve. Основной сайт DNSCurve. https://dnscurve.io/. [2] M. Dempsky. Link‐Level Security for the Domain Name System. 26 февр. 2010. https://datatracker.ietf.org/doc/html/draft-dempsky-dnscurve-01. [3] Dq is a package with DNS/DNSCurve related software. https://mojzis.com/software/dq/. [4] World’s fastest‐to‐synchronize Secondary DNS service. Единственный известный DNS‐сервис с поддержкой DNSCurve. https://www.buddyns.com/. [5] DNSCrypt version 2 protocol specification. https://dnscrypt.info/protocol/. [6] dnscrypt‐proxy. https://github.com/DNSCrypt/dnscrypt-proxy.
  • 69. 47 Ссылки. DNSSEC [7] RFC 4255. Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints. Янв. 2006. https://datatracker.ietf.org/doc/html/rfc4255. [8] Визуализация DNSSEC. http://dnsviz.net/. [9] Филипп Кулин. DNSSEC. Руководство регистратора доменов. Дек. 2016. https://www.slideshare.net/schors/dnssec-71055077. [10] Филипп Кулин. DNSSEC. Руководство оператора доменов. Окт. 2017. https://www.slideshare.net/schors/enog14-dnssec. [11] RFC 4033. Введение в DNSSEC. Март 2005. https://tools.ietf.org/html/rfc4033. [12] RFC 4034. Ресурсные записи для DNSSEC. Март 2005. https://tools.ietf.org/html/rfc4034. [13] RFC 4035. Модификации протокола DNS для DNSSEC. Март 2005. https://tools.ietf.org/html/rfc4035. [14] RFC 6781. Эксплуатация DNSSEC. Дек. 2012. https://tools.ietf.org/html/rfc6781. [15] RFC 7583. Соображения по ротации ключей DNSSEC. Окт. 2015. https://tools.ietf.org/html/rfc7583. [16] RFC 7129. Authenticated Denial of Existence in the DNS. Определение белой лжи. Февр. 2014. https://datatracker.ietf.org/doc/html/rfc7129. [17] Dani Grant (Cloudflare). Economical With The Truth: Making DNSSEC Answers Cheap. Определение черной лжи. 24 июня 2016. https://blog.cloudflare.com/black-lies/.
  • 70. 48 Ссылки. DoH/Dot [18] RFC 7858. Specification for DNS over Transport Layer Security (TLS). Май 2016. https://datatracker.ietf.org/doc/html/rfc7858. [19] RFC 8310. Usage Profiles for DNS over TLS and DNS over DTLS. Март 2018. https://datatracker.ietf.org/doc/html/rfc8310. [20] RFC 8484. DNS Queries over HTTPS (DoH). Окт. 2018. https://datatracker.ietf.org/doc/html/rfc8484. [21] Specification of DNS over Dedicated QUIC Connections. draft‐huitema‐dprive‐dnsoquic‐00. Май 2020. https://datatracker.ietf.org/doc/html/draft-huitema-dprive-dnsoquic. [22] Experimental DNS‐over‐TLS Auto‐discovery. https://github.com/CZ-NIC/knot-resolver/tree/ c8cb9740f8ebd34219c7d860106969fcbb6c7bf6/modules/experimental_dot_auth.
  • 71. 49 Ссылки. Инциденты [23] Aftab Siddiqui. What Happened? The Amazon Route 53 BGP Hijack to Take Over Ethereum Cryptocurrency Wallets. 27 апр. 2018. https://www.internetsociety.org/blog/2018/04/amazons-route-53-bgp-hijack/. [24] Wikipedia. DNS hijacking. Manipulation by ISPs. https://en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs. [25] Леонид Евдокимов. Тайный список запрещённых ресурсов. 25 сент. 2018. https://usher2.club/articles/mt-free-pre-block/.
  • 72. 50 Ссылки. Разное [26] Brian Kernighan. UNIX: A History and a Memoir. 18 окт. 2019. [27] RFC 7816. DNS Query Name Minimisation to Improve Privacy. Март 2016. https://datatracker.ietf.org/doc/html/rfc7816. [28] RFC 7871. EDNS(0) Client Subnet. Май 2016. https://datatracker.ietf.org/doc/html/rfc7871. [29] RFC 4892. Requirements for a Mechanism Identifying a Name Server Instance. Июнь 2007. https://datatracker.ietf.org/doc/html/rfc4892. [30] Google Public DNS. Troubleshooting. https://developers.google.com/speed/public-dns/docs/troubleshooting. [31] Have problems with 1.1.1.1? *Read Me First*. https://community.cloudflare.com/t/have- problems-with-1-1-1-1-read-me-first/15902. [32] Introducing a New whoami Tool for DNS Resolver Information. https://developer.akamai.com/blog/2018/05/10/introducing-new-whoami-tool-dns- resolver-information.
  • 73. 51 Ссылки. L A TEX [33] Beamer ‐ Overleaf, Online LaTeX Editor. https://www.overleaf.com/learn/latex/Beamer. [34] Uri Nativ. How to present code. 2016. https://www.slideshare.net/LookAtMySlides/codeware. [35] Филипп Кулин. Пишем презентации в LaTeX. 14 окт. 2019. https://habr.com/ru/post/471352/.