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
Credit
This issue was discovered and reported by Norbert Szetei (Doyensec)
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
Credit
This issue was discovered and reported by Norbert Szetei (Doyensec)