Lorsque vous installez WordPress sur un serveur ou que vous modifiez un site WordPress existant pour lui ajouter un thème ou une extension, vous devez faire attention aux fichiers que vous copiez sur le serveur. En effet, certains fichiers, dont l'extension n'est pas protégée par le serveur (ex : .txt), pourraient comprendre de l'information intéressante pour les usagers malveillants comme par exemple le numéro de version de WordPress, d'un thème ou d'une extension.
Les usagers malveillants sont à la recherche de telles informations afin d'exploiter des failles de sécurité connues. Il est donc important de ne pas leur fournir d'armes à cette fin, surtout que les fichiers en cause ne sont pas nécessaires au bon fonctionnement du site WordPress.
Parmi les fichiers à ne pas copier sur le serveur, notons :
Mettez-vous à la place d'un usager malveillant à la recherche d'un site WordPress contenant par exemple la version 5.8 de l'extension nommée « un plugin vulnerable », qu'il sait vulnérable. La première chose à faire est de vérifier si un site est effectivement bâti avec WordPress :
L'usager malveillant recherchera ensuite la présence de l'extension en question. Il connait le nom du dossier qui contient normalement l'extension (ex : un-plugin-vulnerable). Il sait également que ce dossier contient un fichier nommé, disons, unpluginvulnerable.php.
L'usager malveillant recherchera finalement la présence d'indices sur la version utilisée.
Il est maintenant prêt à exploiter la faille connue de cette version. Ouch !
Tout d'abord, vous devez vous assurer que le numéro de version n'apparaisse pas dans le code source de la page. Consultez à cet effet la fiche « Cacher le numéro de version de WordPress tout en gérant le cache des fichier .css et .js ».
Assurez-vous également que les thèmes ou extensions non utilisés ne soient pas copiés sur le serveur. Puisque tout fichier pourrait éventuellement être utilisé ma mauvais escient, mieux vaux ne pas conserver les fichiers inutilisés.
Ensuite, recherchez les fichiers potentiellement compromettant à la racine de WordPress, dans les dossiers de thèmes et dans les dossiers d'extension. Si vous trouvez un tel fichier sur le serveur, gardez-en une copie sur votre poste local (juste au cas où) puis supprimez-le du serveur.
Testez ensuite votre site pour vous assurer que tout fonctionne encore normalement.
Il est également possible de configurer le serveur pour qu'il ne permette pas l'affichage dans les navigateurs des fichiers readme.txt et autres fichiers potentiellement compromettants. Ceci sera fait à l'aide du fichier .htaccess ou web.config, selon le serveur utilisé. Cette technique a l'avantage de faciliter les mises à jour puisqu'il ne sera pas nécessaire de vérifier le contenu des dossiers à chaque fois.
Cependant, certains fichiers comme index.html demeureront visibles dans le navigateur, de par leur nature, et devront être supprimés manuellement.
« WordPress Security Tip: Delete ReadMe after Installation ». WordPress Optimized!. http://wordpress.2bearstudio.com/wordpress-security-tip-delete-readme-after-installation/
« WordPress security tips using htaccess ». Aleix Martí. http://www.interactius.com/security/wordpress-security-tips-using-htaccess/
▼Publicité