TLS в HTTPS защищает HTTP-запрос, но не защищает нижние уровни. То есть веб-сайт HTTPS по-прежнему может быть заблокирован путем проверки заголовка "Указание имени сервера" TLS (та же функция, которая используется для виртуального хостинга HTTPS) или по IP-адресу (если клиент не запрашивает какой-либо конкретный сервер через SNI TLS). ), оба из которых отправляются за пределы туннеля TLS.
Тем не менее, Cyberroam в вашем случае не делает ни; он использует подход кувалдой - он перехватывает все рукопожатия HTTPS, дешифрует соединение, делая вид, что это клиент, проверяет его и повторно шифрует его, используя собственный сертификат TLS. Так что вместо одного рукопожатия TLS ...
... теперь у вас есть два:
По сути, ваш брандмауэр выполняет атаку «человек посередине» против вас.
Поскольку брандмауэр, очевидно, не имеет реального сертификата TLS Facebook, он генерирует свой собственный.
Теперь, как правило, поскольку веб-сервер имеет нераспознанный сертификат, браузер спросит вас, хотите ли вы игнорировать это или предпочитаете работать в безопасности. (В корпоративных средах сертификат брандмауэра может быть даже предустановлен на все рабочие станции.)
Однако когда вы в последний раз посещали Facebook, его сервер сообщил браузеру, используя HSTS, что он должен быть заблокирован в «безопасном» режиме. То есть, пока HSTS активен для сайта Facebook, браузер всегда будет использовать HTTPS, даже если вы пытались зайти на этот сайт через http://
, и он не позволит вам переопределить ошибки плохого сертификата, такие как у вас. потому что нет никакого способа отличить Cyberroam от реальной злонамеренной атаки.
Кроме того, Firefox и Chrome даже жестко закодировали информацию о сертификатах для некоторых веб-сайтов (включая Google и Facebook), поэтому даже если ваша ОС доверяла поддельному сертификату, вы все равно не смогли бы посетить Google, потому что браузер знает, что «только власти X и Y» и никто другой не может выдавать сертификаты для google.com ". (Я думаю, это называется закрепление сертификата, или предварительная загрузка, или что-то такое?)