guest@6admin.io:~$

Apache : désactiver l'option TRACE

La méthode HTTP TRACE renvoie au client la requête exacte qu’il a envoyée, en écho. Conçu pour le debug, c’est une porte pour le XST (Cross-Site Tracing): un JavaScript sur une page compromise peut utiliser TRACE pour lire les cookies HttpOnly via les headers de la requête. IE6 le permettait, Firefox aussi.

Le test:

$ telnet mondomaine.fr 80
TRACE / HTTP/1.1
Host: mondomaine.fr

HTTP/1.1 200 OK
TRACE / HTTP/1.1
Host: mondomaine.fr
...

Si vous voyez votre requête en écho, TRACE est activé.

La correction dans Apache:

TraceEnable off

Une ligne dans le VirtualHost ou dans httpd.conf. Le résultat: 405 Method Not Allowed.

Pour les versions d’Apache qui ne supportent pas TraceEnable (< 1.3.34, < 2.0.55), la solution est le mod_rewrite:

RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]

[edit: 2026] TraceEnable est le défaut dans Apache 2.2+. Le XST est moins pertinent maintenant que les navigateurs modernes empêchent TRACE via XMLHttpRequest, mais le test reste valable sur les vieux serveurs. Le réflexe de l’audit: curl -X TRACE mondomaine.fr -i et vérifier le 405.