Захистіть WordPress за допомогою X-Frame-Options і HTTPOnly Cookie

Підвищення безпеки вашого сайту WordPress: Захист від XSS, Clickjacking та інших загроз

Безпека вашого веб-ресурсу має вирішальне значення для успішної присутності вашого бізнесу в онлайн-просторі. Нещодавно, аналізуючи мій сайт WordPress за допомогою Acunetix та Netsparker, я виявив деякі потенційні вразливості, які потребують уваги.

  • Відсутність заголовка X-Frame-Options.
  • Файли cookie не мають атрибуту HttpOnly.
  • Файли cookie не мають прапора Secure.

Якщо ви використовуєте виділений хмарний або VPS хостинг, ці заголовки можна налаштувати безпосередньо в конфігурації Apache або Nginx. Проте, щоб внести зміни безпосередньо в WordPress, можна скористатися наступними рекомендаціями.

Важлива примітка: Після впровадження змін, скористайтеся інструментом для перевірки безпечних заголовків, щоб підтвердити успішність застосованих налаштувань.

Додавання заголовка X-Frame-Options є важливим кроком для запобігання атакам Clickjacking. Це питання було ідентифіковане в результаті сканування Netsparker.

Рішення для X-Frame-Options:

  • Знайдіть каталог встановлення WordPress. У разі спільного хостингу, доступ до нього можна отримати через cPanel >> File Manager.
  • Створіть резервну копію файлу wp-config.php.
  • Відкрийте файл wp-config.php для редагування та додайте наступний рядок коду:
    header('X-Frame-Options: SAMEORIGIN');
  • Збережіть зміни та перевірте сайт, щоб переконатися в успішному застосуванні налаштувань.

Захист файлів cookie за допомогою атрибутів HTTPOnly та Secure у WordPress

Атрибут HTTPOnly у файлі cookie гарантує, що доступ до файлу cookie можливий лише з боку сервера, що є додатковим бар’єром для захисту від XSS атак.

Прапор Secure у файлі cookie вказує браузеру, що файл cookie повинен передаватися лише через безпечні SSL-з’єднання, що додатково підвищує безпеку файлів cookie сеансу.

Примітка: Ці налаштування працюватимуть лише на сайтах, що використовують HTTPS. Якщо ваш сайт все ще працює через HTTP, наполегливо рекомендується перейти на HTTPS для кращого рівня безпеки.

Рішення для HTTPOnly та Secure:

  • Створіть резервну копію wp-config.php.
  • Відкрийте файл wp-config.php для редагування та додайте наступний код:
    @ini_set('session.cookie_httponly', true);
    @ini_set('session.cookie_secure', true);
    @ini_set('session.use_only_cookies', true);
  • Збережіть зміни та оновіть сторінку сайту, щоб перевірити коректність налаштувань.

Якщо внесення змін до коду вам не до вподоби, можна скористатися альтернативним рішенням: плагіном Shield, який пропонує захист від iFrames та XSS атак.

Після інсталяції плагіна перейдіть до налаштувань HTTP-заголовків та активуйте необхідні опції.

Сподіваюся, ці поради допоможуть вам усунути вразливості безпеки вашого сайту WordPress.

І ще трохи…

Бажаєте підвищити безпеку сайту, застосувавши більш надійні заголовки?

OWASP рекомендує 10 основних безпечних заголовків. Якщо ви використовуєте VPS або Cloud хостинг, перегляньте посібники з налаштування цих заголовків для Apache та Nginx. Для користувачів спільного хостингу або тих, хто хоче застосувати ці зміни в WordPress, рекомендується використовувати плагін.

Висновок

Забезпечення безпеки сайту – це постійний процес, який вимагає регулярних зусиль. Якщо ви бажаєте перекласти відповідальність за безпеку на плечі професіоналів, розгляньте можливість використання брандмауера Sucuri, який забезпечить повний захист та оптимізацію продуктивності вашого веб-сайту.

Чи була стаття корисною? Поділіться нею з іншими!