Опубліковано 23 березня23 берез Адміністратор Ви знали що всі популярні DNS сервери зливають вашу реальну IP адресу або його частину при перевірці на антифрод\антибот та й просто будь-кому, хто бажає насправді? Цей механізм був покликаний для того, щоб прискорювати доставку контенту і робити серфінг інтернету швидше. А натомість став розкривати ваш IP. І ім'я йому EDNS (ECS) .Що це таке і як працює?Ніколи не думали як працює механізм https://browserleaks.com/dns та будь-який подібний сервіс? Як він визначає ваш справжній DNS, який ви встановили в системі? Або як протікання виявляє? Схематично це виглядає так:Код:Копіювати[Браузер пользователя] --(HTTP запрос)--> [browserleaks.com/dns] dnsleaktest.com/dns: 1) Генерирует уникальный домен например: 123.browserleaks.com 2) Возвращает JS на клиент (браузеру и он его выполняет) [JS код в браузере]: img = new Image(); img.src = "http://123.browserleaks.com/dns/tracker.png"; Для загрузки tracker.png браузеру нужно сделать следующее: Браузер -> ОС: "Нужен IP 123.browserleaks.com" ОС -> DNS-сервер: "Дай мне IP для домена 123.browserleaks.com" DNS-сервер -> Отправляет запрос в browserleaks.com: "Дай мне IP адрес для 123.browserleaks.com" (Тем самым показывая свой IP) На стороне browserleaks: DNS сервер фиксирует IP адрес того, кто спрашивает (Это IP вашего DNS-сервера). !!!ТУТ И ПРОИСХОДИТ ВСЯ МАГИЯ!!! DNS-сервер отвечает IP-адресом для домена. DNS-сервер -> ОС -> Браузер Браузер теперь знает IP, загружает картинку. Сервер dnsleaktest.com уже знает: запрос пришёл с DNS IP X.X.X.X. Отправляет результат обратно клиенту через AJAX/REST: { "dns_server_ip": "X.X.X.X", "location": "ProviderName" } Браузер отображает результат (DNS сервер который он узнал).Браузер показує результат - ваш DNS. Так browserleaks.com стає своєрідним "авторитетним" DNS для гуглівських 8.8.8.8, адже саме він знає IP для 123.browserleaks.com.Чудово. Із цим розібралися. Тепер питання: Як за допомогою ECS можна палити не тільки DNS IP, але і вашу власну IP (або його частину)?Ось тут і поводиться EDNS (ECS). Якщо коротко: EDNS Client Subnet дозволяє DNS-серверам враховувати геопозицію або підсіти користувача, щоб підбирати "актуальніші" результати. Спочатку планувалося, що так контент буде вантажитися швидше та ближче до вас. Але за фактом це ще одна дірка у вашій приватності. Тобто це механізм, який може передавати ваш IP чатично або повністю на DNS сервері. Приклад того, що передає Google ДНС(8.8.8.8)Код:Копіювати;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ; CLIENT-SUBNET: 192.168.123.0/24/0 (этот IP я ему отправил в ручную)А якщо сайт Paypal.com наприклад зробить так само. А що їм завадить? - Та нічого їм не завадить це зробити. Перевіряємо наш ДНЗ на витік8.8.8.8 люб'язно відправив нам адресу, яку ми йому надалиІ ми бачимо чудову картину, що ДНС сервер гугла передав нашу адресу, яку ми закинули в розширення ECS незмінним Ось невеликий список які точно передають дані:Google DNS 8.8.8.8 та 8.8.4.4Код:КопіюватиGoogle Public DNS давно поддерживает ECS и активно его использует для геооптимизации. OpenDNS (Cisco Umbrella) 208.67.222.222 и 208.67.220.220 Comcast DNS: 75.75.76.76 и 75.75.75.75 Хоть на этом сервисе почему то обрубается но у меня прекрасно работает на моей машине (хоть и преедает чатсично (страну узнать можно и даже город я думаю)) dig @75.75.76.76 example.com +subnet=192.168.123.2/24 +noall +edns=0 +comment +qr ;; Sending: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44187 ;; flags: rd ad; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1232 ; CLIENT-SUBNET: 192.168.123.0/24/0 ......Самі можете подивитися свої ДНС сервери тут:https://tools.keycdn.com/digЧому важливо?Таким чином виходить, що будь-хто може отримати IP адресу від ДНС сучасного сервера. Якщо я зміг написати такий невеликий скрипт - то великі корпорації типу paypal.com і поготів зможуть це зробити. Так і виходить, що метаECS благородна(доставляти контент швидше), а реалізація як завжди. Навіть якщо ви використовуєте VPN або шифрування DNS-over-HTTPS (DoH), DNS-over-TLS (DoT) або DNS-over-QUIC це не поспішає від утчечки ECS і в браузері або ОС немає такої кнопочки яка може вимкнути цю опцію так як вона визначається на стороні DNS сервера.
Для публікації повідомлень створіть обліковий запис або авторизуйтесь