Headline
GHSA-6gc3-crp7-25w5: gosaml2 vulnerable to Denial Of Service Via Deflate Decompression Bomb
Impact
SAML Service Providers using this library for SAML authentication support are likely susceptible to Denial of Service attacks. A bug in this library enables attackers to craft a deflate
-compressed request which will consume significantly more memory during processing than the size of the original request. This may eventually lead to memory exhaustion and the process being killed.
Mitigation
The maximum compression ratio achievable with deflate
is 1032:1, so by limiting the size of bodies passed to gosaml2, limiting the rate and concurrency of calls, and ensuring that lots of memory is available to the process it may be possible to help Go’s garbage collector "keep up".
Implementors are encouraged not to rely on this.
Patches
This issue is addressed in v0.9.0
- GitHub Advisory Database
- GitHub Reviewed
- CVE-2023-26483
gosaml2 vulnerable to Denial Of Service Via Deflate Decompression Bomb
Moderate severity GitHub Reviewed Published Mar 1, 2023 in russellhaering/gosaml2 • Updated Mar 2, 2023
Package
gomod github.com/russellhaering/gosaml2 (Go)
Affected versions
< 0.9.0
Impact
SAML Service Providers using this library for SAML authentication support are likely susceptible to Denial of Service attacks. A bug in this library enables attackers to craft a deflate-compressed request which will consume significantly more memory during processing than the size of the original request. This may eventually lead to memory exhaustion and the process being killed.
Mitigation
The maximum compression ratio achievable with deflate is 1032:1, so by limiting the size of bodies passed to gosaml2, limiting the rate and concurrency of calls, and ensuring that lots of memory is available to the process it may be possible to help Go’s garbage collector "keep up".
Implementors are encouraged not to rely on this.
Patches
This issue is addressed in v0.9.0
References
- GHSA-6gc3-crp7-25w5
- russellhaering/gosaml2@f9d6604
- https://github.com/russellhaering/gosaml2/releases/tag/v0.9.0
Published to the GitHub Advisory Database
Mar 2, 2023
Related news
gosaml2 is a Pure Go implementation of SAML 2.0. SAML Service Providers using this library for SAML authentication support are likely susceptible to Denial of Service attacks. A bug in this library enables attackers to craft a `deflate`-compressed request which will consume significantly more memory during processing than the size of the original request. This may eventually lead to memory exhaustion and the process being killed. The maximum compression ratio achievable with `deflate` is 1032:1, so by limiting the size of bodies passed to gosaml2, limiting the rate and concurrency of calls, and ensuring that lots of memory is available to the process it _may_ be possible to help Go's garbage collector "keep up". Implementors are encouraged not to rely on this. This issue is fixed in version 0.9.0.