Sécuriser une boutique Magento : IP whitelist, géoblocage et audit

21 août 2021 6 min Webmarketing

Une boutique Magento traite des paiements, stocke des données clients et reste exposée 24h/24 à l’internet. Les vraies menaces ne viennent quasiment jamais d’un visiteur isolé : elles viennent d’IP suspectes (bots, scrapers, fuzzers, attaquants ciblés) qui scannent des milliers de boutiques par minute. Sécuriser un Magento commence par la bonne stratégie d’IP whitelist, de géoblocage et de surveillance des accès admin. Cet article détaille les réflexes opérationnels que toute Agence Magento applique pour protéger les boutiques de ses clients.

Pourquoi Magento est une cible privilégiée

Magento (Adobe Commerce) est l’une des plateformes e-commerce les plus puissantes du marché. Cette richesse fonctionnelle se paie côté sécurité : code volumineux, dépendances multiples (PHP, MySQL, Redis, Elasticsearch), surface d’attaque large (admin, API REST/GraphQL, checkout). Les attaquants scannent en permanence le web pour repérer les boutiques Magento exposées et exploiter les failles connues (CVE Magecart, injections de skimmers, brute force sur l’admin).

La quasi-totalité des attaques laisse une trace IP. Filtrer, bloquer et auditer ces IP est donc le premier rempart, bien plus efficace qu’une simple détection après coup.

Restreindre l’admin à une IP whitelist

L’URL admin (/admin par défaut, idéalement renommée) est la cible #1 des bots. Plutôt que se contenter d’un mot de passe fort, l’idéal est de la restreindre par IP côté serveur. Concrètement :

  • Apache : ajouter dans le vhost ou un .htaccess local <RequireAll> Require ip 203.0.113.45 198.51.100.0/24 </RequireAll> au-dessus de la route admin.
  • Nginx : location ~ ^/admin { allow 203.0.113.45; allow 198.51.100.0/24; deny all; }.
  • WAF (Cloudflare, Sucuri, AWS WAF) : créer une règle « Block access to /admin unless IP in whitelist ».

Si l’équipe travaille en télétravail avec des IP dynamiques, l’option pragmatique est de passer par un VPN d’entreprise avec IP de sortie fixe, et de ne whitelister que cette IP. C’est plus simple à maintenir qu’un fichier d’IPs personnelles qui change chaque mois.

Avant d’ajouter une IP en whitelist, vérifiez toujours sa fiabilité avec un outil de localisation IP : une IP qui géolocalise dans un pays où vous n’opérez pas est un mauvais signal.

Géoblocage : bloquer les pays sans clients réels

Une boutique Magento qui vend uniquement en France n’a aucune raison de répondre à des requêtes depuis la Chine, la Russie ou le Brésil. Le géoblocage par IP (basé sur les bases de géolocalisation MaxMind, IP2Location ou équivalent) réduit drastiquement la surface d’attaque.

Deux niveaux :

  • Bloquer entièrement les pays où vous ne vendez pas. Implémentable au niveau du WAF (Cloudflare le fait en 3 clics) ou via un module Magento dédié.
  • Restriction admin uniquement : autoriser le front pour tous (clients étrangers expatriés, visiteurs curieux), bloquer l’admin pour tout pays autre que celui de l’équipe. C’est le compromis le plus utilisé en pratique.

Important : un géoblocage trop strict peut bloquer des clients légitimes en VPN. Surveillez les logs 403 les premières semaines et affinez.

Repérer une IP attaquante dans les logs Magento

Magento (et le serveur web devant) logue tout. Quelques signaux qui doivent déclencher une réaction immédiate :

  • Une IP qui tente plus de 10 connexions admin en 1 minute → brute force ; bloquer en WAF.
  • Une IP qui poste à /checkout/cart/add sans jamais arriver au paiement → bot scraping ou tentative d’injection ; bloquer.
  • Une IP qui requête massivement /sitemap.xml, /admin/ ou des chemins exotiques → reconnaissance avant attaque ; bloquer immédiatement.
  • Une IP qui touche un endpoint d’API Magento dépréciée → tentative d’exploitation d’une CVE connue ; vérifier que les patches sont à jour et bloquer.

Pour confirmer le caractère malveillant d’une IP, croisez avec des listes publiques (AbuseIPDB, Spamhaus DROP, Project Honeypot) et utilisez l’outil localiser une IP pour vérifier son pays et son fournisseur d’accès. Une IP d’un hébergeur cloud anonyme (datacenter low-cost connu pour héberger des botnets) doit être bloquée sans hésitation.

Activer le rate limiting par IP

Avant même le blocage, le rate limiting permet de ralentir les abus sans bloquer les utilisateurs légitimes. Quelques règles éprouvées :

  • Login admin : 5 tentatives par minute par IP, puis blocage temporaire 15 minutes.
  • Recherche produit : 30 requêtes par minute par IP.
  • Checkout : 5 commandes par heure par IP (au-delà, c’est probablement un bot de carding).
  • API : adaptée selon votre cas, mais toujours par IP, jamais par compte utilisateur seul.

Le rate limiting est implémentable en Nginx (module limit_req), via le WAF Cloudflare, ou via un module Magento type Mageplaza Block IP.

Surveiller la réputation IP de votre boutique

L’inverse compte aussi : votre serveur Magento a une IP, et si elle se retrouve en blacklist (parce qu’un autre site hébergé sur la même IP partage votre serveur mutualisé envoie du spam), votre boutique peut souffrir.

Vérifiez régulièrement l’IP de votre boutique avec notre outil pour trouver l’IP d’un site internet, puis testez cette IP contre des listes publiques (MXToolbox, Spamhaus). Si vous y figurez, un changement d’IP ou un passage en VPS dédié (avec IP réservée) règle le problème.

Faut-il faire appel à une agence spécialisée ?

La sécurité Magento couvre plus que l’IP : patches Adobe, audit du code des modules tiers, configuration TLS, durcissement Linux. Si votre équipe interne n’a pas le temps de monitorer en continu les CVE et les logs, faire appel à une Agence Magento spécialisée évite de jouer aux pompiers après une attaque. Une bonne agence applique en standard les bonnes pratiques décrites ici et complète par du monitoring 24h/24.

FAQ : sécurité Magento et IP

Le géoblocage IP impacte-t-il le SEO ?

Non, tant que Googlebot reste autorisé. Vérifiez avec votre outil de géoblocage que les User-Agents Google et Bing sont en allowlist explicite, et vérifiez les IP source Google avec son fichier officiel googlebot.json.

Magento Cloud (Adobe Commerce Cloud) gère-t-il la sécurité IP ?

Partiellement : il fournit un WAF Fastly intégré et des protections de base. La configuration de l’IP whitelist et du géoblocage reste à votre charge via l’interface admin.

Combien d’IP attaquantes faut-il bloquer en moyenne ?

Sur une boutique de taille moyenne (10 000 visites/mois), comptez 50 à 200 IP à bloquer manuellement chaque mois en plus du géoblocage automatique. La majorité vient de datacenters cloud.

Un VPN client doit-il être bloqué ?

Non, pas par défaut. Des clients légitimes utilisent un VPN pour leur vie privée. Bloquer les VPN coûte des ventes. Restez sur le blocage par comportement (rate limiting, brute force) plutôt que par catégorie d’IP.

4.5/5 - (64 votes)