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.
{
"severity": "MODERATE",
"cwe_ids": [
"CWE-1391",
"CWE-287",
"CWE-326"
],
"nvd_published_at": null,
"github_reviewed_at": "2026-05-14T20:52:55Z",
"github_reviewed": true
}