Bilgisayar korsanları parolanızı bir saat içinde nasıl kırabilir?

On paroladan neredeyse altısı, modern bir grafik kartı veya bulut hizmetleri kullanılarak bir saatten kısa bir sürede kırılabilir. Tek maliyet birkaç dolar ve biraz boş zamandır. Bu çalışmamızda bunun nasıl mümkün olduğunu ve bu konuda ne yapılması gerektiğini ele aldık.

Bilgisayar korsanları bir saat içinde parolaların %59'unu kırabiliyor

Her yıl Mayıs ayının ilk Perşembe günü düzenlenen Dünya Parola Günü geçmiş olsa da, bizim parola güvenliğine olan merakımız devam ediyor ve sizin de bu konuya olan ilgi ve merakınızın devam ettiğini umuyoruz. Laboratuvar çalışmaları için oluşturulan yapay “test tüpü” parolaları analiz etmek yerine, gerçek dünyada kalmayı tercih ettik ve dark web’de sızdırılan gerçek parolaları inceledik. Sonuçlar endişe vericiydi: Bu parolaların %59’u bir saatten kısa bir sürede kırılabiliyordu ve bunun için tek gereken modern bir grafik kartı ve biraz bilgi birikimiydi.

Bugünkü yazımızda bilgisayar korsanlarının parolaları nasıl kırdığını ve buna nasıl karşı koyacağımızı açıklıyoruz (Spoiler uyarısı: güvenilir koruma kullanın ve parolalarınızı sızıntılara karşı otomatik olarak kontrol edin).

Parolaları kırmanın sıradan yolu

Öncelikle “parola kırmak” derken neyi kastettiğimizi açıklayalım. Parolayı temsil eden benzersiz bir karakter dizisi olan hash‘i yani karmayı kırmaktan bahsediyoruz. Şirketler genellikle kullanıcı parolalarını üç yoldan biriyle saklar:

  • Düz metin: Bu en basit ve en açık yoldur; eğer bir kullanıcının parolası örneğin qwerty12345 ise, o zaman şirket sunucusunda da qwerty12345 olarak saklanır. Bir veri ihlali meydana gelirse, bilgisayar korsanının oturum açmak için yalnızca ilgili kullanıcı adı ile parolayı girmesi yeterlidir. Bu durum elbette iki faktörlü kimlik doğrulama (2FA) yoksa gerçekleşebilir, ancak o zaman bile siber suçlular bazen tek kullanımlık parolaları ele geçirebilirler.
  • Karmalama: Bu yöntem, her bir parolayı sunucuda depolanan sabit uzunlukta bir karakter dizisi biçiminde benzersiz bir karma değere dönüştürmek için MD5 ve SHA-1 gibi karma algoritmalar kullanır. Kullanıcı parolasını girdiğinde, sistem giriş karakter dizisini bir karmaya dönüştürür ve bunu sunucuda depolananla karşılaştırır. Eşleşiyorlarsa, parola doğrudur. İşte bir örnek: Parolanız daha önce bahsettiğimiz qwerty12345 ise, SHA-1’e “çevrildiğinde” şu şekilde görünür: 4e17a448e043206801b95de317e07c839770c8b8. Bu karmayı elde eden bilgisayar korsanlarının, örneğin gökkuşağı tablolarını kullanarak, qwerty12345 parolasını çözmeleri gerekir (bu işin “şifre kırma” kısmıdır). Kırılan bir parola daha sonra yalnızca ele geçirilen hizmete değil, parolanın yeniden kullanıldığı diğer hesaplara da erişmek için kullanılabilir.
  • Tuzlama: Paket servisten alınan lezzetli bir yemekle ilgisi olmayan bu yöntem, karmalama işleminden önce her parolaya tuz olarak bilinen rastgele bir veri dizisi ekler. Bir tuz statik olabilir veya dinamik olarak oluşturulabilir. Algoritmaya bir parola+tuz dizisi girilir ve bu da farklı bir karma ile sonuçlanır. Böylece, önceden hesaplanmış gökkuşağı tabloları bilgisayar korsanları için işe yaramaz hale gelir. Parolaları saklamak için bu yöntemi kullanmak, kırılmalarını çok daha zor hale getirir.

Çalışmamız için, düz metin olarak sızdırılmış 193 milyon paroladan oluşan bir veri tabanı oluşturduk. Bunları nereden bulduk? Nereye bakacağınızı bilmeniz gerekiyor. Bunları, bu tür “hazinelerin” genellikle serbestçe bulunabildiği dark web’de bulduk. Bu veri tabanını olası sızıntılara karşı kullanıcı parolalarını kontrol etmek için kullandık ancak hiçbir parolayı saklamadığımızdan ve hatta görmediğimizden emin olabilirsiniz. Kaspersky Password Manager uygulamamızdaki parola kasasının iç yapısı ve parolalarınızı bilmeden onları ele geçirilen parolalarla nasıl eşleştirdiğimiz hakkında daha fazla bilgi edinebilirsiniz.

Parola kırmanın maliyeti

Modern grafik işlemciler bir parolanın gücünü analiz etmek için en iyi araçtır. Örneğin, parola kurtarma aracı hashcat ile eşleştirilen RTX 4090, tuzlanmış MD5 karmaları için saniyede 164 milyar karma (GH/s) hızına ulaşıyor.

Hem Latin harflerini (tümü küçük veya tümü büyük) hem de rakamları (konum başına 36 olası karakter) kullanan 8 karakterli bir parola hayal edelim. Olası benzersiz kombinasyonların sayısı 2.8 trilyondur (36 üzeri 8 olarak hesaplanmıştır). Saniyede 6,7 GigaHash (GH/s) işlem gücüne sahip güçlü bir işlemci, böyle bir parolayı yedi dakika içinde deneme yanılma yöntemiyle kırabilir. Ancak yukarıda bahsedilen RTX 4090 bunu sadece 17 saniyede başarıyor.

Bu tür üst düzey bir grafik işlemcinin maliyeti 2.000 ABD dolarının biraz üzerinde olsa da, böyle bir GPU’ya sahip olamayan saldırganlar bile saati sadece birkaç dolara kolayca bilgi işlem gücü kiralayabilir. Peki ya aynı anda bir düzine RTX 4090 kiralarlarsa? Bu, devasa karma veri tabanı sızıntılarını kolaylıkla işlemek için yeterli güç sağlayacaktır.

Parolaların %59’u bir saatten kısa sürede kırılabiliyor

Parola gücünü hem deneme yanılma hem de akıllı tahmin algoritmalarını kullanarak test ettik. Deneme yanılma yönteminde bir eşleşme bulana kadar tüm olası karakter kombinasyonları sırayla yinelenirken, akıllı tahmin algoritmaları, çeşitli karakter kombinasyonlarının sıklık oranlarını hesaplamak ve en yaygın kombinasyonlardan başlayıp en nadir olanlara doğru seçim yapmak için bir parola veri seti kullanılarak eğitilir. Securelist’te bulunan kapsamlı araştırmamızdan, kullanılan algoritmalar hakkında daha fazla bilgi edinebilirsiniz.

Elde edilen sonuçlar sinir bozucuydu: Analiz ettiğimiz 193 milyon gerçek dünya parolasının şaşırtıcı bir şekilde %45’i (yani 87 milyon parola!) akıllı algoritma tarafından bir dakikadan kısa bir sürede, %59’u bir saat içinde, %67’si bir ay içinde kırılabilmiş ve parolaların yalnızca %23’ü – kırılabilmeleri için bir yıldan fazla süre gerektiğinden – gerçekten güçlü olarak kabul edilebildi.

Kırılma süresi Verilen yöntem kullanılarak kırılabilen parolaların yüzdesi
Deneme yanılma Akıllı tahmin
Bir dakikadan az %10 %45
1 dakika ila 1 saat +%10 (%20) +%14 (%59)
1 saat ila 1 gün +%6 (%26) +%8 (%67)
1 günden 1 aya kadar +%9 (%35) +%6 (%73)
1 aydan 1 yıla kadar +%10 (%45) +%4 (%77)
1 yıldan fazla +%55 (%100) +%23 (%100)

Veri tabanındaki tüm parolaları kırmanın, sadece bir tanesini kırmaktan çok daha fazla zaman almadığını belirtmek önemlidir! Her iterasyonda, bir sonraki karakter kombinasyonu için karma hesaplandıktan sonra, saldırgan genel veri tabanında aynı kombinasyonun olup olmadığını kontrol eder. Eğer bulursa, söz konusu parola “kırıldı” olarak işaretlenir ve bundan sonra algoritma diğer parolaları tahmin etmeye devam eder.

Akıllı tahmin algoritmaları neden bu kadar etkili?

İnsanlar öngörülebilirdir. Nadiren gerçekten rastgele parolalar seçeriz ve bunları oluşturma girişimlerimiz makinelerle karşılaştırıldığında sönük kalır. Yaygın ifadelere, tarihlere, isimlere ve kalıplara güveniriz ve bu, tam da akıllı kırma algoritmalarının yararlanmak için tasarlandığı şeydir.

Dahası, insan beyni öyle bir yapıya sahiptir ki, bir grup insandan bir ile yüz arasında bir sayı seçmelerini istediğinizde, çoğu aynı sayıları seçecektir! Veritasium adlı YouTube kanalı, 200.000’den fazla kişiyle yaptığı anket sonucunda en popüler sayıların 7, 37, 42, 69, 73 ve 77 olduğunu tespit etti.

Veritasium anketinin sonuçları. <a href="https://www.youtube.com/watch?v=d6iQrh2TK98&t=253s" target="_blank" rel="nofollow noopener">Kaynak</a>

Veritasium anketinin sonuçları. Kaynak

Rastgele karakter dizileri denerken bile, klavyenin ortasındaki tuşları tercih etme eğilimindeyiz. Analiz ettiğimiz tüm parolaların yaklaşık %57’sinin sözlükte yer alan bir kelime veya sık kullanılan bir sembol kombinasyonu içerdiği tespit edildi. Endişe verici bir şekilde, bu parolaların %51’i bir dakikadan kısa sürede, %67’si bir saatten kısa sürede ve sadece %12’si bir yıldan uzun sürede kırılabilmiştir. Diğer taraftan, en az birkaç parola sadece bir sözlük kelimesinden oluşuyordu ki bunlar da bir dakika içinde kırılabildi. Karşılaştığımız parola kalıpları hakkında daha fazla bilgi için Securelist yazımıza bakın.

Akıllı algoritmalar, sözlük dizileri içeren çoğu parolayı kısa sürede çözer ve hatta karakter değişimlerini bile yakalarlar; yani “password” yerine “pa$$word” veya “admin” yerine “@dmin” yazmak parolayı çok daha güçlü hale getirmeyecektir. Popüler kelimeleri ve sayı dizilerini kullanmak da aynı derecede risklidir. İncelediğimiz şifrelerin %4’ünde aşağıdaki ifadelere rastlanmıştır:

  • 12345
  • 123456
  • love
  • 12345678
  • 123456789
  • admin
  • team
  • qwer
  • 54321
  • password

Öneriler

Uygulamalı çalışmamızdan çıkan sonuçlar:

  • Birçok kullanıcı parolası yeterince güçlü değildir; bunların %59’u bir saat içinde kırılabilir.
  • Parolanızda anlamlı kelimeler, isimler ve standart karakter dizileri kullanmak parola tahmin süresini önemli ölçüde azaltır.
  • En güvenilir olmayan parolalar tamamen rakamlardan veya sadece kelimelerden oluşan parolalardır.

Hesaplarınızı güvende tutmak için aşağıdaki basit önerileri dikkate alın:

İpuçları