---
id: CVE-2026-61654
title: 'Lightdash: Unauthenticated dbt Cloud webhook with path injection leaks API key'
summary: >-
  Lightdash is an open source business intelligence platform. In affected
  versions through 0.3213.0, the dbt Cloud webhook `POST
  /api/v1/projects/{projectUuid}/dbt-cloud/webhook` has no authentication
  middleware or signature validation. In…
severity: high
cvss: 8.3
cvssVector: 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N'
cvssSource: cna
cwe:
  - CWE-89
vendor: lightdash
product: lightdash
affected:
  - lightdash < 0.3214.0
published: '2026-10-29'
updated: '2026-10-29'
sourceUpdated: '2026-10-29T21:19:12.542Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-61654'
references:
  - url: >-
      https://github.com/lightdash/lightdash/security/advisories/GHSA-r4xc-vwqr-3252
    label: >-
      https://github.com/lightdash/lightdash/security/advisories/GHSA-r4xc-vwqr-3252
  - url: 'https://github.com/lightdash/lightdash/pull/24587'
    label: 'https://github.com/lightdash/lightdash/pull/24587'
  - url: >-
      https://github.com/lightdash/lightdash/commit/8d1d9bb6804bbea66a7bdf1b9b00092665382f14
    label: >-
      https://github.com/lightdash/lightdash/commit/8d1d9bb6804bbea66a7bdf1b9b00092665382f14
  - url: 'https://github.com/lightdash/lightdash/releases/tag/0.3214.0'
    label: 'https://github.com/lightdash/lightdash/releases/tag/0.3214.0'
tags:
  - cve.org
epss: 0.0038
epssPercentile: 0.32017
ingestedAt: '2026-11-03T09:40:52.160Z'
---

## Overview

Lightdash is an open source business intelligence platform. In affected versions through 0.3213.0, the dbt Cloud webhook `POST /api/v1/projects/{projectUuid}/dbt-cloud/webhook` has no authentication middleware or signature validation. In `packages/backend/src/controllers/projectController.ts`, `testWebhook()` accepts `accountId` and `runId` from a `job.run.completed` request and passes them to `createPreviewWithExplores()` in `packages/backend/src/services/ProjectService/ProjectService.ts`. These unsanitized values are interpolated into the server-side dbt Cloud API URL, which is requested with the victim project's API key in the `Authorization` header. Path traversal through `accountId` changes the requested path on `cloud.getdbt.com` without changing its host, so the credential-bearing request reaches an attacker-influenced path on that fixed host. The advisory claims API-key theft, but the supplied evidence does not establish that the attacker can observe the `Authorization` header. The unauthenticated webhook also allows preview creation. The target must be a `dbt Cloud IDE` project and the attacker must know its `projectUuid`; the UUID is not enumerable but can be discovered in shared or multi-tenant contexts. Version 0.3214.0 fixes identifier path traversal and verifies webhook HMAC signatures only when a secret is configured; without a secret, unsigned webhooks continue to be processed.

## Affected

- `lightdash < 0.3214.0`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
