Verificación de disponibilidad de nombre de usuario atascada durante el registro

Al intentar registrarse en el sitio web https://it6.cc/, la verificación de disponibilidad del nombre de usuario se queda atascada. Aparece el mensaje “Comprobando disponibilidad del nombre de usuario…” y persiste durante un tiempo prolongado, lo que impide que el registro normal continúe.


He encontrado la razón del problema, debido a la regla waf de cloudflare,
la regla original

(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/")

aquí está la regla de optimización por claude ai, esto resuelve el problema

(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)
Explicación de los cambios

Análisis y Optimización de Reglas de Firewall de Cloudflare

Regla Actual:

Copiar

(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/")

Análisis:

  1. cf.threat_score ge 5 and not cf.client.bot: Esta parte es razonable, bloquea clientes de alta amenaza que no son bots.
  2. not http.request.version in {"HTTP/1.2" "HTTP/2" "HTTP/3" "SPDY/3.1"}: Esto podría ser demasiado restrictivo, bloqueando potencialmente clientes antiguos legítimos.
  3. not http.user_agent contains "Mozilla/": Esto podría bloquear solicitudes legítimas de clientes que no son navegadores o llamadas a la API.

Regla Optimizada:

Copiar

(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)

Explicación de los Cambios:

  1. Se aumentó el umbral de puntuación de amenaza a 10 para permitir más tráfico legítimo.
  2. Solo se bloquea HTTP/1.0, permitiendo versiones más nuevas y SPDY.
  3. Se modificó la verificación del agente de usuario para que solo se aplique al tráfico que no sea de bots, permitiendo llamadas a la API y clientes legítimos que no sean navegadores.

Consideraciones Adicionales:

  • Añadir excepciones para rutas o puntos finales específicos utilizados para las comprobaciones de nombre de usuario:

Copiar

and not (http.request.uri.path contains "/check_username")
  • Incluir en lista blanca rangos de IP conocidos o países donde se encuentran la mayoría de sus usuarios.
  • Considere implementar limitación de velocidad en lugar de bloqueo total para algunas condiciones.

Implementación:

Reemplace su regla actual con la versión optimizada y supervise sus efectos. Ajuste según sea necesario según sus patrones de tráfico y requisitos de seguridad.

1 me gusta