Description
Spotipy is a lightweight Python library for the Spotify Web API. The `CacheHandler` class creates a cache file to store the auth token. Prior to version 2.25.1, the file created has `rw-r--r--` (644) permissions by default, when it could be locked down to `rw-------` (600) permissions. This leads to overly broad exposure of the spotify auth token. If this token can be read by an attacker (another user on the machine, or a process running as another user), it can be used to perform administrative actions on the Spotify account, depending on the scope granted to the token. Version 2.25.1 tightens the cache file permissions.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
spotipy-dev spotipy
< 2.25.1affected
References
- https://github.com/spotipy-dev/spotipy/security/advisories/GHSA-pwhh-q4h6-w599 ↗
- https://github.com/spotipy-dev/spotipy/commit/1ca453f6ef87a2a9e9876f52b6cb38d13532ccf2 ↗
- https://github.com/spotipy-dev/spotipy/blob/master/spotipy/cache_handler.py#L93-L98 ↗
- https://github.com/spotipy-dev/spotipy/releases/tag/2.25.1 ↗