Capacidades

Todo lo que un WAF de edge necesita, nada activado por ti

PingWAF entrega las protecciones desactivadas por sitio. Activa lo que tu tráfico necesite, en el orden que necesites, y cada cambio queda versionado.

Detección

Un motor semántico, no una lista de regex

Las peticiones se normalizan, se puntúan con firmas, heurísticas y expresiones, y solo entonces producen un veredicto.

  • La normalización ocurre antes que cualquier regla, así que las codificaciones no ocultan cargas.
  • Heurísticas libinjection para SQLi y XSS más coincidencia multipatrón con Aho-Corasick.
  • Expresiones estilo Cloudflare como http.request.uri.path contains "/admin".
  • La puntuación de anomalía agrega todas las coincidencias en un veredicto por petición.

normalizar → firmas → expresiones → puntuación

localhost:9080/sites/example.com/security/protection
Editor de reglas WAF en la consola de PingWAF
Reglas personalizadas y conjuntos gestionados se activan por sitio.

Disponibilidad

Absorbe picos y deja pasar a las personas

Desafíos en capas frenan las avalanchas de peticiones sin poner un CAPTCHA delante de tus usuarios.

  • Escudo JavaScript de 5 segundos, proof of work y desafíos interactivos.
  • Las cookies de paso están firmadas con HMAC y ligadas al sitio que las emitió.
  • Listas de bots verificados y navegadores conocidos para no romper rastreadores ni monitorización.
  • Los desafíos se aplican por sitio, sin afectar a otros dominios.

La huella TLS y el análisis de comportamiento están en la hoja de ruta.

localhost:9080/sites/example.com/security/bot
Ajustes de protección de bots en la consola
Política de bots, bots verificados y acciones por sitio.

Acceso

Decide quién alcanza el origen

Bloquea, permite o desafía por dirección y región, y limita el abuso por dimensión de la petición.

  • Reglas IP con acciones block, allow, challenge y js_challenge, rangos CIDR e importación CSV.
  • Grupos IP globales desde listas de texto, JSON o los rangos de Cloudflare, sincronizados con informe de errores.
  • Restricciones geográficas por país y ASN, con opción de bloquear países desconocidos.
  • Límites por IP, host, ruta, ASN, país, cabecera, cookie o parámetro de consulta.
localhost:9080/sites/example.com/security/access
Página de control de acceso con reglas IP y restricciones geográficas
Reglas IP y política geográfica en la misma página.

Tráfico

Enruta, balancea y cachea en el edge

Los grupos de origen, las rutas y la caché conviven con la política de seguridad, de modo que regla y ruta cambian juntas.

  • Grupos de origen con round-robin, least connections, random y hash consistente por IP, URL, ruta, cabecera, cookie o consulta.
  • Rutas por prefijo, coincidencia exacta o regex, opcionalmente limitadas a un grupo IP.
  • Caché en el edge con cuotas por sitio, evicción LRU, stale-while-revalidate y TTL de navegador.
  • Reescritura de cabeceras, rutas, consultas y cuerpo, páginas de error Tera y pausa por sitio con 503.
localhost:9080/sites/example.com/caching
Configuración de caché en el edge dentro de la consola
Reglas de caché, TTL y cuota del sitio.

TLS

Certificados emitidos y rotados en el edge

ACME se ejecuta en el plano de datos y el plano de control siempre sabe qué tiene cada agente.

  • Emisión y renovación automática ACME / Let's Encrypt con retos HTTP-01 y DNS-01.
  • DNS-01 mediante Aliyun, Cloudflare, Tencent Cloud DNSPod, Huawei Cloud o DNS manual.
  • Estado del certificado por sitio (válido, por caducar, caducado) en el heartbeat y registro ACME consultable.
  • HSTS y HTTPS forzado en el edge, mTLS con certificados de cliente emitidos desde la consola y revocación inmediata.

La verificación del certificado de origen es un interruptor explícito, global o por grupo.

localhost:9080/sites/example.com/ssl
Página TLS con estado del certificado y eventos ACME
Estado del certificado e historial ACME de un sitio.

Observabilidad

Cada veredicto deja rastro

Los logs viven donde tus herramientas ya consultan, y una petición bloqueada se puede reproducir como comando curl.

  • Registro completo de peticiones en Elasticsearch con truncado de cuerpo y búfer WAL.
  • Captura de petición y respuesta en PostgreSQL: cabeceras literales, prefijos de cuerpo, tamaños reales.
  • Paneles de tráfico y ataques construidos con las métricas que envían los agentes.
  • Salud de agentes, aciertos de caché y contadores de evicción visibles desde el plano de control.
localhost:9080/logs
Lista de logs con veredictos, puntuaciones y reglas coincidentes
Log de peticiones consultable con veredictos y reglas aplicadas.

Operación

Gestiona la flota desde una consola

La configuración está versionada, los agentes son observables y la consola se compila dentro del binario.

  • Autenticación JWT + bcrypt, aislamiento multiinquilino y acceso con passkey (WebAuthn).
  • Versionado de configuración: listar instantáneas, comparar tabla por tabla y revertir con confirmación.
  • Consola en inglés, 简体中文 y 日本語 integrada con rust-embed, sin despliegue de frontend aparte.
  • Vista de flota con estado en vivo y atribución de CPU y memoria desde los endpoints del sistema.
localhost:9080/agents
Página de agentes con los nodos edge conectados
Estado de la flota de agentes y actividad de heartbeat.

Puntuación

De la puntuación de anomalía a un único veredicto

Cada petición sale del pipeline con exactamente un veredicto, y ese es el que registra el log.

VeredictoQué significaQué hace el edge
Pass Ninguna regla cruzó el umbral. Se reenvía al origen sin cambios.
Monitor Sospechosa pero por debajo del umbral de bloqueo. Se reenvía y se registra para ajustar la regla antes de aplicarla.
Block La puntuación cruzó el umbral de bloqueo. Se rechaza con una página de bloqueo y se registra la regla aplicada.
Challenge La petición debe demostrar que es un navegador. Se sirve un desafío JS o de proof of work; al superarlo continúa con cookie de paso.

Descubre cómo se produce un veredicto

Los documentos de arquitectura y motor WAF recorren el ciclo de vida de la petición, la evaluación de reglas y la puntuación.