cve-2024-35196
Vulnerability from cvelistv5
Published
2024-05-31 17:25
Modified
2024-08-02 03:07
Severity ?
EPSS score ?
Summary
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.**
References
{ "containers": { "adp": [ { "metrics": [ { "other": { "content": { "id": "CVE-2024-35196", "options": [ { "Exploitation": "none" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2024-06-06T18:04:07.244703Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2024-06-06T18:04:18.333Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" }, { "providerMetadata": { "dateUpdated": "2024-08-02T03:07:46.866Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "name": "https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j", "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j" }, { "name": "https://github.com/getsentry/sentry/pull/70508", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/getsentry/sentry/pull/70508" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#deprecation", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#deprecation" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#regenerating", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#regenerating" }, { "name": "https://develop.sentry.dev/integrations/slack", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://develop.sentry.dev/integrations/slack" }, { "name": "https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307" } ], "title": "CVE Program Container" } ], "cna": { "affected": [ { "product": "sentry", "vendor": "getsentry", "versions": [ { "status": "affected", "version": "\u003e= 24.3.0, \u003c 24.5.0" } ] } ], "descriptions": [ { "lang": "en", "value": "Sentry is a developer-first error tracking and performance monitoring platform. Sentry\u0027s 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.*\" \u0026\u0026 name == \"sentry.integrations.slack\" \u0026\u0026 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\u0027s 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.**\n" } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "HIGH", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 2, "baseSeverity": "LOW", "confidentialityImpact": "LOW", "integrityImpact": "NONE", "privilegesRequired": "HIGH", "scope": "UNCHANGED", "userInteraction": "REQUIRED", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-532", "description": "CWE-532: Insertion of Sensitive Information into Log File", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2024-05-31T17:26:07.151Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j" }, { "name": "https://github.com/getsentry/sentry/pull/70508", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/getsentry/sentry/pull/70508" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates", "tags": [ "x_refsource_MISC" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#deprecation", "tags": [ "x_refsource_MISC" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#deprecation" }, { "name": "https://api.slack.com/authentication/verifying-requests-from-slack#regenerating", "tags": [ "x_refsource_MISC" ], "url": "https://api.slack.com/authentication/verifying-requests-from-slack#regenerating" }, { "name": "https://develop.sentry.dev/integrations/slack", "tags": [ "x_refsource_MISC" ], "url": "https://develop.sentry.dev/integrations/slack" }, { "name": "https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307" } ], "source": { "advisory": "GHSA-c2g2-gx4j-rj3j", "discovery": "UNKNOWN" }, "title": "Slack integration leaks sensitive information in logs in Sentry" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2024-35196", "datePublished": "2024-05-31T17:25:55.716Z", "dateReserved": "2024-05-10T14:24:24.342Z", "dateUpdated": "2024-08-02T03:07:46.866Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2024-35196\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2024-05-31T18:15:12.993\",\"lastModified\":\"2024-11-21T09:19:54.650\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"Sentry is a developer-first error tracking and performance monitoring platform. Sentry\u0027s 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.*\\\" \u0026\u0026 name == \\\"sentry.integrations.slack\\\" \u0026\u0026 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\u0027s 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.**\\n\"},{\"lang\":\"es\",\"value\":\"Sentry es una plataforma de seguimiento de errores y supervisi\u00f3n del rendimiento orientada a los desarrolladores. La integraci\u00f3n de Sentry con Slack registra incorrectamente el cuerpo de la solicitud entrante en los registros. Los datos de esta solicitud pueden contener informaci\u00f3n confidencial, incluido el token de verificaci\u00f3n de Slack obsoleto. Con este token de verificaci\u00f3n, es posible que, en configuraciones espec\u00edficas, un atacante pueda falsificar solicitudes y actuar como integraci\u00f3n de Slack. El cuerpo de la solicitud se filtra en las entradas del registro que coinciden con `event == \\\"slack.*\\\" \u0026amp;\u0026amp; name == \\\"sentry.integrations.slack\\\" \u0026amp;\u0026amp; request_data == *`. El token de verificaci\u00f3n de holgura obsoleto se encontrar\u00e1 en la clave `request_data.token`. **Los usuarios de SaaS** no necesitan realizar ninguna acci\u00f3n. **Los usuarios autohospedados** deben actualizar a la versi\u00f3n 24.5.0 o superior, rotar su token de verificaci\u00f3n de Slack y usar el secreto de firma de Slack en lugar del token de verificaci\u00f3n. Para los usuarios que solo usan `slack.signing-secret` en su configuraci\u00f3n autohospedada, el token de verificaci\u00f3n heredado no se usa para verificar la carga \u00fatil del webhook. Se ignora. Los usuarios que no puedan actualizar deben configurar `slack.signing-secret` en lugar de `slack.verification-token`. El secreto de firma es la forma recomendada por Slack de autenticar webhooks. Al tener configurado `slack.singing-secret`, Sentry autohospedado ya no usar\u00e1 el token de verificaci\u00f3n para la autenticaci\u00f3n de los webhooks, independientemente de si `slack.verification-token` est\u00e1 configurado o no. Alternativamente, si la instancia autohospedada no se puede actualizar o reconfigurar para usar `slack.signing-secret`, la configuraci\u00f3n de registro se puede ajustar para no generar registros de la integraci\u00f3n. La configuraci\u00f3n de registro predeterminada se puede encontrar en `src/sentry/conf/server.py`. **Los servicios deben reiniciarse una vez que se guarda el cambio de configuraci\u00f3n.**\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:N\",\"baseScore\":2.0,\"baseSeverity\":\"LOW\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"HIGH\",\"userInteraction\":\"REQUIRED\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"LOW\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":0.5,\"impactScore\":1.4}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-532\"}]}],\"references\":[{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#deprecation\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#regenerating\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://develop.sentry.dev/integrations/slack\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/getsentry/sentry/pull/70508\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j\",\"source\":\"security-advisories@github.com\"},{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#app-management-updates\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#deprecation\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://api.slack.com/authentication/verifying-requests-from-slack#regenerating\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://develop.sentry.dev/integrations/slack\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://github.com/getsentry/sentry/blob/17d2b87e39ccd57e11da4deed62971ff306253d1/src/sentry/conf/server.py#L1307\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://github.com/getsentry/sentry/pull/70508\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://github.com/getsentry/sentry/security/advisories/GHSA-c2g2-gx4j-rj3j\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"}]}}" } }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.