Teknoloji

Şifre Kırmada En Önemli Unsurlar: Zaman ve Hız

Bir şifreyi kurtarmaya/kırmaya çalışırken yahut bir şifreleme algoritması kullanacağımız vakit dikkat etmemiz gereken en kıymetli unsurlaradan birisi sürat ve vakittir. Bildiğiniz üzere şifreler kurtarılmaya çalışılırken suratı etkileyen şeylerin en başında, kullanılan şifre algoritması yatar. Ancak varsayım edebileceğiniz üzere tek etmen de bu değildir, suratı etkileyen birtakım öteki ögeler da bulunuyor. İşte bu yazımızda şifre kırmada bilişim konusunda uzman kimselerin görüşlerine yer verip, bu mevzuyu ayrıntılıca irdeleyeceğiz.

Askeri Sınıf Şifreleme Nedir?

Birçok yerde “askeri sınıf şifreleme, şifreleme algoritması, AES-256” üzere birtakım sözcükleri illa ki duymuşsunuzdur. Parola kırmayı etkileyen ögelere göz atmadan evvel bu kavramları bilmemiz gerekiyor çünkü birçok şeyi etkileyen temelde bu kavramlar ve algoritmalar yatmakta.

1973 yılında, ABD Ulusal Standartlar Dairesi tarafından devrine nazaran güçü ve ulusal çapta standart olabilecek bir şifreleme algoritması geliştirilmesi istenmişti. Birçok kuruluşun geliştirdiği algoritmalar ortasından 1974’te IBM’in sunmuş olduğu LUCIFER isimli algoritma kabul edilmiş, NSA tarafından uygulanan birkaç değişiklik sonrası DES ismini alarak 1977’de resmi şifreleme algoritması olarak kabul edilmişti.

Bu sırada 1980’lerdeki bilgisayar ihtilali ve 90’larda internetin küresel çapta bir irtibat aracı olmasıyla dünya yavaş yavaş dijitalleşmeye başladı. Alışveriş platformları, finans kuruluşları ve devlet kurumlarının birçoğunun sanal ortamda da faaliyetlerini yürütmek hedefiyle sıkı bir çalışma yürüttüğü bu yıllarda, büyük boyutlu dataların şifrelenmesi hedefiyle bir algoritma gerekiyordu. Bunun için 1997 yılında daha evvel ulusal şifreleme algoritması olan DES (Data Encryption Standart- Data Şifreleme Standardı) kabul edildi.

AES’nin Ortaya Çıkışı

Daha sonra ilerleyen yıllarda DES’in de birtakım zayıflıkları ve çağdaş bilgisayarlar yardımıyla yapılan kaba kuvvet taarruzlarına dayanmadığı görülünce, 2001 yılında yerine AES (Advanced Encryption Standard – Gelişmiş Şifreleme Standardı) ismi verilen bir şifreleme standardı ABD hükümeti tarafından getirildi. Kriptografik olarak 4 adet süreç bulunduran AES algoritmasının temelinde değiştirme, karıştırma ve anahtar yatar.

İlerleyen vakitlerde AES’in farklı tipleri olan 128 ve 192 inançlı olmasına karşın kâfi olmadığı düşünülerek AES-256 algoritması geliştirildi. Böylelikle kritik kurumlarda ve datalarda kullanılmak üzere askeri sınıf şifreleme algoritması dediğimiz 256-bit anahtar uzunluğundaki AES geliştirildi. Bu algoritmanın kırılması için 2^200 süreç gerektiği, bu kadar sürecin de cihanın yaşından daha uzun bir müddette fakat yapılabileceği düşünülüyor. Bu nedenle genel itibariyle taarruzlar algoritmanın kendisine değil, parolaya deneme yanılma biçiminde yapılır. Günümüzdeki birçok tanınan iletileşme yazılımı bu standartları bünyesine alan uçtan uca şifreleme dayanağıyla birlikte geliyor.

Şifreli Evraklar ve Kurtarma Vaktini Etkileyen Ögeler

Birden fazla vakit bir evrakın şifresini kırmak için genel itibariyle belgenin tamamına ulaşmanız gerekir. Birçok durumda şifrelemeye ilişkin meta dataları çoğunlukla belgelerin header bilgisinde depolanır. Bu meta bilgileri şifre hash’i, salt bedeli ve bazenleri de birtakım şifreleme parametrelerini içerebilir.

Bundan yola çıkarak birçok evrak biçimi ve evrakta şifrelemeye ilişkin meta datalarını header kısmından ayıklayabilirsiniz. Bu meta bilgileri çok daha fazla bilgi içermesine karşın basitçe şifre karmaları olarak da isimlendirilir. Şifreyi kırmak için muhtaçlığımız olanlar bu kadardır.


Evrakın en başındaki 4 sihirli byte, şifrelenmiş olduğunu bize göstermekte. Kaynak: MySQL High Availability

İstisna olarak RAR3 ve RAR4 formatlarına sahip arşivlerde bahsettiğimiz üzere bir durum maalesef kelam konusu değil. Şifreyi kırabilmemiz için belgenin header kısmındaki karma yetmiyor, arşivin tamamı gerekiyor. Birtakım belgelerde ise şifrenin doğrulanması hedefiyle bir diğer bilgi bloğunun da şifresinin çözülmesi gerekir. Hem şifre algoritması hem de hash mantığı birbiriyle birebir olsa bile farklı evrak cinslerinin parola doğrulama hedefiyle kullandıkları yollar farklı olabileceğinden kırma süreci zannedildiğinden daha çok vakit alıyor.

Bir şifrenin kurtarılma vaktine tesir eden şey elbette sadece şifrenin doğrulama usulü değildir çünkü kimi biçimlerde saniyede birkaç milyon adet şifre kombinasyonuna müsaade edilir. Bazen de tek basamaklı parola denemesi kıymeti elde edebileceğiniz durumlar kelam konusu.

Formatlara Nazaran Kırma Vakti Neden Değişiyor?

Elcomsoft’un bir makalesinde belirtildiği gibi  çabucak hemen herkes şifreleme hedefiyle AES-256 kullanıyor lakin birtakım evrak formatlarının parolasının kırılması daha yavaş olabiliyor. Pekala bunun nedeni nedir? Epey kolay aslında. Hash Nedir yazımızda da ayrıntılıca anlattığımız üzere karmaların yinelenmesinden kaynaklanıyor.

Vakit ve Parola Güvenliği Alakası

Teknik olarak bir parolanın kırılması ne kadar uzun sürüyorsa parola o kadar inançlıdır. Teorik olarak data güvenliğine dair rastgele bir hudut var mıdır pekala?

Birçok yazılım geliştiricisi ve belge formatı, kullanıcının şifrelenmiş evrakının açılıp aygıt kilidinin kaldırılmasını yaklaşık 0.3 saniye olarak ayarlar çünkü kullanıcıların beklentisi ortalama bu kadar vakit alması tarafındadır. Bu vakti genel itibariyle çağdaş bilgisayarlara nazaran ölçerler. Yeni ve daha süratli bilgisayarlar tıpkı belgeyi daha süratli bir formda açabileceklerdir.

Birçok üretici parola doğrulama maksadıyla işlemcilerin tek çekirdeğini ziyadesiyle verimsiz bir biçimde kullanır. Elcomsoft yaptığı çalışmayla işlemcinin tüm çekirdeklerini kullandı ve kodu optimize ettiğinde taarruz suratının, olağan kilit açma suratından 10 ila 25, GPU kullanılması durumunda ise 20 ila 250 faktör daha arttırdığını söylüyor.

Bunun önüne geçebilmek için üreticiler birtakım tedbirler alıyor. Örneğin Apple birbirinden farklı hash yineleme sayıları kullanıyor. VeraCrypt üzere yazılımlar kullanıcıların yineleme sayılarını kendilerinin ayarlamalarına müsaade ederken, kimi parola yöneticileri de bunu otomatik olarak yapıyor.

Ne Kadar Deneme ve Yanılma Yapabilirim?

Evrak şifrelerini kırmak için sınırsız sayıda parola denemesi yapabiliyorken, kimi üreticilerin ve geliştiricilerin ayarlamış olduğu parola sisteminde muhakkak bir sayıda deneme yaptıktan sonra başarılı olamazsanız bir mühlet sonra erişiminiz engellenir. Örneğin bir iPhone yahut çevrim içi bir serviste parola denemesi yapıyorsanız büyük ihtimalle çok kısa bir müddet içerisinde engellenirsiniz.

Bilgi Şifreleme Algoritmalarında 2FA Mevcut Mu?

İki adımlı doğrulama, şifrelemede genel itibariyle uzak bir hizmet tarafından sağlandığında kullanılır. Bunun dışında DRM muhafazalı kitaplar, müzikler ve görüntülerde da kopyadan korunmak maksadıyla kullanılabiliyor. Genel itibariyle olağan dataları şifreleme için ise 2FA kullanan bir yazılım neredeyse hiç görmedik. Teoride yapması mümkün ve fonksiyonel olsa da herkesin yapabileceği ve inançla yönetebileceği bir şey değil. 2FA kullanan bir servise örnek verecek olursak şifreleme olmayan OneDrive Şahsî Kasa hizmeti bu tarifi karşılar diye düşünüyoruz.

Kimi Algoritmalar Başkalarından Daha Süratli Kırılır

Yazımızın başından beri bahsettiğimiz üzere kimi evrak biçimlerinde kullanılan algoritmalar başkalarından daha süratli yahut yavaş kırılabilmekte. Bunun da asıl nedeni tekrar bahsettiğimiz üzere hash yineleme sayısındaki farklılık.

Örneğin Elcomsoft’un bir makalesine göz atabiliriz bu bahis hakkında. Sanal makinelerin şifrelerinin kırılma suratı ve güvenliğinden bahsedildiği bu makalede kimileri çok süratli kırılabilirken, hatta milyon deneme suratına ulaşmışken, kimilerinde ise binli deneme sayılarına bile güç ulaşılmakta.

Yeniden de günümüz yazılımlarındaki güvenlik hiç de küçümsenecek düzeyde değil, birçok doküman tipi hayli güçlü formda şifrelenebiliyor.

Deneme Suratını Anlamak

İçinizden “saniyede 10 milyon deneme âlâ, 10 parola denemek kötü” diye düşünebilirsiniz. Aslında o denli değil. Kıymetli olan belli bir müddet içerisinde ne kadar parolayı kırabildiğiniz. Bir gün, bir hafta, bir ay?

Karşılık tahminen hoşunuza gitmeyecek fakat bunlar değil. Değerli olan belirleyici faktör hakikat parolayı bulmadan evvel denemeniz gereken kombinasyonu ve şifre sayısını bulup ona nazaran başlamak. Bu nedenle sürat duruma nazaran değişkendir, sabırlı olmalısınız.

Hashlemede Salt Kullanımı

Daha evvel hash konusunu ayrıntılıca konuşmuştuk. Birisi çıkıp yaygın tüm parolaları ilgili hash bedellerine karşı deneyerek şifreleri kolay kolay kırabilseydi ne olurdu? Ya da şu ana kadar sızdırılmış milyonlarca, hatta milyarlarca şifreyi bu hash kıymetlerinde deneseydi?

İşte bunun önüne geçmek hedefiyle salt ismi verilen, hash süreci öncesi parolalara eklenen eşsiz bir paha daha bulunur. Bunun sonucunda elde edilen hash pahası parolanın kendisi değil, parolayla bir arada salt’ın hash kıymetidir. Salt kullanılmış bir hash pahasının doğrulanabilmesi için kendisine karşılık gelen salt pahasına muhtaçlık duyulur. Salt genel itibariyle sır değildir, hash ile bir arada saklanır. Şayet salt, yani tuz farklı bir veritabanında yahut fizikî sunucuda bulunuyorsa bu salt pahasına de pepper, yani biber denilir. Büyük şirketler genel itibariyle parolalarda salt kullanır.

Saf Kaba Kuvvet Saldırısı ve Akıllı Hücumlar

Birçok yerde bahsedilen kırma suratı sadece saf kaba kuvvet hücumları için geçerlidir. Saldırganlar için yeni bir taarruzda kullanmak üzere yeni şifreler ve yeni karakterleri söz listesine eklemek epeyce kolay. Ayrıyeten parola denemeleri paralel bilgi süreç manasında olağan CPU’lara nazaran çok daha güçlü GPU’lar yardımıyla yapıldığında mühlet değerli ölçüde kısalır.

Tekrar de saf kaba kuvvet hücumlarının hala birtakım durumlar kelam konusu olduğunda tesirli olduğunu söyleyebiliriz. Orta uzunluktaki parolaları klasik listeler ve saf deneme yanılma akınıyla kurtarabilirsiniz.

Birden fazla şifreyi (basit sözlüklere dayanan ve birkaç sözün birleşmesiyle oluşanlar gibi) birtakım sözlükler ve akıllı brute-force dediğimiz prosedürlerle süratli bir formda kırmak mümkündür. Bu biçim akıllı taarruzlar yavaş olabilir lakin sonucu olağan kaba kuvvet hücumlarına nazaran daha çabuk teslim eder.

iPhone Yedekleme Şifrelerini Elde Etmek

Kaba kuvvet taarruzları bakımından iPhone yedekleri epey yüksek müdafaaya sahip. Apple, iPhone yedeklerine karşı yapılacak deneme yanılma ataklarına karşı yavaşlatmak maksadıyla birçok önlem almıştır. Donanımla hızlandırılmış bir kaba kuvvet taarruzunda bile ortalama saniyede 10 parola lakin denenebiliyor. Şifrelenen iTunes yedeklemesine tek çekirdek ve CPU kullanan bir metotla kaba kuvvet saldırısı yapıldığında tek bir parola için 15 saniye gerekiyor. Lakin uygulamanın kendisi ise, yanlışsız parola girildiğinde çok süratli bir halde yedekleri açabiliyor.

Sonuç

Bir parolayı kurtarmanız gerektiğinde stratejinizi uygun halde belirlemeli, amaç evrakın kullandığı şifreleme algoritmasına nazaran hareket etmelisiniz. Kelam konusu kaba kuvvet taarruzları yahut direkt algoritmanın kendisine yapılan ataklar olduğunda, elinizdeki donanımları kullanma ve çeşitli parola hallerini deneme yeteneğinizi kullanmalısınız. Şayet saldırdığınız şey algoritmanın kendisi ise, algoritmayı âlâ tanımalı ve bu türlü bir şeyin mümkün olup olmayacağını anlamaya çalışmalısınız.

Bu yazıda parola kurtarmayı ve kırmayı etkileyen kıymetli ögelerden bahsettik. Sizlerin de yazıya eklemek ve düzeltmek istediğiniz şeyler varsa yorum yapabilir, sorularınız ve aklınıza takılanlar için Technopat Sosyal’de husus açarak üyelerimizle fikir alışverişi yapabilirsiniz.

Kaynak: Technopat

Başa dön tuşu