SMS

Qu'est-ce que le pumping SMS, et comment l'arrêter ?

Le pumping SMS est une fraude qui pousse votre produit à envoyer des messages payants vers des numéros contrôlés par l'attaquant.

Un formulaire de vérification peut sembler légitime alors qu'un attaquant l'utilise pour déclencher des envois payants. L'attaquant cible les flux d'inscription, de code de vérification ou de vérification qui permettent à n'importe qui de déclencher un envoi. L'attaque génère des coûts de messages tandis qu'un intermédiaire sur la route en profite.

L'industrie appelle aussi le pumping SMS trafic artificiellement gonflé.

Pourquoi quelqu'un ferait-il cela ?

Parce qu'envoyer un SMS vers certaines destinations fait circuler de l'argent, et une partie peut être captée en aval.

Terminer un message coûte à l'expéditeur et rémunère les intermédiaires le long de la route. Quand un attaquant contrôle un intermédiaire sur cette route ou est payé par lui, générer du trafic vers cette destination est directement rentable. Il n'a pas besoin de lire les codes de vérification ni de compromettre un compte : l'envoi lui-même est le produit.

C'est ce qui distingue le pumping de la plupart des abus. Il n'y a ni prise de contrôle de compte à détecter, ni données à protéger. Le dommage, c'est la facture, et elle s'accumule pendant que chaque requête individuelle semble légitime.

À quoi cela ressemble-t-il ?

Un pic avec une forme distinctive, et la forme compte plus que la taille.

  • Concentré sur des destinations inhabituelles. Les requêtes se regroupent sur des indicatifs de pays et des plages de numéros que vous ne servez pas habituellement, souvent avec des taux de terminaison élevés.
  • Presque aucune complétion. Les codes de vérification sont demandés et jamais saisis, donc le ratio entre envois et vérifications réussies s'effondre.
  • Des numéros d'apparence synthétique. Des plages séquentielles ou structurées plutôt que la dispersion de vrais clients.
  • Une source difficile à bloquer par identité. Les requêtes arrivent de nombreuses adresses, car le flux exploité ne nécessite pas de compte.

Ce dernier point explique pourquoi la limitation du débit par utilisateur est insuffisante à elle seule : il n'y a pas d'utilisateur. L'abus vit dans la partie de votre produit qui est délibérément ouverte aux inconnus.

Comment l'arrêter ?

Quatre mesures, classées approximativement par rapport entre efficacité et effort.

  • Restreignez les destinations à celles que vous servez. Si vos clients sont dans cinq pays, envoyer vers les deux cents autres est une perte sans contrepartie. Bird contrôle l'envoi par destination, de sorte qu'un pays doit être activé avant que le trafic puisse l'atteindre.
  • Limitez le débit sur ce que vous avez, pas sur l'identité. Par numéro de téléphone, par préfixe, par adresse, par session. Une fraude qui ne peut pas être rattachée à un compte peut généralement être rattachée à une plage de destinations.
  • Ajoutez une friction avant l'envoi. Un défi avant la demande de code de vérification coûte un instant à un vrai utilisateur et ruine la rentabilité d'un attaquant automatisé.
  • Surveillez le taux de complétion plutôt que le volume. Une hausse des envois est ambiguë. Une hausse des envois alors que les complétions restent stables est le signal, et il apparaît avant la facture.

Bird applique aussi son propre plafond en dessous de ce que vous configurez. Le guide d'envoi de vérification le dit clairement :

Independent of your settings, Verify enforces platform caps to keep OTP traffic from being weaponized, whether against your wallet (SMS pumping) or against a victim's inbox

Cela vaut la peine d'être su pour deux raisons : une limite mal configurée de votre côté n'est pas la seule chose entre vous et une facture, et un plafond que vous n'avez pas défini peut être ce qui bloque votre trafic légitime.

Est-ce la même chose qu'une attaque par inondation de codes de vérification ?

C'est lié, mais la cible est différente.

La même citation nomme les deux. Le pumping vise votre portefeuille : l'attaquant veut que des messages soient envoyés, et le destinataire est secondaire. L'inondation vise le téléphone d'une personne : l'attaquant veut submerger une victime sous des messages de code de vérification, souvent pour harceler ou pour noyer une vraie alerte.

Le pumping se manifeste par de nombreuses destinations et aucune complétion ; l'inondation se manifeste par une seule destination et de nombreuses requêtes. Une limite par destinataire réduit les requêtes répétées vers un même numéro. Elle ne peut pas arrêter une attaque répartie sur de nombreux numéros. Combinez-la avec des restrictions de destination.

Pour le contexte général sur les flux de vérification, que signifie OTP couvre le mécanisme sur lequel repose cet abus.

En bref

  1. Le revenu de l'attaquant est votre coût d'envoi.

    Le trafic est acheminé vers des numéros sur des routes où un intermédiaire en aval prélève une part, donc les messages sont le but et non un effet secondaire.

  2. L'attaque cible tout ce qui envoie un SMS sans connexion préalable.

    Les formulaires d'inscription, les demandes de code de vérification et les flux de vérification par téléphone sont la surface d'attaque, car ils permettent à un inconnu de déclencher un message payant.

  3. La signature se distingue par la destination, pas par le volume.

    Un pic concentré sur des indicatifs de pays et des plages de numéros inhabituels, avec presque aucune vérification aboutie, est le signe révélateur.

  4. Les plafonds de la plateforme s'appliquent en dessous de vos propres paramètres.

    Bird applique des plafonds sur le trafic de vérification indépendamment de ce que vous configurez, de sorte qu'une limite mal configurée n'est pas la seule ligne de défense.

Développez sur le même réseau.

Une clé API de test est disponible immédiatement. La production est activée dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Votre prochaine idée.
Prête à se connecter.