Weak JWT validation (ARCH327)
Anahtar dotnet.security.jwt-no-validation · Önem error · Kategori security · CWE CWE-347
JWT doğrulama parametrelerinde issuer, audience veya imza kontrolünü kapatmak, saldırganların sahte ya da değiştirilmiş token üreterek kimlik doğrulamayı atlamasına olanak tanır.
Hatalı
Bölüm başlığı “Hatalı”options.TokenValidationParameters = new TokenValidationParameters{ ValidateIssuer = false, ValidateAudience = false, ValidateIssuerSigningKey = false, SignatureValidator = (token, _) => new JwtSecurityToken(token)};options.TokenValidationParameters = new TokenValidationParameters{ ValidateIssuer = true, ValidIssuer = config["Jwt:Issuer"], ValidateAudience = true, ValidAudience = config["Jwt:Audience"], ValidateIssuerSigningKey = true, IssuerSigningKey = signingKey, ValidateLifetime = true};Düzeltme
Bölüm başlığı “Düzeltme”ValidateIssuer, ValidateAudience, ValidateIssuerSigningKey ve ValidateLifetime değerlerini true yapın ve geçerli issuer/audience ile imza anahtarını yapılandırın.