İki faktörlü kimlik doğrulama nedir, uygulamanız neden buna ihtiyaç duyar?
Şifreler sürekli ele geçirilir ve bunun nedeni nadiren kısa olmalarıdır. Asıl sorun, insanların aynı şifreyi onlarca sitede kullanması, inandırıcı bir sahte giriş sayfasıyla oltalanması ya da şifrenin hiç ilgisi olmayan başka bir hizmetteki veri ihlaliyle sızmasıdır. İki faktörlü kimlik doğrulama tam da çalınmış bir şifreyi tek başına saldırgan için işe yaramaz hâle getirmek için vardır.
Temel fikir
İki faktörlü kimlik doğrulama (2FA), kimliğinizi tek bir kanıt yerine iki farklı türde kanıtla doğrulamanızı ister. Güvenlikte genellikle üç olası faktörden söz edilir: bildiğiniz bir şey (şifre), sahip olduğunuz bir şey (telefon, donanım anahtarı) ve olduğunuz bir şey (parmak izi, yüzünüz). Şifre tek başına yalnızca bir faktördür. 2FA, farklı bir kategoriden ikinci bir faktör ekler; böylece şifrenizi çalan saldırgan yine de içeri giremez, çünkü telefonunuz onda değildir.
Yaygın 2FA yöntemleri ve karşılaştırması
- SMS kodları. Telefonunuza kısa mesajla gönderilen tek kullanımlık bir kod. Kullanımı kolaydır ve hiç yoktan çok daha iyidir; ancak yaygın seçenekler arasında en zayıfıdır. Saldırganın operatörünüzü kandırıp telefon numaranızı kendi kontrolündeki bir cihaza taşıttığı SIM kart değiştirme (SIM swapping) saldırılarına açıktır.
- Kimlik doğrulama uygulamaları. Hesabınızla uygulama arasında bir kez kurulan ortak bir gizli anahtara dayanarak her 30 saniyede bir yeni, altı haneli bir kod üreten uygulamalar. Arada kandırılabilecek bir telefon operatörü olmadığı için SMS'ten belirgin biçimde daha güvenlidir ve bugün en sık önerilen temel seçenektir.
- Anlık bildirimler. Uygulama, yazılacak bir kod yerine “Bu siz miydiniz?” diye soran bir onay isteği gönderir. Pratiktir, ancak “onay yorgunluğu” (prompt fatigue) adı verilen bilinen bir riski beraberinde getirir: Saldırganlar, yorgun bir kullanıcının sonunda birini refleksle onaylayacağını umarak art arda giriş denemeleri yapar.
- Donanım güvenlik anahtarları. Cihaza taktığınız ya da dokundurduğunuz fiziksel bir aygıt. Yaygın olarak erişilebilen en güçlü seçenektir ve oltalamaya karşı fiilen dayanıklıdır; çünkü anahtar, yanıt vermeden önce gerçek web sitesiyle iletişim kurduğunu doğrular. Sahte bir giriş sayfası bu alışverişi tamamlayamaz.
2FA sizi gerçekte neye karşı korur?
2FA'nın tasarlandığı senaryo gerçek hayatta son derece yaygındır: Bir kullanıcının şifresi, ürününüzle hiç ilgisi olmayan bir yerden sızar (başka bir şirketteki veri ihlali, bir oltalama e-postası, bilgisayarındaki zararlı yazılım) ve aynı şifre sizin platformunuzda da kullanılıyordur. 2FA yoksa saldırgan şifreyi denediği anda hesap ele geçirilir. 2FA devredeyse çalınan şifre tek başına yetmez ve ele geçirme girişimi başarısız olur.
Kullanıcı deneyimini bozmadan uygulamak
2FA'ya en sık yöneltilen itiraz, sürtünme yaratmasıdır; kötü uygulandığında bu haklı bir endişedir. Kullanılabilirliği koruyan birkaç pratik yaklaşım:
- Güvenilir cihazları hatırlayın. Kullanıcı bir cihazı doğruladıktan sonra, aynı cihazdan yapılan her girişte ikinci faktör istemeyin; yalnızca yeni bir cihaz ya da konum gibi bir değişiklik olduğunda isteyin.
- Hassas işlemlerde zorunlu, diğer durumlarda isteğe bağlı (ama güçlü biçimde teşvik edilen) yapın. Bazı ürünler 2FA'yı yalnızca yönetici hesaplarında ya da şifre veya ödeme bilgisi değiştirme gibi yüksek riskli işlemlerde zorunlu tutar, diğer herkes için ise isteğe bağlı olarak sunar. Bu, riski daha düşük tüketici ürünleri için makul bir orta yoldur.
- Gerçek bir yedek yol sunun. Kurulum sırasında üretilen yedek kodlar sayesinde telefonunu kaybeden kullanıcı kendi hesabının dışında kalıcı olarak kilitli kalmaz. 2FA erişimini kaybedip hiçbir kurtarma yolu bulamamak ciddi bir destek yüküdür; kurtarma sürecinin saldırganın kötüye kullanabileceği kadar kolay olması ise ayrı ve gerçek bir risktir.
Buna gerçekten kimin ihtiyacı var?
Uygulamanız, kullanıcının kaybetmekten rahatsız olacağı herhangi bir şeyi saklıyorsa (kişisel veriler, ödeme bilgileri, iş kayıtları) 2FA artık “olsa iyi olur” denecek bir özellik değildir; neredeyse temel bir beklentidir. Kurumsal müşteriler de, özellikle SOC 2 gibi uyumluluk gereksinimleri gündeme geldiğinde, sözleşme imzalamadan önce bunu giderek daha sık doğrudan soruyor.
2FA'yı doğru uygulamak (kullanıcılarınıza uygun faktör seçenekleri, akıllıca varsayılanlar ve kullanışlı olduğu hâlde kendisi bir güvenlik açığına dönüşmeyen bir kurtarma yolu) Burncode'un kapsamlı uygulama güvenliği denetimlerinin bir parçası olarak yürüttüğü kimlik doğrulama sıkılaştırma çalışmalarının standart bir adımıdır.