Configuration pour TOMCAT

Préconisations de sécurisation des headers HTTP

Configuration du token de session JSESSIONID à HttpOnly dans le fichier web.xml

JSESSIONID HttpOnly
<session-config>
 <cookie-config>
  <http-only>true</http-only>
 </cookie-config>
</session-config>

 

La mise en place des directives de protection XSS relèvent généralement de la configuration d'un frontal Web. Cependant, il est possible de rajouter ces directives directement dans l'application par ajout d'une servlet filter dans le fichier web.xml de l'application

 

XSSFilter
 <filter>
    <display-name>XSSFilter</display-name>
    <filter-name>XSSFilter</filter-name>
    <filter-class>com.hardis.adelia.filter.XSSFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>XSSFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

Paramétrage du filtre avec des valeurs spécifiques

XSSFilter
 <filter>
    <display-name>XSSFilter</display-name>
    <filter-name>XSSFilter</filter-name>
    <filter-class>com.hardis.adelia.filter.XSSFilter</filter-class>
    <init-param>
      <description>X-FRAME-OPTIONS value</description>
      <param-name>X-FRAME-OPTIONS</param-name>
      <param-value>DENY</param-value>
    </init-param>
    <init-param>
      <description>X-Content-Type-Options value</description>
      <param-name>X-Content-Type-Options</param-name>
      <param-value>nosniff</param-value>
    </init-param>
    <init-param>
      <description>X-XSS-Protection value</description>
      <param-name>X-XSS-Protection</param-name>
      <param-value>1; mode=block</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>XSSFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
AttributValeur par défautRemarque
X-FRAME-OPTIONS
DENY
Valeurs possibles : DENY, SAMEORIGIN, ALLOW-FROM  https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet
X-Content-Type-Options
nosniff
 
X-XSS-Protection
1; mode=block

 

 

 

Configuration pour HaProxy

Pour configurer dans HAProxy l'envoi des entêtes anti-XSS ajouter ceci à votre frontend , listener ou backend configuration :

JSESSIONID HttpOnly
rspadd X-Frame-Options:\ DENY
rspadd X-Content-Type-Options:\ nosniff
rspadd X-XSS-Protection:\ 1; mode=block
 

 

 

Configuration pour Apache Httpd

Pour configurer dans Apache l'envoi des entêtes anti-XSS  pour toutes les pages , ajouter à la configuration de votre site

:

httpd.conf
Header set Set-Cookie HttpOnly;Secure
Header always append X-XSS-Protection 1;mode=block
Header always append X-Frame-Options DENY
Header always append X-Content-Type-Options nosniff
 

Commentaire

  1. Petite faute de syntaxe dans la config pour HaProxy :

    rspadd X-XSS-Protection:\ 1;\ mode=block

    au lieu de :

    rspadd X-XSS-Protection:\ 1; mode=block