Sécuriser WordPress 2 : Surveiller les modifications éventuelles de fichiers

Toujours dans le cadre de la sécurisation de WordPress, je souhaitais vous parler de quelques bonnes pratiques et outils simples qui seront utiles à la prévention des attaques, et vous aideront le cas échéant à trouver plus rapidement les éléments qui auraient été modifiés à votre insu.

L’un des inconvénients de WordPress c’est d’être le n°1 de CMS open source, et donc, à ce titre, il est le plus attaqué, parce que le plus utilisé.

Maintenant quand on parle d’attaque il faut bien comprendre qu’il y a différentes pratiques standard de la part de casse-pompon en herbe.

Ces pratiques vont de la modification de fichiers d’origines, qui seront remplacés par d’autres qui feront en fonction des besoins de l’attaquant, soit les redirections vers un autre service, soit les attaques directes au niveau du navigateur de vos utilisateurs, soit encore leur permettront de prendre la main en partie sur votre serveur pour spammer la terre entière.

Ce qui aura pour résultat, au mieux de modifier votre contenu et de vous retrouver avec une redirection sur un site de vente viagra et au pire de perdre la main sur votre site et de risquer la fermeture de votre service.

Donc comment éviter cela ? Premièrement, il ne faut rendre inscriptible que les dossiers fichiers qui ont besoin de l’être. C’est-à-dire qu’à part les dossiers ‘wp-content/uploads‘, tous les autres dossiers et fichiers doivent être lisibles de l’extérieur mais inscriptible (et pour les dossiers ils doivent être executables aussi).

Pour cela vous devez utiliser votre logiciel de transfert ftp et modifier le dossier de manière récursive pour y supprimer les droits d’écritures ( group + autre ). Si vous n’êtes pas familier avec la gestion des droits des fichiers et dossiers sur votre serveur, je vous suggère la lecture du billet suivant au chapitre « les permissions c’est quoi? » .

Cela fait, reste que certains petits malins peuvent profiter d’un trou de sécurité pour écrire des fichiers de l’extérieur dans votre dossier « wp-content/upload ».

Pour empêcher que ces fichiers soient exécutés par la suite, soit dans la configuration de votre serveur apache par exemple, soit grâce au fichier « .htaccess » à la racine de votre WordPress, utiliser la règle suivante, ce qui empêchera que tout fichier ne puisse être exécuté à partir de ce dossier.

<Directory "...../wordpress/wp-content/uploads">
        <FilesMatch "(?i)\.(php|php3?|phtml)$">
                Order Deny,Allow
                Deny from All
        </FilesMatch>
</Directory>

Remplacer ….. par le chemin hadoc.

Pour ceux qui souhaiterais surveiller s’il y a des modifications éventuelles ou de nouveaux fichiers un plug-in gratuit nommé « WordPress sentinelle« , vous sera d’une très grande utilité.

Ce plugin gratuit se charge de créer une clé unique pour chacun des fichiers disponibles sous l’arborescence de votre WordPress. Et si ces fichiers sont modifiés, la clé ne correspondra plus, et vous serez prévenu qu’il y a une différence par rapport au moment où la clé a été créé. Ce qui vous permettra de soit remplacer le fichier par le fichier d’origine, soit de vérifier les modifications qui ont été apportés.

Dans le cas d’un fichier modifié cela vous sera extrêmement utile et surtout vous fera gagner un temps précieux de savoir où aller chercher.

Et pour finir, voici un autre plugin particulièrement utile pour tout autre chose que des problématiques de sécurité de prime à bord, mais qui peut se révéler fort utile dans le cas ou un petit malin, qui modifierait votre contenu, y intégrerait des liens vers ses propres services de type vente de viagra ou casino en ligne. Il se nomme « Broken Link Checker« .  Sa fonction première est de vous permettre de garder dans le temps tous les liens de votre site fonctionnel (si par exemple vous avez des liens vers des sites qui n’existent plus), mais si vous faites l’objet d’une modification de contenu, sachant que les liens vers des sites utilisés pour la redirection sont très volatiles, vous serez prévenu d’un lien cassé, donc lors de votre inspection de ce lien, vous visualiserait s’il est bien intentionnel dans votre page ou pas.

Bon blogging !

 

No Comments

Post a Comment