Summary
In Telegram webhook mode, if channels.telegram.webhookSecret is not set, OpenClaw may accept webhook HTTP requests without verifying Telegram’s secret token header. In deployments where the webhook endpoint is reachable by an attacker, this can allow forged Telegram updates (for example spoofing message.from.id).
Note: Telegram webhook mode is not enabled by default. It is enabled only when channels.telegram.webhookUrl is configured.
Affected Packages / Versions
- Package:
openclaw (npm)
- Affected:
<= 2026.1.30
- Patched:
>= 2026.2.1
Impact
If an attacker can reach the webhook endpoint, they may be able to send forged updates that are processed as if they came from Telegram. Depending on enabled commands/tools and configuration, this could lead to unintended bot actions.
Mitigations / Workarounds
- Set a strong
channels.telegram.webhookSecret and ensure your reverse proxy forwards the X-Telegram-Bot-Api-Secret-Token header unchanged.
- Restrict network access to the webhook endpoint (for example bind to loopback and only expose via a reverse proxy).
Fix Commit(s)
- ca92597e1f9593236ad86810b66633144b69314d (config validation:
webhookUrl requires webhookSecret)
Defense-in-depth / supporting fixes:
- 5643a934799dc523ec2ef18c007e1aa2c386b670 (default webhook listener bind host to loopback)
- 3cbcba10cf30c2ffb898f0d8c7dfb929f15f8930 (bound webhook request body size/time)
- 633fe8b9c17f02fcc68ecdb5ec212a5ace932f09 (runtime guard: reject webhook startup when secret is missing/empty)
Thanks @yueyueL for reporting.
References
Summary
In Telegram webhook mode, if
channels.telegram.webhookSecretis not set, OpenClaw may accept webhook HTTP requests without verifying Telegram’s secret token header. In deployments where the webhook endpoint is reachable by an attacker, this can allow forged Telegram updates (for example spoofingmessage.from.id).Note: Telegram webhook mode is not enabled by default. It is enabled only when
channels.telegram.webhookUrlis configured.Affected Packages / Versions
openclaw(npm)<= 2026.1.30>= 2026.2.1Impact
If an attacker can reach the webhook endpoint, they may be able to send forged updates that are processed as if they came from Telegram. Depending on enabled commands/tools and configuration, this could lead to unintended bot actions.
Mitigations / Workarounds
channels.telegram.webhookSecretand ensure your reverse proxy forwards theX-Telegram-Bot-Api-Secret-Tokenheader unchanged.Fix Commit(s)
webhookUrlrequireswebhookSecret)Defense-in-depth / supporting fixes:
Thanks @yueyueL for reporting.
References