GHSA-4hg8-92x6-h2f3

Suggest an improvement
Source
https://github.com/advisories/GHSA-4hg8-92x6-h2f3
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/02/GHSA-4hg8-92x6-h2f3/GHSA-4hg8-92x6-h2f3.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-4hg8-92x6-h2f3
Aliases
Published
2026-02-17T21:40:46Z
Modified
2026-02-20T16:58:03Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N CVSS Calculator
Summary
OpenClaw is Missing Webhook Authentication in Telnyx Provider Allows Unauthenticated Requests
Details

Summary

In affected versions, OpenClaw's optional @openclaw/voice-call plugin Telnyx webhook handler could accept unsigned inbound webhook requests when telnyx.publicKey was not configured, allowing unauthenticated callers to forge Telnyx events.

This only impacts deployments where the Voice Call plugin is installed, enabled, and the webhook endpoint is reachable from the attacker (for example, publicly exposed via a tunnel/proxy).

Affected Packages / Versions

  • Package: openclaw (npm)
  • Affected: <= 2026.2.13
  • Fixed: >= 2026.2.14 (planned)

Details

Telnyx webhooks are expected to be authenticated via Ed25519 signature verification.

In affected versions, TelnyxProvider.verifyWebhook() could effectively fail open when no Telnyx public key was configured, allowing arbitrary HTTP POST requests to the voice-call webhook endpoint to be treated as legitimate Telnyx events.

Fix

The fix makes Telnyx webhook verification fail closed by default and requires telnyx.publicKey (or TELNYX_PUBLIC_KEY) to be configured.

A signature verification bypass exists only for local development via skipSignatureVerification: true, which is off by default, emits a loud startup warning, and should not be used in production.

This requirement is documented in the Voice Call plugin docs.

Fix Commit(s)

  • 29b587e73cbdc941caec573facd16e87d52f007b
  • f47584fec (centralized verification helper + stronger tests)

Workarounds

  • Configure plugins.entries.voice-call.config.telnyx.publicKey (or TELNYX_PUBLIC_KEY) to enable signature verification.
  • Only for local development: set skipSignatureVerification: true.

Thanks @p80n-sec for reporting.

Database specific
{
    "cwe_ids":  [
        "CWE-306"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-02-17T21:40:46Z",
    "nvd_published_at":  "2026-02-19T23:16:24Z",
    "severity":  "HIGH"
}
References

Affected packages

npm / openclaw

Package

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
2026.2.14

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/02/GHSA-4hg8-92x6-h2f3/GHSA-4hg8-92x6-h2f3.json"