CVE-2024-38513: Session Middleware Token Injection Vulnerability
A security vulnerability has been identified in the Fiber session middleware where a user can supply their own sessionid value, leading to the creation of a session with that key. Impact The identified vulnerability is a session middleware issue in GoFiber versions 2 and above. This vulnerability allows users to supply their own sessionid value, resulting in the creation of a session with that key.
Published Jul 1, 2024 · Updated Jul 5, 2024
Affected packages
github.com/gofiber/fiber
- Ecosystem
- Go
- Affected
- <= 2.52.4
- Fixed in
- 2.52.5
- Check
go list -m github.com/gofiber/fiber
github.com/gofiber/fiber/v2
- Ecosystem
- Go
- Affected
- <= 2.52.4
- Fixed in
- 2.52.5
- Check
go list -m github.com/gofiber/fiber/v2
github.com/gofiber/fiber/v2/middleware/session
- Ecosystem
- Go
- Affected
- <= 2.52.4
- Fixed in
- 2.52.5
- Check
go list -m github.com/gofiber/fiber/v2/middleware/session
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
A security vulnerability has been identified in the Fiber session middleware where a user can supply their own session_id value, leading to the creation of a session with that key.
Impact
The identified vulnerability is a session middleware issue in GoFiber versions 2 and above. This vulnerability allows users to supply their own session_id value, resulting in the creation of a session with that key. If a website relies on the mere presence of a session for security purposes, this can lead to significant security risks, including unauthorized access and session fixation attacks. All users utilizing GoFiber's session middleware in the affected versions are impacted.
Patches
The issue has been addressed in the latest patch. Users are strongly encouraged to upgrade to version 2.52.5 or higher to mitigate this vulnerability.
Workarounds
Users who are unable to upgrade immediately can apply the following workarounds to reduce the risk:
- Validate Session IDs: Implement additional validation to ensure session IDs are not supplied by the user and are securely generated by the server.
- Session Management: Regularly rotate session IDs and enforce strict session expiration policies.
References
For more information on session best practices:
Users are encouraged to review these references and take immediate action to secure their applications.
Credited to sixcolors.
References
- https://github.com/gofiber/fiber/security/advisories/GHSA-98j2-3j3p-fw2v
- https://github.com/gofiber/fiber/commit/66a881441b27322a331f1b526cf1eb6b3358a4d8
- https://nvd.nist.gov/vuln/detail/CVE-2024-38513
- https://github.com/gofiber/fiber/commit/7926e5bf4da03e54f62d27d53229d35b264cba8e
- https://github.com/advisories/GHSA-98j2-3j3p-fw2v
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
