Как использовать HTTP-заголовки для предотвращения уязвимости сайта?

Какие HTTP-заголовки необходимо добавить скажем в .htaccess?

1 симпатия

Заголовки HTTP (англ. HTTP Headers ) — это строки в HTTP-сообщении, содержащие разделённую двоеточием пару имя-значение.(ист.)

Ваш вопрос большой по объему. Я могу лишь достаточно кратко указать основные. Для получения больше информации не стесняйтесь использовать справочную документацию.

HTTP Strict Transport Security

В .htaccess

<ifModule mod_headers.c>
    Header set Strict-Transport-Security "max-age= 10886400; includeSubDomains;‬"
</ifModule>                

Nginx (секция Server)

add_header Strict-Transport-Security 'max-age=10886400‬; includeSubDomains;';

В PHP

<?php header("Strict-Transport-Security: max-age=10886400; includeSubDomains;"); ?>

X-Xss-Protection (XSS)

.htaccess

<ifModule mod_headers.c>
    Header set X-XSS-Protection "1; mode=block"
</IfModule>  

Nginx (секция HTTP)

add_header X-XSS-Protection "1; mode=block";    

PHP

<?php header("X-XSS-Protection: 1; mode=block"); ?>

X-Frame-Options (фреймы)

.htaccess

<ifModule mod_headers.c>
    Header set X-Frame-Options «SAMEORIGIN»
</ifModule>  

Nginx (секция Server)

add_header X-Frame-Options «SAMEORIGIN»;

PHP

<?php header('X-Frame-Options: SAMEORIGIN'); ?>

X-Content-Type-Options (фишинг)

.htaccess

<ifModule mod_headers.c>
    Header set X-Content-Type-Options «nosniff»
</ifModule>  

Nginx (секция Server)

add_header X-Content-Type-Options nosniff;

PHP

<?php header('X-Content-Type-Options: nosniff); ?>

Content-Security-Policy (политика CSP)

.htaccess

<ifModule mod_headers.c>
    Header set Content-Security-Policy " style-src ’self’;"
</ifModule> 

Nginx (секция Server)

add_header Content-Security-Policy " style-src ’self’;";

PHP

<?php header("Content-Security-Policy: style-src ’self’"); ?>

Referrer-Policy (утечка через ссылки)

.htaccess

<ifModule mod_headers.c>
    Header set Referrer-Policy «origin-when-cross-origin;»
</ifModule>  

Nginx (секция Server)

add_header Referrer-Policy «origin-when-cross-origin;»;

PHP

<?php header("Referrer-Policy: origin-when-cross-origin"); ?>

Есть еще настройки HTTP заголовков. Протестируйте свой сайт используя программы для поиска уязвимостей, например OWASP ZAP.

4 симпатии