CVE-2026-72846: Lightdash Scheduled Delivery Webhook URLs Are Not Validated, Allowing Server-Side Request Forgery

Published Aug 20, 2026
·
Updated

Lightdash stores the webhook URL supplied with a scheduled delivery and later posts to it from sendWebhook in packages/backend/src/clients/GoogleChat/GoogleChatClient.ts and in packages/backend/src/clients/MicrosoftTeams/MicrosoftTeamsClient.ts. In affected versions both call fetch on the stored URL directly. The validatePublicHttpUrl helper in packages/backend/src/utils/ssrfProtection.ts, used for MCP server URLs, is not applied on either path, and the webhook fields carry no server-side URL constraint. A user able to create or trigger a scheduled delivery can therefore direct the server to issue POST requests to private, loopback and link-local addresses, including cloud metadata endpoints, and can distinguish reachable internal services from unreachable ones through the resulting errors. The upstream response is never returned to the requester; on a failure status its body is written to the server log instead. Version 1.146.4 routes both clients through postSchedulerWebhook from packages/backend/src/utils/schedulerWebhookValidation rather than calling fetch directly.

Affected Software

1 affected component
Lightdash<1.146.4

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Lightdash to a version that resolves this vulnerability.

    Fixed in 1.146.4
  2. Configuration

    For scheduled delivery webhook URLs used by GoogleChatClient.ts (packages/backend/src/clients/GoogleChat/GoogleChatClient.ts) and MicrosoftTeamsClient.ts (packages/backend/src/clients/MicrosoftTeams/MicrosoftTeamsClient.ts), ensure the stored webhook URL is validated by routing requests through postSchedulerWebhook in packages/backend/src/utils/schedulerWebhookValidation, rather than calling fetch directly, so validatePublicHttpUrl (packages/backend/src/utils/ssrfProtection.ts) is enforced / equivalent server-side URL constraints are applied.

    Lightdash scheduler webhook validation webhook URL validation for scheduled delivery = apply postSchedulerWebhook (packages/backend/src/utils/schedulerWebhookValidation) instead of fetch directly

Event History

Aug 20, 2026
CVE Published
via MITRE·09:57 PM
Data Sourced
via MITRE·09:57 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who can exploit this issue?

A user who can create or trigger a scheduled delivery can supply a webhook URL that causes the Lightdash server to issue POST requests to internal, loopback, link-local, or cloud metadata addresses.

2

What information can an attacker obtain through the vulnerable webhook request?

The upstream response is not returned to the requester. However, the attacker can distinguish reachable internal services from unreachable ones based on resulting errors, while response bodies for failure statuses are written to the server log.

3

What version contains the described remediation?

Version 1.146.4 routes Google Chat and Microsoft Teams scheduled-delivery webhook requests through postSchedulerWebhook in schedulerWebhookValidation rather than calling fetch directly.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203