Регистратор APNIC, отговорен за разпределението на IP адреси в Азиатско-Тихоокеанския регион, резултатите от анализа на разпределението на трафика на един от кореновите DNS сървъри a.root-servers.net. 45.80% от заявките към кореновия сървър се оказаха свързани с проверки, извършвани от браузери с движка Chromium. По този начин, почти половината от ресурсите на кореновите DNS сървъри отиват за изпълнение на диагностични проверки на Chromium, а не за обработка на заявки от DNS сървъри при определяне на кореновите зони. С оглед на това, че Chrome заема 70% от пазара на уеб браузъри, подобна диагностична активност води до изпращането на около 60 милиарда заявки към кореновите сървъри на ден.
Диагностичните проверки се използват в Chromium за определяне на прилагането от доставчиците на услуги, пренасочващи заявки към несъществуващи имена към своите обработващи системи. Подобни системи се внедряват от някои доставчици за насочване на трафика към домейни, въведени с грешки — обикновено за несъществуващи домейни се показват страници с предупреждение за грешка, предложение за вероятно правилни имена и реклама. В същото време, подобна активност напълно разрушава логиката на определяне на интранет хостове в браузера.
При обработката на търсене, въведено в адресната лента, ако е въведена само една дума без точки, браузерът първоначално определя тази дума в DNS, смятайки, че потребителят може да се опитва да посети интранет сайт в вътрешната мрежа, а не да изпраща заявка до търсачката. В случай, че доставчикът пренасочва заявки към несъществуващи домейни, потребителите се сблъскват с проблема — всяка търсене от една дума, въведено в адресната лента, започва да бъде пренасочвано към страниците на доставчика, а не насочвано към търсачката.
За решаване на възникналия проблем, разработчиците на Chromium добавиха в браузера , които при установяване на пренасочвания променят логиката на обработка на заявките в адресната лента.
При всяко стартиране, изменение на настройки DNS или смяна на IP адрес, браузърът изпраща три DNS заявки с произволни имена на домейни на първо ниво, които с голяма вероятност не съществуват. Имената съдържат от 7 до 15 латински букви (без точки) и се използват за установяване на пренасочване на несъществуващи домейн имена от доставчика към собствен хост. Ако при обработката на трите HTTP заявки с произволни имена две получат пренасочване към една и съща страница, Chromium счита, че потребителят е пренасочен към външна страница.
Като признаци за отделяне на активността на Chromium от общия поток заявки на кореновия DNS сървър бяха използвани атипични размери на домейни на първо ниво (от 7 до 15 букви) и фактор на повторяемост на заявките (имената всяки път са били генерирани случайно и не са се повтаряли).
В лог файла първо бяха филтрирани заявките за несъществуващи домейни (78.09%), след това бяха отделени заявки, повтарящи се не повече от три пъти (51.41%), а след това бяха филтрирани домейни, съдържащи от 7 до 15 букви (45.80%). Интересно е, че само 21.91% от заявките към кореновите сървъри се оказаха свързани с определението за съществуващи домейни.
По време на изследването беше проучена зависимостта на нарастващото натоварване на кореновите сървъри a.root-servers.net и j.root-servers.net от нарастващата популярност на Chrome.
В Firefox проверките за пренасочване чрез DNS до определянето на пренасочвания към страници за автентикация (captive portal) и с на фиксиран поддомен «detectportal.firefox.com», без запитване на имена на домейни на първо ниво. Такова поведение не създава допълнително натоварване на кореновите DNS сървъри, но потенциално може да предизвика изтичане на конфиденциални данни за IP адреса на потребителя (при всяко стартиране се запитва страницата «detectportal.firefox.com/success.txt»). За деактивиране на проверката в Firefox е предвидена настройка «network.captive-portal-service.enabled», която може да бъде променена на страницата «about:config».
Източник: opennet.ru
