L'un des principaux problèmes de la technologie est la fréquence élevée des défaillances en matière de sécurité. De nombreuses informations sont volées quotidiennement et utilisées pour voler plus d'informations, envoyer des spams, ouvrir des portes aux systèmes et parfois même endommager nos ordinateurs.

Aucun de ces problèmes n’est inconnu de WordPress, un nombre impressionnant de sites sont devenus les victimes de criminels désagréables exploitant la communauté pour leur propre bénéfice personnel.

Afin de contrer cette menace, nous avons rassemblé quelques outils et astuces pour éviter d’être la prochaine victime. Ou si vous êtes assez malchanceux pour être déjà victime, comment combattre et réparer votre installation.

Exploiter les attaques

Vous en avez peut-être entendu parler, vous pouvez même connaître les détails, mais pour ceux qui n'ont pas le problème: un exploit est un code malveillant distribué pour exploiter une faiblesse du code existant.

TimThumb était susceptible d'une attaque de ce genre; une de ses fonctions, qui permet aux utilisateurs de télécharger des images à partir de différents sites et d'y accéder librement, des images stockées dans un répertoire cache afin que Timthumb n'ait pas à les retraiter à nouveau. Cette fonction pourrait être exploitée par un pirate qui télécharge des fichiers sur le serveur, leur permettant d'accéder à autant de ressources de l'installation WordPress qu'ils le souhaitent.

Exactement le même problème affecté Uploadify , un plugin permettant aux utilisateurs de télécharger des fichiers. Lorsqu'il n'est pas correctement contrôlé, le plug-in permettait aux pirates d'accéder librement au site en téléchargeant des scripts PHP pour accorder des autorisations d'accès.

Maintenance

Image de maintenance via Shutterstock.

Le problème dans ces cas, comme avec la majorité des attaques d'exploitation, n'était pas WordPress mais plutôt les plugins eux-mêmes. La solution est simple: gardez vos plug-ins à jour et signalez les bogues rencontrés aux développeurs pour les aider à corriger les problèmes potentiels.

Injections SQL

L'installation de WordPress n'est pas à l'abri de problèmes. Selon la version, l'injection SQL peut être un casse-tête majeur. Une injection SQL est un processus par lequel un attaquant cherche à transmettre du code SQL via un formulaire ou un script de site Web dans l’espoir que le code SQL analyse «correctement» et extrait les données de la base de données. Ces données peuvent être des adresses de messagerie, mais plus probablement, ce sont les noms d'utilisateur et les mots de passe qui donneraient à l'utilisateur plus d'accès à d'autres attaques.

La raison pour laquelle les attaques SQL peuvent être si irritantes est que pour les combattre, vous devez souvent sauvegarder votre base de données. De préférence au moins une fois par jour.

Mainenance

Image de maintenance via Shutterstock.

Pour éviter cela, vous pouvez essayer de sécuriser vos fichiers en utilisant Apache avec un code comme celui-ci dans votre fichier .htaccess:

RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC]RewriteRule ^(.*)$ - [F,L]RewriteCond %{QUERY_STRING} ../ [NC,OR]RewriteCond %{QUERY_STRING} boot.ini [NC,OR]RewriteCond %{QUERY_STRING} tag= [NC,OR]RewriteCond %{QUERY_STRING} ftp:  [NC,OR]RewriteCond %{QUERY_STRING} http:  [NC,OR]RewriteCond %{QUERY_STRING} https:  [NC,OR]RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [NC,OR]RewriteCond %{QUERY_STRING} base64_encode.*(.*) [NC,OR]RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>|ê|"|;|?|*|=$).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*("|'|<|>||{||).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127.0).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare).* [NC]RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$RewriteRule ^(.*)$ - [F,L]

Cela découragera un amateur, mais un pirate professionnel trouvera un autre trou de sécurité à exploiter. Heureusement, la plupart des attaques sont perpétrées par des débutants ou des spammeurs, utilisant des scripts comme PHP r57 ou Shell. La réduction de ces attaques réduira considérablement le nombre de problèmes auxquels vous devez faire face.

Utilisateur par defaut

Le plus grand trou de sécurité dans chaque système est l'utilisateur final. Peu importe la complexité du mot de passe que vous créez. En effet, plus le mot de passe est complexe, plus le risque de sécurité est élevé; parce que des mots de passe très complexes doivent être enregistrés quelque part. Les utilisateurs enregistrent fréquemment des mots de passe dans des fichiers .txt ou .doc sur leur ordinateur, ce qui laisse le système ouvert aux attaques de phishing utilisant des fichiers de virus tels que des chevaux de Troie.

Le seul endroit sûr pour stocker un mot de passe est dans votre propre tête.

Cependant, même si vous ne stockez votre mot de passe que dans votre propre mémoire, vous n'êtes toujours pas à l'abri des attaques par force brute. Une attaque par force brute essaiera simplement de "deviner" votre mot de passe avec des tentatives répétées de connexion. Cela peut commencer par "aaaaaa", en passant à "aaaaab" et ainsi de suite jusqu'à atteindre "000000". Ce processus n'est pas limité à un seul ordinateur, généralement des centaines de machines exécutent des mots de passe potentiels à la recherche d'un accès.

Une façon de gérer les attaques en force consiste à installer un limiteur de connexion qui ne permettra que quelques tentatives de connexion avant de bloquer l'accès pour cet utilisateur pendant une heure environ. Cela réduit le nombre de chances de l'attaquant. Il existe plusieurs plugins WordPress qui peuvent vous aider avec ceci: Limiter les tentatives de connexion , Meilleure sécurité WP et Solution de sécurité de connexion .

Enfin, faites attention aux noms d'utilisateur. Le nom d'utilisateur par défaut pour WordPress est «Admin» et si vous le laissez tel quel, vous réduisez de moitié la quantité de travail que le pirate doit effectuer pour accéder à votre site. Si vous n'avez pas changé votre nom d'utilisateur lors de l'installation de WordPress, faites-le maintenant. Connectez-vous simplement à votre compte, créez un nouveau compte avec le nom d'utilisateur souhaité, accordez-lui des autorisations d'administrateur, puis supprimez le compte administrateur.

Cleanup

Image de nettoyage via Shutterstock.

Accès direct

Un autre problème que nos sites WordPress peuvent avoir est de fournir un accès direct à la page de connexion, ce qui simplifie le processus de piratage de votre site.

Bien que la sécurisation de vos mots de passe soit le problème le plus pressant, un utilisateur malveillant ne pourra pas utiliser ce qu’il a volé s’il ne trouve pas la page de connexion. La solution la plus simple consiste à utiliser un plugin comme Masquer la connexion pour masquer l'emplacement de la page de connexion.

Certains fichiers de notre installation WordPress peuvent également être accessibles s'ils ne sont pas correctement sécurisés. Nous pouvons clarifier ces détails en ajoutant quelques règles supplémentaires à notre fichier .htaccess, comme ceci:

Options All -IndexesOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from allOrder allow,denyDeny from all

Préfixe par défaut

Il devrait être clair que plus nous donnons d’informations à notre futur hackeur, plus il leur sera facile de réussir.

Le préfixe de table WordPress par défaut est «wp_». Pourquoi voudrions-nous leur donner ça? Changeons ce préfixe en quelque chose de plus difficile à deviner, comme "oijrr58_" par exemple, cela rendra leur vie beaucoup plus difficile et augmentera les chances que votre site reste sécurisé.

Pour les nouvelles installations, c'est une évidence car le script d'installation nous demande un préfixe. Pour les sites plus anciens, vous avez deux options, vous pouvez soit faire le changement manuellement (ne tentez cela que si vous avez beaucoup de temps et êtes sûr de savoir ce que vous faites) ou utiliser un plugin comme Meilleure sécurité WP qui en prendra soin pour vous.

Trop tard…

Ce n'est jamais trop tard. Vous pouvez toujours combattre les pirates informatiques et vous empêcher de devenir une victime perpétuelle.

Si vous ne savez pas si votre site a été infecté, il existe des outils qui vous le diront. Sucuri SiteCheck par exemple, scanner votre site et si vous êtes infecté, vous conseillera sur les mesures à prendre pour corriger le (s) problème (s).

Hazardous

Image dangereuse via Shutterstock.

Corrections de base

Voici quelques étapes à suivre:

  • Sauvegardez le site et la base de données, piratés ou non, vous ne voulez pas perdre votre contenu.
  • Faites des copies d'éléments qui ne sont pas dans votre base de données, comme des images.
  • Téléchargez la dernière version de WordPress.
  • Assurez-vous que tous les plug-ins sont à jour, vérifiez quelles versions résolvent les problèmes connus.
  • Assurez-vous que tous les modèles sont à jour, vérifiez quelles versions résolvent les problèmes connus.
  • Utilisez un client FTP ou cPanel pour tout supprimer dans le répertoire WordPress.
  • Téléchargez les nouveaux fichiers que vous avez téléchargés.
  • Exécutez la mise à niveau de la base de données.
  • Changez votre mot de passe, vous ne voulez pas laisser les pirates revenir directement
  • Enfin, vérifiez chaque message, en corrigeant tout dommage qui a été fait.

Combattre les scripts r57

r57 est un script PHP qui offre à un attaquant un large éventail de fonctionnalités, même si l'attaquant dispose de ces capacités, celles-ci ne fonctionneront pas tant que le shell ne se trouve pas sur notre serveur Web.

find /var/www/  -name "*".php  -type f -print0  | xargs -0 grep r57 | uniq -c  | sort -u  | cut -d":" -f1  | awk '{print "rm -rf " $2}' | uniq

Cette commande recherchera les fichiers PHP situés dans votre dossier WWW, puis dans les fichiers trouvés, elle recherchera toute mention de r57 dans le nom de fichier et le contenu. Ensuite, il supprimera le ou les fichiers infectés.

find /var/www/  -name "*".txt  -type f -print0  | xargs -0 grep r57 | uniq -c  | sort -u  | cut -d":" -f1  | awk '{print "rm -rf " $2}' | uniq

Ce code fait la même chose, sauf pour les fichiers TXT au lieu des fichiers .php.

Notez que ces codes sont pour Linux, ne les essayez pas sur Windows ou MacOS et soyez conscient qu'ils sont potentiellement très destructeurs car ils suppriment les fichiers sans demander la permission.

Code obscur

Une source de préoccupation majeure dans les thèmes est le code obscur, car le code malveillant est plus difficile à trouver dans les thèmes. Toutes sortes de dommages peuvent être causés, de la redirection des utilisateurs vers d'autres sites, au naufrage de votre référencement.

Une arme clé dans la lutte contre ce type de problème est Vérificateur d'authenticité du thème . Ce plugin vérifiera non seulement le code des lignes suspectes, mais détectera également les liens statiques et le code obscur, comme le code généré en base64, difficile à détecter à l'œil nu.

Trompez-moi une fois, honte sur vous…

Ce n'est pas parce que vous avez été pris dans le passé que vous devez continuer à jouer.

Pensez à prendre ces mesures pour vous assurer davantage:

  • N'autorisez PHP que si cela est strictement nécessaire.
  • Assurez-vous que votre serveur Web n'autorise pas les clients à modifier le fichier .htacess.
  • Implémentez un pare-feu qui limitera le courrier sortant dans le port 25 à l'ID du serveur racine et du serveur de messagerie.
  • Surveiller les téléchargements sur votre site avec une application comme ConfigServer eXploit Scanner .
Repair

Image de réparation via Shutterstock.

finalement

La sécurité WordPress est aussi importante que toute sécurité de site. Vous devez vous assurer que vous et vos utilisateurs êtes protégés contre le spam, les logiciels malveillants et les attaques de phishing. Mais rappelez-vous que la première ligne de défense est en fait le logiciel anti-virus de votre ordinateur de bureau.

Avez-vous rencontré des problèmes avec la sécurité WordPress? Comment avez-vous résolu le problème? Faites le nous savoir dans les commentaires.

Écrit exclusivement pour WDD par The Shock Family: une équipe de professionnels du web et de créateurs de WordPress Thèmes Shock (Thèmes wordpress Premium), WP Thème Générateur (Un grand créateur de thème wp), et DesignShock seful design sets). ( ensembles de conception utiles).