Aller au contenu

Protection anti-spam pour vos formulaires

WP-ImmoMakler protège tous les formulaires du plugin contre le spam : le formulaire de contact dans la vue détaillée du bien, le formulaire d’alerte de recherche, le formulaire de rétractation, ainsi que le formulaire de profil de recherche Propstack et l’inscription à la newsletter Propstack.

La protection est structurée en niveaux. Vous trouverez tous les réglages regroupés dans le backend de votre site web (wp-admin) sous WP-ImmoMakler → Paramètres → Protection anti-spam.

Le principe : ne jamais perdre une demande réelle

Section intitulée « Le principe : ne jamais perdre une demande réelle »

Aucune protection anti-spam ne peut distinguer avec certitude si un envoi provient d’un humain ou d’un robot. C’est pourquoi WP-ImmoMakler applique la règle suivante : en cas de doute, le message est délivré.

Le raisonnement repose sur un arbitrage simple. Un e-mail de spam qui atterrit dans votre boîte de réception vous coûte quelques secondes. Une demande réelle rejetée silencieusement peut, elle, vous coûter un mandat, sans que vous en soyez jamais informé. Les réglages par défaut sont choisis en conséquence.

Tous les formulaires vérifient en arrière-plan la présence de caractéristiques typiques des robots. Rien n’est visible ni à manipuler pour vos visiteurs.

Honeypot. Tous les formulaires contiennent un champ de saisie supplémentaire, invisible pour les visiteurs. Un humain ne voit pas ce champ et le laisse vide. Un robot spammeur qui lit le formulaire de façon automatisée le remplit en revanche, se trahissant ainsi lui-même.

Provenance. Chaque formulaire reçoit, lors de son chargement, une caractéristique signée. Si elle est absente ou si la signature ne correspond pas, la demande ne provient pas d’un formulaire de votre site ouvert normalement — un comportement typique des robots qui envoient leurs données directement à l’adresse de votre site sans jamais ouvrir la page.

Durée de remplissage. La même caractéristique permet de déduire le temps mis pour remplir le formulaire. Si un formulaire est envoyé en moins de trois secondes, aucun humain n’était à l’œuvre.

Saisies. Les robots spammeurs qui pilotent un vrai navigateur réussissent les trois vérifications ci-dessus et résolvent même le CAPTCHA ; ils ne se trahissent que par ce qu’ils saisissent : des suites de lettres aléatoires comme « Vkrch mMUhFJtNnjeQJaqFM » en guise de nom ou « Pjcgkdapg » en guise de numéro. WP-ImmoMakler examine le prénom, le nom, la société, la rue, le numéro, la ville et, dans le formulaire de rétractation, les informations d’identification du contrat et, dans le formulaire manuel d’alerte de recherche, de même le prénom, le nom, la rue et la ville, à la recherche de deux motifs qui n’existent dans aucune langue : des alternances répétées entre minuscules et majuscules à l’intérieur d’un mot, et des mots de cinq lettres ou plus sans aucune voyelle. Des noms comme McDonald, Schmidt ou Przybylski passent la vérification. Un seul champ suspect entraîne simplement un marquage, car un vrai nom peut sembler inhabituel ; à partir de deux champs, l’envoi est considéré comme du spam détecté avec certitude. Une exception est un prénom ou un nom qui alterne à plusieurs reprises entre minuscules et majuscules à l’intérieur d’un mot, comme « qorTZxWeNbuPLmiKs » : personne n’écrit ainsi son nom, l’envoi est donc à lui seul considéré comme du spam détecté avec certitude.

Expéditeur. Lorsqu’un envoi est détecté avec certitude comme du spam, WP-ImmoMakler mémorise l’adresse e-mail pendant 24 heures. Les mêmes robots créent souvent, peu après une demande de contact, une alerte de recherche avec la même adresse : un formulaire sans champs de nom, qui passerait inaperçu à lui seul. Un nouvel envoi depuis cette adresse pendant cette période est donc lui aussi considéré comme du spam détecté avec certitude. Le champ honeypot ne déclenche pas cette mémorisation, car le remplissage automatique du navigateur peut aussi le remplir chez de vrais visiteurs.

Ce niveau est toujours actif et ne nécessite aucun réglage. Vous pouvez cependant définir ce qu’il advient d’un envoi suspect :

La demande vous est délivrée normalement. L’objet contient en plus la mention [Suspicion de spam], et vous trouverez au début du message une brève indication expliquant pourquoi l’envoi a semblé suspect. C’est à vous de décider s’il s’agit réellement de spam.

L’avantage : aucune demande réelle n’est jamais perdue. Cela compte plus qu’il n’y paraît à première vue — même chez un humain, le champ invisible peut être rempli, par exemple lorsqu’un gestionnaire de mots de passe ou une extension de navigateur remplit automatiquement les champs du formulaire.

Pour le traitement technique ultérieur, chaque e-mail ainsi marqué contient en plus l’en-tête X-ImmoMakler-Spam-Suspected. Sa valeur indique la cause : honeypot, origin ou speed. Vous pouvez ainsi créer une règle dans votre logiciel de messagerie qui classe automatiquement les demandes suspectes dans un dossier dédié au lieu de les supprimer.

Demandes qui parviennent directement à votre logiciel de gestion immobilière

Section intitulée « Demandes qui parviennent directement à votre logiciel de gestion immobilière »

Les demandes envoyées via le formulaire de contact du bien ne vous parviennent pas toujours uniquement par e-mail : selon votre configuration, elles arrivent aussi directement dans votre logiciel de gestion immobilière. Là aussi, une demande suspecte est marquée, dans la mesure où le canal de transmission concerné le permet :

  • XML OpenImmo Feedback : Si vous avez activé l’option Joindre le XML, le champ anfrage du fichier XML commence par l’indication de la suspicion de spam. Un logiciel de gestion immobilière qui récupère la demande depuis le fichier XML la voit ainsi lui aussi.
  • Gestionnaire de messages ImmoScout24 : L’indication figure au début du message qui arrive dans le gestionnaire de messages.
  • CasaOne : L’indication figure au début du message transmis à CasaOne.
  • Publimmo : Comme décrit ci-dessus, l’e-mail de la demande porte la mention [Suspicion de spam] dans l’objet, l’indication et l’en-tête X-ImmoMakler-Spam-Suspected.

Là aussi, la demande est transmise intégralement. L’indication lui est simplement ajoutée en préambule.

La demande n’est pas délivrée. La personne à l’origine de l’envoi reçoit à la place un message l’informant qu’elle a été identifiée par erreur comme un robot spammeur, accompagné d’une invitation à vous contacter par e-mail ou par téléphone.

Sur le formulaire d’alerte de recherche, il n’y a rien à marquer — le seul e-mail envoyé va à l’adresse saisie dans le formulaire, pas à vous. En cas de signal univoque, aucun e-mail de confirmation n’est donc envoyé, indépendamment de ce réglage. Le robot ne reçoit ainsi rien ; un visiteur identifié à tort peut simplement réessayer, puisqu’une alerte de recherche non confirmée est de toute façon rejetée.

Il en va de même pour l’inscription à la newsletter Propstack : en cas de signal univoque, WP-ImmoMakler ne crée aucun contact dans Propstack et n’envoie aucun e-mail de double opt-in.

Ce réglage tient davantage de spam à l’écart de votre boîte de réception. Il peut toutefois, dans certains cas, vous faire perdre une demande réelle — notamment lorsque le champ invisible a été rempli sans que le visiteur en soit responsable. Ne choisissez donc cette option que si le simple marquage laisse encore passer trop de spam.

Le rejet n’intervient qu’en présence d’indices univoques. L’absence, à elle seule, de la caractéristique de provenance ne conduit jamais à un rejet, mais toujours seulement à un marquage : elle peut aussi provenir du fait que votre site a été délivré depuis un cache datant d’avant la mise à jour. Votre visiteur n’y est pour rien — et une demande réelle ne doit jamais en pâtir.

De plus, un CAPTCHA vérifie si une demande provient bien d’un humain. ALTCHA est activé par défaut ; vous avez aussi le choix entre sept CAPTCHAs hébergés en externe – captcha.eu, Cloudflare Turnstile, Friendly Captcha, hCaptcha et Google reCAPTCHA (v3, v2 avec défi, v2 invisible) – ou « Aucun CAPTCHA (niveau 1 uniquement) ». Un seul CAPTCHA peut être utilisé à la fois.

Avec ALTCHA, le navigateur de votre visiteur résout en arrière-plan un calcul automatisé émis et vérifié par votre propre serveur — sans contact avec un tiers et sans cookies. Pour un visiteur isolé, l’effort est imperceptible ; pour un robot qui envoie des formulaires en masse, il se cumule jusqu’à devenir un véritable obstacle. Contrairement au honeypot, un échec de la vérification est toujours rejeté — c’est un signal bien plus fiable.

Les autres CAPTCHAs sont des services tiers et transmettent pour cela des données de vos visiteurs à leurs propres serveurs ; pour en savoir plus, consultez la remarque sur la protection des données concernant les tiers ci-dessous.

Notez que tous les CAPTCHAs nécessitent JavaScript : les visiteurs chez qui JavaScript est désactivé ou bloqué ne pourront alors plus envoyer le formulaire. Si vous tenez à ce que ces visiteurs puissent eux aussi envoyer vos formulaires, choisissez « Aucun CAPTCHA (niveau 1 uniquement) ».

Si une alerte de recherche échoue au CAPTCHA, WP-ImmoMakler le consigne dans le journal anti-spam (immomakler-spam-…log dans le répertoire d’importation), avec le fournisseur du CAPTCHA et l’indication de la présence ou non d’une solution. WP-ImmoMakler rejette une alerte de recherche sans solution sans interroger le fournisseur. Elle n’apparaît donc que dans ce journal et pas dans les statistiques de votre fournisseur de CAPTCHA. Les alertes de recherche acceptées indiquent dans le back-office quelle vérification elles ont réussie (voir Alertes de recherche).

Vous trouverez tous les détails de la configuration dans la documentation ALTCHA ou sous Fournisseurs de CAPTCHA.

Le formulaire de contact accepte au maximum 10 demandes par heure depuis la même adresse IP. Cela arrête les bots de spam qui envoient le formulaire en rafale, sans qu’une demande isolée doive être reconnue comme spam. Seules sont comptées les demandes que le formulaire enverrait par ailleurs : une personne renvoyée au formulaire à cause d’un champ obligatoire manquant n’a consommé aucune demande.

Si la limite est atteinte, le formulaire affiche un message invitant à réessayer plus tard ou à vous contacter par e-mail ou par téléphone. Les visiteurs normaux n’atteignent pas cette valeur. Si beaucoup de vos prospects partagent la même adresse IP, par exemple dans un réseau d’entreprise, augmentez-la dans le backend de votre site web (wp-admin) sous WP-ImmoMakler → Paramètres → Protection anti-spam ; 0 désactive la limitation.

Certains formulaires envoient un e-mail à l’adresse saisie dans le formulaire : la confirmation d’une alerte de recherche, l’accusé de réception automatique du formulaire de contact, l’accusé de réception d’une rétractation et l’e-mail de double opt-in de l’inscription à la newsletter Propstack. Sans limitation, cela pourrait être détourné pour submerger la boîte de réception d’un tiers avec ce type d’e-mails.

WP-ImmoMakler limite donc le nombre de ces e-mails envoyés depuis la même adresse IP en l’espace d’une heure. Les visiteurs normaux n’atteignent pas ces valeurs.

Pour les alertes de recherche, vous réglez la valeur sous WP-ImmoMakler → Paramètres → Protection anti-spam (valeur par défaut 5, 0 désactive la limitation). Pour les e-mails de confirmation des formulaires de contact et de rétractation, la limite est de 10 par heure et peut être ajustée via les filtres immomakler_contactform_confirmation_rate_limit et immomakler_widerruf_confirmation_rate_limit. L’inscription à la newsletter Propstack autorise 5 inscriptions par heure ; vous pouvez modifier cette valeur via le filtre immomakler_propstack_newsletter_rate_limit.

Il en va de même pour l’inscription à la newsletter dans le formulaire de contact : si quelqu’un y coche l’inscription à la newsletter Propstack ou Mailchimp, le service de newsletter envoie un e-mail de confirmation à l’adresse saisie. En cas de signal univoque, l’inscription n’a donc pas lieu, indépendamment du réglage du Niveau 1. Par ailleurs, au maximum 5 inscriptions par heure et par adresse IP sont autorisées, partagées entre tous les services de newsletter connectés ; vous pouvez modifier cette valeur via le filtre immomakler_contactform_newsletter_rate_limit (0 désactive la limitation). Dans les deux cas, la demande elle-même vous parvient tout de même ; seule l’inscription à la newsletter est omise.

Remarque sur la protection des données concernant les tiers

Section intitulée « Remarque sur la protection des données concernant les tiers »

Avec le réglage par défaut ALTCHA, ainsi qu’avec « Aucun CAPTCHA », tous les niveaux de la protection anti-spam s’exécutent exclusivement sur votre propre serveur. Aucune donnée n’est transmise à des tiers, aucun cookie n’est déposé et aucune donnée comportementale de vos visiteurs n’est collectée.

Si vous choisissez en revanche Cloudflare Turnstile, Friendly Captcha, hCaptcha ou Google reCAPTCHA, votre site web transmet à des fins de vérification des données de vos visiteurs (notamment leur adresse IP) au serveur du fournisseur concerné. Vérifiez si vous devez mentionner le fournisseur choisi dans votre déclaration de confidentialité. Avec Google reCAPTCHA, ces données sont transférées aux États-Unis. Les États-Unis n’offrant pas un niveau de protection des données équivalent à celui de l’UE, cela peut, en l’absence de consentement explicite des utilisateurs, entraîner des risques juridiques liés au RGPD et d’éventuelles questions de responsabilité. Avant de choisir Google reCAPTCHA, vérifiez donc si cela est compatible avec votre déclaration de confidentialité et adaptez-la si nécessaire.

captcha.eu, Cloudflare Turnstile, Friendly Captcha et hCaptcha se positionnent tous explicitement comme des alternatives plus respectueuses de la vie privée par rapport à Google reCAPTCHA. Là aussi : vérifiez vous-même leurs conditions de confidentialité actuelles avant de choisir un service. captcha.eu traite les données exclusivement en Autriche, et ce dans toutes ses formules ; pour des raisons de protection des données, WP-ImmoMakler se connecte délibérément au service via le chemin direct vers ces serveurs, en contournant le CDN que captcha.eu interpose par défaut. Avec Friendly Captcha, WP-ImmoMakler délivre le script du widget depuis votre propre serveur plutôt que via un réseau de diffusion de contenu (CDN), de sorte qu’aucun fournisseur supplémentaire ne s’ajoute ; et le réglage « Friendly Captcha : région du serveur » permet de limiter le service aux serveurs de l’UE (disponible uniquement avec certaines formules de Friendly Captcha). Vous trouverez plus de détails sur les sept CAPTCHAs hébergés en externe sous Fournisseurs de CAPTCHA.