8 dakika, 0 saniye

Facebook’un sıkıntılarının en kötüsünü geride bıraktığını düşündüğünüzde, sosyal medya devi Cuma günü, 90 milyon kullanıcıyı etkileyebilecek yeni bir güvenlik olayının yaşandığını açıkladı. 

Ancak, kötü niyetli aktörlerin Facebook’un meşru özelliklerini kullandığı önceki skandalların aksine kötü uçları için uygulama ve API’lar, bu, bilgisayar korsanlarının kullanıcı hesaplarını ele geçirmesine izin veren bir güvenlik açığını içeren bir saldırıydı.

Facebook, kullanıcı hesaplarını istenmeyen taraflara açıklayan ilk şirket olmaktan çok uzaktır. Geçtiğimiz yıl, kredi derecelendirme kuruluşu Equifax’ın 143 milyon müşterinin hassas mali bilgilerini büyük çaplı veri ihlalinde siber suçlulara nasıl verdiğini gördük.

Bununla birlikte, her güvenlik olayı, geçmiş hatalarımızdan ders çıkarmak ve geleceğe yönelik çözümler hakkında düşünmek için de bir fırsattır.

Facebook bu en son güvenlik fiyaskosunun merkezinde yer alsa da olay, kullanıcılara hesaplarında oturum açtıktan sonra sınırsız erişim sağlayan mevcut kullanıcı kimlik doğrulama yöntemlerimizin genel güvenlik açıkları hakkında bize çok şey anlatıyor. Bir çare bulmazsak, her gün kullandığımız diğer çevrimiçi hizmetlerde benzer olaylar olabilir.

Facebook güvenlik açığı nasıl çalışır?

Ayrıntılara fazla bir şey katmadan, hackerların kullanıcı hesaplarına erişmesine izin veren mekanizmayı hızla gözden geçireceğiz.

Facebook, diğer kullanıcıların profilinizi ziyaret ettiklerinde görebilecekleri bilgileri ve yayınları doğrulayarak gizlilik ayarlarınızı kontrol etmenizi sağlayan bir özellik olan “Farklı görünüm” bölümünde sorunu keşfetti.

Hack, bir “erişim belirteci” oluşturan ve “görünümü olarak” özelliğini kullandığınızda döndürdüğü HTML yanıtına belirteci yerleştiren üç ayrı kusuru içeriyordu.

Erişim belirteçleri, kimlik bilgilerinizle bir uygulamada oturum açtığınızda oluşturulan veri parçalarıdır. Simge, siz oturumu kapatana ve uygulama sunucusunun kimliğinizi doğrulamasına izin verene kadar geçerli kalır.

Facebook’un hatası ile ilgili sorun, profilinizi görmeyi seçtiğiniz kullanıcı için bir belirteç oluşturmasıydı. Bu, herkesin başka bir kullanıcı için erişim belirteci oluşturmak ve hesabına erişim kazanmak için bu özelliği kullanabileceği anlamına gelir.

Bu güvenlik açığı bir yıldan fazla süredir mevcuttu ve Facebook, şüpheli bir etkinlik akışı tespit ettikten sonra, muhtemelen Facebook’un API’lerini erişim belirteçlerini oluşturma işlemini otomatik hale getirmek için kullanan bir uygulamadan kaynaklanıyordu.

Tek oturum açma, saldırıyı daha da kritik hale getirir

Facebook, Google gibi hizmetler için ve Twitter, erişim belirteçleri çalmak daha da sorunlu hale geliyor. Bazı hizmetler kullanıcıların Facebook hesaplarıyla uygulamalarına giriş yapabilmelerini sağlar. Buna “tek oturum açma” denir ve kullanıcı deneyimini basitleştirmesi amaçlanır.

Tek oturum açma işleminin birkaç farklı avantajı vardır. Çevrimiçi hesaplar için kullanıcıları başka bir şifrenin yönetme ağrısından kurtarır. Ayrıca, geliştiricilerin, kullanıcıları milyarlarca kullanıcının güvenliğini korumaya yönelik bir geçmişe sahip bir şirkete doğrulamak için kritik görevi ertelemelerini sağlar. 

Bununla birlikte, tek oturum açmanın olumsuz tarafı, güvenilir üçüncü tarafın (bu durumda Facebook) bir veri ihlali veya bir saldırıya uğraması durumunda, saldırganların tüm bu bağlantılı hesaplara erişim kazanacağıdır.

Facebook hack’in açıklanmasının ardından şirket, bilgisayar korsanlarının Facebook’un sahip olduğu Instagram hesaplarının yanı sıra kurbanların Facebook hesaplarına bağlı olan diğer hizmetlere de erişebildiğini itiraf etti. 

Bunun nedeni, kullanıcıların Facebook hesaplarına giriş yaptıkları zaman, hizmetin oluşturduğu aynı belirteci, tüm bu diğer uygulamalara erişmelerini sağlayacaktır.

Facebook Hack, şifre tabanlı kimlik doğrulama hatalarını anlatıyor

Facebook’un yeni saldırısı sadece kimlik doğrulama sistemlerimizin sahip olduğu temel kusurları vurguluyor. Uzun yıllar boyunca parola kimlik doğrulamasının kusurları ve tehditleri hakkında konuşmuş olmasına rağmen, hala kullanıcıları tanımlamanın ana yöntemi olmaya devam ediyor.

İçsel kusurlarının yanı sıra, parolalar da çok pratik değildir ve girmek için 15 ile 45 saniye arasında herhangi bir yere gidebilir (çok zayıf bir parola seçmediğiniz sürece , başka bir Pandora’nın güvenlik tehditleri kutusunu açar).

İki faktörlü kimlik doğrulaması eklediğinizde (hesabınızın güvenliği konusunda ciddi bir zorunluluk varsa), oturum açma süresi daha da uzar.

Geliştiriciler her zaman güvenlik ve rahatlık arasında bir denge kurmaya çalışıyorlar ve rahatsız edici kullanıcıları önlemek için genellikle kolaylık tarafında hata yapıyorlar.

Uzun vadeli güvenlik belirtecinin arkasındaki tüm fikir budur. Kullanıcılar, uygulamalarına erişmek istediklerinde şifrelerini girmekten nefret ederler. Bu nedenle, geliştiriciler onlara süresiz kullanabilecekleri güvenlik jetonları sağlar.

Kullanıcılar farklı hesaplar için ayrı şifrelere sahip olmaktan nefret ederler. Bu nedenle, geliştiriciler onlara birden fazla hesapta kullanabilecekleri tek oturum açma ve güvenlik belirteçleri sağlar.

Ve bu token saldırıya uğradığında, saldırganlar Facebook’un son skandalı kanıtı gibi tüm bu hesapları devralabilir. Ve bu hesaplara artan miktarda hassas veriyi bağlayacağımızdan, hesapların ele geçirilmesi giderek daha fazla zarar görmeye başlıyor. Sadece bir kez gerçekleşmesi gerekiyor.

Geliştiriciler, sadece kullanıcı hassas bir işlem yapmak istediğinde ekstra bir kimlik doğrulama gerektirir. Örneğin, Facebook durumunda, güvenlik ayarlarınızı (şifre, 2FA…) değiştirmek isterseniz, şifrenizi tekrar girmeniz gerekir.

Bu nedenle, yeni keşfedilen Facebook savunmasızlığı, saldırganların mağdurların parolalarını değiştirmelerine ve hesaplarının toplam sahipliğini almasına olanak tanımamıştır (Facebook yetkilileri, şifrenizi iyi ölçmek için şifrenizi değiştirmeyi önermiştir).

Neden yeni kimlik doğrulama mekanizmalarına ihtiyacımız var?

Güvenlik belirteciniz ne kadar güvende olursa olsun, yazılımınız gittikçe daha karmaşık hale geldikçe, bilgisayar korsanlarının onu çalmak için bazı gizli kusurlar bulma olasılığı vardır. Sorunu çözebilmemizin tek yolu, kullanıcının kimliğini daha sık doğrulayabilecek kesintisiz ve sürtünmesiz doğrulama mekanizmalarına sahip olmaktır.

İdeal bir senaryo, bir müşteri ve sunucu arasında gerçekleşen her etkileşimde kullanıcının kimliğini doğrulamak olacaktır. Böyle bir mekanizma, uzun ömürlü güvenlik belirteçlerine olan ihtiyacı ortadan kaldıracak ve oturumları ele geçirme saldırılarını imkansız kılacaktır.

Ancak bu geçerli kimlik doğrulama teknolojileri ile pratik değildir. Açıkçası, çevrimiçi hizmetlerin ana kimlik doğrulama yöntemi olan parolalarla, çok fazla giriş girdisi sormak yalnızca rahatsız edici olmaz, aynı zamanda güvensiz olur, çünkü tekrar tekrar ağ üzerinden parola göndermeyi içerir.

Şifresiz kimlik doğrulaması doğru yönde bir hareket olacaktır. Şifreleri şifrelemek ve bunları biyometrik kimlik doğrulama veya güvenlik anahtarlarıyla değiştirmek, kimlik doğrulama işlemini çok daha kullanıcı dostu hale getirecektir.

Ayrıca sır saklama ve değişim ihtiyacını da ortadan kaldıracaktır. Kullanıcılar, kimliklerini, bilgi alışverişini daha güvenli hale getirecek sıfır bilgi kanıtı mekanizmaları aracılığıyla teyit edebilecektir.

Mevcut parolasız kimlik doğrulama mekanizmaları hala istek başına doğrulama modeline geçiş yapmak için yeterince sürtünmesizdir, ancak geliştiricilerin kullanıcılara kimlik doğrulaması için daha sık sormalarını sağlar.

Örneğin, kullanıcının başvurmak istediği her seferinde uygulamanın (mesajlar, ayarlar, profil sayfası, haber bülteni…) yeni bir bölümünü açması istendiğinde, uygulamada çok fazla sıkıntıya neden olmadan kimliklerini doğrulamaları istenir.

Apple’ın Face ID’si gibi daha gelişmiş biyometrik kimlik doğrulama teknolojileri, kendi güvenlik ve gizlilikle ilgili düşüncelerine sahip olmalarına rağmen şeffaf kimlik doğrulaması sağlayabilir.

Bir çözüm, bir parmak izi taraması ile kilidi açılacak bir çeşit NFC özellikli güvenlik anahtarına sahip olmak, kullanıcının aygıtı ile eşleşir ve uygulamanın herhangi bir müdahaleye gerek kalmadan sunucuya gönderdiği her bir talebin şifreleme karmalarını şeffaf bir şekilde üretmek olacaktır.

Bu kesintisiz, sürtünmesiz çok faktörlü bir kimlik doğrulaması (iki bağlantılı cihaz ve biyometrik doğrulama) olacaktır.

Bu gerçekten sadece vahşi bir düşünce ve pratik ya da uygun maliyetli olmayabilir. Fakat kesin olarak, “bir kez doğrulamak ve süresiz modeli kullanmak” dan uzaklaşmamız gerektiğidir. Bu, yeni teknolojiler ve kutunun dışında sağlıklı bir düşünme düşüncesi gerektirir.