Emails et réputation · 8 min · publié le 9 juillet 2025

Brevo, Mailchimp ou Sendinblue après un hack du site

Révoquez les clés API du site, tournez les mots de passe du compte emailing, vérifiez les campagnes envoyées sans vous. Une clé dans un plugin WordPress ou un module PrestaShop est une porte silencieuse : les listes et les envois partent, le checkout a l'air normal.

Réponse directe

Révoquez les clés API du site, tournez les mots de passe, vérifiez les campagnes envoyées sans vous. Une clé dans un plugin est une porte silencieuse.

brevo api pirate mailchimp site hacked clé api newsletter

Le compte Brevo n'est pas le site — sauf la clé

Brevo (ex-Sendinblue), Mailchimp, un équivalent : l'infra est chez eux. L'incident, c'est souvent VOTRE clé `xkeysib-` / API key Mailchimp dans le CMS, un user du compte emailing, ou un webhook. Nettoyer WordPress sans roll la clé, c'est laisser l'export et l'envoi. Roll la clé sans nettoyer le CMS, c'est la retrouver dans l'option demain. Les deux, même vacation. Liste newsletter, SMTP CMS. Un compte Sendinblue jamais renommé « Brevo » dans vos tutos internes : c'est le même tiroir. Cherchez les deux chaînes dans la base et les `.env`.

Un plugin « officiel » Brevo à jour n'empêche pas la lecture de l'option en base. Le versionning du plugin n'est pas le secret.

Inventaire des clés, webhooks et users

Chez Brevo / Mailchimp : API keys (toutes, y compris SMTP key, keys restreintes), webhooks (URL encore la vôtre ?), users et leurs 2FA, apps connectées, inbound / parse s'il existe. Créez une nouvelle clé restreinte (le minimum : ce que le site doit faire — souvent `transactional` OU `contacts` sync, rarement `all`). Archivez les anciennes. Webhooks paiement — même réflexe, autre produit.

Zapier / Make : scénarios qui portent encore l'ancienne clé. Un Zap « new customer → add list » dupliqué vers un tiers.

  • Toutes les clés listées, anciennes archivées.
  • Webhooks : hôtes nommés.
  • Users emailing : 2FA, inconnus out.

Campagnes, automations, et SMTP relais

Historique : campagnes draft / sent que vous ne reconnaissez pas, automations activées la nuit, templates édités. Stoppez. Le SMTP relais (même compte) a pu servir au spam transactionnel « From boutique ». Journaux d'envoi transactionnel : volume, sujets. Exportez. Ça nourrit Spamhaus et le constat emails.

Ce qu'il faut dire au support Brevo / Mailchimp

Site compromis, fenêtre, clés révoquées, campagnes stoppées, demander un gel si de l'envoi continue hors de votre volonté. Ils voient leur côté (IP de leurs relais, plaintes). Ils ne voient pas votre `radio.php`. Honnêteté sur le site + leur canal abuse. Ne créez pas un second compte pour « éviter la suspension » : vous perdez les preuves et vous violez les ToS.

Recoller le CMS sans remettre l'ancienne clé

Après nettoyage fichiers / users CMS : nouvelle clé, un seul plugin, test d'un transactional (commande test). Pas de clé dans le thème, pas dans un mu-plugin « tmp ». Les options anciennes peuvent encore contenir le secret : videz-les après export. Staging : clé de TEST, jamais live. Staging.

Listes, segments, et champs personnalisés

Un attaquant ajoute un champ, un segment « exported », une liste miroir. Parcourez. Les attributs (SIRET, tags internes) aggravent le RGPD si exportés. Ne « fusionnez » pas toutes les listes pour faire propre : vous mélangez les consentements.

2FA, SSO, et l'agence qui « a encore accès »

2FA sur tous les users humains. L'agence ads : un rôle limité, une date de fin. Un user `agence@` sans 2FA est un employé fantôme emailing. SSO Google : révoquez les sessions. Mot de passe du titulaire du compte (carte bancaire Brevo) : distinct, tourné — un compte emailing pris, c'est aussi la facture et les listes.

Reprendre l'envoi sans brûler le domaine

Transactionnel d'abord, petit volume, domaine authentifié (SPF/DKIM Brevo recollés). Newsletter plus tard, éventuellement après re-opt-in. SPF DKIM. Créer un compte si la clé a vécu dans trois plugins et deux stagings.

  • Clés rollées, CMS propre, une clé restreinte recollée.
  • Campagnes / automations relues.
  • Support emailing informé si envoi hostile.
  • Reprise transactionnel puis marketing.

SMTP Brevo vs API vs plugin : trois secrets

Beaucoup de boutiques ont une clé API (sync contacts), un identifiant SMTP (transactionnel), et parfois une clé « partner » dans un plugin. Roll des trois. Le SMTP login n'est pas la clé `xkeysib`. Un prestataire qui « a juste changé l'API » laisse le SMTP volé envoyer. Les journaux transactionnels le montrent : l'IP n'est plus le site, le user SMTP est le vôtre.

Mailchimp Transactional (Mandrill) est un compte à part. Inventoriez-le. Un vieux `mandrill_api_key` dans `wp-config` survit à trois refontes. Grep la copie. WP Mail SMTP si le plugin relais est le logement.

Les webhooks Brevo (ouverture, clic, unsubscribe) vers une URL tierce profilent vos destinataires. Moins spectaculaire qu'un envoi spam, assez pour le RGPD. Listez-les avec les clés. Liste newsletter.

Questions fréquentes

Mailchimp et Brevo en même temps (un pour le marketing, un pour le transac). On roll les deux ?

+
Oui si le site avait les deux clés. Un incident site = toutes les clés présentes en options / .env.

La clé était « read only ». On s'en sort ?

+
Read only liste = export possible. Moins grave qu'un envoi, assez pour le RGPD. Roll quand même.

On peut garder la même clé « parce que 15 outils s'en servent » ?

+
Non. C'est précisément trop de surface. Une clé par outil, roll, mise à jour le même jour. Douloureux, une fois.

Brevo a une « notification de nouvelle clé ». On l'active ?

+
Oui, après l'incident. Pendant, ne vous fiez pas à une notif qui part peut-être vers une règle de transfert pirate. Vérifiez les destinataires des alertes.

Un freelance a la clé dans son .env local. On lui fait confiance ?

+
Roll. Il mettra la nouvelle. La confiance n'est pas un contrôle d'accès. S'il ne répond plus, la clé meurt quand même.
À lire ensuite
Liste newsletter compromise Compte SMTP du CMS Emails après piratage Fuite de données Guide emails Déclarer mon site