CVE-2024-35196
Slack integration leaks sensitive information in logs in Sentry
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- High
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
2.0
Slack integration leaks sensitive information in logs in Sentry
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.
- Record
CVE-2024-35196- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-532
- Updated
- 2026-11-02
EUVDEUVD-2024-2012
2.0
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.
- Record
EUVD-2024-2012- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-c2g2-gx4j-rj3j
2.0
Slack integration leaks sensitive information in logs
Impact
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.
Example event:
{
"name": "sentry.integrations.slack",
"level": "info",
"event": "slack.event.message", # This could be any of the `slack.*` events
"request_data": {
# Other keys are omitted for brevity
"token": "<MyDeprecatedSlackVerificationToken>",
}
}
Patches
- 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.
- If you are only using the
slack.signing-secretin your self-hosted configuration, then the legacy verification token is not used to verify the webhook payload. It is ignored.
- If you are only using the
⚠️ Sentry's support for validating Slack requests via the legacy verification token will be deprecated in version 24.7.0.
Workarounds
Option 1
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.
Option 2
The deprecated Slack verification token is leaked in log levels of INFO and ERROR in the Slack integration. 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.
Below you'll find an example of the configuration adjustments necessary to remove the Slack integration logs:
# src/sentry/conf/server.py
...
LOGGING: LoggingConfig = {
...
handlers: {
# the line below already exists in the default configuration
"null": {"class": "logging.NullHandler"},
...
},
"loggers": {
"sentry.integrations.slack": {
"handlers": ["null"], # route logs to null handler
"level": "CRITICAL", # prevent generation of logs a lower levels (ex. ERROR and INFO)
},
...
},
}
References
- Record
GHSA-c2g2-gx4j-rj3j- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-532
- Updated
- 2026-11-02
NVD
2.0
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.
- Record
CVE-2024-35196- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-532
- Updated
- 2026-11-02
OSV
2.0
Slack integration leaks sensitive information in logs in Sentry
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.
- Record
CVE-2024-35196- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-532
- Updated
- 2026-11-02
OSVGHSA-c2g2-gx4j-rj3j
2.0
Slack integration leaks sensitive information in logs
Impact
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.
Example event:
{
"name": "sentry.integrations.slack",
"level": "info",
"event": "slack.event.message", # This could be any of the `slack.*` events
"request_data": {
# Other keys are omitted for brevity
"token": "<MyDeprecatedSlackVerificationToken>",
}
}
Patches
- 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.
- If you are only using the
slack.signing-secretin your self-hosted configuration, then the legacy verification token is not used to verify the webhook payload. It is ignored.
- If you are only using the
⚠️ Sentry's support for validating Slack requests via the legacy verification token will be deprecated in version 24.7.0.
Workarounds
Option 1
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.
Option 2
The deprecated Slack verification token is leaked in log levels of INFO and ERROR in the Slack integration. 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.
Below you'll find an example of the configuration adjustments necessary to remove the Slack integration logs:
# src/sentry/conf/server.py
...
LOGGING: LoggingConfig = {
...
handlers: {
# the line below already exists in the default configuration
"null": {"class": "logging.NullHandler"},
...
},
"loggers": {
"sentry.integrations.slack": {
"handlers": ["null"], # route logs to null handler
"level": "CRITICAL", # prevent generation of logs a lower levels (ex. ERROR and INFO)
},
...
},
}
References
- Record
GHSA-c2g2-gx4j-rj3j- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Weakness
- CWE-532
- Updated
- 2026-11-02
OSVPYSEC-2026-1913
2.0
Slack integration leaks sensitive information in logs
Impact
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.
Example event:
{
"name": "sentry.integrations.slack",
"level": "info",
"event": "slack.event.message", # This could be any of the `slack.*` events
"request_data": {
# Other keys are omitted for brevity
"token": "<MyDeprecatedSlackVerificationToken>",
}
}
Patches
- 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.
- If you are only using the
slack.signing-secretin your self-hosted configuration, then the legacy verification token is not used to verify the webhook payload. It is ignored.
- If you are only using the
⚠️ Sentry's support for validating Slack requests via the legacy verification token will be deprecated in version 24.7.0.
Workarounds
Option 1
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.
Option 2
The deprecated Slack verification token is leaked in log levels of INFO and ERROR in the Slack integration. 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.
Below you'll find an example of the configuration adjustments necessary to remove the Slack integration logs:
# src/sentry/conf/server.py
...
LOGGING: LoggingConfig = {
...
handlers: {
# the line below already exists in the default configuration
"null": {"class": "logging.NullHandler"},
...
},
"loggers": {
"sentry.integrations.slack": {
"handlers": ["null"], # route logs to null handler
"level": "CRITICAL", # prevent generation of logs a lower levels (ex. ERROR and INFO)
},
...
},
}
References
- Record
PYSEC-2026-1913- CVSS 3.1
- 2.0 Low
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
sentryPyPI |
24.3.0 up to 24.5.0 | 24.5.0 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, products, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-35196 is a low vulnerability (CVSS 2.0) in Getsentry Sentry, published May 31, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.57%, the 47th percentile. Fixed in sentry 24.5.0.
References
github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j
github.com/getsentry/sentry/pull/70508
api.slack.com/authentication/verifying-requests-from-slack
develop.sentry.dev/integrations/slack
github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py
nvd.nist.gov/vuln/detail/CVE-2024-35196