Что такое смешанный контент и как устранить его при использовании протокола HTTPS

Смешанный контент — это незащищенные элементы, передаваемые по HTTP-протоколу, которые размещены на страницах с SSL-сертификатом. Наличие на страницах с HTTPS-протоколом ссылок с HTTP делает сайт уязвимым и негативно влияет на SEO.

Что такое смешанный контент при HTTPS

При использовании протокола HTTPS необходимо следить за тем, чтобы на страницах присутствовало только защищенное содержимое. То есть все внутренние и внешние ссылки на изображения, скрипты, другие страницы сайта должны быть прописаны либо в относительном виде, либо с протоколом HTTPS. Желательно сразу все прописывать в относительном виде.

Соединение со страницей по протоколу HTTPS зашифровано с помощью TLS и защищено от перехвата данных злоумышленниками. Если на такой странице присутствует незащищенный контент, страница становится уязвимой — ее можно перехватить и внести изменения в код. Из-за этого соединение перестает быть защищенным.

Если на защищенной странице с протоколом HTTPS размещается ссылка, которая начинается с http://, это трактуется поисковыми системами как ошибка смешанного контента, на английском — «mixed content error», которая негативно влияет на продвижение сайта.

Согласно спецификации W3C, браузеры добавляют на страницы со смешанным содержимым предупреждения о незащищенном контенте:

незащищенный контент

Данную ошибку можно отследить с помощью консоли разработчиков Mozilla, а также посредством консоли JavaScript панели инструментов Google Chrome.

Предупреждение в Chrome:

Предупреждение Chrome

Предупреждение в Mozilla:

Предупреждение Mozilla

Каким бывает смешанное содержимое на страницах

Смешанное содержимое делится на две группы — пассивное и активное.
 
1. Пассивный или отображаемый смешанный контент — те общедоступные элементы, похищение которых не позволяет получить конфиденциальную и финансовую информацию.

Перехват подобных данных по небезопасному протоколу не может принести материальной выгоды злоумышленникам. Единственное, что они могут сделать, — испортить внешний вид сайта подменой этого контента.

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

 
2. Активный смешанный контент содержит скрипты и фреймы, перехват которых может нанести урон сайту и его пользователям. К такому контенту в первую очередь относятся атрибуты src тегов <script> и <iframe>. Также к данной группе принадлежат:
  • атрибут href тега <link>;
  • атрибут data тега <object>;
  • параметр URL в стилях CSS;
  • XTMLHttpRequest, включая все его запросы.

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

При этом не имеет значения, вводит ли пользователь какие-то важные данные именно на этой странице, так как злоумышленники могут перенаправить его с помощью скрипта на небезопасный сайт. Нужная информация будет украдена уже с этого ресурса.

Пользователям в целом не рекомендуется вводить данные своих карточек на сайтах, в надежности которых есть хотя бы небольшие сомнения.

 

Как обнаружить и устранить незащищенный контент при HTTPS

 
Если на проекте множество страниц, поверять все их с помощью инструментов разработчиков браузеров — слишком трудоемкий процесс. Чтобы автоматизировать и упростить данную задачу, можно воспользоваться модулем «Аудит сайта» от Serpstat. Перейдем для этого в раздел «Сертификат HTTPS» суммарного отчета:
Аудит в Серпстат
В данном отчете будут видны ошибки, связанные со смешанным контентом. Рассмотрим более подробно указанный выше пример:
 
1. Ошибочные ссылки со страниц c протоколом HTTPS на страницы HTTP.

Данную ошибку можно исправить, если заменить на указанных страницах во внутренних ссылках протокол HTTP на HTTPS.

Страницы https ссылаются на страницы http
 
2. Использование поддержки HSTS.

Эта ошибка связана с особенностями веб-сервера, для ее устранения необходимо обратиться в службу хостинг-провайдера, узнав, есть ли возможность использования HSTS. Это механизм, активирующий автоматическое перенаправление на безопасный протокол даже при пользовательском вводе ссылки с http://.
Использование поддержки HSTS
 
3. Присутствие незащищенных элементов.

При появлении данной ошибки необходимо проверить указанные страницы на наличие исходящих ссылок, начинающихся с http://, и также исправить их на https://. Если ресурсы, на которые ведут ссылки, работают не на защищенном протоколе, можно скачать с них необходимые данные.

Например, при использовании изображений или скриптов с других ресурсов их проще всего скачать и загрузить на собственный сервер. После этого нужно изменить проблемные ссылки на относительные или же использовать протокол HTTPS.

Незащищенные элементы
 
4. Помимо перечисленного выше, с помощью отчета Serpstat можно узнать, не попали ли незащищенные ссылки в файл sitemap и не остались ли на проекте страницы с протоколом HTTP.
 
5. Кроме того, сайт можно дополнительно просканировать любой программой или сканером сайта типа SEO Frog. Он также выдаст полный список ссылок, которые есть на сайте как с http, так и с https

Заключение

Смешанный контент негативно влияет на отображение сайта и его продвижение, поэтому необходимо принимать меры по его своевременному обнаружению и устранению. Это необходимо для обеспечения безопасности пользователей ресурса, эффективного SEO-продвижения и устранения предупреждений браузеров.

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

Обнаружить проблемы со смешанным контентом можно с помощью инструментов разработчиков браузеров, однако это требует продолжительного времени. Более оперативный способ — получить детальные сведения о всех проблемах, связанных с некорректным использованием протокола HTTP на сайте, с помощью Serpstat.

Сканировать сайт на предмет небезопасных ссылок нужно сразу после того, как сайт создан или переведен на https.

При исправлении ошибок в зависимости от ситуации необходимо либо менять ссылки на безопасные с https://, либо загружать нужные файлы на свой сервер с других ресурсов и затем использовать относительные ссылки.

Автор статьи: Евгений Глущенко — генеральный директор Интоп-Медиа.
Быстрая консультация