CVE-2025-47928

Spotipy is a Python library for the Spotify Web API. As of commit 4f5759dbfb4506c7b6280572a4db1aabc1ac778d, using `pull_request_target` on `.github/workflows/integration_tests.yml` followed by the checking out the head.sha of a forked PR can be exploited by attackers, since untrusted code can be executed having full access to secrets (from the base repo). By exploiting the vulnerability is possible to exfiltrate `GITHUB_TOKEN` and secrets `SPOTIPY_CLIENT_ID`, `SPOTIPY_CLIENT_SECRET`. In particular `GITHUB_TOKEN` which can be used to completely overtake the repo since the token has content write privileges. The `pull_request_target` in GitHub Actions is a major security concern—especially in public repositories—because it executes untrusted code from a PR, but with the context of the base repository, including access to its secrets. Commit 9dfb7177b8d7bb98a5a6014f8e6436812a47576f reverted the change that caused the issue.
Configurations

No configuration.

History

16 May 2025, 14:42

Type Values Removed Values Added
Summary
  • (es) Spotipy es una librería de Python para la API web de Spotify. A partir de el commit 4f5759dbfb4506c7b6280572a4db1aabc1ac778d, el uso de `pull_request_target` en `.github/workflows/integration_tests.yml` seguido de la verificación del archivo head.sha de una solicitud de integración bifurcada puede ser explotado por atacantes, ya que se puede ejecutar código no confiable con acceso completo a los secretos (del repositorio base). Al explotar esta vulnerabilidad, es posible exfiltrar `GITHUB_TOKEN` y los secretos `SPOTIPY_CLIENT_ID` y `SPOTIPY_CLIENT_SECRET`. En particular, `GITHUB_TOKEN` puede usarse para controlar completamente el repositorio, ya que el token tiene permisos de escritura de contenido. El `pull_request_target` en GitHub Actions es un problema de seguridad importante, especialmente en repositorios públicos, ya que ejecuta código no confiable desde una solicitud de solicitud (PR), pero con el contexto del repositorio base, incluido el acceso a sus secretos. El commit 9dfb7177b8d7bb98a5a6014f8e6436812a47576f revirtió el cambio que causó el problema.

15 May 2025, 20:16

Type Values Removed Values Added
New CVE

Information

Published : 2025-05-15 20:16

Updated : 2025-05-16 14:42


NVD link : CVE-2025-47928

Mitre link : CVE-2025-47928

CVE.ORG link : CVE-2025-47928


JSON object : View

Products Affected

No product.

CWE
CWE-488

Exposure of Data Element to Wrong Session