Как определить, какие части веб-страницы зашифрованы, а какие нет? - PullRequest
11 голосов
/ 20 ноября 2008

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

Ответы [ 7 ]

11 голосов
/ 07 октября 2011

Проблема не всегда в плохих ссылках на вашей странице.

Если вы ссылаетесь на iresources на внешнем сайте с помощью https://,, а затем внешний сайт выполняет свое собственное перенаправление HTTP на страницы без SSL, что нарушит блокировку SSL на вашей странице.

НО, при просмотре источника или информации на вкладке мультимедиа вы не увидите никаких http://,, поскольку ваша страница правильно использует только https: // ссылки.

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

  1. Установите дополнение Firebug в Firefox, если у вас его еще нет, и перезапустите FF при появлении запроса.
  2. Откройте Firebug (F12 или меню маленьких насекомых справа от окна поиска).
  3. В firebug выберите вкладку «Net». Нажмите «Включить» (текстовая ссылка), чтобы включить его
  4. Обновите страницу с вашей проблемой, не используя кеш, нажав Ctrl-Shift-R (или Command-shift-R в OSX). Вы увидите вкладку «Net» в Firefox, заполненную списком каждого HTTP-запроса.
  5. Как только страница будет загружена, наведите указатель мыши на левый столбец каждого HTTP-запроса, показанного на вкладке net. Появится всплывающая подсказка, показывающая фактическую использованную ссылку. будет легко обнаружить любые http: // вместо https: //.
  6. Если какая-либо из ваших ссылок привела к перенаправлению HTTP, вы увидите «301 Moved Permanently» в столбце состояния HTTP, а другой запрос HTTP будет чуть ниже для нового местоположения. Если проблема была из-за внешнего перенаправления, вот где доказательства будут - запрос нового местоположения будет HTTP.
  7. Если ваша проблема связана с перенаправлениями с внешнего сайта, вы увидите коды статуса «301 Moveed навсегда» для запросов, которые указывают их на новое местоположение.
  8. Расширьте любое из этих 301 перемещений со знаком плюс слева и просмотрите заголовки ответа, чтобы увидеть, что происходит. заголовок Location: сообщит вам новое местоположение, которое внешний сервер запрашивает браузеры.
  9. Запишите эту информацию в редиректе, затем отправьте дружественное вежливое электронное письмо на рассматриваемый внешний сайт и попросите его удалить перенаправления https: // -> http: //. Объясните, как это нарушает SSL на вашем сайте, и в идеале добавьте ссылку на страницу, которая, если возможно, не работает, чтобы они могли сами увидеть ошибку. (это приведет к более быстрым действиям, чем если вы просто сообщите им об ошибке).

Вот пример выходных данных из Firebug для проблемы внешнего перенаправления. В моем случае я обнаружил страницу с именем https: // data feeds получала фиды, переписанные внешним сервером, на http: //.

Я переименовал свой сайт в «mysite.example.com», а внешний сайт - в «external.example.com», но в остальном хедеры остались нетронутыми. Заголовки запроса показаны внизу, под заголовками ответа. Обратите внимание, что я запрашиваю ссылку https: // со своего сайта, но меня перенаправляют на ссылку http: //, что нарушает мою блокировку SSL:

Response Headers  
Server  nginx/0.8.54
Date    Fri, 07 Oct 2011 17:35:16 GMT
Content-Type    text/html
Content-Length  185
Connection  keep-alive
Location    http://external.example.com/embed/?key=t6Qu2&width=940&height=300&interval=week&baseAtZero=false

Request Headers
Host    external.example.com
User-Agent  Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept  */*
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip, deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection  keep-alive
Referer https://mysite.example.com/real-time-data
Cookie  JSESSIONID=B33FF1C1F1B732E7F05A547A9CB76ED3
Pragma  no-cache
Cache-Control   no-cache

Итак, важно отметить, что в заголовках ответа (выше), вы видите местоположение: оно начинается с http://,, а не https://. Ваш браузер примет это во внимание, когда выяснит, блокировка действительна или нет, и сообщать только частично зашифрованный контент! (На самом деле это важная функция безопасности браузера для предупреждения пользователей о возможных XSRF и / или фишинговых атаках).

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

9 голосов
/ 20 ноября 2008

Для каждого элемента, загруженного на страницу, проверьте их схему:

  • начинается с HTTPS: шифруется.
  • начинается с HTTP: не шифруется.

(вы можете увидеть относительно полный список в Firefox, щелкнув правой кнопкой мыши на странице и выбрав «View Page Info», затем вкладку «medias».

EDIT: FF показывает только изображения и мультимедийные элементы. Это также файлы javascript и CSS, которые необходимо проверить. А Firebug - хороший инструмент, чтобы найти то, что вам нужно.

2 голосов
/ 20 ноября 2008

Некоторые элементы могут не указывать http или https, в этом случае, какой бы ни использовался для страницы, будет использоваться для этих элементов, то есть, если запрос страницы выполняется по SSL, тогда эти изображения будут зашифрованы, в то время как запрос страницы не находится под SSL, то они будут зашифрованы. Fiddler в Internet Explorer также может быть полезен для отслеживания части этой информации.

1 голос
/ 20 ноября 2008

Может ли это сделать Firebug?

Edit: похоже, что firebug также сделает это с помощью панели «Net», которая также предоставляет вам некоторые другие интересные статистические данные.

1 голос
/ 20 ноября 2008

Обнюхивать пакеты - это скажет вам очень быстро. WireShark - хорошая программа для такой задачи.

0 голосов
/ 12 июня 2013

Я использую плагин FF HTTPFox для этого.

https://addons.mozilla.org/en-us/firefox/addon/httpfox/

0 голосов
/ 19 февраля 2009

Лучший инструмент, который я нашел для обнаружения http-ссылок при подключении https, - Fiddler . Это также отлично подходит для многих других действий по устранению неполадок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...