Sécuriser son WordPress

Marie-Aude

J'ai fait de la compta, de la finance, du juridique, j'ai été chef de projet SAP, j'ai fait de la photo, des voyages. Depuis 2007, je fais avec amour des sites webs pour les utilisateurs, qui se référencent bien et je vous aide à acquérir du trafic pertinent.

Vous aimerez aussi...

46 réponses

  1. LaurentB dit :

    Très bonne checklist de sécu WP.
    En amont, surtout si vous adoptez un thème gratuit, je conseille de vérifier sa légitimité. Par exemple avec https://wordpress.org/plugins/tac/

  2. Littlebuzz dit :

    C’est quand même la plaie d’être obligé de mettre l’une ou l’autre de ses solutions en place. Je serais vraiment curieux de connaitre les motivations de ces guignols !

  3. Le Révérend dit :

    Merci Déesse pour ces indications. J’en avais vu passer certaines sans réellement m’en soucier… Jusqu’à ce que de vils pirates prennent possession de ma cathédrale (quelques injections dans le .htaccess) Après quelques nuits de désinfection à maudire ma négligence, mais heureux d’apprendre de mon erreur, j’ai mis en place un script conseillé par un ami. Il s’agit de CrawlProtect.

    Le point négatif auquel j’ai été confronté venait d’une configuration un peu drastique de ma part : J’étais bloqué dès que je voulais faire quelque d’un autre endroit que mon ordinateur habituel.

    Que pensez-vous de ce genre de solution « clés en main » ?

  4. Arnaud dit :

    Je n’avais jamais pensé à faire un compte éditeur comme un fusible pour l’admin. Très bonne idée merci Marie-Aude!

  5. Cristophe dit :

    Il y a aussi cette possibilité d’ajouter un mot de passe à la fenêtre de connexion :
    https://web.archive.org/web/20160315225450/http://www.geekpress.fr/wordpress/astuce/ajouter-mot-de-passe-site-1222/

  6. richard dit :

    Bonsoir, excellent article, surtout très instructif quant à la protection de son blog. Personnellement, j’utilise une l’extention OSE FIREWALL qui fait bien son office. Est-ce que vous connaissez et pensez-vous qu’en termes de sécurité, cette solution soit aussi sécuritaire que celles que vous soumettez ? Bonne soirée, Richard.

  7. Pacha dit :

    Combien le passe wordpress peut-il contenir de lettres/chiffres/signes?
    parce que quand on en met une quinzaine ou plus, on se sent relativement tranquille!

    moi perso ai mis un énorme truc de protection: Wordfence security!
    c’est du lourd, en plus d’autres protections à plusieurs niveaux…

    ai une sauvegarde auto quotidienne en plus de celles de mon hébergeur que j’envoie sur un compte gmail qui contient pas mal.

  8. rapetou dit :

    Bonjour,
    pour ma part j’utilise CrawlProtect qui me donne de bons résultats depuis quelques années.

    lien :

    a+

  9. richard dit :

    Bonjour, merci Pacha pour ce plugin, je ne connaissait pas, et viens de l’installer pour voir et il me semble beaucoup plus sûr et complet que le plugin que j’ai cité. Je fais, entre autre, de l’affiliation de niche via wordpress et viens d’essuyer une vague de prise de contrôle de mes sites, un certain nombre sont tombés :-(, je n’ai plus accès à l’admin… Sans doute que ce plugin m’aurait sauvé la mise… Bon we, Richard.

  10. Alain RONK dit :

    Bonjour et merci pour cet article !

    Effectivement, ne pas mettre comme identifiant, “admin” est quelque peu évident, mais je ne savais pas que dans le lien apparaissait l’identifiant utilisé !
    Du coup, j’ai validé l’option “Cacher auteur” bien que j’ai quelques auteurs sur mon site…

    En revanche, j’ai chargé le plugin Limit Login Attempts ce matin. Il y a eu déjà 3 tentatives en provenance de la même adresse IP.

    Cà fait réfléchir…

    En core merci pour toutes ces infos

    Cordialement
    Alain
    http://www.modelisme-racer.fr/

  11. Iletvilain dit :

    Il y a aussi le plugin “Login Lockdown” qui permet de régler le nombre d’essais avant verrouillage (durée réglable), ainsi que la durée entre chaque essai.
    Il est ancien (septembre 2009), mais il fonctionne sous WP 3.5 sans problème (enfin, migration récente).
    https://wordpress.org/plugins/login-lockdown/

  12. GeekPress dit :

    Je ne comprends pas trop l’intérêt de mettre un htpasswd sur le fichier wp-config.php. Une restriction de l’accès au fichier suffit à mon avis (Deny From all).

    Ensuite, j’ajouterai aussi une modification à faire dès le départ : le préfix des tables de la bdd. Il vaut mieux ne pas laisser “wp_” pour déjà brouiller un peu les pistes aux hackers.

  13. EspaceM dit :

    merci pour ces conseils :)
    pour éviter les crackages de mots de passe : privilégiez les mots de passe hyper long. Ne pas avoir peur des mots de passe de 20 caractères et plus. Pour le retenir vous pouvez faire une phrase courte avec ponctuation ^^ exemple : cesitedemusculationcesttropdelaballe!

  14. Fabrice dit :

    Bons rappels, l’admin sur mes WP, je les change immédiatement, avec un mot de passe généré, le tout sur un espace crypté.

    Manquerais plus que je perde la clé de cryptage;)

  15. Iletvilain dit :

    Pour les mots de passe, KeePass, c’est génial !
    Et en plus il y a un générateur super pratique.
    Plus d’excuses pour ne pas avoir de mots de passe longs et complexes !
    http://keepass.info/

  16. Frederic dit :

    Article intéressant, je viens de tester, pas mal ces astuces, par contre la pépite ( et un rajout dans l’article serait fort intelligent ^^ ) le plug in proposer par Laurent, car la majorité des petits blogueurs utilisent des thèmes gratuits.

  17. Marie-Aude dit :

    Il y a bien sûr des tas d’autres solutions pour protéger son blog, et à la “description” je serais bien incapable de différencier “Limit Login Attempts” de “Login Lockdown”, ils ont l’air de faire quasiment exactement la même chose (peut être qu’à l’époque j’avais testé les deux et que l’admin de LLA était plus agréable ?)

    En ce qui concerne Crawl Protect, j’en ai entendu beaucoup de bien. Je n’en ai jamais ressenti le besoin, je fais certaines choses manuellement (comme vérifier les CHMOD 755 au maximum, et interdire les CHMOD 777, ce qui fait qu’aucun de mes sites n’utilisait Timthumb, “mode nananère on”), j’ai aussi une structure de répertoire un peu complexe, avec selon les répertoires / sites des niveaux de contrôle et autorisations différents, j’imagine – peut être à tort – qu’il ne peut pas tout sécuriser sur un panneau central, et donc je préfère ma méthode manuelle.

    Pacha, je ne sais pas quelle est la limite : mon mot de passe le plus long fait 28 caractères. Dans la base, le champ est un varchar de 64 caractères, donc même si le hash MD5 augmente un peu le nombre de caractères, on a de la marge :)

    En ce qui concerne le second mot de passe, et OSE Firewall, je suis un peu plus circonspecte : on reste dans des plugins WordPress. L’avantage de la solution manuelle par HT access est qu’elle reste en place même si l’accès est hacké par la plus bête des méthodes : le vol de mot de passe. Pour sécuriser une installation, je pense que toutes les défenses ne doivent pas être “dans” l’installation.

    Le mot de passe reste la plus grande des faiblesses : on voit régulièrement des études sur les mots de passe les plus fréquents. Récemment, j’avais – je croyais – formé un client à la nécessité de faire attention aux mots de passe. Et bim ! La personne n’a pas utilisé sa date de naissance… mais celle de sa fille.
    Reste que plus c’est long, plus ça demande du temps à craquer.
    L’ajout intempestif d’un petit caractère, une faute d’orthographe, un remplacement de lettre par un chiffre rajoutent encore de la difficulté.

    Le très gros danger de solutions comme KeePass est justement la centralisation de l’accès. Perso, je fais plus confiance à ma mémoire (quitte à réinitialiser régulièrement certains mots de passe), et aux méthodes mnémotechniques. Mais je sens venir un autre article sur le sujet :)

  18. Iletvilain dit :

    Le problème de la “centralisation”, c’est que, quand il n’y en a pas, les gens “centralisent” à leur manière en mettant le même mot de passe partout… Et et en plus, il est souvent simple, voire évident.

    Des logiciels comme KeePass permettent au moins de sensibiliser au sujet (on a ses mots de passe dans la poche, sur une clef USB, ça rassure et l’on y pense), avec un password vraiment durci pour l’accès principal.

    Quant à ceux qui doivent gérer un grand nombre de mots de passe, pour eux, comme pour leurs clients, je ne vois pas vraiment d’autres solutions.

    Par ailleurs, une solution en logiciel libre comme Keepass, me semble nettement plus sûr que leur équivalent “en ligne”, où l’on ne sait vraiment pas à qui l’on a affaire (plus tous les risques de piratage à chaque consultation).

    Il y a un travail énorme à faire, surtout lorsque l’on voit les gens aller jusqu’à stocker ces infos sensibles dans leur smartphone !
    Le simple vol de téléphone peut devenir dramatique !

    Oui, ça mériterait bien un article ;)

  19. Emmanuelle dit :

    Hello Marie-Aude,
    Je dois être un peu neuneu, mais je pige pas bien l’astuce n1 : à quoi sert de créer un éditeur si tu as déjà modifié ton nicename ?
    Ou alors, si tu publies avec l’éditeur et fais le reste avec l’admin, pourquoi modifier le nicename ?
    Bref, j’ai dû rater un truc, désolée…tu veux bien ré-expliquer à une blonde en détresse stp ?

  20. Marie-Aude dit :

    @ Iletvilain, promis ça va venir

    @ Emmanuelle : la modification du nicename est une précaution de base, et je conseille en fait de la faire pour TOUS les membres du blog. Elle rend le craquage du mot de passe par brut force beaucoup plus difficile, puisqu’il faut deviner ET l’identifiant ET le mot de passe. A moins d’avoir un Cray, on en a pour quelques heures…

    L’utilisation de l’éditeur, c’est une autre protection, contre les virus, trojan ou keylogger. A partir du moment où ton navigateur est ouvert, tu es “à la merci” théorique d’un virus, d’un phishing, etc, qui va enregistrer ton mot de passe au moment où tu le saisis. Si tu utilises quotidiennement un compte éditeur, si cela t’arrives, le risque de hack est limité, puisque les droits utilisateurs sont limités.

    C’est la même chose avec ton PC : même si c’est parfois un peu pénible, il vaut mieux avoir deux utilisateurs, et travailler au quotidien avec un profil qui n’est pas admin.

  21. Emmanuelle dit :

    Arf, ok, merci pour les précisions – et pour les conseils !
    ++

  22. mythologica dit :

    Merci pour l’article et tous ses conseils pour sécuriser son WordPress.

    J’utilise également une fonction Htaccess interdisant l’accès au Wp-config en cas de bug ( ca peut arriver).

    Sinon l’option Indexes aussi peut etre utile pour eviter d’afficher l’arborescence des fichiers.

    Sinon niveau plugin, il a secure wordpress qui rajoute des options de sécurité et qui ne ralentie par le blog.

    Et j’utilise aussi user locker qui évite des attaques de brute force sur l’admin (bloque le tentative de connexion a 3 )après l’admin est bloqué et l’administrateur reçoit un mail pour le débloquer.

    Au plaisir de vous lire.

  23. Géraldine dit :

    Merci pour cet article. C’est vrai que je ne suis pas (encore) assez pointue sur WordPress. Même si le piratage me fait flipper, j’avoue que ces mesures de sécurité me semblent compliquées et fastidieuses à mettre en place…. même si je n’utilise que les thèmes et plugins WordPress. Pourtant, je ne me fais pas l’effet d’une feignasse, mais les journées sont déjà bien remplies.
    En tout cas, bon courage avec le gros lourd qui veut pirater ton blog… et merci pour tous ces conseils que je garde sous le coude.

  24. Iletvilain dit :

    Et surtout, au-delà de la sécurisation, il faut penser à…
    … SAUVEGARDER régulièrement !
    Le site via FTP, comme les bases SQL.

  25. Pierre dit :

    Hello Marie-Aude

    Article fort sympa. Tu n’es pas tentée par une restriction des adresses IP pour ton blog ? Ou une administration en SSl ? Voire les deux à la fois…

  26. Marie-Aude dit :

    @ Iletvilain … et surtout garder plusieurs générations de sauvegarde, il n’y a rien de plus con que de se rendre compte qu’on a écrasé la sauvegarde saine avec des fichiers vérolés

    @ Pierre, non, je l’ai fait pour le site sensible d’un de mes clients, mais comme je suis assez nomade / cybercafé, ça n’est pas adapté à ma situation. En revanche, c’est une excellente sécurisation

    @ Géraldine, merci :) … en tout cas je n’entends plus “parler” de lui pour l’instant

  27. UnderNews dit :

    Bonjour à tous,

    Pas mal d’astuces utiles, néanmoins, installer des plugins en masse pour “sécurisé” c’est bof bof (lourd). La technique des multi-utilisateurs avec les droits appropriés est parfaite par contre !

    Bien vérifier les chmods sur les fichiers et répertoires du FTP est une bonne pratique de base. Idem pour les sauvegardes régulières.

    Par contre, à noter que tout cela ne protège absolument pas d’un vol d’identifiants, via un malware sur sa machine ! Voir ce qui est arrivé à A.A. il y a quelques temps…

    Keepass est une bonne protection face à cela, encore faut-il ne pas enregistrer ses identifiants dans son navigateur :D

    @+ !

  28. Li-An dit :

    Login Lockdown me parait plus intéressant pour bloquer les tentatives puisque sa gestion de durée entre deux tentatives rend ultra fastidieuse toute velleité de forçage – s’il faut attendre une heure pour tester trois mots de passe, le pirate n’est pas arrivé au bout de ses peines.

    • Marie-Aude dit :

      Limit Login Attempts permet de le faire aussi. Actuellement, le blog est paramétré sur plus de 24 heures entre deux tentatives infructueuses de connexion (et un essai maximum de mot de passe, avant c’était quatre)

  29. Li-An dit :

    En fait, si on est seul rédacteur/admin le mieux c’est quand même de mettre une seule adresse IP en liste blanche dans le htaccess.
    Un peu plus souple: https://wordpress.org/plugins/wp-login-security-2/

  30. Iletvilain dit :

    @Li-An, par contre (IP en liste blanche dans le htaccess), problème pour ceux qui n’ont pas d’IP fixe, comme c’est le cas pour la majorité des abonnés Orange / Livebox, et ils ne sont pas les seuls.
    Pareil pour un accès via un VPN commercial…
    Idem lors de l’utilisation d’une clef 3G ou d’un smartphone en mode modem 3G/4G…
    Lorsque l’on pousse la protection trop loin, on peut se bloquer soi-même.
    L’autre jour, lors de tests de LockDown, j’ai dû attendre le déverrouillage automatique, et le temps paraît bien long.

    PS : petite précision sur LockDown, en fait, ça n’est pas le temps entre chaque essai que l’on peut régler, mais le temps que l’on autorise pour X essais, et après, délai de verrouillage réglable.
    Exemple :
    Max Login Retries : 3
    Retry Time Period Restriction (minutes) : 5
    Lockout Length (minutes) : 15
    –> 3 essais autorisés dans les 5 minutes, si échec, verrouillage pendant 15 minutes.

  31. Iletvilain dit :

    @Marie-Aude, une petite lune (ou autre chose) en favicon, ça aiderait à retrouver l’onglet au milieu d’une forêt (;-)

  32. Iletvilain dit :

    @Marie-Aude, désolé pour mon message précédent, le favicon est bien là, mais je ne l’avais pas tout à l’heure… Raison inconnue (Firefox)

  33. Li-An dit :

    Ah, j’ignorais qu’il y avait tant que gens qui n’avaient pas d’IP fixe. Disons que c’est une bonne solution pour ceux qui l’ont :-)

  34. Marie-Aude dit :

    @ Li-An, ici c’est très rare, en fait. Je crois qu’en France, les IP fixes proviennent des box, quand j’étais en Allemagne, je n’avais pas non plus d’IP fixe

  35. Li-An dit :

    En effet, les box créent des IP fixes.

  36. Iletvilain dit :

    En France, notamment tous les particuliers abonnés chez Orange (Livebox) n’ont pas d’Ip fixe.
    Et même pour les Livebox “Pro”, il faut la demander car elle n’est pas fournie d’office.
    Orange, c’est 10 millions d’abonnés ADSL, rien que ça !
    Et il me semble que c’est pareil chez SFR (5 millions d’abonnés ADSL).

    Quant à l’usage 3G/3G+/4G, il est de plus en plus utilisé, et là idem, mais c’est évident.

  37. samsoul dit :

    Petite precision concernant le plugin TAC bien resumé dans cet article: http://boiteaweb.fr/security-plugin-review-tac-theme-authenticity-checker-3149.html
    Bref, c’est le jeux du chat et de la souris…
    Pour tout ce qui est plugin dit de sécurité, ne pas tout prendre pour argent comptant. Pas évident si l’on est pas développeur…

    Sinon pour ce qui est du login de l’admin on peut aussi le construire avec la robustesse d’un mot de passe: une longueur conséquente, des caractères variés etc.
    Wordpress offre la possibilité d’afficher un nom d’utilisateur différent, autant en profiter… En complément, comme dit, utiliser un compte dédié à la rédaction
    Un petit lien très théorique: https://howsecureismypassword.net/
    Un autre plus utile:

    Enfin, la durée de vie d’un mot de passe est elle aussi importante: moins le password est exposé, moins il est vulnérable. Changez régulièrement…

  38. Daniel Roch dit :

    Effectivement c’est une très bonne liste de conseils.

    Mais il y en a un tout bête : avoir un mot de passe “fort” (suite de chiffres, lettres et caractères spéciaux) et surtout sécuriser son ordinateur avec un antivirus et un firewall dignes de ce nom. Car la plupart des failles, hacks et virus que l’on peut rencontrer sur un site WordPress proviennent principalement de l’ordinateur de l’utilisateur, et non pas d’une faille du site en lui-même.

  39. Philippe dit :

    En ce moment j’utilise
    – Better WP Security
    – WordPress File Monitor Plus (pour être averti si des fichiers sont ajoutés, modifiés ou supprimés)

  40. Bruno dit :

    Bonjour,

    Chacun y va de son plugin en terme de sécurité, et le problème comme avec beaucoup de plugins, c’est la compatibilité entre eux!
    Si on prend par exemple Better WP Security qui me semble être pas mal, il m’a donné du fil à retordre sur un annuaire et j’ai fini par l’abandonner, alors qu’il équipe mon blog principal. Je pense qu’il faut le réserver pour les sites à auteur unique.
    On m’a dernièrement parlé de Wordfence, le connais-tu et si oui, qu’en penses-tu?
    Merci d’avance.

  41. magasin destockage dit :

    J’ai bien lu votre article et ça m’a tellement plu, le niveau de l’écriture m’a encouragé pour le terminer et je l’ai trouvé très intéressant, vraiment merci pour le choix du sujet et pour le haut niveau de l’écriture, bonne continuation !!

  42. Michael dit :

    Bonjour Marie-Aude,

    Votre collègue modérateur du support Wp m’a conseillé cet article dont je vous félicite car il me paraît très clair.

    Mon blog, fort heureusement natif, 5 pages, 10 articles et autant de commentaires, a subi un piratage ce week-end dernier, parce que j’avais naïvement, erreur de débutant oblige, confondu un commentaire avec un ping, et un ping avec un hack.

    Bref, j’ai cliqué sur un message repéré comme indésirable dans Akismet et approuvé celui-ci. Sombre erreur !
    Toute suite après, tout le contenu du blog avait disparu… à l’exception des “pings” issus de la même IP qui continuaient à frapper à la porte. Comme je venais de faire la mise à jour de Wp vers 3.9.2, j’ai cru tout d’abord que cette version était bugguée. Eh bien non.

    Mon désir est de tirer maintenant la leçon de cet incident, afin que cela ne se reproduise pas lorsque ce blog en sera à 250 articles et 1000 visites par jour :)

    J’aimerais d’ailleurs à ce propos vous demander un petit topo ou quelques liens vers des ressources pour m’expliquer clairement ce que c’est qu’un ping, en quoi ça diffère d’un commentaire d’article (ça j’ai cru comprende :), mais pourquoi ça se présente parfois dans les commentaires, ce qu’il convient d’en faire (approuver ou non) et surtout en quoi cela se distingue d’une tentative de hameçonnage ;-)

    Bref. J’essaie d’exploiter au mieux les ressources du présent article, et pour ce faire, j’ai bricolé sur mon Easy-php un petit fichier chemin.php contenant l’instruction “realpath(‘chemin.php’)”. L’idée, si j’ai bien compris, étant de placer un fichier .htpasswd en dehors de la racine ‘www’.

    J’essaye de placer celui-ci en amont, ce qui me semble théoriquement possible sur le serveur (c’est Hostpapa). Seulement je n’arrive pas à avoir un retour. J’en conclus que ce n’est pas opérationnel en pratique. C’est donc dans un sous-répertoire qu’il me faut le placer, n’est-ce pas ? Et cela ne va pas être plus vulnérable ? Là-dessus, je ne suis pas sûr d’avoir tout bien compris.

    Comment procédez-vous en pratique, pouvez-vous m’expliquer ?

    Merci infiniment.

    Bien cordialement,
    Michaël

  43. Michael dit :

    Ca a l’air pro,
    mais un peu cher pour des amateurs,
    n’est-ce pas ;-) ?

    PS- les questions soulevées ci-dessus dans mon précédent commentaire ont été résolues entre temps.
    Merci à Marie-Aude pour cette plateforme (très) avertie :-)

    • Michael dit :

      Bon…

      En attendant d’avoir un budget à la hauteur de vos prestations,
      je vais pour ma part continuer à bidouiller donc :)

  44. Cristophe, blogueur non influent dit :

    “For various reasons related to our WordPress trademark, we ask if you’re going to start a site about WordPress or related to it that you not use “WordPress” in the domain name.”
    La suite là-bas :
    https://wordpress.org/about/domains/

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *