Файл Hosts на серверах и рабочих станциях надежно блокирует разнообразный потенциально опасный контент. В этой статье мы рассмотрим, как использовать файл Hosts для блокирования рекламы, вредоносных и шпионских программ и другого нежелательного контента.

Для идентификации и блокирования вредоносных программ, рекламы и различных угроз требуется громоздкая технология, однако в распоряжении компаний есть один инструмент, который всегда под рукой: файл Hosts на серверах и рабочих станциях. С его помощью можно блокировать рекламу на основе карты известных вредоносных и аналитических программ, криптовалютчиков, средств слежения или рекламных сайтов. Файл также может предотвратить ввод адресов веб-сайтов с опечатками в браузере по умолчанию, и его не составляет труда отредактировать перед распространением на защищаемые узлы, чтобы не дестабилизировать работу. Еще более примечательное достоинство — те же данные легко приспособить для использования в файлах. htaccess, которые являются файлами первоначального обращения посетителей на таких веб-серверах, как Apache и NGINX.

Все основные операционные системы (но не их версии для смартфонов) поддерживают использование файла Hosts для блокирования рекламы и в целом для доступа к нежелательному контенту и сайтам. Файл Hosts представляет собой древний по современным меркам механизм UNIX, который использовался до того, как система DNS стала общепринятым стандартом, и иногда в качестве вспомогательного средства для него применяется YP, или Yellow Pages.

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

Лучший объединенный, обновленный исходный файл, который мне удалось найти, представлен на сайте GitHub по адресу: https://github.com/StevenBlack/hosts/blob/master/hosts. Файл часто обновляется, обычно один раз в неделю. Если поместить его в соответствующий каталог или папку, то любая компьютерная система в первую очередь обращается к файлу Hosts (https://en.wikipedia.org/wiki/Hosts_(file)), прежде чем к сетевым интерфейсам. Это позволяет предотвращать опасные переходы на сайты, перечисленные в файле.

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

Содержимое файла Hosts

Разобраться в содержимом файла Hosts не составляет труда. Имеется два столбца. Слева — IP-адреса, указывающие, куда следует направить пакеты. Самые современные операционные системы поддерживают протоколы IPv4 или IPv6. Чтобы блокировать пакеты, используйте адреса нулевого маршрута IPv4 0.0.0.0 или 127.0.0.1.

Поэтому:

0.0.0.0 google.com

просто запретит вашей системе обращаться к Google. Однако для goog.gl, gmail.com и других вариантов потребуются отдельные записи. По этой, в частности, причине используемый нами файл Hosts содержит почти 1,5 Мбайт «подозрительных адресов».

Для адреса IPv4 0.0.0.0 действует запрет на доступ, а IPv4 127.0.0.1 — адрес localhost или «замыкающий» адрес (то есть внутренний сетевой адрес компьютера).

Адрес IPv6, для которого действует запрет на доступ, столь же прост: 0.0.0.0.0.0.0.0 или: :1. Если ввести его в левом кортеже, то запрос к ошибочному адресу будет заблокирован. Используйте синтаксис IPv4 или синтаксис IPv6 в соответствующих случаях, добавляя собственные записи.

Конечно, файлу Hosts свойственны некоторые ограничения.

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

Необходимо также учесть влияние размера файла Hosts на производительность. Размер используемого нами файла Hosts достиг уже 1,5 Мбайт; на практике это означает, что таблицу подстановки для вредных сайтов необходимо просмотреть 60 раз в ходе загрузки одной сложной веб-страницы, что, естественно, снижает быстродействие.

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

Хотя IP-адреса с уязвимостями нулевого дня не всегда блокируются черными списками, удается обезвредить многие сайты, которые потенциально являются источниками угроз. Мы рекомендуем администраторам, желающим разместить у себя файл и/или еженедельные обновления, изучить список, чтобы не отсечь определенные сайты (например, средства отслеживания эффективности рекламы MSN) и не нарушить тем самым поведение приложений. Большинству пользователей и администраторов придется немного отредактировать файл Hosts, но выгоды для системы безопасности окупают потраченные усилия.