Que manque t-il à WordPress au niveau sécurité
Quelques points tout de même

chaine-wordpress

Un manque de sécurité dans WordPress ? Serais-je en train de parler de faille ? Non !

Cette article fait parti de "La chaine WP", et j'ai évidemment décidé de l'orienter sur la sécurité. Non, je ne suis pas en train de dire qu'il y a des failles, ni l'inverse.

Je vais en quelques points vous parler de ce qui pourrait manquer à WordPress pour qu'il soit un peu plus sécure suite à son installation. Ceci n'est donc que mon avis et j'attends avec impatience les votres en commentaires, à quoi n'ai-je pas pensé !?

  1. Votre login et mot de passe
  2. Ecrire dans les fichiers
  3. HTACCESS
  4. Authenticité des fichiers du core
  5. Sécurité des plugins
  6. (Bonus) Proposition de plugins
  7. Et les autres CMS ?
  8. (Bonus 2) Les autres articles de la chaine WP

Votre login et mot de passe

Ce couple est le sésame administrateur qu'envient les pirates dans le but de ... oula plein de choses ! Ajouter des publicités dans vos articles, modifications de je ne sais quoi pour permettre le spam dans vos commentaires, ou carrément modifier votre page d'accueil pour diffuser des messages politico-integristo-pabo ... Ou encore même vos concurrents dans le but de vous ralentir et casser votre SEO.

Qu'est-ce que je reproche ?

1) Pour le login, le fait que le login "admin" soit autorisé est la meilleure idée pour laisser travailler les brutes-force. Pourquoi, et bien dans les anciennes versions de WordPress (avant la 3.0) le login par défaut d'une installation était "admin" et seul le mot de passe était à choisir. Un brute-force est un script qui va essayer de se connecter à votre administration. Si le login est déjà connu, alors seul le pass reste a brute-forcer, pour peu qu'il soit un peu trop simple, boum ...

2) Pour le mot de passe, rien ne nous empêche de choisir "azerty" ou "123456" pour un compte administrateur, moi ça me choque.

3) Quand je souhaite modifier mon mot de passe, il me suffit de me rendre sur le page "Votre profil" et d'entrer 2 fois mon nouveau pass. Euh, on ne me demande pas l'ancien ? Aie :/

Ce que je conseille

1) Si vous êtes encore "admin" avec le rôle d'administrateur, je vous conseille de créer un second administrateur, ce compte sera votre nouveau compte admin. Créez le avec un bon mot de passe, modifiez le de temps en temps, 1 fois par mois serait idéal.

Ensuite dégrader le compte "admin" et le faire passer en simple membre. Vous pouvez aussi vous créer un compte "auteur" pour la rédaction des articles, après tout, il est là pour ça !

N'utilisez ce nouveau compte admin QUE pour administrer et non pas pour rédiger des articles, utilisez votre nouvel Auteur, ce qui implique que vous vous déconnectiez du compte administrateur lorsque vous n'en avez pas besoin.

Petit bonus (merci Greg de Screenfeed): Ce nouveau compte admin n'aura pas l'ID 1, au cas où un script malicieux exploit "le compte admin de base". Bien vu !

2) Pour ce qui est du mot de passe, il serait bien de forcer au moins les comptes ayant des droits d'administration à avoir un mot de passe fort, c'est à dire assez long et/ou assez compliqué. Aujourd'hui nous sommes libre de choisir "123456" ou "azerty" qui sont légèrement connus hum...

Qu'un membre lambda souhaite utiliser "azerty" ne me dérange pas, mais qu'un administrateur utilise un mot de passe simple, aie !

3) Pour la modification du pass, vous pouvez décider qu'un administrateur doivent utiliser le mot de passe envoyé dans le mail lors de l'inscription ou d'un reset password en ajoutant un filtre dans votre functions.php :
[/php]add_filter( 'show_password_fields', '__return_false' );[/php]
Attention ce filtre évite juste d'afficher les champs de mot de passe mais si on hack un peu, il est tout de même possible de modifier le pass.

Comment palier à ça ?

1) Je vous recommande de modifier le login de cet "admin", j'ai regardé si un plugin existait et à part un plugin vulnérable que je ne vous proposerais pas, le mieux est de modifier directement dans PhpMyAdmin pour ceux qui ont accès. Voici la requête (assumant que votre préfixe soit wp_) :
[/php]UPDATE wp_users SET user_login='new_admin_name' WHERE user_login='admin'[/php]
Pour ceux qui n'ont pas accès, voici la même chose à coller dans votre functions.php, rechargez le tableau de bord une fois, supprimez le code (il se sert plus, ça évitera une requete pour rien) :
[/php]if( is_admin() ) {
function baw_update_admin()
{
global $wpdb;
$wpdb->update( $wpdb->users, array( 'user_login', 'new_admin_name' ), array( 'user_login', 'admin' ) );
}
}[/php]
2) Choisissez un mot de passe long même s'il ne contient pas de caractères spéciaux. "mon mot de passe est long mais je le connais" est meilleur que "&W1o2r3d;4;P5r6e7s8s@" ...

Pour ce qui est de forcer un mot de passe fort ou de forcer un renouvellement, ça ne me dit rien, c'est pour cela que je vais les développer dans la version pro de "More Secure Login"

Ecrire dans les fichiers

Il vous est possible de modifier directement depuis l'administration les fichiers de vos thèmes et de vos plugins. Cela peut être très utile, mais aussi apporter son lot d'ennuis.

Ce que je reproche

Ceci devrait être une directive de type DEFINE à insérer dans le wp-config.php pour autoriser l'écriture de ces fichiers, alors qu'aujourd'hui c'est l'inverse, il faut ajouter un DEFINE pour empêcher cette écriture. Ce qui signifie qu'une personne ayant accès à ces fichiers a unc accès à l'upload de code de n'importe quel script PHP dans votre fichier "functions.php". Elle peut y insérer une backdoor, faire des requetes dans votre BDD, modifier les clefs des tokens, modifier les mots de passe, bref, pas très sympatique.

Ce que je conseille

Et bien simplement WordPress devrait supprimer l'ancienne directive DEFINE et en insérer une nouvelle qui servirait à autoriser l'écriture des fichiers.

Quelquechose comme ça serait le bienvenue :
[/php]define( 'ALLOW_FILE_EDIT', true );[/php]
Comment palier à cela ?

Pour le moment vous pouvez ajouter ceci dans votre wp-config.php :
[/php]define( 'DISALLOW_FILE_EDIT', true );[/php]

HTACCESS

WordPress crée un fichier .htaccess avec très peu d'options, surement pour des questions de configuration serveur, vous pouvez donc lister le contenu des dossiers comme /wp-content/plugins/

Ce que je repproche

De base, il est possible de faire un "Directory Listing", comme je viens de le dire cela permets de lister le contenu des dossiers, que ce soit /uploads/ dans lequel vous avez peut etre ajouté un dossier 'perso' ou 'secret', que ce soit /plugins/ ou /cache/, il est dangeureux de laisser un accès en lecture à ces dossiers qui peuvent être une mine d'informations pour un pirate.

Ce que je conseille

Il faudrait ajouter une directive "Options" par défaut dans le .htaccess lors de l'installation de WordPress afin de sécuriser ce listing en l'empêchant.

 Comment palier à cela

Ajoutez dans votre ".htaccess" à la racine de votre installation cice en dernière ligne :
[/php]"Options -Indexes"[/php]
Ainsi, le listing renvoie des code 403 - Page interdite.

Authenticité des fichiers du core

A vos souhaits. Les fichiers du core sont identiques pour tout le monde. Il est plus que vivement déconseillé de les modifier afin de ne pas perdre les modifs dans les prochaines mises à jour par exemple.

Lors de "gros" piratages profonds certains pirates malins évitent de tout casser ou modifier l'index, à la place ils restent discrets au maximum et modifient juste quelques fichiers par-ci par-la. Aucun nouveau fichier louche n'est donc ajouté.

Ce que je reproche

Pas grand chose en fait, WordPress ne peut en somme rien faire contre ça.

Ce que je conseille

Il faudrait vérifier de temps en temps (pourquoi pas tous les jours pendant la nuit ?) que les fichiers du core n'aient pas été modifiés, j'irais même un peu plus loin en ajoutant "idem pour les plugins, thème et aussi qu'aucun fichier n'ai été créé".

Comment palier à cela

Pour cela un plugin existe c'est "Exploit Scanner", il vérifie le core pour son authenticité. Il fait aussi d'autres scans qui n'ont pas de rapport avec le sujet, je vous laisse découvrir.

Ce plugin a une lacune que vous pouvez corriger vous même : supprimez (pas seulement désactivé !) et réinstallez le plugin à chaque fois que vous scannez. Vous avez saisi pourquoi ? Non ? Je vous le répète alors : "certains pirates malins [..] restent discrets [...] et modifient juste quelques fichiers", le pirate va donc modifier le fichier de vérification de cette authenticité pour berner le plugin et vous avec ... oui c'est malin un pirate x)

Sécurité des plugins

Un plugin n'étant en somme que du code php qui sait se lier au core de WordPress, tout le monde peut créer des plugins, quelque soit votre niveau php, vous pouvez créer un plugin.

Ce que je reproche

Les plugins ne sont pas vérifiés lors de leur upload ou mise à jour sur le repository. Certes les membres de la communauté réagissent vite face à un plugin volontairement malveillant mais pas face à un plugin malencontreusement vulnérable à une faille web.

Je "reproche" gentiment car je sais qu'il est humainement impossible de les vérifier...

Ce que je propose

Malheureseument pas grand chose ici, comme je viens de le dire, personne, aucune équipe ne pourrait repasser les 18000 plugins en review sécurité ni même tenir la charge des nouveaux plugins + la mises à jour des anciens, je ne propose donc rien :/

Ce que je conseille

Et bien, vérifier que le plugin n'est pas connu pour des failles de sécurité en cherchant sur le forum du plugin, dans les commentaires chez l'auteur, sur d'autres forum wordpress via google, ou sur ce site si l'audit a été réalisé, il ne vous reste plus qu'a le faire auditer (ici aussi) si vous souhaitez vous assurer de ne pas installer un plugin vulnérable.

Proposition de plugins

Voici une liste de quelques plugins dit "de sécurité". Je les ai audités avant de vous les présenter, ce n'est pas parce qu'un plugin se dit faire de la sécurité qu'il est lui même sécurisé (exemple avec le très connu WordPress Firewall 1 et WordPress Firewall 2), vous me suivez ? Bien.

  • Secure WordPress et WP Security Scan : interface claire et simple, quelques cases à cocher et vous voici avec un wordpress un peu plus sécurisé, il détecte lui aussi les url malicieuses. Lien vers l’extend & Lien vers l’extend
  • Exploit Scanner : très utile APRES un piratage, lui ne préviens pas il guéri, et encore, il indique où se trouvent les morceaux de codes louches. Le moindre fichier du core wordpress modifié est détecté et recherche dans vos articles si il y a eu injections de code louche comme des pubs etc. Lien vers l’extend
  • WordPress Plugin Security Checker : Ce plugin vous permet de savoir si l’extension que vous avez installé a été audité pour sa sécurité et si elle est sécurisée ou pas. Plugin de chez moi celui-ci. Lien vers l’extend
  • More Secure Login : Ce plugin ajoute un champ supplémentaire à renseigner lors de votre connection. Ce nouveau code demandé est contenu sur une "Carte de Sécurité" que vous aurez imprimé au préalable. Il s'agit d'une authentification forte. Lien vers l’extend
  • Chap Secure Login : pour ceux qui n’ont pas la possibilité d’activer le SSL pour leur site, vous pouvez installer ce plugin qui hash votre mot de passe avant de l’envoyer lorsque vous vous logguez sur le site. Lien vers l’extend
  • Login Lock : Ce plugin va vous permettre de bloquer les brute force de mots de passe, vous recevrez un mail si cela arrive, vous avez aussi la possibilité de forcer la déconnexion de tous les membres et de leur faire modifier leur mot de passe afin de les obliger à en choisir un fort. Lien vers l’extend
  • BackWPUp : le must du plugin de backup, très simple à utiliser complet. Attention tenez vous à jour car des failles ont été trouvées dans la 2.1.4 et 2.1.5, la 2.1.6 corrige tout ça. Lien vers l’extend Ici rien à voir avec la sécurité, mais sauvegardez vos données car une fois le piratage arrivé, il sera trop tard.
  • Audit Trail : Ce plugin permet de garder des logs de tout ce qui est fait dans l’administration, cela peut être très utile pour découvrir ce qui vient de se passer ou voir des comportements bizarres. Lien vers l’extend

Peut-être connaissez vous "Theme Authenticity Checker" ou "Antivirus" qui scannent vos themes ou plugins à la recherche de failles, l'idée est bonne mais en fait trop de lacunes, je vous invite à lire cet article: http://baw.li/tac

Et les autres CMS ?

Ha, ça sent le troll là, WordPress est-il plus sécure que les autres CMS ? C'est quoi un CMS secure ? Voici ma définition :

Un CMS secure est un CMS dont les équipes de développements sont réactives à la moindre suspicion de faille de sécurité et dont les membres de sa communauté divulguent les failles de façon responsable afin de ne pas créer de mouvement de piratage massif.

Cela ne se compte donc pas au nombre de failles découvertes dans le CMS mais à la rapidité de correction des équipes de dev. Et chez WordPress, les failles sont corrigées rapidement, et on ne connait la faille que quand un patch est dispo (c'est ça, la divulgation responsable ou Responsible Disclosure). Prenez un autre CMS avec moins de failles (en quantité) mais dont le patch ne vient que très tard et ou les failles sont divulguées sur la toile, je vous laisse imaginer la tête des sites l'utilisant ...

Je ne dirais pas "WordPress est le plus secure des CMS", aucun ne l'est, des failles existent encore dans la version 3.3.1, mais où sont-elles ... Même chose pour toute grosse application web en fait.

Les autres artiles de la chaine WordPress sur le sujet "Que manque t-il à WordPress ?" sont ici !

Article 1 chez Seomix : "[La chaine WP] Que manque t-il à WordPress ?"
Article 2 : Vous êtes ici.
Article 3 chez Wabeo : "[La chaine WP] Que manque t-il aux thèmes WordPress ?"
Article 4 chez  WP Themes Pro : "[La chaine WP] Que manque t-il à WordPress niveau webdesign ?"
Article 5 chez  Insidedaweb : "[La chaine WP] Que manque t-il au ECommerce WordPress ?" (prenez un RTT pour tout lire)
Article 6 chez  WPChannel : "[La chaine WP] Que manque t-il à WordPress ?"
Article 7 chez  The Loop : "[La chaine WP] Que manque t-il à WordPress niveau utilisateur ?"
Article 8 chez  Screenfeed : "Quoi ? Il manquerait des choses à WordPress ?"
Article 10 chez  Lumière de lune : "Ce qui manque à WordPress : pas tant que ça..."

Les commentaires ne sont pas juste les bienvenus, ils sont les garants d'une continuité du sujet de cette chaine et peuvent aussi mener à ouvrir d'autres sujets pour une prochaine chaine. Je ne peux donc que vous recommander chaudement de commenter tous les articles de cette chaine.
ps: Merci à Greg encore pour sa relecture et ses corrections sur cet article !

Lire la suite

Vous aimez ? Partagez !

À propos de Julio Potier

Consultant en Sécurité & Expert WordPress, je développe et sécurise du contenu web tous les jours. La création de plugins WordPress fait partie de mon quotidien. Mon livre de chevet ? Le codex WordPress bien sur !

Commentaires

  1. Merci Julio pour cet article, c’était celui que j’attendais le plus et tu as apporté pas mal de réponses aux questions que je me posais.

    Un très bon article de bonne qualité.

    • AuteurJulio Potier a écrit:
      Que d’honneur ;) Tu trouveras aussi ton bonheur parmis la dizaine que nous sommes, peut-être certains point répndrons à des questions dont tu ignorais l’existence au fond de toi (quelle poésie !)
      Merci à toi
  2. Bon récap merci ;) perso à ces conseils et bonnes pratiques j’ajouterais juste qu’il est plus secure de mettre à jour le core WordPress et les plugins en SSH par exemple ou en FTPs …
    • AuteurJulio Potier a écrit:
      Merci. Cependant ceci n’est pas un manque de WordPress, me trompe-je ?
  3. Alors, je suis tout à fait d’accord avec vous sur la possibilité d’éditer les ficheirs à partir de l’installation de WordPress…
    C’est quelque chose que j’essaye de cacher dans mes thèmes (en modifiant le menu de navigation) mais je ne comprend pas pourquoi cette fonction existe… Si on se fait craquer la sécurité du login, c’est un peu porte ouverte à tout les délires pour celui qui a réussi à entrer…

    Sinon, pour ce qui est du login, ce sont des choix qui ont été faits et qui se défendent. Certes elles ne sont pas forcément optimales pour la sécurité mais voila…

    • AuteurJulio Potier a écrit:
      Ce n’est pas au thème à faire cette modification, sinon, je change de thème et hop, on peut de nouveau éditer ems fichiers ? « et zut j’ai oublié ! »
  4. Excellent article sur les lacunes de WordPress en terme de sécurité. Il est complet, explicatif et donne des solutions concrète. je ne connaissais pas Chap Secure Login ni Audit trail d’ailleurs.

    Bref, ce second volet de la chaine WordPress est vraiment excellent. ;)

  5. Bon article, clair et explicite que je m’en vais mettre à profit illico presto.
    Merci.
  6. Ayant déclaré ce site d’utilité publique sur le forum WordPress francophone où j’erre sous le pseudo de wasicu, je ne peux que m’émerveiller devant cet article qui présente l’avantage de proposer des solutions et d’être intégré à une chaine d’articles provenant ou à provenir de sites auxquels je suis abonné (à l’exception de Wabeo que je me ferai un plaisir de découvrir.)
    Merci donc aux enchainés WordPressiens et portez-vous bien.
    Amicalement.
    Thierry
    • AuteurJulio Potier a écrit:
      Merci merci beaucoup :)
      Je ne suis pas présent sur le forum WP (par choix) donc je n’ai pas vu ta recommandation, merci encore.
      A bientôt
  7. Ce qu’il manque à wordpress c’est surtout un répertoire d’administration qui ne soit pas sur un path par défaut.
    L’excellent prestahsop propose et force d’ailleurs l’utilisateur a définir un répertoire de backOffice unique (et idéalement pas devinable).

    Le plus gros prob de WP c’est surtout ces utilisateurs qui ne mettent pas à jour leur plugins/thèmes. 90% des hacks WP sont liées aux plugins et thèmes. (que le plugin soit activé ou pas)

    Conseil ? ne pas utiliser WordPress si on n’est pas sensible à ça. Peut être penser à empêcher l’admin d’utiliser son panel sans les mises à jour ?

    Il y’a beaucoup de choses à dire mais le problème n’est pas forcément le CMS en lui même mais la qualification des utilisateurs qui déploient des WordPress. A trop vouloir rendre utilisable ce CMS il ne s’adresse plus à un public averti.
    Un CMS facilite les choses, ne pas vouloir écrire dans les fichiers est une aberration à mon avis.

    Bref, il faut domestiquer les users de WP et pas développer une usine à gaz de la sécurité.

    Monsieur K,
    Consultant SSI.

  8. Bonne centralisation des lacunes sécu dans notre moteur de site préféré.
    Concernant les plugins j’en ai déjà plus de la moitié installés sur le blog (la plupart grâce à toi d’ailleurs). Le plus flippant reste Login Lock je trouve, avec ses alertes par mail. Chaque jour j’ai droit à ma petite brute-force sur le login en provenance de Turquie (ou d’un VPN se faisant passer pour) ^^.

    Donc à retenir, le premier login essayé est « admin », puis vient après un nom en relation avec le nom du site : Screenfeed ou ScreenFeed pour ma part. C’est quand je verrais mon vrai login apparaitre dans le rapport que je commencerais à m’inquiéter ;)

    PS : de rien, de rien ^^

    • AuteurJulio Potier a écrit:
      Merci à toi
      Oui Login Lock est bien car comme tu vois, on peut vite voir si le hack est proche, d’où l’intérêt de changer son passe assez souvent.
      Plus vous êtes la cible d’attaques, plus souvent il faut changer #logique

      Je continue à créer 2 plugins sécurité en ce moment, pour moi, comme d’hab, des must have pour éviter les piratages rapides ou profonds.

      HS: Pour ceux qui lisent les commentaires : suivez Greg, non franchement c’est pas un #FF bidon, lisez ses articles, regardez la qualité de son code, de son CSS, moi je suis bluffé …

    • :3
    • AuteurJulio Potier a écrit:
      (mooning) ?
  9. Salut Julio.

    Excellent article ! Je l’attendais depuis tes nombreux commentaires forts constructifs sur mon blog, et je ne suis vraiment pas déçu du contenu.

    Tu apportes des solutions lorsque tu le peux et dans tous les cas tu expliques les choses avec recul et expérience. C’est très agréable.

    J’ai pensé à la même chose que Greg à propos de l’ID de base du compte admin. Mais finalement si tout le monde procède de la même manière, on va se retrouver avec quelques possibilités :
    - j’ai juste installé mon blog : mon id d’admin est 1
    - j’ai fait un peu attention, j’ai passé mon premier compte en « auteur » et je me suis créé mon compte admin à côté : mon id est 2

    Les autres cas seraient donc des exceptions (cas du blog qui a déjà plusieurs membres dont l’auteur est passé sur ton article, par exemple, avant de créer un nouveau compte admin).

    Du coup ma question : est-il possible ET utile de faire de ces exceptions une bonne pratique ? J’entends par là d’offrir un ID aléatoire au premier administrateur créé ?

    Désolé pour la réflexion un peu bancale, je n’ai pas toutes mes heures de sommeil. :D

    Je ne connaissais pas Exploit Scanner, et je te remercie pour l’info, je me demandais justement s’il y avait une possibilité de scanner les dossiers du cœur pour y déceler des modifications, c’est parfait ! :)

    Excellente continuation et à bientôt.

    • AuteurJulio Potier a écrit:
      « est-il possible ET utile de faire de ces exceptions une bonne pratique ? J’entends par là d’offrir un ID aléatoire au premier administrateur créé ? »
      ID aléatoire, à moins de te faire un ID genre « 12645″ ouis pourquoi pas. possible, oui je pense en modifiant direct dans la BDD.

      Pour Exploit Scanner, je suis en train de fair eun plugin qui reprends l’idée mais qui va plus loin et encore plus sécure (oui, c’est possible ^^)

      Merci pour ton commentaire élogieux ;)

    • Ah oui ! Mais du coup c’est peut-être toi qui m’avais mis cette idée de scan du cœur en tête ?
      Je comprends mieux :D

      J’ai hâte de voir ça !

      Au plaisir ;)

    • AuteurJulio Potier a écrit:
      « Stay tuned » comme dirait WordPress ;)
  10. 10
    Jimmy a écrit:
    article vraiment très intéressant étant confronté depuis quelques semaines à un ou plusieurs hackers qui ajoutent des morceaux de codes dans tous les fichiers index.php de l’un de mes sites, je n’arrive pas à m’en défaire :-(
    • AuteurJulio Potier a écrit:
      Merci Jimmy :)
      Aie c’est ennuyeux ça :/ Pas d’ajout en base de données ? Déjà changé les mots de passe user/sql/ftp et tout continue ? Quels plugins avez vous ?
      ps : on continue par mail pour ne pas poluer les commentaires ;)
  11. Juste une remarque sur le point 3. Le « Directory Listing » dépend plutôt de la configuration du serveur. Cela vient du fait que WP est installé sur des différentes plate-formes/configurations. Nginx par exemple ne prend pas en compte les fichiers .htaccess. Un autre exemple, certaines configurations interdissent la modification des paramètres serveur : « Options -Indexes » peut produire des « Internal Server Errors ».
    • AuteurJulio Potier a écrit:
      Tout à fait ce qu’il me semblait, mais en PHP on peut détecter la plateforme, donc selon le cas, il devrait/pourrait mettre cette option dans un .htaccess et dans l’autre … au moins avertir l’utilisateur ? A creuser
      Merci de ton comm !
  12. Une remarque pour les users, je viens de capter ça. J’ai créé mon compte admin avec un pseudo X à l’installation. C’est aussi (rhoo pas bien) mon profil de rédacteur. Par soucis de sécurité j’ai choisis d’afficher mon pseudo ‘dhoko’ en public.

    Théoriquement je suis censé apparaître sous cette identité sauf si je me connecte. Hors dan mon dernier post je regarde à la fin je vois auteur Dhoko. Je clic et miracle on a author/X ?! Pourquoi pas Dhoko ?!

    Pourquoi donner un nom publique si c’est pour le laisser X visible ?!
    En gros autant laisser admin comme login ça revient au même.

    • AuteurJulio Potier a écrit:
      C’est ton thème qui écrit ton login, à lui d’afficher le « nice_name » au lieu du « user_login » ;) #bad_theme
    • Dit ça à WordPress alors ;) C’est le thème par défaut huhu
    • AuteurJulio Potier a écrit:
      Je viens de regarder le code et … erreur de ma part, il renvoie bien le « user_nicename », mais c’est « user_displayname » qui devrait l’être et ça c’est dans le code de WP, cependant dans la fonction qui renvoie le nicename on peut lui passer un 2eme paramètre, dans le thème il ne l’est pas.
      Aussi on peut utiliser un hook pour le modifier, amis je me demande ce que le lien va renvoyer …
      Il y a aussi WordPress SEO qui empeche de visiter cette page.
      Bref, ya bien un « truc » ici :|
      Merci à toi de mettre ta tête là où il faut :)
  13. 13
    Julien2k a écrit:
    Bonjour,

    Pour vérifier l’intégrité de tous les fichiers, il y a l’extension « WordPress File Monitor ». A vous de juger : http://wordpress.org/extend/plugins/wordpress-file-monitor/

    Julien

    • AuteurJulio Potier a écrit:
      Très bon plugin, j’avais en tête dans faire un dans le genre, je vais peut-être juste fork un de ceux là ;p
      Pourquoi, car un vrai bon gros pirate saura déjouer le plugin, comment ? En le désactivant par exemple ? voilà, il a débranché la sécurité, il peut « faire son bazar » ;)
      Ne vous basez pas sur un plugin pour sécuriser un site, règle simple et efficace.
      Certes ça aide et oui, ça vous avertira quand un script auto ou un ptit hacker vient vous embêter.
      Je le recommande en tout cas, merci du lien !
  14. 14
    Lionel a écrit:
    Hello

    J ai une question: Lorsque l’on parle des plugins ou themes qui sont achetes sur des plateformes connues, sont-ils valides d un point de vue securite.
    Parce que mon experience me dit que ‘non’.

    Votre avis sur le sujet ?

    • AuteurJulio Potier a écrit:
      Bonjour Lionel

      Si ce n’est pas précisé clairement que la sécurité a été validée par un organisme externe ou que le code n’est pas validé par une certification, alors c’est comme pour n’importe quel autre theme et plugin : les vulnérabilités peuvent exister.
      Donc ton expérience a raison ;)

  15. 15
    Tony a écrit:
    C’est vrai que l’ensemble de ces éléments sont très pertinent. Ça serait judicieux d’avoir un onglet « sécurité » dans la partie d’administration de WordPress. Pouvoir créer un log de toutes les attaques de type brute force et avoir un menu pour bloquer certaines adresse IP ou autres.
    • AuteurJulio Potier a écrit:
      Hello
      Pas bête, mais cela existe déjà grâce aux plugins, pas besoin de l’intégrer dans le core :p
  16. 16
    Kermit a écrit:
    Bonjour,
    Tout d’abord merci pour ce tutoriel qui m’a données des informations intéressantes sur la sécurité de WordPress.
    J’aurais tous de même une question: quels sont d’après vous les fichiers les plus sensibles aux modifications ou les fichiers cibles des hackeurs ?

    Car j’ai vu que certain plugin permettais d’envoyer des alertes lors de la modifications de fichiers ? Etant un débutant dans WordPress je pense au fichier wp-config.php, ainsi qu’au fichier .htaccess, mais n’ayant aucune certitude à ce sujet je préfère demander des renseignements pour éviter tous problème.

    Merci par avance,
    Cordialement.

    • Kermit a écrit:
      Désolé pour le double post (pas d’édition de commentaire possible), mais j’aurais une autre question au niveau de la sécurité:
      Est ce que cacher sa balise meta-tag (qui contient des informations sur la version de WordPress) est utile au niveau de la protection ? Et est ce que cacher cette balise n’est pas pénalisant au niveau du référencement ?
    • AuteurJulio Potier a écrit:
      Bonjour !
      De rien, merci à toi, si ça aide, je suis ravi. Pas de soucis our le double post, fais un triple si tu veux ;)
      Je te dirais que 100% des fichiers php et javascript peuvent être la cible d’un piratage, et que ce fichier soit du core, d’un plugin, du thème ou meme un php perso, il est la cible. Sans oublier la création de fichiers malicieux.
      Pour info, ce mois ci je me suis occupé d’un site vérolé avec plus de 1750 fichiers touchés. Ton scanner va péter un plomb :)
      Le fichier wp-config.php est lui aussi la cible car il n’est pas inclus dans un scanner de hash de fichiers comme le fait « exploit scanner ». Le mieux restant donc le plugin « WordPress File Monitor », mais attention, utilisez le quand vous êtes sûr que votre site est propre, sinon ça ne sert à rien évidemment …
      Pour la version de WordPress, je l’ai déjà dit, je vais me répéter et je vais surement un jour (oui un jour) créer un article intitulé « Ne cachez pas votre version de WordPress », pourquoi ? Ca ne sert à rien. On peut toujours trouver votre version, et puis, vous avez installé la dernière de toute façon non ? Si non, alors vous prenez de toute façon des risques, version visible ou pas.
      Vous la cachez, les hackers trouvent une autre façon de la trouver etc etc etc Le chat et la souris en somme.
      Question référencement, je n’y connais rien, mais je ne vois pas en quoi ne pas afficher sa version serait pénalisant.
      Bref, vous perdez plus de temps à la cacher que vous n’en faites perdre aux hackers pour la trouver.
      As tu caché la version sur ton site ? (tu n’as pas linké ton site ici je vois, dofollow ici ;p)
      A bientôt
    • Kermit a écrit:
      Merci pour cette réponse rapide,
      Je n’ai pas linké le site car je travail encore en local.
      Je vais suivre vos conseil et allez jeter un coup d’oeil sur WordPress File Monitor.
      Ma version de WordPress est à jour, tous comme les différents plugins utilisés (avoir des plugins installés qui ne sont pas à jour, mais qui ne sont pas activer ne représente pas de risque ou peuvent tous de même créer des failles?).
      Je souhaiterai également avoir un/des avis sur le plugin « Better WP Sécurity », avec lequel je suis entrain d’effectuer des tests.

      Encore merci de votre aide,
      Cordialement.

    • AuteurJulio Potier a écrit:
      Un plugin non actif peut présenter des failles de sécurité, j’ai déjà recontré le cas.
      « Better WP Security » est bien oui, je n’aime pas trop les plugins usine à gaz, si je ne désire qu’utiliser % de sa capacité, j’ai quand même tout à charger, mais sinon il fait du bon travail !
  17. 17
    AlphaGolf a écrit:
    Merci Julio pour cet article.

    Dans la section « Proposition de plugins » tu indiques des plugins de WebSiteDefender, je me dois de préciser que j’avais essayé leur plugin WP Security Scan, c’était en Septembre dernier, or ce plugin plantait lamentablement sur mes sites où j’ai renommé wp-content, règle de base de sécurité… Répertoire non trouvé et tout le bazar. Quant au support, j’en parle même pas, n’ont même pas compris ce que j’évoquais (pourtant fluent english)… J’ignore si cela a été mis à jour depuis…? Plugin dûment viré. A bon entendeur.

    Amicalement,
    AG

  18. 18
    RoyalC a écrit:
    merci pour cet article et surtout pour les solutions proposées,j’ai un apprenti hacker qui essaye depuis 2 mois de hacker mon site en bruteforce pas de bol j’recois un mail a chaque tentative d’intrusion dans la partie wp-admin ,j’ai donc son ip (bien sur qui est sous un proxy) et le pass qu’il utilise et je dois dire que ca me gonfle de devoir changer mon password tout les 15 jours mais je vais essayer tes methodes de protections et de scan au cas ou.
    Si tu connais une bonne methode pour ban ce genre d’attaque je suis preneur.J’ai modifié mon fichier admin pour qu’il me mail l’ip meme si derrier un proxy (bon pas un elite bien sur car pas tres repandu) mais je recois le mail avec l’ip du gars :D testé via un proxy web et ca marche pour l’instant,j’ai pas testé avec d’autre proxy car je cherche une methode radicale pour contrer les attaques avant tout et cela m’evitera de devoir remettre mon code dans l’admin.En tout cas bravo pour ton site qui regorge d’infos.
    Cordialement Reynald.
    • AuteurJulio Potier a écrit:
      Passe par une protection HTACCESS sur ton wp-admin/ et mets admin-ajax.php dans les fichiers autorisés sans htaccess sinon tu auras des soucis.
      La, le brute force ne fera jamais aucun essai …

      ou

      Tu peux aussi passer par l’ajout d’un champs supplémentaire avec mon plugin « More Secure Login« , là, il peut avoir ton pass, ça ne suffit plus ;)
      See you !

    • RoyalC a écrit:
      merci j’ai effectivement installé BAW More Secure Login et je vais faire comme tu me le dit.en tout cas bravo car c’est rare de trouver un site aussi complet et qui reste a la portée de tous.
      Bravo et bonne continuation.
  19. 19
    pAT a écrit:
    Salut Julio

    Merci pour ce super article, vraiment très instructif.
    Je ne trouve pas le plugin « Login Lock » cité ds ta liste.
    Je me suis rabattu sur « Login Lockdown » mais je ne suis pas sûr (en regardant ses options) d’être alerté par mail en cas de brute force.

    « Login Lockdown » est il valable ou y a t’il un equivalent à « Login Lock » ( simple et efficace ;-) ?????

    Merci d’avance.

  20. 20
    seofreelance2013 a écrit:
    et bien moi je ne comprends pas comment on peut encore utiliser wordpress !
    • AuteurJulio Potier a écrit:
      Bonjour le troll ;)
      Et bien peut etre par ce que c’est le CMS le plus utilisé au monde ? Avec la plus grande communauté ? Et j’en passe !
      Mais si tu as mieux à proposer, je t’écoute, dans le cas contraire, j’en ris encore.
  21. 21
    Franck - Papa Blogueur a écrit:
    Je ne suis pas calé dans tout cela, mais je me suis fait hacker 3 fois en 8 mois. J’ai donc un soucis quelque part.
    j’ai déjà installé plusieurs de tes plugins et je vais encore réaliser plusieurs actions dans un avenir proche.

    Pour le fichier .htacess tu précises cecic:

    Ajoutez dans votre “.htaccess” à la racine de votre installation cice en dernière ligne :
    « Options -Indexes »
    Ainsi, le listing renvoie des code 403 – Page interdite.

    Si j’ai bien compris, il faut juste ajouter ce bout de code et rien d’autre ? Et au final, c’est là que je n’ai pas compris, il se passe quoi ? O_o

    Merci d’avance de ta réponse.

    • AuteurJulio Potier a écrit:
      Bonjour
      Ce morceau à mettre dans .htaccess sert à empecher le listing de fichier, par exemple si on va sur /wp-content/plugins/un-plugin/ on peut lister les fichiers, avec la directive citée, on ne peut plus.
      Donner le moins d’infos possible aux hackers, c’est dejà un grand pas.
      A bientot
  22. Bonjour,
    Je vais poser la même question que PAt, le plugin LoginLock n’existe plus, lequel préconiserais tu pour le remplacer ?
    Très bon(s) article(s), merci à toi :-)
  23. Bonjour Julio,
    Merci pour cet article, et tes interventions sur la thématique WP peu importe le site, je les suit toujours avec attention :)

    Un point qui n’a pas été évoqué jusqu’ici et que je trouve « limite » même si le danger est relatif, est que n’importe quel contributeur puisse voir les commentaires dans l’admin. Pour les « approuvés » ok puisqu’ils sont visibles sur le site mais l’affichage des autres ne devraient, à mon avis, n’être visible que par les admins et modérateurs. Connais-tu un moyen de limiter l’accès à la page « wp-admin/edit-comments.php » qu’à ces membres stp ?
    Ou une meilleure solution ?
    Merci,

    François

  24. 24
    Stefan le bron a écrit:
    Great blog here! Also your website loads up very fast!
    What web host are you using? Can I get your affiliate link to your
    host? I wish my site loaded up as quickly as yours
    lol

Envie de dire quelque chose ?

Avant de parler, merci de lire la charte des commentaires.

*

Vous pouvez utiliser le tag [php][/php] pour ajouter quelques lignes de PHP, si c'est un pavé, merci d'utiliser service comme pastebin.com.

1fb6cc9ce3bcf98dcdb6f3190d7599b9OOOOOOOOOOOOOOOOOOOOOOOOOOO