GHSA-3hgv-jr5j-cg9xhigh7.1
Snipe-IT: Chained Information Disclosure and IDOR Leads to Full EULA File Takeover
Impact
An attacker can completely bypass file-name randomization security and without authorization download confidential, signed EULA files belonging to any other user across the application.
Source excerpt · OSVAffected packages
Start with the recorded fix for your release branch. Check your installed version and test compatibility before upgrading. Fixing this advisory does not rule out other vulnerabilities in the release.
snipe/snipe-it Packagist
| Affected range | Recorded fix |
|---|---|
| Earlier releases before 8.6.3Ecosystem versions | 8.6.3 |
Version evidence: OSV · GHSA-3hgv-jr5j-cg9x
View original version evidence (279 explicit versions)
Original source description
Impact
An attacker can completely bypass file-name randomization security and without authorization download confidential, signed EULA files belonging to any other user across the application.
Steps to Reproduce:
- Log in as a restricted user.
- Send a GET request to /api/v1/users/{target_id}/eulas (where target_id belongs to a restricted/denied user).
- Observe the response leaks the secret EULA filename (e.g., eula-xxx.pdf).
- Attempt to access this file via the main route: GET /stored-eula-file/{filename} (This will correctly return 403 Forbidden).
- Now, access the file via the vulnerable profile route: GET /account/stored-eula-file/{filename}.
- Observe that the server returns a 200 OK and successfully downloads the target user's secret EULA file.
Patches
Fixed in https://github.com/grokability/snipe-it/commit/f15d78621b003be30ac114ba68626683894935ef