Sabit Kodlanmış JWT İmza Anahtarı (ARCH4137)
Anahtar java.security.hardcoded-jwt-signing-key · Önem error · Kategori security · CWE CWE-321
JWT imza anahtarını kaynak koda literal olarak gömmek, kaynak sızdığı an token bütünlüğünü tehlikeye atar; saldırgan geçerli token üretebilir. Anahtarı ortamdan veya bir secret yöneticisinden okuyun.
Hatalı
Bölüm başlığı “Hatalı”String secret = "supersecretkey123"; // kaynakta gömülüString jwt = Jwts.builder().setSubject(user) .signWith(Keys.hmacShaKeyFor(secret.getBytes())).compact();byte[] secret = Base64.getDecoder().decode(System.getenv("JWT_SIGNING_KEY"));String jwt = Jwts.builder().setSubject(user) .signWith(Keys.hmacShaKeyFor(secret)).compact();Düzeltme
Bölüm başlığı “Düzeltme”İmza anahtarını ortam değişkeni veya secret yöneticisinden yükleyin; kaynağa gömmeyin.