Как добавить заголовки безопасности HTTP в WordPress

Опубликовано: 2023-05-18

WordPress — самая популярная в мире система управления контентом (CMS), на которой работает более 43% всех веб-сайтов в Интернете.Однако его широкое использование делает его частой мишенью для хакеров.

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

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

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

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

Что такое заголовки безопасности HTTP?

Заголовки безопасности HTTP — это группа директив, используемых веб-приложениями для реализации средств защиты в веб-браузерах. Эти заголовки обмениваются между веб-браузером (клиентом) и сервером для определения параметров безопасности HTTP-связи. Этот обмен информацией сообщает браузеру, как вести себя при взаимодействии с вашим сайтом, и управляет такими процессами, как отображение ошибок и управление кешем.

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

Однако наша главная забота заключается в том, чтобы заголовки безопасности HTTP защищали ваш веб-сайт от распространенных атак, таких как межсайтовый скриптинг и атаки методом грубой силы.Наиболее эффективные способы реализации этих заголовков — установить их для вашей учетной записи хостинга WordPress (на уровне сервера) и использовать брандмауэр приложения веб-сайта на уровне DNS, такой как Cloudflare.

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

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

Типы HTTP-заголовков безопасности WordPress

Существует несколько заголовков безопасности HTTP, которые можно использовать на вашем веб-сайте WordPress для усиления защиты. Давайте рассмотрим некоторые из наиболее важных из них.

1. Заголовок безопасности защиты X-XSS

Этот заголовок безопасности используется для настройки межсайтового скриптинга (XSS) — уязвимости системы безопасности, которая позволяет третьим сторонам, не прошедшим проверку подлинности, выполнять код от имени другого веб-сайта в браузере.

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

Заголовок может иметь одно из следующих нескольких значений:

  • X-XSS-Protection: 0 Отключает фильтрацию XSS (не рекомендуется)
  • X-XSS-Protection: 1 Включает фильтрацию XSS, которая обычно используется по умолчанию в большинстве браузеров. При обнаружении XSS-атаки браузер удалит небезопасные части страницы (санирует).
  • X-XSS-защита: 1; mode=block Включает XSS-фильтрацию, но браузер не очищает страницу, а отрисовывает ее (рекомендуется)
  • X-XSS-защита: 1; report=<reporting-uri> Включает фильтрацию XSS. Браузер очистит страницу и сообщит о нарушении, если обнаружит атаку межсайтового скриптинга.

2. Заголовок безопасности опций X-Frame

Заголовок безопасности X-Frame-Options можно использовать для предотвращения различных атак методом перебора и DDOS-атак , но его наиболее эффективное использование — это защита от перекрестного взлома iframe и клик-джекинга на вашем веб-сайте WordPress.Этот заголовок позволяет вам решить, может ли страница вашего веб-сайта быть встроена с помощью элементов iframe в браузере.

X-Frame Option защищает ваш веб-сайт от кражи кликов, не позволяя фреймам заполняться вашим сайтом. Он имеет две разные директивы, которые вы можете выбрать —DENY и SAMEORIGIN. Он работает со всеми популярными веб-браузерами, такими как Chrome, Safari, Firefox и Opera.

 Параметры X-Frame: ЗАПРЕТИТЬ
 Параметры X-Frame: SAMEORIGIN

Если указан параметр DENY, заголовок X-Frame-Options вызовет ошибку, если какой-либо браузер попытается загрузить страницу во фрейме при загрузке с других сайтов. Попытки сделать это также потерпят неудачу при загрузке в iframe с исходного сайта. С другой стороны, если мы укажем SAMEORIGIN , мы все равно сможем использовать страницу во фрейме, если сайт, включающий ее во фрейм, тот же, что и тот, который обслуживает страницу.

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

3. Заголовок HTTP Strict Transport Security (HSTS)

HTTP Strict-Transport-Security — это заголовок ответа безопасности, отправляемый с веб-сервера в веб-браузер пользователя, чтобы сообщить ему, что доступ к сайту должен осуществляться только с использованием HTTP, а не через незашифрованный HTTP.

Этот заголовок обеспечивает механизм принудительного использования HTTPS браузером , даже если пользователь вводит «http://» в адресной строке или переходит по HTTP-ссылке.Это также может помешать пользователям игнорировать просроченные или недействительные сертификаты SSL/TLS и другие предупреждения браузера. Значение HSTS устанавливается для каждого браузера, который посещает веб-сайт. Он не устанавливается для каждой машины.

Заголовок HSTS предоставляет возможность включать любые поддомены — вы можете использовать директиву includeSubDomains, чтобы принять тот же уровень безопасности, что и в корневом домене. Это означает, что любая локальная разработка с доменом (или поддоменами) больше не будет доступна через HTTP, поскольку браузер будет разрешать только HTTPS-трафик.

Например, если у вас есть заголовки HSTS на example.com с необходимой директивой «includeSubdomains », то вы не сможете получить доступ к поддоменам example.com через незащищенные соединения после посещения example.com. Поэтому будьте осторожны, если вы решите использовать «includeSubdomains» , это может иметь последствия для других ваших доменов.

Как только браузер получит заголовок HSTS с сайта, он запомнит политику HSTS на указанный период времени и автоматически обновит все будущие запросы к сайту до HTTPS. Это помогает избежать атак «человек посередине», подслушивания и других форм вмешательства, гарантируя, что вся связь между браузером и сервером зашифрована.

Синтаксис этого заголовка:

 # Без директивы includeSubDomains
<IfModule mod_headers.c>
Набор заголовков Strict-Transport-Security: «max-age=63072000;»
</ЕслиМодуль>
# С директивой includeSubDomains
<IfModule mod_headers.c>
Набор заголовков Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" 
</ЕслиМодуль>

Директива max-age=<expire-time> указывает время (в секундах), в течение которого браузер должен помнить, что доступ к сайту возможен только с использованием HTTPS. Например, в приведенном выше примере максимальный возраст установлен на два года. Если вы выбрали CDN Servebolt или ускоренные домены от Servbolt, вы автоматически получите срок действия HSTS на 1 год.

4. Заголовок Referrer-Policy

Этот заголовок HTTP определяет, сколько информации о реферере, отправляемой через заголовок реферера, должно быть включено в запросы. Он ограничивает объем информации, которая отправляется, когда посетитель сайта нажимает на ссылку. Это помогает предотвратить утечку конфиденциальной информации на другие веб-сайты , например URL-адрес страницы с личной информацией.

Он может иметь несколько значений — вот краткое изложение:

  • no-referrer: заголовок Referer никогда не будет отправлен ни при каких обстоятельствах.
  • No-referrer-when-downgrade: заголовок Referer не будет отправляться при переходе с сайта HTTPS на сайт HTTP.
  • Происхождение: заголовок Referer будет включать только происхождение (схему, хост и порт) ссылающейся страницы.
  • Origin-when-cross-origin: заголовок Referer будет включать полный URL-адрес ссылающейся страницы при переходе между страницами в одном и том же источнике и только источник при переходе к другому источнику.
  • Строгое происхождение: заголовок Referer будет включать только источник ссылающейся страницы и не будет отправляться для запросов из разных источников.
  • Strict-origin-when-cross-origin: заголовок Referer будет включать источник ссылающейся страницы и не будет отправляться для запросов из разных источников, за исключением источников с одного и того же сайта. Мы рекомендуем использовать этот параметр, поскольку он сохраняет полезность заголовка и снижает риск утечки данных.
  • Unsafe-url: заголовок Referer будет отправлять источник, путь и строку запроса при выполнении любого запроса, независимо от безопасности.

Подробное обсуждение заголовка политики реферера см. в статье Google web.dev о передовых методах политики реферера .

5. Заголовок X-Content-Type-Options

Заголовок X-Content-Type-Options отправляется сервером в ответе HTTP, чтобы указать браузерам о типах MIME. Цель этого заголовка — предотвратить интерпретацию браузерами файлов как MIME-типа, отличного от указанного в заголовке.

Этот заголовок может иметь единственное значение «nosniff». Синтаксис следующий:

 X-Content-Type-Options: nosniff

Он очень эффективен против атак путаницы MIME — использование этого заголовка безопасности может помешать браузеру интерпретировать файлы неожиданным образом, что может привести к уязвимостям безопасности. Например, если злоумышленник загружает файл с расширением .jpg, но который не содержит содержимого, поскольку на самом деле является скриптом, установка заголовка X-Content-Type-Options на «nosniff» не позволит браузеру выполнить скрипт, тем самым защищая пользователей от потенциальных нарушений.

6. Заголовок политики безопасности контента(CSP)

Content-Security-Policy — это заголовок безопасности, используемый для указания источника контента и предоставляющий механизм для контента, который разрешено загружать и выполнять на веб-сайте или в веб-приложении. Указав набор политик, этот заголовок может ограничивать типы контента, разрешенного на веб-странице, и смягчать различные типы угроз безопасности. Это дополнительный уровень защиты от атак межсайтового скриптинга (XSS) и внедрения данных, которые используются для таких преступлений, как кража данных, порча сайта и распространение вредоносных программ.

В дополнение к управлению типами ресурсов, которые могут быть загружены, заголовок Content-Security-Policy также предоставляет способ указать браузеру, как он должен обрабатывать любое нарушение политик, указанных в заголовке. Например, политика может указывать, что если ресурс нарушает политику, браузер должен опубликовать предупреждение или заблокировать загрузку ресурса.

Сервер должен быть настроен для возврата заголовка Content-Security-Policy для работы политик. Вы можете использовать HTTP-заголовок CSP, чтобы указать свою политику следующим образом:

 Content-Security-Policy: политика

Эта политика представляет собой строку, содержащую директивы политики, описывающие вашу политику безопасности контента. Например, вы можете добавить следующие строки в файл .htaccess для реализации CSP.

 <IfModule mod_headers.c>
Заголовок устанавливает Content-Security-Policy "default-src https: 'unsafe-eval' 'unsafe-inline' 'self'; object-src 'self'; font-src https: data: 'self' http: fonts.googleapis. com themes.googleusercontent.com; connect-src https: wss: 'self'; img-src https: data: 'self' http: *.gravatar.com; worker-src blob: https: 'self' 'unsafe-inline ' 'unsafe-eval'; media-src https: blob: 'self'; style-src https: 'unsafe-eval' 'unsafe-inline' 'self' http: fonts.googleapis.com"
</ЕслиМодуль>

Если вы применяете CSP на веб-сайте WordPress, вы должны помнить, что «unsafe-inline» и «unsafe-eval» необходимы WordPress для правильной работы. Приведенная выше конфигурация является хорошей отправной точкой для большинства веб-сайтов WordPress. Однако существуют риски, связанные с использованием приведенной выше конфигурации без четкого понимания того, что означает каждый раздел. Вот разбивка каждой директивы:

  • default-src — эта директива устанавливает политику по умолчанию для всех типов ресурсов, если они не переопределены другими директивами.В этом случае он позволяет загружать ресурсы из одного и того же источника («я»), а также из источников HTTPS и из сценариев, использующих «unsafe-eval» или «unsafe-inline».
  • object-src — эта директива ограничивает типы объектов, которые могут быть встроены в страницу, например апплеты Flash или Java.Здесь он позволяет загружать объекты только из одного и того же источника («я»).
  • font-src — эта директива ограничивает источники, из которых можно загружать шрифты.Здесь он позволяет загружать шрифты из источников HTTPS, схемы URI данных и из того же источника («я») или из источников HTTP из Google Fonts и Google User Content.
  • connect-src — эта директива ограничивает источники, которые можно использовать для сетевых запросов, таких как запросы AJAX или WebSockets.Здесь он позволяет устанавливать соединения только через HTTPS или WebSockets и из одного и того же источника («я»).
  • img-src — эта директива ограничивает источники, из которых можно загружать изображения.Здесь он позволяет загружать изображения из источников HTTPS, схемы URI данных и из того же источника («я») или из источников HTTP из Gravatar.
  • worker-src — эта директива ограничивает источники, из которых могут быть загружены веб-воркеры.Здесь он позволяет загружать рабочие процессы только из схемы URI больших двоичных объектов, источников HTTPS и из сценариев, использующих «unsafe-eval» или «unsafe-inline».
  • media-src — эта директива ограничивает источники, из которых могут быть загружены медиа-ресурсы, такие как аудио или видео.Здесь он позволяет загружать мультимедиа только из источников HTTPS, схемы URI большого двоичного объекта и из того же источника («я»).
  • style-src — эта директива ограничивает источники, из которых могут быть загружены таблицы стилей.Здесь он позволяет загружать стили из источников HTTPS и из сценариев, использующих «unsafe-eval» или «unsafe-inline», а также из того же источника («self») и из источников HTTP из Google Fonts.

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

Чтобы это исправить, вам нужно вручную добавить каждое правило безопасности в файл заголовков. Альтернативный, но менее безопасный способ — отключить заголовок CSP на панели администратора. Например, вот что мы делаем на servebolt.com :

 Набор заголовков X-Frame-Options SAMEORIGIN
Заголовок устанавливает Referrer-Policy strict-origin-when-cross-origin
Заголовок установил X-XSS-Protection "1; режим=блок"
<Если "%{REQUEST_URI} !~ /wp-admin/">
# добавить только заголовок, если не экран администратора
Заголовок всегда устанавливает Content-Security-Policy "default-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.intercomcdn.com cdn.firstpromoter.com servebolt.containers .piwik.pro *.intercom.io cdn.getreplybox.com platform.twitter.com v0.wordpress.com cdn.jsdelivr.net servebolt.piwik.pro ; media-src 'self' *.intercomcdn.com data: ; img -src 'self' 'unsafe-inline' *.intercom.io *.intercomcdn.com *.intercomassets.com data: raskesider.raskesider.no *.servebolt.com secure.gravatar.com servebolt.piwik.pro ; src 'self' ws: nexus-websocket-a.intercom.io *.piwik.pro servebolt.piwik.pro *.intercom.io ;font-src 'self' *.intercomcdn.com data: ;frame-src 'self app.getreplybox.com platform.twitter.com player.vimeo.com wordpress.org www.youtube.com caniuse.bitsofco.de video.wordpress.com *.intercom.io; предки фреймов 'self' *.servebolt. com;manifest-src 'я';"
</Если>

Применяя CSP на своем сайте, вы должны помнить, что это может нарушить вашу среду разработки, если вы не используете HTTPS. Если вы не знаете, как сгенерировать политику для своего сайта, вам следует использовать графический инструмент, такой как ValidBot — CSP Wizard или Report URI: генератор CSP .

7. Заголовок политики разрешений

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

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

Общий синтаксис заголовка Permissions-Policy:

 Политика разрешений: <директива>=<список разрешений>

Например, если нам нужно заблокировать любой доступ к геолокации, мы бы сделали это:

 Политика разрешений: геолокация=()

Здесь символ () означает пустой белый список. Чтобы разрешить доступ к подмножеству источников, мы должны сделать следующее:

 <IfModule mod_headers.c>
Заголовок всегда устанавливает политику разрешений «геолокацию = (самостоятельно» https://abc.example.com «https://pqr.example.com»), midi = (), sync-xhr = (), акселерометр = ( ), гироскоп=(), магнитометр=(), камера=(), микрофон=(), полноэкранный режим=(я)"
</ЕслиМодуль>

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

 Политика разрешений: script-src 'self'

Заголовок Permissions-Policy можно использовать для замены или дополнения традиционного заголовка Content-Security-Policy, который обеспечивает аналогичные функции, но с другим синтаксисом и меньшим охватом с точки зрения разрешений.Этот заголовок в настоящее время является экспериментальной технологией , которая поддерживается только в Google Chrome и других браузерах на основе Chromium.Он обеспечивает более мощный и гибкий механизм управления разрешениями, и ожидается, что его применение в будущем будет расти. Если вы хотите попробовать это сами, вы можете использовать генератор заголовков политики разрешений , чтобы легко создавать политики разрешений.

Добавление заголовков безопасности HTTP с помощью файла .htaccess

Мы рекомендуем добавлять заголовки безопасности HTTP путем непосредственного редактирования файла.htaccess . Это файл конфигурации сервера, наиболее часто используемый веб-серверами Apache. Редактируя этот файл, вы гарантируете, что заголовки безопасности HTTP в WordPress настроены на уровне сервера.

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

Во-первых, просто войдите на свой сайт с помощью FTP-клиента или файлового менеджера в панели управления хостингом. В корневой папке вашего веб-сайта найдите файл.htaccessи щелкните правой кнопкой мыши параметр «Изменить». Это откроет файл в текстовом редакторе.Чтобы добавить заголовки безопасности HTTPS на свой сайт, вы можете добавить соответствующий код в конец файла .htaccess.

В качестве отправной точки можно использовать следующий пример кода.Он устанавливает наиболее часто используемые заголовки безопасности HTTP с рекомендуемыми настройками.

 <IfModule mod_headers.c>
Набор заголовков Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Заголовок установил X-XSS-Protection "1; режим=блок"
Набор заголовков X-Content-Type-Options "nosniff"
Набор заголовков X-Frame-Options DENY
Заголовок устанавливает Referrer-Policy "no-referrer-when-downgrade"
Заголовок устанавливает Content-Security-Policy "default-src https: 'unsafe-eval' 'unsafe-inline' 'self'; object-src 'self'; font-src https: data: 'self' http: fonts.googleapis. com themes.googleusercontent.com; connect-src https: wss: 'self'; img-src https: data: 'self' http: *.gravatar.com; worker-src blob: https: 'self' 'unsafe-inline ' 'unsafe-eval'; media-src https: blob: 'self'; style-src https: 'unsafe-eval' 'unsafe-inline' 'self' http: fonts.googleapis.com"
Заголовок всегда устанавливает политику разрешений «геолокацию = (самостоятельно» https://abc.example.com «https://pqr.example.com»), midi = (), sync-xhr = (), акселерометр = ( ), гироскоп=(), магнитометр=(), камера=(), микрофон=(), полноэкранный режим=(я)"
</ЕслиМодуль>

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

Вы можете проверить, используются ли заголовки, открыв вкладку «Сеть» в Chrome DevTools и проверив заголовки ответов вашего запроса.

Вкладка «Сеть» Chrome DevTools

После добавления кода сохраните изменения и снова посетите свой веб-сайт, чтобы убедиться, что они работают должным образом. Вы также должны быть осторожны при редактировании файла .htaccess, потому что неправильные заголовки кода или опечатки могут вызвать такие ошибки, как 500 Internal Server Error .

Добавление заголовков безопасности HTTP в WordPress с использованием сети распространения контента (CDN)

Сеть доставки контента (CDN) — это группа географически распределенных серверов, которые предоставляют кэшированный интернет-контент из ближайшего к пользователю сетевого расположения для повышения производительности сети. Популярные CDN, такие как Cloudflare,также позволяют добавлять заголовки HTTP на ваш сайт.

Давайте возьмем Cloudflare в качестве примера и посмотрим, как мы можем добавить заголовки HTTP с помощью CDN. Cloudflare предлагает элементарный бесплатный брандмауэр веб-сайта вместе с сервисом CDN, но более продвинутые функции безопасности заблокированы за платным доступом.

Настроить Cloudflare на вашем сайте WordPress довольно просто. Вы можете зарегистрироваться вручную на веб-сайте Cloudflare и выполнить шаги на экране, чтобы включить его. Как только Cloudflare будет активирован на вашем веб-сайте, перейдите на страницу SSL/TLS на панели управления вашей учетной записи Cloudflare.

Затем вам нужно будет перейти на вкладку «Пограничные сертификаты», найти раздел HTTP Strict Transport Security (HSTS) и нажать «Включить HSTS». После включения кнопки «Включить HSTS» появится окно с инструкциями, которые помогут вам включить эту функцию на вашем сайте. Нажмите кнопку «Далее», чтобы продолжить процесс, и вы увидите возможность добавить заголовки безопасности HTTP.

Отсюда вы можете включить HSTS на своем сайте, а также выбрать применение HSTS к поддоменам, использующим HTTPS. Использование этого метода обеспечит базовую защиту вашего сайта с помощью заголовков безопасности HTTP, но недостатком является то, что Cloudflare в настоящее время не позволяет вам добавлять X-Frame-Options.

Стоит отметить, что для servebolt.com и любых других доменов внутри Cloudflare HSTS включен по умолчанию.

Добавление заголовков безопасности HTTP с помощью плагина WordPress

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

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

Этот раздел позволит вам включить или отключить различные заголовки и установить для них различные параметры. Точные заголовки, которые вы можете включить, будут различаться в зависимости от выбранного вами плагина, но общие, такие как X-XSS-Protection, X-Content-Type-Options, X-Frame-Options и Strict-Transport-Security, охватываются большинство плагинов.

Как проверить заголовки безопасности HTTP на вашем сайте

После добавления заголовков безопасности HTTP на ваш веб-сайт WordPress вам необходимо убедиться, что они настроены правильно и работают должным образом. Вы можете использовать один из многих бесплатных инструментов, доступных в Интернете, для выполнения теста. Мы рекомендуем использовать либо заголовки безопасности , либо лабораторию SSL , которые предоставляют простой способ протестировать конфигурацию и убедиться, что все заголовки безопасности работают правильно.

Эти инструменты оценят заголовки безопасности вашего веб-сайта и предоставят вам подробный отчет. Они также сообщают вам, какие заголовки безопасности HTTP отправляет ваш сайт, а какие нет. Затем вашему сайту будет присвоена оценка от A+ до F вместе с объяснением того, как была определена эта оценка.

Например, при тестировании веб-сайта Vogue мы обнаружили, что на нем отсутствуют многие важные HTTP-заголовки, поэтому он получил только оценку C.

Модный SSL-тест

И, как и следовало ожидать при тестировании нашего собственного веб-сайта, он получает оценку A+.

SSL-тест Servebolt

Заключение

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

  1. Проверка на наличие уязвимостей . Важно проверить свой сайт на наличие распространенных уязвимостей безопасности, таких как межсайтовый скриптинг (CSS) и межсайтовая подделка запросов (CSRF).Для этой цели можно использовать такие инструменты, как OWASP ZAP и Burp Suite .
  2. Мониторинг изменений : вам необходимо регулярно отслеживать заголовки на предмет любых неожиданных изменений, так как это обычно указывает на попытки использования уязвимости.
  3. Обновляйте заголовки . По мере появления новых угроз важно быть в курсе последних методов обеспечения безопасности и соответствующим образом обновлять заголовки.

Заинтересованы в управляемом хостинге, который эмпирически быстрее?

Попробуйте наш подход к хостингу WordPress — начало работы бесплатно, а преимущества включают в себя:

  • Масштабируемость: в реальных тестах рабочей нагрузки Servebolt продемонстрировал среднее время отклика 65 мс, что в 4,9 раза быстрее, чем второе место.
  • Самое быстрое время загрузки в мире: среднее время загрузки страницы 1,26 секунды поставило нас на первое место в списке результатов глобального теста WebPageTest.
  • Самая высокая скорость вычислений: серверы Servebolt обеспечивают невиданную ранее скорость работы с базами данных, обрабатывая в 2,44 раза больше запросов в секунду, чем в среднем, и запуская PHP в 2,6 раза быстрее, чем на втором месте!
  • Идеальная безопасность и время безотказной работы: благодаря 100% времени безотказной работы на всех мониторах и рейтингу A+ за нашу реализацию SSL вы можете быть уверены, что ваш сайт в сети и в безопасности.

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