Skip to content

Protéger son site avec un fichier .htaccess

23 décembre, 2009

Hi all,

Comme nous le savons tous, il est important de protéger son site web surtout quand il soit un site web dynamique.

La majorité des développeurs pensent toujours à protéger leurs requêtes POST et GET (évidemment)  mais à mon avis ce n’est pas toujours suffisant: il faudra penser à se protéger contre tout type d’injection y compris l’injection des scripts et bien sur se protéger aussi contre la modification des variables _REQUEST, la modification des variables PHP GLOBALS.. Et pour faire tout cela il nous suffit d’ajouter (de créer?) quelques lignes dans son fichier .htaccess

Attention: une mauvaise utilisation de .htaccess pourra engendrer le blocage de son site. A utiliser avec modération! (L’exemple que je vais donner est testé et est fonctionnel).



Comme nous le savons tous (pas vous?) le fichier .htacces doit toujours commencer par ces deux lignes:

Options +FollowSymLinks       # Pour activer le suivi des liens symboliques
RewriteEngine On       # Pour démarrer le moteur de l’url_rewriting

On commence par mettre les condition de redirection (url_rewriting):

# On bloque tous les liens contenant un <script>:

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]

# On bloque tous les scripts qui essayent de modifier un variable PHP GLOBALS:

RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

# On bloque tous les scripts qui essayent de modifier un variable _REQUEST:

RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

# Tout est est bon! On envoi tout ça vers la page d’accueil avec une erreur 403 Forbidden:

RewriteRule ^(.*)$ index.php [F,L]

Donc pour résumer: Pour mieux protéger son site web, on peut ajouter ces lignes dans son fichier .htacces (ou créer un fichier .htaccess contenant ces lignes):

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

Faites en bonne utilisation :)

Articles similaires:

  1. Sauvegarder sa bande passante grâce à htaccess
  2. PHP – script Newsletter depuis fichier contact .csv hotmail / live mail
  3. Site web: attaque par iframe – la solution pour se protéger
  4. Pour php j’utilise les apostrophes ou les guillemets?

A propos de l'auteur

Jeune développeur web et expert en SEO. Actuellement à la tête de l'agence de développement des sites Internet Galerie César.

Commentaires

  1. KCA janvier 26, 2010

    Superbe!
    Mais dans le cas ou WP est installe dans un subdirectory and son url pointe dans le root. On fait comment?

  2. Oussama janvier 26, 2010

    C’est simple :) on ajoute une ligne:
    RewriteBase /subdirectory

  3. JeClicker février 9, 2010

    Très intéressant merci pour le code.

  4. rfphoto mai 7, 2010

    Bonjour, j’ai du mal à comprendre ou placer « htacces » ?

  5. jc août 18, 2010

    bonjour,

    j’ai du supprimer la ligne suivante :

    RewriteRule ^(.*)$ index.php [F,L]

    car cela affichait systematiquement une erreur 403 à l’ouverture de n’importe quelle page.

    JC

  6. Myaa février 18, 2011

    Bonjour, et lorsque l’on souhaite rediriger vers la page d’accueil et non vers une page 403 ?

    Merci d’avance, vos articles sont super.

  7. Andy août 23, 2011

    La plupart des hackers servent aussi le htaccess pour perfecionner l’attaque, j’ai déjà vu un article la dessus que je vais poster ici dès que je le retrouve, sinon la plupart des dev oublient aussi une chose simple après que le site est fait et mise en ligne : affichage d’erreurs activé, cela sert aux pirates de connaitre les failles du site, alors il faudra mettre à OFF dans php.ini ou .htaccess.

  8. depannage informatique septembre 21, 2011

    N’oubliez pas qu’il peut-être préjudiciable de mettre en place ou de modifier un .htaccess existant. Mieux vaut sauvegarder son .htaccess de base au cas ou la modification rende son site inaccessible.

  9. ikala octobre 6, 2011

    Merci pour ces infos utiles pour sécuriser son site.

  10. coach theatre octobre 20, 2011

    Intéressant je ne connaissais pas ces commandes. Le truc, c’est que les CMS s’amusent à modifier tout ça tout seuls, et là bonjour l’erreur 500!

  11. dépannage informatique décembre 28, 2011

    Bonjour,
    Est ce qu’il est possible de protéger juste une page et nom un dossier complet

Trackbacks

  1. htaccess: Se protger du hotlinking et sauvegarder sa bande passante grâce à htaccess | Blog Galerie César
  2. Protect your WordPress blog using .htaccess
  3. Wordpress: Blog Schutz per .htaccess :: GLOBALS, RewriteCond, Modifikation, REQUEST :: Fast-Load.de
  4. Éviter le duplicate content causé par PHPSESSID | Blog Galerie César
  5. Wordpress: Blog Schutz per .htaccess (Script Injection) | Zeilen, RewriteCond, {QUERYSTRING}, Modfizierung | sohneinesschwaben.de
  6. Site web: attaque par iframe - la solution pour se protéger | Blog Galerie César
  7. Perlindungan _REQUEST, PHP GLOBALS & Script Injection | Exclusive WordPress
  8. 10 Useful WordPress Security Tweaks - Smashing Magazine
  9. 10 Useful WordPress Security Tweaks
  10. 10 Useful WordPress Security Tweaks | 
  11. 10 Useful WordPress Security Tweaks » abdie.web.id
  12. 10 Useful WordPress Security Tweaks - Programming Blog
  13. 10 Useful WordPress Security Tweaks | DesignerLinks | Home to Web design news, jQuery Tutorials, CSS tutorials, Web Designing tutorials, JavaScript tutorials and more!
  14. Wordpress Blog Services - 10 Useful WordPress Security Tweaks
  15. 10 Useful WordPress Security Tweaks | The WordPress Blog Builder
  16. 10 Useful WordPress Security Tweaks | i know idea
  17. WordPress3.0十个实用的安全技巧 - 费克熊猫's Blog - PanFake.Com
  18. Wbcom Designs | Blog | Protect Your WordPress Blog From Script Injections
  19. krackie's road to designing » Blog Archive » 10 Useful WordPress Security Tweaks
  20. 10 Astuces pour sécuriser au maximum votre blog Wordpress | Geek Noise
  21. 十个实用的WordPress安全技巧 | KisKis.Me
  22. ArticleSave :: Uncategorized :: 10 Useful WordPress Security Tweaks
  23. 10 Useful WordPress Security Tweaks « WebbyTuts | Resouces for Designers
  24. 10 Useful WordPress Security Tweaks « TRUtricks
  25. Endless flight » 10 Useful WordPress Security Tweaks
  26. 10 Useful WordPress Security Tweaks - Smashing Magazine
  27. scuriser au maximum wordpress | Free Dz
  28. Useful WordPress Security Tweaks | UserZen
  29. Nuvdel's Blog | Le blog d'un déluré

Ajouter un commentaire

Required

Required

Optionnel

A propos de ce blog

Blog Galerie César est un blog qui parle de tous ce qui tourne autour du développement web et ses différentes technique comme le XHTML, CSS, PHP, JQuery...
Le blog parle également des techniques de référencement et d'optimisation des sites pour les moteur de recherches (SEO) et dans quelques parties on parle aussi de la sécurité informatique et la sécurité des sites web.
Pour me contacter: contact (me at) galerie-cesar.com.

Recent Comments

@GalerieCesar

  • No public Twitter messages.

Astuce

Pour monétiser son blog, vendre des liens de texte est un bon moyen si on ne veut pas mettre trop de banniéres sur le blog. Mais, on devrait toujours faire attention que les pages référencées soient pertinentes.s

Si vous souhaitez vous orienter vers les métiers de l'informatique, n'hésitez pas à consulter JobiJoba qui regroupe toutes les offres d'emploi du secteur, vous pouvez chercher par techno : jQuery, Php, Java... Selon vos recherches d'emploi en informatique, vous obtenez des suggestions de postes.

Liens

Switch to our mobile site