Исправление / обход ошибки "Не удается подключиться к реальному заблокированному веб-сайту" в Google Chrome с блокировкой OpenDNS
Tl;Dr:
Как не дать Chrome отказаться от загрузки страниц, заблокированных OpenDNS, когда сервер явно запросил HTTPS?
Длинный вопрос:
У меня большая проблема с Chrome в моей организации. Я использую DNS для управления блокировкой веб-сайтов, для сайтов, которые не подходят и потенциально представляют опасность для организации, в которой я это делаю.
Я хочу использовать Chrome только по сети, поскольку у Internet Explorer есть проблемы с совместимостью с некоторыми сайтами, которые мы используем (мы не можем изменить это или использовать другие сайты). Поэтому использование Internet Explorer не является решением.
Я не хочу устанавливать другой браузер по нескольким причинам. Главным образом из-за сложности переписывания пользовательских надстроек, которые мы используем.
Однако в последнее время у меня было много проблем с ошибками SSL Chrome. Я не могу использовать свои пользовательские страницы блокировки OpenDNS, которые используют контактную форму для запроса разблокировки.
Chrome часто блокирует OpenDNS для сайтов (хороший пример - Facebook), которые запрашивают HTTPS. Некоторые сайты, такие как https://internetbadguys.com/ (пример OpenDNS). Это означает, что Chrome отказывается загружать страницу блокировки, объясняя, что сайт заблокирован. Вместо этого они часто обращаются в службу поддержки, но им нужно решение, так как им надоело получать множество ошибок SSL.
Я пытался найти способы выключить это. Я пытался:
- Ввод "продолжить". Это не сработало.
- Наберите "продолжить", нажав ввод. Не работал
- Я больше не могу найти фишинга и защиты от вредоносных программ в Chrome, из интернет-руководств.
- Не использует HTTPS. Однако на большинстве сайтов существует автоматическое перенаправление на HTTPS. Поэтому ошибка продолжает появляться.
- Проверяю мои часы. Они были правы.
У кого-нибудь есть идеи о том, как отключить, обойти или обойти эту "функцию"?
РЕДАКТИРОВАТЬ: Это пример того, о чем я говорю - Я нашел это на изображениях Google.
ПРИМЕЧАНИЕ: Я НЕ блокирую Google.
РЕДАКТИРОВАТЬ 2: мои часы верны. Я не могу перестать использовать OpenDNS либо.
4 ответа
Я с тобой 100% на этом. Наша компания использует OpenDNS для блокировки определенных веб-сайтов. YouTube.com является одним из них. Однако мы также выдаем "обходные коды" сотрудникам, чтобы обойти заблокированный сайт. Вот как это работает:
- Пользователь переходит на YouTube.com, который автоматически перенаправляет на SSL
- OpenDNS блокирует домен youtube.com
- Chrome ожидает SSL от youtube.com, но ответ на самом деле приходит от OpenDNS... следовательно, сертификаты не совпадают.
Итак, проблема в том, как вы обходите OpenDNS с помощью их обходных кодов, если Chrome даже не дает вам выбора?
Альтернативы: используйте Firefox или (мне больно это предлагать) Internet Explorer.
Итак... вы перенаправляете реальный сайт Google и жалуетесь, когда браузер Google замечает, что вы перехватили сайт Google?
Создайте Chrome из исходного кода и разверните его на своем предприятии. Или прекратите использовать OpenDNS.
Вы в основном просите нарушить безопасность SSL с вашим предложением.
В Chrome есть функция закрепленных сертификатов, где в браузере хранятся известные сертификаты веб-сайтов.
Это означает, что всякий раз, когда предоставляется какой-либо другой сертификат, кроме сертификата для желаемого места назначения, браузер выдает предупреждение о человеке в середине атаки.
Это функция безопасности, и ее не следует отключать.
Взлом SSL и последующая подача недействительного сертификата - плохая практика, на которую люди должны жаловаться всякий раз, когда это происходит. Исходя из вашего описания, похоже, что подобный угон - это именно то, что делает OpenDNS.
Причина, по которой я считаю такую плохую практику, заключается в том, что некоторые пользователи могут думать, что существуют законные причины для взлома SSL, такое неправильное представление вредно для безопасности.
Итак, что вы можете с этим поделать?
Если вы хотите остаться с OpenDNS, я рекомендую вам найти IP-адрес, к которому они перенаправляют соединения. На границе вашей сети заблокируйте все исходящие соединения с этим IP-адресом, кроме порта 80. Убедитесь, что пакеты TCP SYN получают в ответ пакет TCP RST. Ответ с ошибкой ICMP или просто отбрасывание SYN не гарантированно будет хорошо обработан отправляющим стеком TCP.
Если соединение перехвачено на уровне DNS и при попытке соединения с портом 443 отправляется TCP RST, браузер отобразит собственное сообщение об ошибке, например "Эта веб-страница недоступна", что намного лучше, чем предупреждение о сертификате.
Вы по-прежнему можете отображать свое пользовательское сообщение об ошибке пользователям, подключающимся к порту 80, но, как уже отмечали другие, вы не можете сделать это с HTTPS, поскольку вся цель HTTPS - предотвратить это.
Почему пользователи могут подключаться к порту 443, а не к порту 80? Есть как минимум три возможных причины:
- Пользователь фактически набрал
https://
в их браузер. - Браузер перенаправил с http на https в кеше.
- В домене включена строгая транспортная безопасность, и браузер знает об этом.
В этих случаях вы не можете предоставить пользователям страницу с ошибкой, поэтому вам нужно заранее сообщить им, как запросить разблокировку.