Birçok iki faktörlü kimlik doğrulama mekanizması, kullanıcıya tek kullanımlık parola vermek için SMS kullanır. Peki ne kadar güvenli? Parolayı içeren SMS mesajını kesmek zor mu? Mobil ağlar SMS üzerinde herhangi bir şifreleme kullanıyor mu?
İki faktörlü kimlik doğrulaması ve saldırıya uğrama yolları hakkında ilginç bir makale buldum:
GSM , şifreleme yoluyla bir miktar koruma içerir. Cep telefonu ve sağlayıcı (yani sağlayıcının ağının bir parçası olan baz istasyonu), sağlayıcı tarafından bilinen ve kullanıcının SIM kartında depolanan paylaşılan bir sır için birbirlerinin kimliğini doğrular. "A3" ve "A8" kod adları altında bilinen bazı algoritmalar kimlik doğrulamasında yer alır. Daha sonra veriler (radyo bağlantısı üzerinden gönderildiği gibi) "A5" adlı bir algoritma ve A3/A8 ve paylaşılan sırdan türetilen bir anahtarla şifrelenir.
"A5" adı altında gizlenen birkaç gerçek algoritma vardır. Hangi algoritmanın kullanıldığı sağlayıcıya, yerel yönetmeliklere ve GSM konsorsiyumundan ne lisans alabileceğine bağlı olan sağlayıcıya bağlıdır. Ayrıca, aktif bir saldırgan (sahte bir baz istasyonu ile), bir cep telefonunu başka türlü kullanacağından farklı bir varyantı kullanmaya zorlayabilir ve kullanıcıyı bu konuda uyaracak çok fazla telefon (ve daha az kullanıcı) olabilir. kimin umurunda değil).
A5/3, KASUMI olarak da bilinen bir blok şifresidir. İyi bir güvenlik sunar. "Akademik olarak kırılmış" olacak bazı eksiklikleri var, ancak pratikte hiçbiri geçerli değil.
A5/2, bu rapor . Saldırı, bir bilgisayarda bir saatten az süren ve birkaç gigabayt depolama alanı gerektirmeyen (fazla değil) bir ön hesaplamaya tabi olarak saniyenin bir kısmını gerektirir. Teknik detaylar vardır, çünkü GSM protokolünün kendisi karmaşıktır, ancak A5/2 katmanının kırılabilir olduğu varsayılabilir.
A5/1 daha güçlü, ama çok güçlü değil. 64 bit anahtar kullanır, ancak algoritma yapısı zayıftır ve karmaşıklığı 2 olan bir saldırıya izin verir42,7 temel işlemler (12 yıl önce yazdığım bu makale 'e bakınız). Çoğunlukla ön hesaplama yaparak ve algoritma iç durumunun belirli bir yapıya ulaşmasını bekleyerek bu karmaşıklığı aşan çeşitli yayınlar olmuştur; Her ne kadar bu tür yayınlar biraz daha düşük karmaşıklık rakamları (yaklaşık 2)40), binlerce bilinen düz metin biti gerektirmeleri gibi bunların uygulanmasını zorlaştıran dezavantajları vardır. Sadece 64 bilinen düz metin bitiyle, ham karmaşıklık 242,7. On yıl boyunca uygulamayı denemedim, bu yüzden modern bir PC'nin o zaman kullandığım iş istasyonundan daha hızlı çalışacağı düşünülebilir; kabaca bir tahmin olarak, iyice optimize edilmiş koda sahip dört çekirdekli bir PC, bir saat içinde kırabilmelidir.
A5/1'in iç durumunun boyutu ve A5/1'in verileri şifrelemek için uygulanma şekli, aynı zamanda Rainbow tabloları gibi zaman-bellek değişimlerine karşı savunmasız hale getirir. Yine Barkan-Biham-Keller makalesine bakın. Bu, saldırganın bir kez gerçekten büyük bir hesaplama yaptığını ve terabaytlarca veri depoladığını varsayar; daha sonra saldırının çevrimiçi aşaması oldukça hızlı olabilir. Ne kadar depolama alanınız olduğuna, çevrimiçi aşama için ne kadar CPU gücüne ve sonucu ne kadar beklemeye hazır olduğunuza bağlı olarak ayrıntılar çok az. İlk hesaplama aşaması çok büyük ancak teknolojik olarak yapılabilir (bin PC yeterli olmalı); açık bir dağıtılmış bunun için proje vardı ama ne kadar ileri gittiklerini bilmiyorum.
SMS müdahalesi hala belirli bir senaryodur. Tam sesli bir konuşma değildir; değiştirilen gerçek veri miktarı azdır ve bağlantı oldukça kısa bir süre sonra sona erer. Bu, yukarıdaki saldırıların uygulanabilirliğini sınırlayabilir. Ayrıca, saldırı hızlı olmalıdır: saldırının amacı SMS olarak gönderilen gizli şifreyi almaktır, böylece saldırgan bunu kullanabilir önce normal kullanıcı. Saldırgan hızlı olmalı:
İlk kimlik doğrulama faktörünü zaten kırmışsa saldırgan için işler daha kolaydır (bu yüzden iki faktörlü kimlik doğrulamayı kullanıyoruz: çünkü biri yeterli değil). Bu durumda, saldırgan hedef kullanıcı bundan habersiz bir şekilde farkında olmadan kimlik doğrulama isteğini başlatabilir ve bu nedenle SMS alamazsa veya istenmeyen bir mesaj alırsa son olarak herhangi bir alarm vermesi olası değildir SMS (saldırgan saldırıyı gece geç saatlerde yapabilir; saldırgan kullanıcı haksız _ SMS uyandığında, saldırganın yaramazlıklarını gerçekleştirmesi için birkaç saat vererek sabahları bulur).
GSM şifrelemesi yalnızca radyo bağlantısı içindir. Yukarıdakilerin hepsinde, cep telefonu ile telefon arasında gönderilen verileri dinleyen bir saldırgan üzerinde yoğunlaştık. Baz istasyonu. İhtiyaç duyulan radyo ekipmanı hazır gibi görünmektedir ve bu senaryonun pratikte uygulanabilir olduğu kolayca anlaşılmaktadır. Ancak, SMS yalnızca baz istasyonundan cep telefonuna gitmez. Tam yolculuğu sunucu tesislerinde başlar, daha sonra internete ve ardından sağlayıcının ağına, baz istasyonuna ulaşıncaya kadar gider - ve bu noktada hangi A5 varyantı kullanılırsa şifrelenir.
Verilerin sağlayıcının şebekesinde ve SMS gönderilmesini isteyen sağlayıcı ile sunucu arasında nasıl güvenlik sağlandığı GSM spesifikasyonunun kapsamı dışındadır. Yani her şey gidiyor. Her neyse, eğer saldırgan is sağlayıcı ise kaybedersiniz. Kolluk kuvvetleri, insanlara kulak misafiri olmak istediklerinde, bunu her zaman uygun olan sağlayıcılara hoş bir şekilde sorarak yaparlar. Bu nedenle uyuşturucu kartelleri, özellikle Meksika ve Kolombiya'da, kendi hücre ağları oluşturma eğilimindedir.
GSM Şebekesi şifreli . Ama bu tabii ki kurşun geçirmez değil. Ödün verilebilir. Ancak, Rook (ve daha sonra daha ayrıntılı olarak Thomas Pornin) açıklanan saldırılar çok yereldir ve başarmak için önemli çaba gerektirir. İmkansız değil, çok zor. SMS gönderilirken aynı zamanda GSM telefonunun cep telefonunun yakınında kesilmesi gerekir. Şebeke operatörünün birisinin SMS'yi yakalaması ihtimali de vardır. Belli bir kişinin hedeflendiği ve saldırganların çok karmaşık araçlara ve harcayacak çok paraya sahip olduğu ulusal güvenlik/casusluk senaryolarından bahsediyorsak, kesinlikle mümkündür. Hemen hemen aynı şey, donanım jetonu sağlayıcınızdan tohum değerlerini almak için de geçerlidir.
Bu SMS saldırısı başarılı olsa bile, kullanıcı adını ve parolayı da almayı gerektirebilir (SMS'in tek kimlik doğrulama yöntemi değil, 2. bir bileşen olduğu varsayılarak). Kullanıcının sunucuya SMS mesajını başlattığı ve sunucunun istenen sınama/jetonla eşleştiğini kontrol edebileceği başka alternatifler de vardır. Sunucu ayrıca gönderen arayan kimliğini de doğrulayabilir. Elbette bunun da sınırları vardır, ancak doğru yapılması teorik olarak biraz daha fazla koruma sağlayabilir.
Çoğu durumda olduğu gibi, fikir 2 faktörlü kimlik doğrulama sunarak güvenliği arttırmak ve ardından karışıma SMS eklemek standart kullanıcı adı/şifre üzerinde önemli ölçüde iyileştirir. İki ayrı iletişim kanalı (TCP/IP ve GSM) kullanıyor olmanız onu daha güvenli hale getirir. Çok kaba bir kişisel tahmin olarak, SMS belirteçlerinin, donanım tabanlı belirteçlerle, güvenlik açısından az ya da çok olduğunu söyleyebilirim. Elbette tanrı (veya şeytan) ayrıntıda gizlidir.
Şifreleme ile ilgili tartışmalar ilginç olsa da, anahtar soru şu: bence taşıyıcılar güvenliği önemsiyorlar mı? Korkarım cevap "hayır" dır. SMS sistemlerini güvence altına almak için para harcamak için ne teşvik ediyorlar? Onları yönetiyorlar mı, yoksa dışarıdan tedarik ediliyorlar mı? Ne tür güvenlik garantileri sunuyorlar? sunucular?
Ayrıca, bu konuda: 100 milyon müşteriniz varsa ve şifrenizi sıfırlamayı biraz zorlaştırırsanız, yardım masası çağrılarınız çatıdan geçer. Bu yüzden birinin hesabını devralmak çok kolay olabilir.
Ayrıca, Sertifika Yetkilisi çerçevesinde gördüğünüz gibi, SMS altyapı saldırı hedefi olacaktır.
Son zamanlarda bu noktaları bağlantılar ile özetleme hakkında bir blog yazısı yazdım: http://www.wikidsystems.com/WiKIDBlog/fraudsters-defeat-poor-risk-management-not-two-factor-authentication . Risk yönetimi açısından, SMS auth şifrelerden daha iyidir, ancak uzun süre güvenmeyin. Mevcut saldırılar finansal kurumları hedefler, ancak saldırıların maliyeti düştükçe Daha.
Hizmetin XSS, SQL Injection veya yetersiz taşıma katmanı koruması gibi ortak güvenlik açıkları varsa çok faktörlü bir güvenlik sistemi değersizdir. Bu kusurlar, kullandığınız kimlik doğrulama sisteminden bağımsız olarak bir hesap veya bilgi güvenliğinin ihlal edilmesine yol açabilir.
Fiziksel olarak mağdura yakınsanız çok kötü saldırılar gerçekleştirebilirsiniz. Örneğin kurbanınız bir GSM operatörü kullanıyorsa, bir saldırgan GSM'yi gökkuşağı ile kırabilir ve SMS mesajını kesebilir. Kurbanınızın ağını kontrol ederseniz) HTTP giriş portalına saldırmak için SSLStrip veya SSLSniff gibi bir araç kullanın.
"Beni Hatırla" kötülüktür . SMS çok faktörlü kimlik doğrulamanın (Google'ınki gibi) bazı uygulamaları bir cihazı 30 gün boyunca kutsamanıza izin verir. Bu, 30 gün boyunca bir kimlik doğrulama jetonu olarak çalışan kalıcı bir çerezdir. kurban makineniz varsa, bu çerezi alabilir ve kimlik doğrulaması için kullanabilirsiniz. "Beni Hatırla" özelliğini güvenle kullanmanın bir yolu yoktur.
Donanım tabanlı kriptografik belirteçlerden ödün vermek çok daha zordur. Bu gerçekten SMS'den bir adım, çünkü sahip olduğunuz bir jeton ve taviz vermek zor olmalı. Bu, elbette RSA'nın donanım belirteçleri kullanmadığınız sürece çoğunlukla doğrudur.
Diğer cevaplar zaten GSM'nin güvenliğini ve teknik saldırılara karşı kullanılan teknolojileri açıklıyor.
Bununla birlikte, teknik korumaları atlayan başka saldırılar da vardır.
işlem kimlik doğrulama numaralarıyla ilgili Almanca Wikipedia makalesi (genellikle SMS ile gönderilir) bazı saldırıları listeler:
Örneğin, 2015 yılında, dolandırıcıların müşterinin adı altında yeni bir SIM kart aldığı Almanya'da bir dizi hileli para transferi yapıldı. Daha önce benzer saldırılar olmuştu, bu nedenle cep telefonu sağlayıcıları yeni SIM kartlar sipariş eden müşterilerin kimlik doğrulamasını geliştirdi. Bunu önlemek için, telefon sağlayıcısını ararken, dolandırıcıların bir cep telefonu mağazasından çalışanları taklit ettiği ve müşteriler adına SIM'leri etkinleştirdiğini iddia ettiği (Kaynak [Almanca]: Çevrimiçi Bankacılık: Neue Angriffe auf die mTAN ).
Açıkçası, eğer saldırgan onları atlatmayı başarırsa, tüm teknik korumalar işe yaramaz.
Son zamanlarda, birçok cep telefonu uygulaması SMS mesajlarına erişim istiyor ve kullanıcılar uygulamaya ilgi duydukları için buna izin veriyor. Bu, saldırıyı mobil ağlarda SMS ele geçirmekten daha az zorlaştırır.
Bunun sorunuza doğrudan cevap vermediğini biliyorum, ancak umarım bazı endişeleri giderir:
Uygulama düzgün bir şekilde yapılırsa, SMS kesişme konusunda çok endişe etmem. Bunun nedeni bir kerelik SMS doğrulayıcılar gerçek için harika bir fırsat sunuyor. Olası saldırılar için zaman uyarısı: Kimlik doğrulayıcı durdurulursa, hemen farkında olacaksınız ve hızlı bir şekilde tepki verebileceksiniz.
SMS başlatmaya çalıştığınız bir kimlik doğrulama oturumu sırasında durdurulursa, iki şeyden biri gerçekleşmelidir:
Önce başarılı bir şekilde kimlik doğrulaması yaparsanız, saldırganın girişimi başarısız olur. Bunun nedeni, sistemin kimlik doğrulayıcı yeniden kullanım denemelerini reddetmesi gerektiğidir. Bu durumda, saldırı tamamen engellenir.
Saldırgan önce kimlik doğrulamayı başarırsa, kimlik doğrulama girişiminizin kimlik doğrulayıcı yeniden kullanımı nedeniyle başarısız olması gerekir. Sistem ayrıca arızanın sebebinin bu olduğunu size bildirmelidir. Bu noktada, hesabınızı yeniden güvence altına almak için gereken her şeyi yapmanız gerekir. Bunu hızlı bir şekilde yapabilmek, saldırının potansiyel etkisini sınırlayacaktır.
Saldırgan siz olmadığınızda kimlik doğrulaması başlatmaya çalışırsa, istemediğiniz bir SMS) alacağınız konusunda uyarılmalıdır. Birinin gizlice gizleyebileceği birkaç pratik yol vardır. bir SMS telefonunuza gönderilen olmadan da alırsınız ya da yakında başka bir şey farkedersiniz.
Eğer Tarayıcıda Adam saldırısına maruz kalırsanız, bunların hepsi zaten tartışmalı hale gelir.
Ayrıca, çoğu SMS kimlik doğrulama uygulaması = SMS kimlik doğrulayıcısını saniye olarak kullanır ilk kimlik doğrulama faktörünün nasıl tehlikeye atıldığı konusunda gerçekten daha fazla endişelenirim. Çıplak sosyal mühendislik yoluyla yapılmazsa, muhtemelen bazı tarayıcılardan geçiyordu. veya işletim sisteminizde bir tuş kaydedici ile sonuçlanan işletim sisteminden yararlanma.O zaman, tarayıcıdaki Man-in-the-Browser durumundan, kimlik doğrulama yönteminizden bağımsız olarak etkili bir şekilde uzlaşma ile sonuçlanan pek çok adım değiliz.
Kimse bunu anlayabildiğim kadarıyla fark etmemiş gibi görünüyor, ama SMS, verilere erişmenizi bile gerektirmediği gerçeğinden muzdarip) Telefonunuz.
Hatta telekomünikasyon şifreli ve hatta telefonunuz kilitliyse ve şifreli ise, SMS veya çağrı tabanlı kimlik doğrulaması etkinleştirilmişse ve telefonunuz çalındıysa, sağlayıcınızın SIM'inizi devre dışı bırakmasını (ve kolluk kuvvetlerine rapor vermeyi vb.) sağlamak için bir yol bulmayı başarana kadar tamamen tost olan bir saldırganın SIM kartınızı çıkarmak ve metin mesajını almak için başka bir telefona koymak için 1 dakika, bu nedenle sorunu bildirmeyi başardığınızda, neredeyse kesinlikle bir düzine kez denemek ve daha sonra kapatmak için şansınız olacak. veya takip edemeyeceği şekilde geri koyun.
SMS 2FA kullanırken yalnızca şansınız, saldırganın kullanıcı adı bilgisini bilmemesi veya SIM'inizin güvenli bir şekilde kilitlendiğidir başka bir telefonda kullan:
Telefonunuz kaybolduğunda veya çalındığında açıksa, giriş ekranınızda bir yere yazılır veya bir noktada bildirim olarak açılır.
Az önce saldırıya uğradıysanız ve telefonunuzu kapatmayı başardıysanız, kimliğiniz veya kredi kartınız muhtemelen telefonunuzla birlikte gelir; bu durumda kullanıcı adınızın veya e-postanızın Google'da tahmin edilmesi veya bulunması muhtemelen zor değildir. Telefonunuz açıksa, (1) hala bir risktir.
Saldırgan sizi bir şekilde biliyorsa , o zaman neredeyse kesinlikle tost edersiniz.
Diyelim ki, öğle yemeğine çıkarken telefonunuzu masanızda bırakıyorsunuz ve birisi SIM'i takas etmek, SMS'i almak ve geri takas etmek için geliyor. Kimse izlemiyorsa sadece birkaç dakika sürer.
Bu yüzden, bir Stingray benzeri cihazla iletişiminizi kesmeye çalışan veya telefon sağlayıcınızın tesislerine sızarak endişelenmenize rağmen, gerçek şu ki ortadaki bir adam gerçek risk değildir çoğu insan için. Gerçek risk bitiş noktası - yani, siz. Telefonunuzu kaybederseniz, telefon görüşmesi ve SMS tabanlı doğrulama, şifreleriniz veya şifrelemenizin gücü ne olursa olsun tamamen size karşı gelecektir.