« Volver al listado

CVE-2026-31816

Estado: AnalizadaCrítica (9.1)—💥 Exploit

Budibase is a low code platform for creating internal tools, workflows, and admin panels. In 3.31.4 and earlier, the Budibase server's authorized() middleware that protects every server-side API endpoint can be completely bypassed by appending a webhook path pattern to the query string of any request. The isWebhookEndpoint() function uses an unanchored regex that tests against ctx.request.url, which in Koa includes the full URL with query parameters.

Leer descripción completaMostrar menos

When the regex matches, the authorized() middleware immediately calls return next(), skipping all authentication, authorization, role checks, and CSRF protection. This means a completely unauthenticated, remote attacker can access any server-side API endpoint by simply appending ?/webhooks/trigger (or any webhook pattern variant) to the URL.

CVSS

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

💥 Exploits públicos

Hay código de explotación o plantillas de detección públicos. No es lo mismo que explotación activa confirmada (KEV), pero aumenta el riesgo: parchee con prioridad.

⚠️ Las pruebas de concepto de GitHub no están verificadas: algunas son falsas o contienen malware. No las ejecute nunca fuera de un laboratorio aislado.

🎯 Técnicas ATT&CK

Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.

CVE crítico de bypass de autenticación en Budibase: atacante remoto sin autenticación explota regex sin anclaje en middleware para acceder a endpoints protegidos (T1190, AV:N/PR:N/UI:N); obtiene acceso no autorizado (T1078), lee datos sensibles (T1005) y modifica contenido de la plataforma (T1565.00

Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.

🛡️ Mitigaciones ATT&CK que cubren estas técnicas

Tecnologías afectadas (1)

CWE

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-31816",
  "cveTags": [],
  "metrics": {
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "id": "CVE-2026-31816",
          "role": "CISA Coordinator",
          "options": [
            {
              "exploitation": "poc"
            },
            {
              "automatable": "yes"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "version": "2.0.3",
          "timestamp": "2026-03-10T15:20:38.849996Z"
        }
      }
    ],
    "cvssMetricV31": [
      {
        "type": "Secondary",
        "source": "security-advisories@github.com",
        "cvssData": {
          "scope": "UNCHANGED",
          "version": "3.1",
          "baseScore": 9.1,
          "attackVector": "NETWORK",
          "baseSeverity": "CRITICAL",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N",
          "integrityImpact": "HIGH",
          "userInteraction": "NONE",
          "attackComplexity": "LOW",
          "availabilityImpact": "NONE",
          "privilegesRequired": "NONE",
          "confidentialityImpact": "HIGH"
        },
        "impactScore": 5.2,
        "exploitabilityScore": 3.9
      }
    ]
  },
  "affected": [
    {
      "source": "security-advisories@github.com",
      "affectedData": [
        {
          "vendor": "Budibase",
          "product": "budibase",
          "versions": [
            {
              "status": "affected",
              "version": "<= 3.31.4"
            }
          ]
        }
      ]
    }
  ],
  "published": "2026-03-09T21:16:20.733",
  "references": [
    {
      "url": "https://github.com/Budibase/budibase/security/advisories/GHSA-gw94-hprh-4wj8",
      "tags": [
        "Exploit",
        "Vendor Advisory"
      ],
      "source": "security-advisories@github.com"
    },
    {
      "url": "https://github.com/Budibase/budibase/security/advisories/GHSA-gw94-hprh-4wj8",
      "tags": [
        "Exploit",
        "Vendor Advisory"
      ],
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
    }
  ],
  "vulnStatus": "Analyzed",
  "weaknesses": [
    {
      "type": "Secondary",
      "source": "security-advisories@github.com",
      "description": [
        {
          "lang": "en",
          "value": "CWE-74"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "Budibase is a low code platform for creating internal tools, workflows, and admin panels. In 3.31.4 and earlier, the Budibase server's authorized() middleware that protects every server-side API endpoint can be completely bypassed by appending a webhook path pattern to the query string of any request. The isWebhookEndpoint() function uses an unanchored regex that tests against ctx.request.url, which in Koa includes the full URL with query parameters. When the regex matches, the authorized() middleware immediately calls return next(), skipping all authentication, authorization, role checks, and CSRF protection. This means a completely unauthenticated, remote attacker can access any server-side API endpoint by simply appending ?/webhooks/trigger (or any webhook pattern variant) to the URL."
    },
    {
      "lang": "es",
      "value": "Budibase es una plataforma de bajo código para crear herramientas internas, flujos de trabajo y paneles de administración. En la versión 3.31.4 y anteriores, el middleware authorized() del servidor de Budibase que protege cada endpoint de API del lado del servidor puede ser completamente eludido al añadir un patrón de ruta de webhook a la cadena de consulta de cualquier solicitud. La función isWebhookEndpoint() utiliza una expresión regular no anclada que se prueba contra ctx.request.url, que en Koa incluye la URL completa con parámetros de consulta. Cuando la expresión regular coincide, el middleware authorized() llama inmediatamente a return next(), omitiendo toda autenticación, autorización, comprobaciones de rol y protección CSRF. Esto significa que un atacante remoto y completamente no autenticado puede acceder a cualquier endpoint de API del lado del servidor simplemente añadiendo ?/webhooks/trigger (o cualquier variante de patrón de webhook) a la URL."
    }
  ],
  "lastModified": "2026-06-17T10:34:30.717",
  "configurations": [
    {
      "nodes": [
        {
          "negate": false,
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:a:budibase:budibase:*:*:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "2D6D88E6-A107-4300-B0E5-C2717900C2A1",
              "versionEndIncluding": "3.31.4"
            }
          ],
          "operator": "OR"
        }
      ]
    }
  ],
  "sourceIdentifier": "security-advisories@github.com"
}