web-dev-qa-db-fra.com

Joomla security - attaques par empreintes digitales avec htaccess

Je joue avec mon fichier htaccess pour mieux sécuriser Joomla mais je suis bloqué par cet exemple ( référence ):

## Referrer filtering for common media files. Replace with your own domain name.
## This blocks most common fingerprinting attacks ;)
## Note: Change www\.example\.com with your own domain name, substituting the
## dots with \.  i.e. use www\.example\.com for www.example.com
RewriteRule ^images/stories/([^/]+/)*([^/.]+\.)+(jp(e?g|2)?|png|gif|bmp|css|js|swf|ico)$ - [L]
RewriteCond %{HTTP_REFERER} .
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?example\.com [NC]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule \.(jp(e?g|2)?|png|gif|bmp|css|js|swf|ico)$ - [F]

J'ai ajouté cet exemple en tant que test et cela a gâché mon site (évidemment, en changeant exemple.com sur mon site). Je suppose que je ne suis pas vraiment sûr de ce que cela fait réellement. images/stories/ n'existe pas sur mon serveur, alors qu'est-ce que cela essaye de faire?

J'utilise Joomla 2.5

1
Tom

Tout d'abord, je ne suis en aucun cas un expert en utilisation de .htaccess.

Le code que vous avez posté n'autorisera personne à mettre votre contenu en lien direct, la seule exception étant définie dans la ligne suivante:

RewriteRule ^images/stories/([^/]+/)*([^/.]+\.)+(jp(e?g|2)?|png|gif|bmp|css|js|swf|ico)$ - [L]

La ligne RewriteCond %{HTTP_REFERER} !^https?://(www\.)?example\.com [NC] définit le domaine autorisé à accéder à tout contenu. Ainsi, une petite erreur empêchera Joomla de charger CSS, JS, les images, etc. à partir d'autres répertoires. Vous devriez vérifier cela.

Vous pouvez également remplacer la ligne 5 par ceci:

RewriteRule ^((components|modules|templates|images|plugins|media)/.*\.(jpe|jpg|jpeg|jp2|jpe2|png|gif|bmp|css|js|swf|html|mpg|mp3|mpeg|mp4|avi|wav|ogg|ogv|xls|xlsx|doc|docx|ppt|pptx|Zip|rar|pdf|xps|txt|7z|svg|odt|ods|odp|flv|mov|ico|htm))$ $1 [L]

J'ai trouvé quelques informations supplémentaires ici :

L'idée est que si vous souhaitez désactiver la validation du référent HTTP, soyez cohérent et faites-le à l'échelle du site pour éviter les problèmes difficiles à tracer. En outre, cette fonctionnalité n'offre qu'une protection limitée contre les attaques par empreintes digitales (c'est-à-dire les tentatives de pirates informatiques de passer inaperçues afin de déterminer la version de Joomla! Que vous utilisez).

Fondamentalement, l'extrait de code que vous utilisez peut causer plus de problèmes qu'il n'en vaut la peine.

4
johanpw