Optimisation Web
Ce qui se passe lorsque votre site est « piraté » !
Vous possédez une entreprise, une boutique qui a pignon sur rue en plus d’une boutique en ligne, et les affaires sont bonnes.
Un matin, vous vous réveillez, partez pour le travail avec un café et un muffin à la main. Vous vous dirigez vers votre magasin … lorsque vous remarquez quelque chose d’étrange … toutes les fenêtres sont barricadées.
Vous vous rendez à la porte, insérez la clé mais la serrure ne bouge pas. Hmm … Vous tentez l’entrée arrière. La même chose!
Vous réalisez qu’il n’y a aucun moyen d’entrer dans votre boutique, du moins pour le moment.
Soudainement, il est 9 heures et des personnes affluent sur le trottoir vers votre boutique qui semble « abandonnée » et dès lors, ils rebroussent chemin. D’autres s’arrêtent devant vous et vous demandent ce qui se passe et à quel moment vous serez ouvert de nouveau, mais malheureusement, vous n’avez pas de réponse, vous ne savez même pas ce qui se passe.
Cette mésaventure est arrivé à un de mes amis il y a plus d’un an. Il exploitait une boutique ayant pignon sur rue et une boutique en ligne. Suite à un piratage, son site de vente en ligne a été en panne pendant presque une semaine, ce qui dans le monde numérique représente une éternité.
Après avoir reçu quelques messages de personnes disaient que son site était incroyablement lent. Il a vérifié la disponibilité de son site, il s’est rendu compte que son site prenait plusieurs secondes pour charger, et lorsque la page d’accueil s’est finalement chargée, il s’est aperçu alors que tous les liens de son site étaient redirigés vers des sites externes de ventes de viagra, de casino en ligne ou de phishing.
La situation était grave ! Tout de même, sa boutique en ligne réussissait bien et pouvait rapporter en moyenne jusqu’à 200 $ par jour (sans vendre de viagra !). En plus, il vendait aussi ses produits sur des sites d’affiliations, cela signifiait que si quelqu’un essayait d’acheter à travers un de ses liens d’affiliations, il serait d’abord redirigé vers son site pour ensuite atterrir sur un site malveillant … pas bon ! Son site était complètement inutilisable et compromis.
Le serveur de son site Web était devenu un serveur de SPAM, utilisant le trafic du site pour rediriger vers des sites malveillants et le serveur de courriel pour envoyer des courriels de SPAM. Ce qui a été catastrophique pour son référencement SEO puisqu’en deux jours seulement son site a été désindexé et mis sur les blacklists de Google et de plusieurs antivirus. Ayant pour effet que plusieurs semaines après certains des courriels envoyés finissaient dans la boîte de pourriel de ses destinataires.
Bref, avec mon aide, nous avons pu remettre le site en ligne. Mais presque une semaine plus tard. Les pertes ont été considérables. En plus des pertes monétaires, la notoriété de son entreprise, tant pour Google que pour ces affiliations, en ont pris pour leur rhume.
Comment mon site peut-il se faire pirater?
Dans ce cas, les pirates ont exploité un plugin vulnérable pour insérer des scripts (programmes) discrets qui utilisent les ressources du serveur. Ainsi plusieurs fichiers encodés sont cachés dans les répertoires « wp-includes » et « wp-content », notamment, et dans des sous-dossiers difficilement repérables par des scanners de sécurité. Ce type de piratage est très fréquent. Le but est de pirater votre serveur pour s’en servir soit comme d’un serveur de spam, ou encore, pour utiliser et rediriger une partie de votre trafic vers d’autres sites.
Les différents types de piratage
Une attaque malveillante ouvre plusieurs possibilités pour le pirate. Voici quelques attaques malveillantes que votre site pourrait subir.
Vulnérabilité Cross-Site Scripting (XSS)
Avec le Cross-Site Scripting, les pirates peuvent accéder aux informations de session, détourner ou usurper l’identité des utilisateurs, voire voler des informations financières.
Vulnérabilité Cross-Site Request Forgery (CSRF)
Dans ce cas, les pirates utilisent les droits d’un utilisateur authentifié pour lui faire exécuter des actions malveillantes sur le site, par exemple modifier les paramètres d’un plugin, supprimer un article, etc.
Attaque par force brute
Mieux connu sous le nom de Brute Force Attacks, les pirates multiplient les tentatives d’accès à votre site web en utilisant des combinaisons de noms d’utilisateur et de mots de passe. Chaque jour plusieurs sites subissent ces attaques à leur insu. Le principal indice pour les reconnaître : les performances de votre site sont réduites et le site se charge extrêmement lent.
Defacing
Si le pirate a le contrôle total de votre site, il peut lancer une attaque du type defacing, ou « défiguration ». Autrement dit, il remplace votre page d’accueil par une autre page ou une image qui affiche des revendications ; des insultes envers une organisation, un groupe religieux, etc.
Attaque par injection SQL
Cette attaque permet au pirate d’accéder au site en ayant un contrôle total sur la base de données. Ces attaques peuvent être réduites en limitant les droits de l’usager MySQL qui se connecte à la base de données. Les informations de connexion à la base de données sont disponibles dans le fichier wp-config.php à la racine de votre site.
Phishing
Avec ce genre d’attaque, les pirates tentent de récupérer des informations sensibles d’internautes. Ces attaques permettent d’infecter un site et de rediriger les visiteurs vers une landing page, qui est une fausse copie d’un site reconnu (ex. site de banque, GMail, PayPal, etc).
Vulnérabilités Remote Code Execution (RCE) et Remote File Inclusion (RFI)
Des failles de sécurité trouvées dans des plugins permettent à des pirates d’exécuter un code arbitraire afin d’installer une porte dérobée (backdoor). Celle-ci permet au pirate d’accéder librement et de faire ce qu’il veut sur votre serveur web, par exemple lancer des attaques du type « Port scan », effectuer des attaques DoS, envoyer des courriels de SPAM et rediriger vos visiteurs vers des sites de phishing.
Vulnérabilité « Object Injection »
Le pirate peut faire un certain nombre de choses en exploitant cette vulnérabilité. Il peut télécharger le fichier ultra sensible « wp-config.php » qui contient les principales directives de configuration de votre site, comme les informations de connexion à votre base de données, ce qui lui permet un contrôle total sur votre site web ainsi que sur votre base de données.
Que faire suite au piratage ?
Dans le cas d’un défacement ou d’un vol de données, le nettoyage sera rapide, puisque le pirate n’aura pas l’intention de revenir sur votre site régulièrement, il n’aura donc probablement pas installé de backdoor. En revanche, dans le cas de l’insertion d’un script malveillant, le nettoyage sera beaucoup plus compliqué.
D’abord, plusieurs actions sont nécessaires, avant même de chercher la faille, il est urgent de changer tous les mots de passe ;
- changement des mots de passe de toutes les bases de données
- changement des mots de passe des accès FTP et/ou SFTP
- changement des mots de passe des accès CPanel et WHM
- changement des mots de passe des usagers du serveur
Ensuite il faut identifier le type d’attaque, pour ce faire vous pouvez utiliser le plugin WordFence pour WordPress. Vous devrez aussi analyser attentivement les fichiers de journal (logs) du serveur pour identifier les requêtes malveillantes et la date à laquelle elles ont commencé. Vous verrez que des pages .php qui ne sont même pas censé être appelées en HTTP sont appelées en POST ou GET . Cela pourrait être un indice qu’un backdoor a été installé sur votre site.
Ensuite, via FTP, vous devez répertorier tous les fichiers ajoutés ou modifiés récemment sur le serveur. Les fichiers modifiés sont la plupart du temps des fichiers .php ou des fichiers .js. Les fichiers Javascript (.js) servent en général à l’insertion d’iframe ou des scripts de redirection (phishing , etc…). les fichiers .php servent habituellement à générer du SPAM (parfois lancer des attaques DoS).
Une fois que vous aurez identifié la faille ou le plugin défaillant, vous vous direz peut-être « Pas grave, j’ai des backups ! » (si vous en avez ! La plupart des hébergeurs n’offrent pas ce service d’emblée avec leurs forfaits d’hébergement). Mais c’est une erreur. Pourquoi ? La raison est simple. Une fois les fichiers malicieux envoyés, l’exploitation de cette backdoor n’est pas instantanée. Les pirates vont généralement attendre plusieurs jours ou semaines avant de l’exploiter. Le but ? Corrompre également vos copies de sauvegarde. En effet le but est de pirater votre site sur une longue période de temps et donc de vous compliquer la vie le plus possible pour vous empêcher de supprimer ses scripts installés un peu partout sur votre serveur. Il est donc conseillé de restaurer seulement la base de données à partir d’une copie de sauvegarde.
Pour les fichiers du site, il est conseillé de remettre les fichiers originaux de WordPress, donc de télécharger WordPress à la dernière version et remettre les fichiers à neuf. Vous devez faire de même avec les plugins et thèmes. Si vous utilisez un thème-enfant (child-theme), il sera nécessaire de réinstaller les fichiers de thème-enfant provenant de la copie de sauvegarde, en ayant bien sur pris soin de le nettoyer avant. Pour les plugins custom il faudra faire de même.
En résumé…
Les pirates peuvent avoir plusieurs motivations pour lancer des opérations malveillantes et criminelles à partir de votre site ;
- défiguration de site ,
- installation de malwares pour rediriger les visiteurs vers un autre site,
- lancer des attaques DoS ou envoyer des courriels de SPAM,
- voler, modifier ou détruire la base de données,
- voler des informations bancaires ou confidentielles,
- transformer votre site en site de phishing,
- usurper l’identité des membres de votre site.
Quelles que soient les motivations de pirater votre site, les effets seront les mêmes, soit ;
- de nuire à votre indexation et référencement SEO
- d’affecter négativement votre e-réputation
Quelques conseils !
Il existe un certain nombre de solutions techniques pour sécuriser votre site WordPress, ci-dessous cinq conseils faciles à appliquer. Faites appel à des experts de WordPress si vous avez des contraintes.
- suivez les mises à jour de sécurité de WordPress et installez-les sans attendre
- vérification régulière des mises à jour des plugins et thème que vous utilisez
- n’installez pas des thèmes et des plugins que vous trouvez à télécharger sur n’importe quel site. De manière générale n’utilisez des thèmes et des plugins qui proviennent du site wordpress.org
- votre mot de passe doit contenir au moins 8 caractères – lettres, chiffres et caractères pour renforcer la complexité. Aussi, n’utilisez jamais le même mot de passe d’autres comptes (FTP, base de données, compte Google, compte Paypal, etc.)
- sauvegardez régulièrement votre site web (hebdomadaire) et votre base de données (quotidienne)
Évidemment, la meilleure manière de se prémunir des dangers de WordPress, c’est encore de ne pas utiliser WordPress, mais cela ne résoudra pas vos problèmes. Même si WordPress est une plateforme intuitive pour tout le monde, rappelez-vous que l’administration d’un site WordPress demande un certain effort et que les mises à jour nécessitent une expertise, et qu’en gérant vous-même votre site vous êtes responsable de ce qu’il peut vous arriver. Les plans d’entretien de WordPress sont peut-être pour vous la meilleure manière de dormir sur vos deux oreilles.