Что такое брандмауэр фильтр для интернет соединения

Что такое брандмауэр фильтр для интернет соединения

Дмитрий Чеканов

31 октября 2002

Вряд ли для кого-нибудь секретом является тот факт, что компьютеры нужно защищать. Особенно если вы используете сервер на базе Windows 2000 для выхода в Интернет. Это типично для многих организаций. Windows 2000 намного проще и удобнее в настройке, чем различные версии Unix. А при должной настройке эта система не менее устойчива к взлому и стабильна. Впрочем, многие любители Unix могут с этим не согласиться, но это мое мнение. Обычно к серверу Windows 2000 подключается модем выделенной линии (или любое другое устройство), параллельно с локальной сетью. При этом организуется либо раздача соединения с Интернетом по локальной сети (Internet Connection Sharing, простейший вариант NAT), либо устанавливается прокси-сервер. Каждый из этих вариантов имеет свои плюсы и минусы, но с точки зрения гибкости управления и учета деятельности пользователей я предпочитаю второй. В любом случае нужно ясно понять – сервер придется защищать. Самое удивительное – Windows 2000 (равно как и XP) обладают богатыми встроенными возможностями по защите, и в этой статье я постараюсь вам объяснить, как ими пользоваться. Но для начала давайте вспомним базовые концепции стека протоколов TCP/IP.

Особенности стека TCP/IP

Основной протокол стека TCP/IP – это IP (Internet Protocol). Он работает на сетевом уровне и занимается доставкой пакетов. У отправителя и получателя должны существовать уникальные IP адреса, которые указываются в заголовках каждого пакета. То есть первый критерий фильтрации – мы можем пропускать пакеты только от нужных (или только к нужным) IP адресам. Это самая примитивная фильтрация.

Но помимо протокола IP в сети работают несколько других протоколов. Каждый из них добавляет в пакет свой заголовок, то есть в момент передачи по сети пакет представляет собой «слоеный пирог», где помимо данных помещены заголовки различных протоколов. Один из этих заголовков вы уже знаете – это заголовок протокола IP.

Выше протокола IP находятся протоколы транспортного уровня – это TCP (Transmission Control Protocol) и UDP (User Datagram Protocol). Обычно используется либо TCP, либо UDP. Каждый из этих протоколов тоже добавляет в пакет свой заголовок. У UDP и TCP есть своя специфика – они, в отличие от IP, уже умеют работать с сетевыми службами. Причем адресация сетевых служб происходит по адресу службы – номеру порта. Отсюда вытекает вторая возможность фильтрации – мы можем ограничивать доступ по номеру порта. При этом номер порта можно комбинировать с IP адресом – к примеру, разрешать доступ на веб-сайт сервера (стандартно TCP порт 80) только с определенных IP адресов. Учтите, что хотя номера портов для TCP и UDP похожи, это разные протоколы и номера портов у них тоже разные. Номера портов большинства служб стандартизированы, и вы можете посмотреть их в файле "services", который размещается в каталоге %systemroot%system32driversetc. %Systemroot% — это каталог, где у вас установлена Windows. Кстати, комбинация «IP адрес» + «номер порта» называется сокетом. Сокет позволяет уникально адресовать службу в Интернете.

Когда вы обращаетесь к удаленному серверу по протоколу TCP, то происходит процесс установления связи. К примеру, вы обратились к веб-серверу узла 192.168.1.1 (стандартно – на TCP порт 80). При этом ваш компьютер (клиент) тоже должен выделить порт, чтобы сервер знал, куда отправлять ответ. Порт клиента выделяется случайным образом – к примеру, пусть это будет TCP 29334.

Кстати, очень полезно использовать утилиту "netstat.exe", которая входит в стандартную поставку Windows – она показывает все текущие TCP соединения и открытые порты.

Как правило, все сетевые службы общаются через TCP или UDP. TCP сегодня используется наиболее часто. Так что практически в любом пакете вы обнаружите заголовки TCP и UDP, по которым мы и будем осуществлять фильтрацию.

Осталось упомянуть протокол ICMP (Internet Control Message Protocol). Он использует IP, но не задействует ни TCP, ни UDP. ICMP предназначен для диагностики компьютерной сети, и его, в принципе, можно разрешать с любого IP адреса на любой IP адрес. По ICMP работает утилита "ping.exe", также стандартно поставляющаяся с Windows. С помощью утилиты ping вы сможете проверить доступность любого узла в Интернете. А с помощью еще одной утилиты – tracert.exe – проверить маршрут до выбранного узла.

Теперь после небольшого теоретического введения давайте перейдем собственно к построению защиты. Я буду иллюстрировать статью английской версией операционной системы, поскольку использовать русскую версию сервера Windows 2000 я настоятельно не рекомендую. Вряд ли «база знаний» на русском языке столь же информационно наполнена, как knowledge base на английском – а ведь это именно тот ресурс, который жизненно необходим всякому уважающему себя администратору. Для непосвященных отмечу – "knowledge base" содержит ответы практически на все вопросы, там указаны практически все ошибки Windows, а также даны рекомендации по их решению и различные советы.

Настройка брандмауэра

Первое, что мы делаем – переходим в Local Security Policy (Control Panel -> Administrative Tools).

Там выбираем строчку "IP security policies. " Там уже есть три политики, но мы с вами будем создавать новую.

Нажимаем правую клавишу мыши на "IP security policies. ", выбираем "Create IP security policy. " Запустится мастер установки IP политики.

Здесь предлагается ввести название политики и ее описание. Пусть будет "My first IP security policy".

Во втором окне оставьте галочку.

Здесь тоже ничего не трогайте, пусть все будет по умолчанию.

Здесь снимаем галочку – свойства политики мы отредактируем чуть позднее. Теперь в списке политики мы наблюдаем нашу. Нажимаем правую клавишу мыши на "IP security policies. ", выбираем "Manage IP filter lists and filter actions. ", переходим в закладку "Manage Filter Actions".

Нажимаем клавишу Add – нам нужно добавить действие "Deny". Вновь запускается мастер.

Во втором окне мы выбираем действие – "Block".

Первое правило – все, что не разрешено, должно быть запрещено. Наш подход будет следующий – мы запретим связь со всеми узлами, а потом будем потихоньку открывать то, что нам нужно. В последнем окне нажимаем клавишу "Finish", галочку "Edit Properties" помечать не нужно.

В окне действий появилось наше – "Deny". Закрываем окно и переходим к редактированию созданной нами политики (для этого достаточно нажать два раза левой клавишей мыши на ее название).

Нажимаем клавишу "Add". Сейчас мы будем изменять нашу политику. Запустится мастер.

Туннель нам не нужен – нажимаем "Next".

Здесь указывается, для какого соединения будет действовать правило. Если внутренняя сеть у вас имеет "левые" IP адреса, то можете сильно не мучаться и указать "All network connections", мы обеспечим доступ с внутренней сети отдельной строкой. Если выделенка у вас подключена через удаленный доступ, то можете выбрать "Remote Access", но опять же, если у вас есть несколько модемов для доступа клиентов сети к серверу по телефону, то это правило будет действовать и на них, что не всегда полезно. Так что указывайте "All network connections" и не мучайтесь.

Здесь все оставляем по умолчанию.

Первое что мы должны сделать – запретить все для всех. Поэтому нажимаем клавишу Add – будем добавлять фильтр. Запустится опять же мастер добавления фильтра (то же самое вы можете сделать через строчку "Manage IP filters list", нажав правую клавишу мыши на "IP security policies. " в окне "Local security settings").

Называем фильтр "Deny Filter List" и нажимаем клавишу "Add". Вновь запускается мастер (они вам еще не надоели?).

Здесь указывается источник пакета. Поскольку мы хотим запретить пакеты от всех источников, то указываем "Any IP address".

Здесь указывается адрес получателя пакета. Опять же, мы хотим запретить пакеты от всех IP источников для нашего компьютера, поэтому указываем "My IP address".

Мы запрещаем все протоколы – выбираем "Any".

Готово – появился новый фильтр. Прекрасно, теперь нажимаем клавишу "Ok".

Появился новый список фильтров. Нажимаем "Next".

Выбираем действие – "Deny".

В политике появилось новое правило – запрещение всего от всех и для всех. Теперь будем разрешать. Это, пожалуй, самая трудоемкая задача.

Первоначально следует разрешить ICMP трафик от всех пользователей на нашу машину. Для этого выполним ту же операцию "Add" в окне политики, только теперь мы воспользуемся готовым списком фильтров "All ICMP traffic".

Данный фильтр разрешает ICMP пакеты с любого IP адреса на наш компьютер.

Естественно, что действие теперь будет "Permit".

В свойствах политики добавилась еще одна строчка.

Теперь у нас не будет работать ничего, кроме ICMP протокола. Сейчас нам осталось выделить те службы, которые нам нужны, и прописать для них доступ. Лучше всего создать еще один список фильтров (к примеру, "Internet services"), добавить в него несколько строчек фильтров и право "permit". Ниже я дам строчки для самых распространенных служб, но в вашем индивидуальном случае все может быть по-другому. Следует отметить, что по умолчанию каждая служба добавляется зеркально – то есть если мы разрешаем связь от нашего компьютера к любым веб-серверам (порт 80), то будет реализовываться и обратная связь для передачи ответа веб-сервера.

Если у вас есть локальная сеть с «левыми» адресами, то нужно прописать для нее доступ – открываем все протоколы с адресов 192.168.1.0 маска 255.255.255.0 (к примеру) до "My IP address". Для этого можете создать отдельный фильтр "My LAN".

А теперь перейдем к заполнению наиболее часто используемых служб (если у вас есть дополнения, то присылайте их автору (dch@3dnews.ru)).

1. Запросы DNS сервера.
Разрешаем 53 порт получателя (destination port address) протокола UDP от нашего компьютера к любому компьютеру. Вместо любого компьютера можно указать DNS сервер провайдера.

2. Веб-трафик.
Открываем порт TCP 80 получателя от нашего компьютера к любому компьютеру.

3. FTP-трафик.
Открываем порты TCP 20 и TCP 21 получателя от нашего компьютера к любому компьютеру.

4. SMTP трафик (для отправки писем).
Открываем порт TCP 25 получателя от нашего компьютера к любому компьютеру (можно вместо любого компьютера указать SMTP сервер провайдера).

5. POP3 трафик (для приема писем).
Открываем порт TCP 110 получателя от нашего компьютера к любому компьютеру (или к POP3 серверу провайдера).

6. IMAP трафик (для приема писем).
Открываем порт TCP 143 получателя от нашего компьютера к любому компьютеру (или к IMAP серверу провайдера).

7. ICQ трафик.
Зависит от сервера ICQ, обычно TCP порт 5190 получателя от нашего компьютера к любому компьютеру (или к серверу ICQ).

Ну а сейчас пришла пора тестирования – нажимаем правую клавишу мыши на название нашей политики и указываем "Assign".

После этого вы можете наслаждаться результатом.

Заключение

После изучения данной статьи вы сможете самостоятельно настроить брандмауэр, используя встроенные в Windows 2000/XP средства безопасности. Брандмауэр позволяет повысить безопасность компьютерной сети и ограничить доступ к службам, которые вы желаете открыть только для внутренней сети. Помните, что главное правило – все что не разрешено, должно быть запрещено.

Дополнение

В целом, задачу можно решить значительно проще:

I. Если сервер используется только для доступа в Интернет (и возможно для хостинга веб)
1.1 Отключаем на "внешнем" интерфейсе биндинг всего кроме TCP/IP
1.2 Включаем ICS(AutoNAT outside)
1.3 смотрим netstat -na
1.4 отключаем ненужные сервисы последовательно
1.5 повторяем 1.3 и 1.4 до отсутствия в 1.3 результате открытых портов на "внешнем" интерфейсе
1.6 наслаждаемся результатом

II. Если сервер используется для MSSQL, 1C, хранения финансовых отчетов и т.п. и к нему подключили Интернет.
1.1 Отключить Интернет от сервера
1.2 Уволить админа
1.3 Поставить отдельный сервер
1.4 Перейти к пункту 1)

III. Лирическое отступление:
Брандмауэры 2-го уровня (не умеющие анализировать содержимое пакетов) и не использующие понятия "внешний" и "внутренний" интерфейс к применению не пригодны (как минимум сами по себе). Под "внешним" подразумевается интерфейс, подключенный к Интернет и имеющий "реальный" адрес. Встроенный в Win2k/XP данные возможности имеет, но настраивается намного сложнее, чем любой другой. В тоже время, существует достаточное число внешних продуктов, который распостраняются бесплатно (либо условно-бесплатно) и обладают значительно более удобным интерфейсом, а в отдельных случаях (Conseal PC firewall) и гораздо более правильной реализацией. К сожалению, на данный момент, на рынке отсутствуют продукты, которые могли бы создавать приемлемую Security Policy автоматически. Таким образом, для среднего пользователя Сети Интернет, большинство из продуктов либо не дадут результата, либо будут препятствовать работе. Не говоря о том, что обойти брандмауэр 2-го уровня довольно просто. Для этого даже не надо знать как оно работает, — уже существуют готовые программы для spoofing (IP and MAC). Приведенный в статье пример настройки вообще не содержит упоминаний о применении правил к интерфейсам, а так же того, что для разных интерфейсов (внешнего и внутреннего) необходимы _разные_ правила. Общий же тон статьи может создать впечатление мнимой простоты и ложной защишенности у начинающего пользователя. Что есть неправильно, с моей точки зрения. Опыт работы показывает, что 90% попыток пользователя настроить брандмауэр, основываясь на информации, почерпнутой из указаний "нажать сюда, потом сюда" заканчивается проблемами с доступом в Сеть и звонками пользователя в Службу поддержки провайдера.

Все вышеизложенное является моим личным мнением и никоим образом не является официальным мнением моего работодателя.

Мнение сформировано 7-ю годами администрирования в ISP.

Брандмауэры (фаерволы) — это важная часть защитного программного обеспечения, и пользователям всегда пытаются предложить что-то новое из этого. Однако Windows комплектовалась своим собственным хорошим брандмауэром, начиная с Windows XP SP2, и в большинстве случаев этого более чем достаточно.

Как считает Крис Хоффман, автор статьи "Почему (и когда) вам не стоит устанавливать фаервол стороннего производителя" на How-To Geek вам не обязательно нужен полный пакет безопасности типа Internet Security. Все, что вам действительно нужно установить на Windows 7, это антивирус, а Windows 8 и 8.1 теперь комплектуются собственным антивирусом. Рассмотрим подробнее данную точку зрения.

Зачем нужен фаервол

Первичная функция брандмауэра — блокировать не запрошенные входящие соединения. Брандмауэры могут с умом блокировать различные типы соединений, например, они могут разрешать доступ к сетевым файловым ресурсам и другим услугам, когда ваш ноутбук соединен с вашей домашней сетью, но не разрешать это, когда он связан с общественной сетью Wi-Fi в кафе.

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

До появления Windows XP SP2, в которой Брандмауэр Windows был модернизирован и работал по умолчанию, системы Windows XP, подключенные непосредственно к Интернету, заражались в среднем за четыре минуты. Черви, такие как Blaster, могли напрямую подключаться ко всем подряд. Поскольку в Windows не было брандмауэра, она впускала червя Blaster.

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

Почему Брандмауэра Windows будет достаточно

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

Он включен по умолчанию и будет оставаться включенным, если вы не отключите его вручную или не установите брандмауэр стороннего производителя. Вы можете найти его интерфейс в разделе «Брандмауэр Windows» на Панели управления.

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

В какой ситуации вам может понадобиться брандмауэр стороннего производителя

По умолчанию Брандмауэр Windows делает только самое необходимое: блокирует входящие соединения. У него есть еще некоторые дополнительные функции, но они находятся в скрытой, менее удобной для использования части интерфейса.

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

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

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

Для большинства же пользователей использование брандмауэра стороннего производителя просто добавляет неоправданные сложности.

Дополнительные настройки Брандмауэра Windows

У Брандмауэра Windows в действительности больше функций, чем можно было бы ожидать, хотя его интерфейс не слишком удобен:

  • В Windows имеется расширенный интерфейс настройки брандмауэра, где вы можете создать дополнительные правила для него. Вы можете создать правила, блокирующие соединения с интернетом определенных программ или позволяющие программе связываться только с определенными адресами.
  • Вы можете использовать программу стороннего производителя, чтобы расширить функции брандмауэра Windows, заставив его тем самым запрашивать разрешение каждый раз, когда новая программа пытается соединиться с Интернетом. Среди программ, работающих в паре с Брандмауэром Windows, можно выделить — Windows 8 Firewall Control или Windows Firewall Control.

Фаервол стороннего производителя — это инструмент опытного пользователя, он не является обязательным компонентом защитного программного обеспечения. Брандмауэр Windows надежен и заслуживает доверия. Хотя люди могут дискутировать по поводу уровня обнаружения вирусов Microsoft Security Essentials или Защитника Windows, Брандмауэр Windows выполняет работу по блокированию входящих соединений так же хорошо, как и другие брандмауэры.

А как считаете вы? Поделитесь своим мнением и опытом в комментариях.

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

Однако, иногда интернет может быть отключен самой операционной системой Windows с помощью внутренней программы под названием Брандмауэр. Но что представляет собой приложение? Что делать, если Брандмауэр блокирует доступ в интернет? Почему так происходит? Ниже мы в деталях рассмотрим все эти вопросы.

Общая информация

Брандмауэр Защитника Windows (сетевой экран, файрвол) – это специальное приложение, которое занимается фильтрацией всего трафика, который поступает на компьютер. Фильтрация при этом осуществляется на основании специальных правил, которые задаются пользователем или самой программой.

Главной функцией файрвола является защита компьютера от неправомерного доступа со стороны третьих лиц. Сетевой экран может устанавливаться отдельно в виде вспомогательной утилиты под управлением пользователя.

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

Однако, иногда файрвол может «взбеситься», что приводит к блокировке доступа к сети. Почему Брандмауэр блокирует интернет:

  • С вашего ПК идет большое количество исходящего трафика, который похож на спам (обычно это происходит при заражении шпионскими программами, которые используют ресурсы компьютера для совершения внешних действий без ведома пользователя);
  • Из-за серьезного сбоя программного обеспечения, что приводит к неадекватной работе всех автономных программ ОС Windows (в том числе – к сбою файрвола);
  • При установке некоторых антивирусных программ (алгоритмы некоторых антивирусов весьма похожи на вирусную активность, поэтому экран делает блокировку);
  • После очистки компьютера от вирусов (иногда после очистки на ПК остаются остатки вирусных программ, которые сами по себе не представляют опасности, но которые не пропускает фильтр файрвола);
  • Загрузка некоторых обновлений, что приводит к изменению настроек защиты (подобный сценарий на практике встречается достаточно редко);
  • После установки внешних программ, которые являются потенциально опасными или шпионскими.

Что делать, если подключение заблокировано Брандмауэром или антивирусным ПО? Об этом следующее видео:

Настройка и отключение

Что делать, если Брандмауэр блокирует доступ к интернету? Его рекомендуется отключить вручную. Ниже мы рассмотрим основные сценарии отключения.

Отключение файрвола

Чтобы снять блокировку Брандмауэра с интернета, можно отключить сетевой экран вручную. Делается это так:

  • Зайдите в меню Пуск и выберите пункт «Панель управления»;
  • Выберите пункт «Мелкие значки» и вариант «Брандмауэр…»;

  • В открывшемся меню ознакомьтесь с текущей активностью сетевого экрана, а для отключения выберите строку «Включение и отключение…»;

  • Выберите оба пункта «Отключить…» как для домашних, так и для общественных сетей. Подтвердите свой выбор и сохраните настройки.

Настройка исключений

Иногда бывает так, что Брандмауэр заблокировал не сам доступ к интернету, а лишь программу для работы с ним (например, браузер). Как разблокировать доступ в таком случае? Нужно добавить браузер в список исключений Защитника Windows.

Этот сценарий лучше, по сравнению с полным отключением. Ведь файрвол может блокировать действительно вредоносный контент.

Настройка исключений делается так:

  • Откройте меню для работы с файрволом (Пуск -> Панель управления -> Брандмауэр);
  • Выберите строку «Разрешение взаимодействия…»;
  • В открывшемся меню в списке найдите свой основной браузер, поставьте рядом с ним галочку, а также две дополнительных галочки в столбцах сетей «Частная» и «Публичная»;
  • Для подтверждения настроек нажмите кнопку «Ок».

Сброс настроек

Бывает иногда так, что при осуществлении настроек вы сделали что-то не так или перемудрили с ними. В такой ситуации надо восстановить стандартные настройки. Для этого нужно открыть меню для работы с сетевым экраном (Пуск -> Панель управления -> Брандмауэр). Потом следует выбрать строку «Восстановить значения по умолчанию», подтвердить свой выбор и выполнить перезагрузку операционной системы для вступления изменений в силу.

Еще одна статья по теме на нашем портале тут.

Заключение

Подведем итоги. Сетевой экран может блокировать доступ к сети по разным причинам. Основные сценарии – заражение компьютера пользователя вирусом или шпионской программой, установка некоторых антивирусов, обновление операционной системы Windows и другое.

Чтобы восстановить доступ, необходимо вручную отключить Брандмауэр Защитника Windows. Сделать это можно с помощью меню для работы с сетевым экраном. Лучшим вариантом будет не полное отключение программы (поскольку файрвол может фильтровать и по-настоящему вредные утилиты), а добавление ПО в список исключений.

Читайте также:  Как изменить размер значков в windows 10
Ссылка на основную публикацию
Что мне задали завтра на русский
Проверка орфографии на 5-ege.ru (введите текст в форму ниже): Если нужно проверить пунктуацию, воспользуйтесь сервисом Проверка пунктуации онлайн. Наш сервис...
Чистка матрицы зеркального фотоаппарата
Нам доверяют сотрудники: Вопросы и предложения: info@fixit24.ru Адрес: г. Москва, м. Тверская, ул. Тверская, д. 20, 2 этаж, офис 204....
Чистка кэша на ноутбуке
Все, что находит отображение в браузере (музыка, картинки, видео) перед воспроизведением сохраняются на ваш ПК как временные файлы.Если их количество...
Что лучше газель некст или фиат дукато
На прошлой неделе Газель-Некст была признана лучшим автомобилем года в России. Эксперты коммерческого транспорта оценили ее в 2–3 раза выше,...
Adblock detector