CVE-2024-25619

Mastodon is a free, open-source social network server based on ActivityPub. When an OAuth Application is destroyed, the streaming server wasn't being informed that the Access Tokens had also been destroyed, this could have posed security risks to users by allowing an application to continue listening to streaming after the application had been destroyed. Essentially this comes down to the fact that when Doorkeeper sets up the relationship between Applications and Access Tokens, it uses a `dependent: delete_all` configuration, which means the `after_commit` callback setup on `AccessTokenExtension` didn't actually fire, since `delete_all` doesn't trigger ActiveRecord callbacks. To mitigate, we need to add a `before_destroy` callback to `ApplicationExtension` which announces to streaming that all the Application's Access Tokens are being "killed". Impact should be negligible given the affected application had to be owned by the user. None the less this issue has been addressed in versions 4.2.6, 4.1.14, 4.0.14, and 3.5.18. Users are advised to upgrade. There are no known workaround for this vulnerability.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*
cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*
cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*
cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*

History

18 Dec 2024, 22:22

Type Values Removed Values Added
First Time Joinmastodon
Joinmastodon mastodon
References () https://github.com/mastodon/mastodon/commit/68eaa804c9bafdc5f798e114e9ba00161425dd71 - () https://github.com/mastodon/mastodon/commit/68eaa804c9bafdc5f798e114e9ba00161425dd71 - Patch
References () https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x - () https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x - Vendor Advisory
CPE cpe:2.3:a:joinmastodon:mastodon:*:*:*:*:*:*:*:*

21 Nov 2024, 09:01

Type Values Removed Values Added
References () https://github.com/mastodon/mastodon/commit/68eaa804c9bafdc5f798e114e9ba00161425dd71 - () https://github.com/mastodon/mastodon/commit/68eaa804c9bafdc5f798e114e9ba00161425dd71 -
References () https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x - () https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x -
Summary
  • (es) Mastodon es un servidor de red social gratuito y de código abierto basado en ActivityPub. Cuando se destruye una aplicación OAuth, no se informaba al servidor de transmisión que los tokens de acceso también se habían destruido, lo que podría haber planteado riesgos de seguridad para los usuarios al permitir que una aplicación continuara escuchando la transmisión después de que la aplicación hubiera sido destruida. Esencialmente, esto se reduce al hecho de que cuando Doorkeeper configura la relación entre las aplicaciones y los tokens de acceso, utiliza una configuración `dependent: delete_all`, lo que significa que la configuración de devolución de llamada `after_commit` en `AccessTokenExtension` en realidad no se activó, ya que ` delete_all` no activa devoluciones de llamada de ActiveRecord. Para mitigar, necesitamos agregar una devolución de llamada `before_destroy` a `ApplicationExtension` que anuncia a la transmisión que todos los tokens de acceso de la aplicación están siendo "eliminados". El impacto debería ser insignificante dado que la aplicación afectada tenía que ser propiedad del usuario. No obstante, este problema se ha solucionado en las versiones 4.2.6, 4.1.14, 4.0.14 y 3.5.18. Se recomienda a los usuarios que actualicen. No se conocen workaround para esta vulnerabilidad.

14 Feb 2024, 21:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-02-14 21:15

Updated : 2024-12-18 22:22


NVD link : CVE-2024-25619

Mitre link : CVE-2024-25619

CVE.ORG link : CVE-2024-25619


JSON object : View

Products Affected

joinmastodon

  • mastodon
CWE
CWE-613

Insufficient Session Expiration

CWE-672

Operation on a Resource after Expiration or Release