Проверка безопасности сайта и метод защиты
SeoLik

15 июня 2019, 3:39
45534

Безопасность сайта - это самое главное для его владельца. Чтобы обезопасить свой сайт, вам нужно привлекать к его разработке только опытных специалистов. А те кто создают сайты уже на готовых CMS подвержены угрозам не меньше, чем те, кто создает сайты с нуля ( самописные сайты ). Но для защиты сайта все средства хороши. Так например удалив и добавив некоторые данные в HTTP заголовки сайта, вы повысите уровень его защищенность!

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

безопасность сайта

Чтобы защитить свой сайт, представляем вам код PHP, специально для пользователей СеоЛик:

header("X-XSS-Protection: 1; mode=block");
header("Referrer-Policy: no-referrer");
header("Referrer-Policy: strict-origin-when-cross-origin");
header("X-Frame-Options:sameorigin");
header("X-Permitted-Cross-Domain-Policies: none");
header('Strict-Transport-Security: max-age=31536000; includeSubDomains; preload');
header("X-Content-Type-Options: nosniff");
header_remove('x-powered-by');

Данный код нужно добавлять в самое начало страницы, т.е еще до самого кода html, так как он добавит нужные и удалит не нужные HTTP заголовки. Ниже приведем описание некоторых из них:

  • X-XSS-Protection (Заголовок X-XSS-Protection может предотвратить некоторые XSS-атаки («межсайтовый скриптинг»), он совместим с IE 8+, Chrome, Opera, Safari и Android. Google, Facebook, Github используют этот заголовок, и большинство консультантов по предупреждению проникновений порекомендуют Вам его использовать.)
  • X-Frame-Options (Заголовок X-Frame-Options позволяет снизить уязвимость вашего сайта для кликджекинг-атак. Этот заголовок служит инструкцией для браузера не загружать вашу страницу в frame/iframe. Не все браузеры поддерживают этот вариант)
  • X-Permitted-Cross-Domain-Policies (Аналогично механизму браузеров блокировки стороннего контента Adobe Flash имеет свой. Он регулируется файлами crossdomain.xml сайта, начиная с корневого каталога. Проблема с механизмом в том, что на любом уровне вложенности корневой регулирующий файл (политика безопасности) может быть переопределен. Чтобы избежать таких ситуаций, необходимо задать этот HTTP-заголовок)
  • Strict-Transport-Security (Заголовок Strict-Transport-Security запрещает использование незащищенного (HTTP) соединения на сайте, если есть защищенное (HTTPS). Таким образом, все данные пользователей сайта будут защищены в любом случае)
  • X-Content-Type-Options (Рейтинг наиболее опасных к использованию возможностей браузера возглавляет возможность Internet Explorer «угадывать» тип файла, игнорируя его MIME-тип (обычно соответствует расширению файла). При передаче от сервера к браузеру все файлы имеют тот или иной тип (css, javascript, jpeg, xml и т. д.), который прямо указывает на суть содержимого файла. Однако, Internet Explorer имеет встроенный механизм, который позволяет по содержимому файла переопределить его тип. Таким образом, обычные текстовые файлы могут быть интерпретированы как JavaScript со всеми вытекающими последствиями. Например, если у вас на сайте запрещена загрузка текстовых файлов с расширениями .js пользователями, то они могут загрузить в виде картинок текстовый файл, содержащий JavaScript-код, который может быть исполнен браузером)