Lors de la tentative d’inscription sur le site Web https://it6.cc/, la vérification de la disponibilité du nom d’utilisateur reste bloquée. Le message « Vérification de la disponibilité du nom d’utilisateur… » apparaît et persiste pendant une période prolongée, empêchant l’inscription normale de se poursuivre.
J’ai trouvé la raison du problème, à cause de la règle waf de cloudflare,
la règle originale
(cf.threat_score ge 5 and not cf.client.bot) or (not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}) or (not http.user_agent contains "Mozilla/")
voici la règle d’optimisation par claude ai, cela résout le problème
(cf.threat_score ge 10 and not cf.client.bot) or
(http.request.version eq "HTTP/1.0") or
(not http.user_agent contains "Mozilla/" and not cf.client.bot)
Explication des changements
Analyse et Optimisation des Règles de Pare-feu Cloudflare
Règle Actuelle :
Copier
(cf.threat_score ge 5 and not cf.client.bot) or
(not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}) or
(not http.user_agent contains "Mozilla/")
Analyse :
cf.threat_score ge 5 and not cf.client.bot: Cette partie est raisonnable, bloquant les clients à haut risque qui ne sont pas des bots.not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}: Ceci pourrait être trop restrictif, bloquant potentiellement les anciens clients légitimes.not http.user_agent contains "Mozilla/": Ceci pourrait bloquer les requêtes légitimes provenant de clients non navigateurs ou d’appels API.
Règle Optimisée :
Copier
(cf.threat_score ge 10 and not cf.client.bot) or
(http.request.version eq "HTTP/1.0") or
(not http.user_agent contains "Mozilla/" and not cf.client.bot)
Explication des Changements :
- Le seuil du score de menace a été augmenté à 10 pour autoriser plus de trafic légitime.
- Seuls les HTTP/1.0 sont bloqués, autorisant les versions plus récentes et SPDY.
- La vérification de l’agent utilisateur a été modifiée pour s’appliquer uniquement au trafic non-bot, autorisant les appels API et les clients légitimes non navigateurs.
Considérations Supplémentaires :
- Ajouter des exceptions pour des chemins ou points d’accès spécifiques utilisés pour les vérifications de nom d’utilisateur :
Copier
and not (http.request.uri.path contains "/check_username")
- Mettre en liste blanche les plages d’adresses IP connues comme étant sûres ou les pays où se trouvent la majorité de vos utilisateurs.
- Envisager la mise en œuvre de limitations de débit plutôt que de blocages purs pour certaines conditions.
Mise en Œuvre :
Remplacez votre règle actuelle par la version optimisée et surveillez ses effets. Ajustez si nécessaire en fonction de vos modèles de trafic et de vos exigences de sécurité.
