slack-go/slack · Security
slack-go `SecretsVerifier` accepts empty signing secret without precondition
- GHSA ID
- GHSA-gxhx-2686-5h9g
- Severity
- medium
- Published
- Updated
- CVSS v4
- 4.8 · CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N/E:U
Description
SecretsVerifier in slack-go/slack before v0.23.1 accepts an empty signing secret without error. If an application is misconfigured (e.g., an unset or empty SLACK_SIGNING_SECRET), NewSecretsVerifier builds an HMAC-SHA256 keyed with an empty string, allowing an unauthenticated attacker to forge a valid X-Slack-Signature and bypass Slack request authentication. Fixed in v0.23.1, which rejects empty secrets with ErrInvalidConfiguration. This is patched in version 0.23.1.
CWEs
- CWE-287 · Improper Authentication
- CWE-326 · Inadequate Encryption Strength
- CWE-1391 · Use of Weak Credentials