Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2023-1430 — Divulgation responsable d'une vulnérabilité non corrigée dans FluentCRM par WPManageNinja | Kitploit
Outils/GitHubGitHub/karlemilnikka/cve-2023-1430
Authentification et AutorisationAnalyse des VulnérabilitésSécurité WebArticles et RechercheMauvaise ConfigurationApprentissage et Éducation
GitHubkarlemilnikka/cve-2023-1430

CVE-2023-1430

Divulgation responsable d'une vulnérabilité non corrigée dans FluentCRM par WPManageNinja

Voir le dépôt
19il y a 2 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Mise à jour 2023-06-12 : Vous n'avez plus besoin de l'extrait. WPManageNinja a corrigé la vulnérabilité deux heures après la divulgation publique (93 jours après le signalement).

Mise à jour 2024-01-27 : Le problème connexe lié aux valeurs de hachage permanentes est désormais entièrement résolu.

Divulgation responsable de la vulnérabilité non corrigée CVE-2023-1430 dans FluentCRM par WPManageNinja

tl;dr Les attaquants peuvent afficher et modifier les détails des contacts dans FluentCRM. WPManageNinja n'a pas corrigé la vulnérabilité dans le délai de 90 jours de divulgation responsable. Je fournis un extrait d'atténuation pour empêcher l'exploitation de la vulnérabilité en attendant un correctif officiel.

  • Vulnérabilité : CVE-2023-1430 Utilisation insuffisante du hachage comme contrôle d'autorisation
  • CVSS : 6.5 (Moyen)
  • Logiciel : FluentCRM
  • Versions affectées : vulnérabilité détectée dans 2.7.40
  • Version corrigée : 2.8.02
  • Développeur : WPManageNinja
  • Chercheur : Karl Emil Nikka, Nikka Systems (signalé via Wordfence)
  • Publié publiquement : 2023-06-12
  • Dernière mise à jour : 2023-06-12

Aperçu

Aujourd'hui, je publie des informations sur une vulnérabilité que j'ai trouvée dans le plugin WordPress populaire FluentCRM par WPManageNinja. La vulnérabilité, CVE-2023-1430, est causée par l'utilisation insuffisante d'un hachage d'adresse e-mail comme contrôle d'autorisation par FluentCRM. J'ai divulgué la vulnérabilité de manière responsable conformément à la politique de divulgation des vulnérabilités de Google Zero. WPManageNinja n'a fourni ni correctif dans le délai de 90 jours ni demandé de prolongation.

Dans ce rapport, contact fait référence à un objet contact FluentCRM, tandis que utilisateur fait référence à un objet utilisateur WordPress. Un contact peut être lié à un utilisateur, mais ce n'est pas une exigence. Les détails sur l'exploitation de la vulnérabilité sont retenus jusqu'à ce qu'un correctif officiel soit disponible. Les professionnels de la sécurité peuvent me contacter pour le rapport complet ([email protected]).

Impact général et actions requises

Sur les sites utilisant FluentCRM, un attaquant peut afficher et modifier le nom, l'adresse e-mail et les paramètres de liste d'un contact en connaissant l'adresse e-mail du contact. Étant donné que le nom du contact est souvent inclus dans les newsletters via des balises de fusion, un attaquant peut remplacer le nom du contact par un langage grossier, ce qui amène le propriétaire du site à envoyer des newsletters vulgaires. Si l'administrateur du site a activé le shortcode de FluentCRM pour gérer les préférences et l'a ajouté à une page web publique, un attaquant peut afficher et modifier toutes les informations personnelles exposées, c'est-à-dire le titre, le numéro de téléphone, la date de naissance et l'adresse (selon la configuration de FluentCRM).

FluentCRM est installé sur plus de 30 000 sites. Les administrateurs de sites FluentCRM peuvent empêcher l'exploitation de la vulnérabilité en ajoutant mon extrait d'atténuation au fichier functions.php de leur thème enfant.

L'extrait ne corrige pas la vulnérabilité. Il remplace le contenu vulnérable sur la page de désabonnement de FluentCRM (unsubscribe.php) et la page de gestion des préférences (manage_subscription.php) par un message d'erreur invitant le contact à contacter par e-mail. L'adresse e-mail dans le message d'erreur est l'adresse e-mail de l'administrateur du site (elle peut être modifiée à partir de l'extrait). L'extrait d'atténuation garantit également que les visiteurs non connectés ne peuvent pas afficher le shortcode vulnérable de FluentCRM pour la gestion des préférences (fluentcrm_pref). Un visiteur non connecté verra plutôt un message d'erreur l'invitant à se connecter. Toutes les chaînes sont traduisibles avec le fichier POT fourni.

Actions requises

Je recommande aux propriétaires de sites web de mettre en œuvre soit l'atténuation que je fournis, soit leur propre atténuation correspondante. Les propriétaires de sites doivent également vérifier l'intégrité de leurs données de contact FluentCRM et, si possible, consulter leurs journaux pour détecter d'éventuelles fuites de données. La vérification des journaux est particulièrement importante pour les sites suivants :

  • sites où le nom enregistré d'un contact est une information sensible
  • sites où le shortcode de FluentCRM pour la gestion des préférences est ou a été présent sur des pages publiques pour les visiteurs non connectés
  • sites où la gestion des listes est activée et le nom des listes auxquelles un contact est abonné est une information sensible.

Le responsable du traitement des données désigné du site web doit gérer les fuites potentielles de données personnelles conformément aux lois et réglementations des juridictions concernées.

Impact potentiel supplémentaire

Si FluentCRM est configuré pour synchroniser les paramètres d'un contact avec son utilisateur correspondant, un attaquant peut modifier le nom de l'utilisateur. Heureusement, FluentCRM ne synchronise pas les adresses e-mail des contacts vers les utilisateurs. Si FluentCRM le faisait, cette vulnérabilité permettrait des prises de contrôle complètes du site. Un attaquant aurait pu obtenir un accès privilégié en modifiant l'adresse e-mail de l'administrateur du site, puis en réinitialisant le mot de passe de l'administrateur.

Cependant, d'autres solutions peuvent synchroniser toutes les métadonnées des contacts vers les utilisateurs, par exemple WP Fusion et l'API de FluentCRM. WP Fusion est probablement le plugin tiers le plus populaire pour synchroniser les métadonnées des contacts entre un CRM (par exemple FluentCRM) et WordPress. Heureusement, la version actuelle de WP Fusion n'est pas connectée aux modifications de métadonnées initiées à partir des formulaires vulnérables. J'ai informé les développeurs de WP Fusion, et ils ne résoudront cette limitation que lorsque WPManageNinja aura corrigé la vulnérabilité.

L'API de FluentCRM peut également être utilisée pour mettre à jour les données des contacts et des utilisateurs. Les propriétaires de sites qui utilisent l'API de FluentCRM pour mettre à jour les adresses e-mail des utilisateurs doivent désactiver cette mise à jour lorsqu'elle est initiée depuis la page ou le shortcode de FluentCRM pour la gestion des préférences (ou ajouter mon extrait d'atténuation pour garantir qu'aucun paramètre ne peut être mis à jour depuis les formulaires vulnérables).

Exploitation de la vulnérabilité

FluentCRM permet aux contacts de se désabonner et de gérer leurs préférences à partir de pages web publiques. Des liens vers ces pages sont inclus dans chaque newsletter. Les modifications effectuées sur ces pages sont autorisées par les hachages MD5 des adresses e-mail des contacts, transmis comme paramètres d'URL. Le hachage MD5 d'une adresse e-mail n'est pas un secret et peut être calculé par n'importe qui. Un attaquant peut exploiter l'utilisation incorrecte des hachages pour désabonner des contacts spécifiques ou désabonner en masse des contacts dont les adresses e-mail sont connues.

Alors que la page de désabonnement repose uniquement sur le hachage MD5 pour l'autorisation, la page de gestion des préférences nécessite un paramètre d'URL supplémentaire appelé ce_id. Dans ce cas, le ce_id fait référence à l'ID du contact dans la table fc_subscribers. Cet ID est un entier incrémental. La valeur de ce_id est donc facilement trouvée en testant toutes les valeurs possibles (l'espace de recherche est le nombre de contacts jamais enregistrés sur le site). Les utilisateurs administrateurs ont probablement des valeurs faibles.

Télécharger l’outil