Проблема неполноты SSL на сайте www.pgpru.com и petname для Firefox – [решено]
Большинство серьёзных проектов используют SSL-хостинг, а для сохранения доступа к аккаунту через сеть tor он просто необходим, иначе его просто угонят с исходящего узла.
Впрочем и без сети tor пароль в открытом виде проходит через кучу узлов, а значит через кого попало.
К счастью, pgpru.com перешёл на такой защищённый хостинг, хотя это затратно и тяжело для небольшого некоммерческого проекта.
Но по понятным причинам (например для компенсации тех же затрат на хостинг) на сайте крутятся баннеры, Но эти же баннеры не дают покоя в том смысле, что даже если их полностью
заблокировать, браузер будет получать смешанный контент, как защищённый так и нет (http + https).
При этом он не будет его подробно различать по степени защищённости, а просто посчитает не всю страницу защищённый, выведет битый значёк SSL и предупреждение "Broken https".
Злоумышленник, находящийся посредине, может произвольно менять соотношение между защищённым и незащищённым контентом, оставаясь незамеченным (если не разбирать полученный браузером исходный код страницы), например модифицировав отдаваемую страницу так что поле ввода пароля пойдёт через простой http, а декоративные элементы страницы отдавать через https.
Пользователь конечно может заблокировать http://www.pgpru.com и разрешить только https://www.pgpru.com, чтобы избавиться от возможной подмены, но это неполноценное решение, так как всё равно получим битую страницу и видимость защиты.
Кстати существует простой плагин к Firefox – petname. Вот какую задачу он решает.
Пусть мы не доверяем центрам сертификации, пусть корневой сертификат будет похищен, пусть даже центр сертификации сдаст свои ключи полиции, чтобы она могла организовать подставной сайт, чтобы отслеживать соединения пользователя (полиция – это самый опасный злоумышленник :-) ). Но если не похищен сертификат самого сайта, то браузер будет показывать правильное соединение для другого (подставного) сайта, заверенное корневым сертификатом, хотя отпечаток сертификата сайта и будет отображаться другой.
Другая проблема – если пользоваться самоподписанными сертификатами, а также что один корневой сертификат может быть использован для подписи сертификата другого сайта, если раздатчик сертификатов это позволяет по неосторожности или по умыслу.
Заметить это трудно, Не сверять же каждый раз отпечатки по бумажке. Для в этого в плагине petname проблема решена самым простым и изящным способом: каждому посещённому SSL-сайту при первом заходе прелагается сопоставить его хэш-отпечаток с некоторым кратким названием-кличкой. Если при последующем заходе [кличка]-[url]-[отпечаток сертификата] совпадут -получим
зелёный значок, иначе предупреждение о смене сертификата, но и подмену url можно заметить по не той "кличке" рядом с адресной строкой.
Клички сайтов и хэши сертификатов (сверяется и md5 и sha) хранятся в закладках, так что ими легко обмениваться.
А вот с https://www.pgpru.com это не работает из-за тех же баннеров. Получаем статус untrusted.
Решение может быть в том, чтобы пропускать все баннеры через https://, такое можно теоретически сделать на отдельном сервере, но решать такую задачу на виртуальном хостинге это конечно изврат. С другой стороны, SSL тоже должен быть полноценным, а не для показухи.
Какие мнения?
комментариев: 212 документов: 27 редакций: 20
комментариев: 271 документов: 13 редакций: 4
А не проще ли будет разделить все страницы на две группы в зависимости от их функций на сайте? На одних будут содержаться рекламные банеры и они будут отдаваться только по http, а на других смешанного контента не будет совсем и они будут отдаваться только по https.
комментариев: 212 документов: 27 редакций: 20
Я думаю просто линковку можно сделать. Версия https, где все адреса и содержимое будут принимать виртуально вид https://www.хххх.сом.
Хотя есть проблемы, например в вордпрессе:
http://blog.sjinks.org.ua/word.....-for-http-and-https/
бабки, брат!
бабки вещь суровая ...