Kimlik doğrulamayı oldukça derinlemesine işleyen bir düğüm kütüphanesinin yazarıyım , ekspres fırtına , bu yüzden burada bazı bilgilerle karşılaşacağım.
Öncelikle, JWTS tipik olan DEĞİL şifreli. JWT'leri şifrelemenin bir yolu olsa da (bkz: JWE'ler ), uygulamada birçok nedenden dolayı çok yaygın değildir.
Şimdi, herhangi bir kimlik doğrulama biçimi (JWT kullanarak veya kullanmadan), MitM saldırılarına (ortadaki adam) saldırılara tabidir. Bu saldırılar, bir saldırgan siz internet üzerinden istekte bulunurken AĞ trafiğinizi GÖSTERABİLİR. İSS'nizin görebileceği bu, NSA vb.
SSL aşağıdakileri önlemeye yardımcı olur: NETWORK trafiğinizi bilgisayarınızdan şifreleyerek -> kimlik doğrulaması yaparken bir sunucu, ağ trafiğinizi izleyen bir üçüncü taraf, bir şekilde sunucunun özel SSL anahtarının bir kopyasını almak için (olası değil). SSL'nin tüm kimlik doğrulama formları için ZORUNLU olmasının nedeni budur.
En Ancak, birinin SSL istifade edebilir ve görmek mümkün olduğu, diyelim sizin jetonu: Sorunuzun cevabı olmasıdır EVET , saldırganın olacak sunucunuza sizi ve marka istekleri taklit o belirteç kullanabilecektir.
Şimdi protokoller devreye giriyor.
JWT'ler bir kimlik doğrulama belirteci için yalnızca bir standarttır. Hemen hemen her şey için kullanılabilirler. JWT'lerin biraz havalı olmasının nedeni, onlara fazladan bilgi ekleyebilmeniz ve kimsenin onunla uğraşmadığını (imzalama) doğrulayabilmenizdir.
ANCAK, JWT'lerin kendilerinin 'güvenlik' ile hiçbir ilgisi yoktur. Tüm niyet ve amaçlar için, JWT'ler aşağı yukarı API anahtarlarıyla aynı şeydir: bir yerlerde bazı sunuculara kimlik doğrulaması yapmak için kullandığınız rastgele dizeler.
Sorunuzu daha ilginç kılan şey kullanılan protokoldür (büyük olasılıkla OAuth2).
OAuth2'nin çalışma şekli, istemcilere SADECE KISA SÜRELİ bir dönem için kimlik doğrulaması için GEÇİCİ jetonlar (JWT'ler gibi!) Vermek üzere tasarlanmış olmasıdır!
Fikir şu ki, jetonunuz çalınırsa, saldırgan sadece kısa bir süre için kullanabilir.
OAuth2 ile, kullanıcı adınızı / şifrenizi VEYA API kimlik bilgilerinizi vererek ve ardından karşılığında bir jeton alarak kendinizi sık sık sunucu ile yeniden doğrulamanız gerekir.
Bu süreç zaman zaman gerçekleştiği için, jetonlarınız sık sık değişecek, bu da saldırganların büyük bir sorun yaşamadan sizi sürekli taklit etmelerini zorlaştıracaktır.
Umarım bu yardımcı olur ^^