Skip to content
Heist/ feed
Back to feed
Medium

BigQuery Dataset Allowlist Bypass via Metadata Dry-Run in MCP Toolbox

Type: advisorySources: OSV

An improper authorization and security-boundary bypass vulnerability in the bigquery-execute-sql tool component of Google mcp-toolbox versions 0.16.1 through 1.4.0 allows an authenticated attacker to bypass allowedDatasets validation checks. The toolbox relies on the BigQuery dry-run API to enforce dataset restrictions, but due to a fail-open logic flaw, it bypasses validation when the API returns an empty array for specialized constructs. This allows the attacker to extract structural DDL schemas for explicitly excluded datasets via INFORMATION_SCHEMA, and access downstream federated row data via EXTERNAL_QUERY connections.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-14538
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 18:25 UTC · Revision 1

Source evidence

BigQuery Dataset Allowlist Bypass via Metadata Dry-Run in MCP Toolbox

core-osv · Original source

Published 31 Jul 2026, 01:42 UTC

An improper authorization and security-boundary bypass vulnerability in the bigquery-execute-sql tool component of Google mcp-toolbox versions 0.16.1 through 1.4.0 allows an authenticated attacker to bypass allowedDatasets validation checks. The toolbox relies on the BigQuery dry-run API to enforce dataset restrictions, but due to a fail-open logic flaw, it bypasses validation when the API returns an empty array for specialized constructs. This allows the attacker to extract structural DDL schemas for explicitly excluded datasets via INFORMATION_SCHEMA, and access downstream federated row data via EXTERNAL_QUERY connections.

osv:CVE-2026-14538
Complete source record
{
  "id": "94a49ee3b313f717db2f0997e02e46421ced06ec9eb4d6a5b6905a54cc9d052b",
  "url": "https://osv.dev/vulnerability/CVE-2026-14538",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "BigQuery Dataset Allowlist Bypass via Metadata Dry-Run in MCP Toolbox",
    "summary": "An improper authorization and security-boundary bypass vulnerability in the bigquery-execute-sql tool component of Google mcp-toolbox versions 0.16.1 through 1.4.0 allows an authenticated attacker to bypass allowedDatasets validation checks. The toolbox relies on the BigQuery dry-run API to enforce dataset restrictions, but due to a fail-open logic flaw, it bypasses validation when the API returns an empty array for specialized constructs. This allows the attacker to extract structural DDL schemas for explicitly excluded datasets via INFORMATION_SCHEMA, and access downstream federated row data via EXTERNAL_QUERY connections.",
    "evidence": "osv:CVE-2026-14538",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-14538",
      "aliases": [
        "CVE-2026-14538"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:U"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/googleapis/mcp-toolbox",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "d67cfbe8ddca5a50c9577ea11feaf5c94d0acace"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0.16.1"
                      },
                      {
                        "last_affected": "1.4.0"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "cpe": "cpe:2.3:a:google:mcp_toolbox_for_databases:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0.16.1"
                      },
                      {
                        "last_affected": "1.4.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v1.4.0",
            "v1.3.0",
            "v1.2.0",
            "v1.1.0",
            "v1.0.0",
            "v0.32.0",
            "v0.31.0",
            "v0.30.0",
            "v0.29.0",
            "v0.28.0",
            "v0.27.0",
            "v0.26.0",
            "v0.25.0",
            "v0.24.0",
            "v0.23.0",
            "v0.22.0",
            "v0.21.0",
            "v0.20.0",
            "v0.19.1",
            "v0.18.0",
            "v0.17.0",
            "v0.16.0",
            "v0.15.0",
            "v0.14.0",
            "v0.13.0",
            "v0.12.0",
            "v0.11.0",
            "v0.10.0",
            "v0.9.0",
            "v0.8.0",
            "v0.7.0",
            "v0.6.0",
            "v0.5.0",
            "v0.4.0",
            "v0.3.0",
            "v0.2.1",
            "v0.2.0",
            "v0.1.0",
            "v0.0.5",
            "v0.0.4",
            "v0.0.3",
            "v0.0.2",
            "v0.0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-14538.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:22.022425653Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/14xxx/CVE-2026-14538.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-14538",
        "https://github.com/googleapis/mcp-toolbox/pull/3452"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-285",
          "CWE-863"
        ],
        "cna_assigner": "Google",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/14xxx/CVE-2026-14538.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-14538",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 488339,
  "published_at": "2026-07-31T01:42:29.707+00:00"
}