Credential Stuffing Saldırı Metodolojisi

Merhabalar! Bu yazımda türkçe “Kimlik Bilgisi Doldurma” veya “Kimlik İstifleme” olarak adlandırılan Credential Stuffing saldırısının ve metodolojisinin ne olduğundan, genellikle nasıl gerçekleştirildiğinden ve kurum bazında bu saldırıya karşı nasıl önlemler alınabileceğinden bahsedeceğim.

Bazı teknik terimlerin türkçeleştirilmesi sonrasında asıl anlamını yitirdiğini düşünenler kervanında yer aldığım için bu yazıma Credential Stuffing terimini kullanarak devam edeceğim.

Credential Stuffing vs Brute-Force

Konuya giriş yapmadan önce brute-force (kaba kuvvet saldırıları) ile credential stuffing arasında ki farkı ufak şekilde açıklamak gerekirse:

Kaba kuvvet saldırılarında hedef kullanıcı adı & parolasına doğru, hazırlanmış olan wordlist (kelime listesi) içerisinde yer alan tüm değerler bazı script veya araçlar aracılığı ile teker teker denenir ve saldırının sonunda kimlik bilgileri elde edilmeye çalışılır.

Veya farklı olarak bir adet parola belirlenerek, farklı kullanıcı adlarını içeren wordlistler (kelime listesi) kullanılarak bir kaba-kuvvet saldırısı gerçekleştirilebilir. Bu şekilde yapılan kaba-kuvvet saldırısı sonucunda her 1 kullanıcı hesabına belirlenmiş olan 1 adet parola deneneceği için ilgili kullanıcı hesaplarının kilitlenmesine sebebiyet verilmez ve ayrıca ilgili uygulama üzerinde var ise rate-limit engellemeleri de doğru yoldan atlatılmış olur. Bu saldırı türüne teknik olarak genellikle Password Spraying veya Reverse brute-force denmektedir. Konu içerisinde konuya girmiş olduk ancak geleneksel brute-force ile Password Spraying olarak adlandırılan reverse brute-force farkını basit şekilde anlatan görsele göz atabilirsiniz.

Traditional Brute-Force vs Passord Spraying

Credential Stuffing’te ise zaten hali hazırda leak (sızmış) olmuş KullanıcıAdı:Parola bilgileri kullanılarak hedef uygulamalarda oturum açılmaya çalışılır. Bu sayede ne rate-limit engellemeleri ne de ilgili hesapların kilitlenmesi söz konusu olur. Ayrıca network, işlemci gücü vb. sebepleri ile saatler sürebilecek bir kaba-kuvvet saldırısı gerçekleştirmeye gerek kalmadan direkt hedef kurum & web uygulaması odaklı olarak bazı kullanıcı hesabı bilgileri elde edilebilir.

Brute-Force vs Credentials Stuffing

Credential Stuffing Nedir?

Birçok internet kullanıcısının e-posta veya sosyal medya hesaplarına giriş için kullanmakta olduğu parolayı diğer sitelerdeki üyelikleri & hesapları için de kullandığını biliyoruz. Bu durumu en basit şekilde yakın çevremizden aldığımız duyumlara göre biliyoruz ancak dünya genelinde yapılan anketlerin sonuçlarına göre internet kullanıcılarının %60’ının aynı parolayı farklı hesaplarında da kullandığı düşünülüyor.

Survey: 60 percent of users use the same password across more than one of their online accounts

Farklı kurumlar veya uygulamalarda yaşanmış olan veri sızıntıları sonucunda kullanıcı verilerinin birçoğu illegal forumlar & siteler üzerinden satılmakta veya ücretsiz olarak paylaşılmaktadır. Saldırganların bu veri sızıntılarından (örneğin Facebook, Linkedin gibi veri sızıntıları) elde ettiği e-posta ve parola ikilisini kullanarak bariskoparmal.com web sitesi üzerinde oturum açmaya çalışması ve doğru kullanıcı adı & parola ikilisinin tespit etmeye çalışmasına Credential Stuffing saldırısı denmektedir.

Credential Stuffing

Credential Stuffing saldırıları BurpSuite Intruder, ilgili saldırının gerçekleştirileceği web uygulamasına gerekli HTTP isteklerini gerçekleştirecek bir script veya farklı çeşitli yöntemler ile ile gerçekleştirilebilir ancak Credentials Stuffing saldırıları için yaygın olarak Open Bullet ve Black Bullet araçları kullanılmakta ve bilinmektedir.

Open Bullet & Black Bullet Araçları

Temel olarak bu araçlara çeşitli veri sızıntılarından elde edilmiş olan kullanıcı adı & parola ikilisinin bulunduğu wordlistler, saldırıda kullanılacak proxy IP listesi ve saldırılacak siteye ait ayar dosyası eklenir. Sonrasında saldırı başlatılır ve bariskoparmal.com adresinde oturum açabilen kullanıcı bilgileri kayıt altına alınır.

Farklı cloud sağlayıcılarından (DigitalOcean, Amazon vb.) alınan hizmetler ile VPN Sunucuları ya da Proxy Sunucuları oluşturulabilir. Saldırganlar tek bir IP üzerinden çoklu giriş denemesi yapması durumunda hedef sistem tarafından ilgili IP, saldırgan IP olarak tanımlanabilir ve engellenebilir. Bu sebep ile saldırganlar farklı IP’ler üzerinden geliyormuş gibi gözükebilmek için VPN veya Proxy sunucuları ayağa kaldırırlar ve ilgili araçlara bu Proxy sunucuları bilgilerini eklerler.

Örnek senaryoda; Kullanıcı adı ve parolaları içeren wordlist, Proxy Sunucu IP’lerinin olduğu wordlist ve bariskoparmal.com için oluşturulan ayar dosyası Open Bullet veya Black Bullet aracına eklenir ve saldırı başlatılır. Wordlistler içerisinde yer alan kullanıcı adı ve parola ikilisi bilgileri ile başarılı bir oturum açma işlemi yapılabilirse araçlar görsel arayüzde bunu gösterir ve ilgili verileri ayrı bir dosyaya yazar. Saldırının başarılı olması durumunda bariskoparmal.com web uygulamasında oturum açılabilecek bir sürü kullanıcı hesabı elde edilmiş olur.

Saldırının başarılı olması durumunda bariskoparmal.com web uygulamasına ait fazlası ile kullanıcı hesabı bilgileri illegal forumlarda satılmaya veya yayınlanmaya başlandığında artık bariskoparmal.com uygulamasının hacklendiği ve tüm verileri sızdırdığı düşünülecektir ve bu durum web uygulaması sahipleri yani kurumlar için kritik seviyede bir repütasyon kaybı yaşatmaya sebebiyet verebilir.

Open Bullet aracı görünümü

Nasıl Önlenebilir?

Credentials Stuffing saldırılarına karşın alınabilecek bazı önlemlerden bahsetmek gerekirse:

Uygulamada kullanılacak olan parolanın en az 8 karakterden oluşması, büyük küçük harflerin bir arada kullanılması, özel karakterlerin (!,@,#,?,+,-,* vs.) kullanılması, rakamların kullanılması, kişiye özel bilgilerin parola içerişinde yer almaması(isim, doğum yeri, doğum yılı vs.) gibi detaylar sağlanarak uygulamada güçlü parola politikası uygulanabilir.

Kullanıcılar azami 90 günde bir parolasını değiştirmek üzere uyarılabilir, kullanıcılar parolasını değiştirdikten 90 gün sonrasında oturum açtığında zorunlu olarak parolayı değiştirme ekranına yönlendirilebilir.

IP adresleri ve kullanıcı hesapları dikkate alınarak 3 hatalı giriş denemesi sonrasında hesaba giriş denemelerinde iki aşamalı doğrulama (2FA/MFA) ya da Captcha gibi önlemler kullanılabilir. Eğer mümkün ise uygulamada her oturum açılmak istendiğinde hatalı giriş denemeleri fark etmeksizin iki aşamalı kimlik doğrulama (2FA/MFA) metodları yürütülebilir.

Tek veya aynı IP adresleri üzerinden birden fazla hesaba erişilmesi durumunda ilgili hesaplar direkt olarak disable duruma getirilebilir ve hesabın tekrar aktif olabilmesi için iki aşamalı kimlik doğrulama (2FA/MFA) metodları yürütülebilir.

Tek veya aynı IP adresleri üzerinden çok fazla sayıda hatalı/başarılı giriş tespit edilmesi durumunda bu IP engellenebilir.

Siber tehdit istihbaratı (Cyber Threat Intelligence) hizmetleri ile illegal forumlar & siteler üzerinde hesap bilgileri paylaşıldığı tespit edilen kullanıcıların parolalarının değiştirilmesi zorunlu hale getirilebilir veya bu durumun yaşanabileceğini anlatan bilgilendirme e-postaları son kullanıcılara gönderilebilir.

Web/Mobil uygulamalarında kullanıcıların oturum açması, veri tabanlarına giriş yapılması gibi loglar agentlar aracılığı ile log yönetimi uygulamalarına (SIEM) taşınabilir ve log yönetimi uygulamaları üzerinde ilgili loglar için kurallar oluşturularak gerekli durumlarda alarmlar üretecek şekilde senaryolar oluşturulabilir.

0x038

Yorum bırakın

WordPress.com'da bir web sitesi veya blog oluşturun

Yukarı ↑