Vulnerability · Published May 31, 2024 · Assigned by GitHub_M
CVE-2024-35196Slack integration leaks sensitive information in logs in Sentry
Low 2.0
In plain English
A low-severity sensitive data in logs in sentry from getsentry. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 48% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Sentry is a developer-first error tracking and performance monitoring platform. Sentry's Slack integration incorrectly records the incoming request body in logs. This request data can contain sensitive information, including the deprecated Slack verification token. With this verification token, it is possible under specific configurations, an attacker can forge requests and act as the Slack integration. The request body is leaked in log entries matching `event == "slack.*" && name == "sentry.integrations.slack" && request_data == *`. The deprecated slack verification token, will be found in the `request_data.token` key. **SaaS users** do not need to take any action. **Self-hosted users** should upgrade to version 24.5.0 or higher, rotate their Slack verification token, and use the Slack Signing Secret instead of the verification token. For users only using the `slack.signing-secret` in their self-hosted configuration, the legacy verification token is not used to verify the webhook payload. It is ignored. Users unable to upgrade should either set the `slack.signing-secret` instead of `slack.verification-token`. The signing secret is Slack's recommended way of authenticating webhooks. By having `slack.singing-secret` set, Sentry self-hosted will no longer use the verification token for authentication of the webhooks, regardless of whether `slack.verification-token` is set or not. Alternatively if the self-hosted instance is unable to be upgraded or re-configured to use the `slack.signing-secret`, the logging configuration can be adjusted to not generate logs from the integration. The default logging configuration can be found in `src/sentry/conf/server.py`. **Services should be restarted once the configuration change is saved.**
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | sentry | 24.5.0 | GHSA-c2g2-gx4j-rj3j |
| PyPI | sentry | 24.5.0 | PYSEC-2026-1913 |
Affected products (as reported)
Weakness: CWE-532 · Vector: CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N
References
- https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j x_refsource_CONFIRM
- https://github.com/getsentry/sentry/pull/70508 x_refsource_MISC
- https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates x_refsource_MISC
- https://api.slack.com/authentication/verifying-requests-from-slack#deprecation x_refsource_MISC
- https://api.slack.com/authentication/verifying-requests-from-slack#regenerating x_refsource_MISC
- https://develop.sentry.dev/integrations/slack x_refsource_MISC
- https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307 x_refsource_MISC