Pipdig met à jour le plug-in P3 après que des rapports ont exposé des portes dérobées du fournisseur, un kill switch intégré et un code DDoS malveillant

Publié: 2019-04-03

Au cours du week-end, Pipdig, une petite société de thèmes commerciaux, a été au centre d'un scandale après que plusieurs rapports ont révélé une litanie d'ajouts de code contraires à l'éthique à son plugin Pipdig Power Pack (P3).

Le vendredi 29 mars, l'analyste des menaces de Wordfence, Mikey Veenstra, a publié un rapport contenant des exemples de code des portes dérobées Pipdig intégrées à leur plugin, ainsi que des ajouts peu recommandables et discutables au code.

"Nous avons confirmé que le plugin, Pipdig Power Pack (ou P3), contient du code qui a été masqué par des noms de variables, des noms de fonctions et des commentaires trompeurs afin de masquer ces fonctionnalités", a déclaré Veenstra.

Ceux-ci incluent un mot de passe non authentifié réinitialisé sur une chaîne codée en dur, qui a été délibérément masquée par des commentaires de code indiquant qu'il a été ajouté pour "vérifier les nouveaux canaux sociaux à ajouter à la barre de navigation". Veenstra a également démontré comment le plugin contenait du code pour une suppression de base de données non authentifiée, dans laquelle l'équipe Pipdig pouvait détruire à distance n'importe quel site WordPress en utilisant le plugin P3.

Le code de suppression des sites distants a été supprimé dans la version 4.8.0 mais reste un problème pour les utilisateurs qui n'ont pas mis à jour. Michael Waterfall, ingénieur iOS chez ASOS, a testé la fonction "kill switch" et a démontré qu'elle fonctionne toujours avec les versions précédentes.

L'enquête de Veenstra a également révélé des appels distants douteux dans les événements cron du plug-in, des réécritures de contenu et de configuration non divulguées, ainsi qu'une liste de plug-ins populaires qui sont immédiatement désactivés lorsque P3 est activé, à l'insu de l'utilisateur. Il a constaté que certains de ces plugins sont désactivés avec admin_init, de sorte que tout utilisateur tentant de réactiver les plugins ne collera pas.

Wordfence estime que le plugin P3 a une base d'installation de 10 000 à 15 000 sites. Les modifications apportées dans la version 4.8.0 du plugin ne sont pas identifiées de manière transparente dans le journal des modifications, il n'est donc pas facile pour les utilisateurs de savoir ce qui a changé. Le filtrage de contenu et les désactivations des plugins restent dans la version la plus récente. Ces types de fonctions masquées exécutées sans autorisation pourraient avoir des conséquences imprévues sur les sites utilisant le plug-in, que les utilisateurs non techniques peuvent ne pas être en mesure de réparer eux-mêmes.

Le plugin Pipdig P3 a effectué une attaque DDoS sur le site d'un concurrent

Jem Turner, un développeur Web indépendant basé au Royaume-Uni, a publié une longue analyse du plugin P3 le jour même où Wordfence a publié son analyse. Elle a approfondi les demandes à distance, démontrant comment Pipdig a utilisé le plugin P3 pour effectuer une attaque DDoS sur un concurrent qui fournit également des thèmes WordPress et des services d'installation aux blogueurs. Le code déclenche une tâche cron toutes les heures sur les sites des utilisateurs, utilisant efficacement les serveurs de leurs clients pour envoyer des requêtes malveillantes au site du concurrent.

Le commentaire de code nous dit qu'il s'agit de "vérifier le cache du CDN (réseau de diffusion de contenu)". Ce n'est pas. Il s'agit d'effectuer une requête GET sur un fichier (id39dqm3c0_license_h.txt) hébergé sur pipdigz.co.uk, qui hier matin a renvoyé 'https://kotrynabassdesign.com/wp-admin/admin-ajax.php' dans le corps de la réponse.

Chaque heure, nuit et jour, sans aucune intervention manuelle, tout blogueur exécutant le plugin pipdig enverra une requête avec un faux agent utilisateur à 'https://kotrynabassdesign.com/wp-admin/admin-ajax.php' avec un aléatoire chaîne numérique jointe. Cela exécute effectivement un DDoS (déni de service distribué) à petite échelle sur le serveur de kotrynabassdesign.com.

Turner a également contacté Kotryna Bass, concurrent de Pipdig, qui a déclaré avoir contacté son hôte après avoir découvert que son fichier admin-ajax.php faisait l'objet d'une sorte d'attaque. Les échanges de Bass avec son hôte sont également publiés dans le rapport de Turner.

Le message de Turner expliquait comment le code du plug-in P3 de Pipdig manipulait les liens pour pointer vers ses propres produits et services lorsqu'un utilisateur incluait un lien vers un concurrent dans le contenu :

Ici, nous avons le plugin de pipdig recherchant les mentions de 'blogerize.com' avec la chaîne divisée en deux et rejointe - concaténée - pour rendre plus difficile la recherche de mentions de concurrents lors d'une recherche massive dans les fichiers à travers le plugin (entre autres ). Lorsque le plug-in trouve des liens vers blogerize.com dans le contenu du blogueur (messages, pages), ils sont remplacés par un lien vers 'pipdig.co/shop/blogger-to-wordpress-migration/', c'est-à-dire les propres services de migration de blog de pipdig. L'échange de ces liens augmente les avantages du référencement pour pipdig, et la grande majorité des blogueurs ne remarqueraient pas le switcheroo (d'autant plus que si la page/l'article était modifié, le lien pour bloguer apparaîtrait dans le backend comme d'habitude).

Le plugin n'a pas demandé la permission des utilisateurs avant d'effectuer l'une de ces actions et la plupart d'entre elles ont été implémentées avec du code obscurci. L'enquête de Turner couvre également la manière dont le plug-in P3 pourrait collecter des données et modifier les mots de passe administrateur. De nombreuses conclusions recoupent l'analyse de Wordfence.

"Je savais que Wordfence avait été contacté pour un avis, même si j'ignorais qu'ils écrivaient un message et vice versa", a déclaré Turner. "Je n'ai pas été surpris qu'ils aient écrit à ce sujet, étant donné le risque pour les utilisateurs de WordPress."

Elle a été en contact avec les autorités concernant les pratiques de codage contraires à l'éthique et les violations de la vie privée de Pipdig.

« De mon côté, j'ai été en contact avec Action Fraud (soumis un rapport via leur site Web) et NCSC (qui m'a redirigé vers Action Fraud et m'a donné un numéro à appeler). Du côté de pipdig, il y a des menaces de poursuites judiciaires dans leur article de blog mais je n'ai encore rien reçu.

La réponse publique de Pipdig contourne les préoccupations critiques

Le directeur créatif de Pipdig, Phil Clothier, a publié une réponse publique de la société qui s'ouvre en qualifiant les enquêtes récentes de "diverses accusations et rumeurs se répandant à propos de pipdig" et comprend un plaidoyer émotionnel concernant la détresse des développements récents pour son entreprise. Il affirme que son équipe et ses supporters sont harcelés.

Après avoir sorti la version 4.8.0 du plugin P3, en supprimant une partie mais pas la totalité du code offensant, Clothier opte pour un format de style Q&A pour son message, mettant chaque question au présent :

Avez-vous des concurrents DDOS?
Non.

Est-ce que vous "tuez" des sites ?
Non!

Avez-vous la possibilité de tuer des sites via le Power Pack pipdig ?
Non

En ce qui concerne la fonction "kill switch" qu'ils ont intégrée, qui détecte toutes les tables avec le préfixe WordPress et supprime chacune d'elles, Clothier a déclaré qu'il s'agissait simplement d'une fonction permettant de réinitialiser un site à ses paramètres par défaut. Il a délibérément déformé ce qu'il fait :

Il y avait une fonction dans une ancienne version du plugin qui pouvait être utilisée pour réinitialiser un site aux paramètres par défaut. Cette fonction ne présentait aucun risque d'utilisation malveillante ou involontaire. Je peux dire catégoriquement qu'il n'y avait aucun risque pour votre site si vous utilisiez un thème pipdig. Cette fonctionnalité a été déterrée et étiquetée "Kill Switch" pour un impact négatif maximal sur nous.

Clothier affirme que la fonction était disponible dans le plugin P3 en juillet 2018 lorsqu'un tiers a commencé à publier des thèmes Pipdig à vendre sur son propre site :

Un tiers a pu télécharger tous nos thèmes de manière illégitime et les publier sur un clone de notre propre site. Cela comprenait des aperçus de nos thèmes et la possibilité de les acheter. Nous avons d'abord été alertés par des personnes qui avaient acheté un thème pipdig à partir de là, mais qui constataient que certaines fonctionnalités ne fonctionnaient pas correctement. Après enquête, nous avons découvert que la victime avait acheté le thème à un tiers en pensant que c'était nous. Le tiers a non seulement obtenu l'avantage financier du paiement par thème, mais l'a également utilisé comme moyen d'injecter des logiciels malveillants et des publicités sur le site de la victime. La fonction de réinitialisation a été mise en place afin de supprimer la capacité des tiers à héberger des sites de prévisualisation avec nos thèmes. Cela a fonctionné, et ils ont depuis disparu. La fonction a ensuite été supprimée dans une version ultérieure du plugin.

Il s'agit d'une fausse affirmation, comme l'a souligné Wordfence dans un article mis à jour. La première instance du code responsable de la suppression de la base de données a été validée dans le plugin en novembre 2017.

La société n'a pas répondu aux préoccupations les plus critiques présentées dans l'analyse de Wordfence lors de sa première tentative de publication d'une déclaration publique. Au lieu de cela, en ce qui concerne la coordination d'une attaque DDoS contre des concurrents, Pipdig blâme les utilisateurs et suggère qu'ils ont peut-être ajouté l'URL du concurrent à leurs sites.

"Nous examinons maintenant pourquoi cette fonction renvoie cette URL", a déclaré Clothier. "Cependant, il semble suggérer que certaines des" URL d'auteur "ont été définies sur" kotrynabassdesign.com ". Nous ne savons pas actuellement pourquoi c'est le cas, ou si le propriétaire du site a intentionnellement changé cela.

D'autres enquêtes publiées par Wordfence aujourd'hui ont montré que Pipdig a également ajouté du code DDoS à ses modèles Blogger et émettait activement des demandes malveillantes jusqu'à hier :

Au cours de l'enquête sur le plugin et les thèmes WordPress de Pipdig, nous avons également rencontré un code curieux associé à leurs thèmes Blogger. Ce code fait partie de la campagne DDoS présumée de Pipdig contre son concurrent et a été actif jusqu'au 1er avril, quatre jours après le démenti par Pipdig d'un tel comportement.

Il a été confirmé que certains des thèmes Blogger de Pipdig effectuent des appels JavaScript externes au serveur de Pipdig, en particulier au script hXXps://pipdigz[.]co[.]uk/js/zeplin1.js.

Le 31 mars, alors que les enquêtes devenaient publiques, Pipdig a supprimé son référentiel public Bitbucket et l'a remplacé par un "propre", supprimant trois ans d'historique de validation. Wordfence et bien d'autres ont cloné le référentiel avant qu'il ne soit supprimé et enregistré des instantanés de pages à citer dans l'enquête.

La déclaration publique de Pipdig contient un certain nombre d'autres fausses déclarations décrites dans l'article de suivi de Wordfence avec des exemples de code. Clothier conclut l'article en calomniant la presse, vraisemblablement pour encourager les clients à ne pas faire confiance à ce qu'ils lisent d'autres sources.

J'ai contacté Pipdig pour leur commentaire sur les événements récents, mais Clothier a refusé de répondre à mes questions. L'une d'entre elles était la raison pour laquelle le plugin désactive le plugin de mise en cache de Bluehost sans en informer les clients.

Clothier a déclaré qu'il n'avait aucun commentaire au-delà de ce qu'il avait dit dans la déclaration publique, mais a encouragé toute personne intéressée à lire les nouveaux commentaires ajoutés au code dans la version 4.9.0 :

Nous avons également mis à jour la version 4.9.0 du plugin qui inclut des commentaires supplémentaires dans le code, ce qui, espérons-le, aidera à clarifier les choses comme les problèmes avec la mise en cache Bluehost et le filtre the_content().

Si quelqu'un n'est pas sûr, nous vous recommandons de mettre à jour la dernière version comme toujours. Cependant, nous soutenons également que les versions précédentes n'avaient pas non plus de problèmes sérieux.

Pipdig a refusé de répondre aux questions sur les licences, mais les produits ne semblent pas être sous licence GPL. C'est peut-être la raison pour laquelle la société a jugé dans son droit de prendre des mesures contre ceux qui, selon elle, ont « volé » leurs thèmes.

Les clients de Pipdig partagent des réactions mitigées aux rapports sur les portes dérobées des fournisseurs et les attaques DDoS

Dans ce qui est peut-être l'un des abus les plus effrontés que j'aie jamais vu d'une société de thèmes dans l'histoire de WordPress, la base d'utilisateurs de Pipdig a été utilisée sans le savoir pour cibler les concurrents de l'entreprise. Quel que soit le motif de l'entreprise pour lutter contre la distribution non autorisée de ses thèmes, ces types de portes dérobées et de réécritures de contenu non divulguées sont indéfendables. Ils profitent de la confiance des utilisateurs et dans ce cas, les victimes étaient principalement des blogueurs.

L'un des aspects les plus déroutants de cette histoire est que de nombreux utilisateurs de Pipdig semblent imperturbables face à la gravité des conclusions de ces rapports. Sans une connaissance complète du fonctionnement interne d'un produit, de nombreux clients prennent des décisions en fonction de ce qu'ils pensent d'une entreprise, sans se soucier d'être confrontés à des faits qui devraient les amener à remettre en question leurs expériences.

D'autres sont en colère d'avoir vu leurs sites utilisés dans une attaque. S'installer sur un nouveau thème n'est pas une tâche triviale pour les utilisateurs non techniques qui ont peut-être dû payer un développeur pour lancer leurs sites en premier lieu.

"Mon esprit est absolument époustouflé par la réponse publique de pipdig", a déclaré Jem Turner. "Je comprends qu'ils comptaient sur l'expérience complètement non technique de leurs utilisateurs pour les embobiner, et cela semblait certainement fonctionner au début, mais toute personne ayant la moindre connaissance en codage peut voir qu'ils mentent et je suis sincèrement ne comprends pas comment ils pensent pouvoir s'en tirer.

Cet incident met en lumière à quel point l'écosystème commercial de plugins et de thèmes n'est pas réglementé et à quel point les utilisateurs sont peu protégés contre les entreprises qui abusent de leur pouvoir. Si vous êtes un client de Pipdig affecté par cet incident, rien ne garantit que l'entreprise ne construira pas d'autres portes dérobées sur votre site à l'avenir. Les mises à jour du plugin ne sont examinées par aucune autorité. Heureusement, vous pouvez prendre quelques mesures pour créer un environnement plus sûr pour votre site Web.

Tout d'abord, recherchez des thèmes et des plugins sous licence GPL, car ils vous accordent plus de libertés en tant qu'utilisateur et sont compatibles avec la licence légale de WordPress. Les produits sous licence GPL sont également une indication forte que les auteurs respectent les libertés des utilisateurs et les principes économiques partagés que cette licence open source prend en charge.

De nombreuses sociétés de thèmes réputées choisissent d'héberger les plugins compagnons de leurs produits sur WordPress.org pour faciliter la distribution et l'expédition des mises à jour. Le répertoire officiel n'autorise pas ces types de pratiques de codage louches décrites dans cet article et tous les plugins sont soumis à un examen de sécurité par l'équipe des plugins WordPress. Si vous êtes préoccupé par la qualité du code et le potentiel d'abus, faites une petite recherche sur votre prochain fournisseur de thème commercial potentiel ou optez pour des thèmes et plugins hébergés gratuitement sur WordPress.org qui ont subi un processus de vérification plus rigoureux.