CVE-2024-24825:
DIRAC's TokenManager does not check permissions on cached tokens
9.1
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.3212%
CWE
Published
2/8/2024
Updated
11/21/2024
KEV Status
No
Technology
Python
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
DIRAC | pip | >= 8.0.0, < 8.0.37 | 8.0.37 |
dirac | pip | >= 0, < 8.0.37 | 8.0.37 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from the server-side token caching mechanism. Key evidence includes:
- The patch removed the __tokensCache initialization and all cache interaction logic
- The @gTokensSync decorator (for cache synchronization) was removed
- The getCachedToken check was eliminated from the token retrieval flow
- Documentation changes emphasize removal of server-side caching
- The vulnerability description explicitly states cached tokens were accessible across users
The export_getToken function was vulnerable because it served cached tokens without re-validating permissions, relying solely on the initial token request's authorization check rather than subsequent cache accesses.