Я использую HTTPS Everywhere в Firefox, но он применяет HTTPS только для очень ограниченного набора очень известных сайтов (по умолчанию).
Я использую большое количество гораздо более мелких сайтов, которые имеют версии HTTPS, но при переходе на HTTP они не применяют автоматически свой HTTPS (не говоря уже о HSTS ), поэтому, если я специально не забуду ввести HTTPS (и/или добавить все свои домены в белый список в HTTPS Everywhere), я снова и снова использую незащищенные версии веб-сайтов, которые я легко мог бы автоматически использовать для безопасной версии благодаря какой-то оригинальной надстройке Firefox или пользовательскому скрипту.
Это может привести к небольшому затруднению в использовании, но я хотел бы опробовать эту концепцию ради потенциально гораздо большей конфиденциальности от прослушивающих шпионов, подслушивающих в Интернете. (например, мой VPN, мой интернет-провайдер или другие гнусные стороны, такие как АНБ).
Это может быть даже очень простой скрипт Greasemonkey. Я бы предположил, что это пойдет:
http
в https
URL-адресе, если это еще не сделано https
.https
страница загружается нормально со стандартным ответом HTTP, ничего не делайте (миссия выполнена).https
страница не загружается, вернитесь http
и добавьте домен в качестве @exclude
записи в сценарий (или другой элегантный способ создания «черного списка» в сценарии), чтобы попытка не предпринималась снова.Я бы не знал, как это закодировать.
В качестве отличного бонуса можно добавить кнопку/уведомление с надписью «Бу, этого сайта не существует на HTTPS!». чтобы напомнить мне, когда я в настоящее время нахожусь на «небезопасном» сайте, чтобы, возможно, я мог начать меньше использовать эти сайты и вместо этого придерживаться тех, которые, как я знаю, не могут быть отслежены так же часто.
И, кстати, что касается (плохих) сертификатов (доверия): я бы предпочел автоматически использовать сертификат, который использует сайт, и сделать второй шаг проверки, если я действительно войду в него, а не автоматически НЕбезопасная версия бесчисленных лениво настроенных сайтов, не осознавая этого.
На SO есть связанный с этим вопрос: как заменить http-ссылки на https на всей странице с помощью Greasemonkey? Но это удовлетворило бы только ваше первое условие. Надстройка NoScript для Firefox, по-видимому, также имеет возможность принудительно использовать https , но здесь вам нужно настроить список сайтов вручную.
Хотя эти два не удовлетворяют всем вашим условиям, мое исследование выявило интересную статью на Geeks.IM под названием « Как автоматически перенаправить с HTTP на HTTPS в Firefox» , в которой для этой цели рекомендуется использовать HTTPS Finder :
HTTPS Finder отправляет небольшой HTTPS-запрос на каждую просматриваемую вами HTTP-страницу. Когда он обнаруживает SSL-соединение, он сразу устанавливает HTTPS-соединение. Вы можете позволить ему предупредить вас, когда он обнаружит такое более безопасное соединение, или автоматически перенаправить на HTTPS.
Кажется, это именно то, что вы хотите. Чтобы дать вам некоторые визуальные эффекты:
Настройки HTTPS Finder (источник: Geeks.IM ; щелкните изображение, чтобы увеличить его)
Как вы можете видеть в «Результатах обнаружения сеанса», этот аддон даже дает вам дополнительное преимущество, позволяя увидеть, насколько на самом деле безопасен https, когда речь идет о «вторичных данных» в виде файлов cookie, которые вы хотите защитить (думая о ваши идентификаторы сеансов).
Поскольку HTTPS Finder был удален с сайта дополнений Mozilla, вы можете найти его .xpi
в разделе загрузки проекта . К сожалению, похоже, что это дополнение больше не поддерживается (последняя указанная версия от 12/2013), поэтому я не могу сказать вам, совместимо ли оно (или может ли оно работать) с последними версиями Firefox. 1
Обновление: 2
Аддон, использующий прямо противоположный подход, — это HTTP Nowhere , основная функция которого — блокировать все URL-адреса HTTP, которые вы посещаете, но в настройках которого также есть опция: «Всегда пробовать HTTPS вместо блокировки». Таким образом, это позволит полностью избежать незащищенного просмотра: либо он найдет защищенный вариант, либо не позволит вам получить доступ к запрошенному вами URL-адресу. ОП попробовал это, и он работает хорошо, и даже если, по общему признанию, у него есть основная (неотключаемая) функция (блокировка HTTP), которая технически не входит в объем первоначального вопроса, это тот, с которым он решил пойти, и это работает отлично подходит как для белого, так и для черного списка, в обоих направлениях.
Настройки HTTP Nowhere (щелкните изображение, чтобы увеличить его)
Хотя этот аддон по-прежнему доступен на AMO, неясно, поддерживается ли он по-прежнему активно: его последняя версия от 9/2013 стала еще старше.
1: как указывает OP: просто дважды проверил то, что вы нашли, я бы сказал, что это не соответствует всем требованиям, поскольку похоже, что оно «проверяет» HTTPS вместо ПРИНУДИТЕЛЬНОГО (затем смотрит, работает ли это), и Я думаю, только после загрузки всей HTTP-страницы. Мне это кажется отчасти правдой, поскольку он придерживается http
URL-адреса , * когда для него не было найдено https . В связанной статье говорится: вы можете позволить ему предупредить вас, когда он обнаружит такое более безопасное соединение , или автоматически перенаправить на HTTPS .
2: по запросу ОП с предоставленной им информацией
Энигма
block all HTTP traffic
опцию.