The vulnerability is located in the extractIssuerURL function in the pkg/identity/issuerpool.go file. The original implementation used strings.Split to parse a JWT token from an untrusted source. This is dangerous because a malicious actor could craft a token with a very large number of periods. The strings.Split function would then allocate an array with a size proportional to the number of periods, leading to excessive memory consumption and a potential denial-of-service vulnerability. The patch addresses this by first checking the number of periods in the token using strings.Count. If the number of periods is not equal to 2 (which is expected for a standard JWT), it rejects the token. If the check passes, it then uses strings.SplitN to split the token into a maximum of three parts, which prevents the excessive memory allocation from occurring.