Account Takeover
Yetkilendirme Sorunu
Bir hesabın e-posta adresinin değiştirilmesi denenmeli ve onay süreci incelenmelidir. Eğer zayıf bulunursa, e-posta hedef kurbanın e-posta adresi ile değiştirilip onaylanmalıdır.
Unicode Normalizasyon Sorunu
Hedef kurbanın hesabı
victim@gmail.com
Unicode kullanarak bir hesap oluşturulmalıdır örneğin:
vićtim@gmail.com
bu konuşmada açıklandığı gibi, önceki saldırı üçüncü taraf kimlik sağlayıcılarını kötüye kullanarak da yapılabilir:
Kurbanın e-posta adresine benzer bir e-posta ile üçüncü taraf kimlik sağlayıcısında bir hesap oluşturun (
vićtim@company.com
).Üçüncü taraf sağlayıcı e-posta adresini doğrulamamalıdır.
Eğer kimlik sağlayıcı e-posta adresini doğruluyorsa, belki de alan adı kısmını
victim@ćompany.com
gibi saldırıya uğratabilir ve o alan adını kaydedip kimlik sağlayıcının alan adının ascii versiyonunu oluşturmasını umabilirsiniz, bu sırada kurban platformu alan adı adını normalize eder.Bu kimlik sağlayıcı aracılığıyla kurban platformuna giriş yapın, bu platform unicode karakterini normalize etmeli ve kurban hesabına erişmenize izin vermelidir.
Daha fazla ayrıntı için, Unicode Normalizasyonu belgesine bakın:
Unicode NormalizationSıfırlama Token'ını Yeniden Kullanma
Hedef sistem sıfırlama bağlantısının yeniden kullanılmasına izin veriyorsa, gau
, wayback
veya scan.io
gibi araçlar kullanarak daha fazla sıfırlama bağlantısı bulmak için çaba sarf edilmelidir.
Hesap Ele Geçirmeden Önce
Kurbanın e-posta adresi platformda kaydolmak için kullanılmalı ve bir şifre belirlenmelidir (kurbanın e-postalarına erişim yoksa onaylama girişimi yapılamayabilir).
Kurbanın OAuth kullanarak kaydolmasını ve hesabı onaylamasını beklemelidir.
Normal kaydın onaylanması umulmakta, bu da kurbanın hesabına erişim sağlanmasını mümkün kılmaktadır.
CORS Yanlış Yapılandırması ile Hesap Ele Geçirme
Sayfa CORS yanlış yapılandırmaları içeriyorsa, kullanıcının hassas bilgilerini çalmak veya aynı amaçla kimlik bilgilerini değiştirmesini sağlamak için hesabını ele geçirebilirsiniz:
CORS - Misconfigurations & BypassCSRF ile Hesap Ele Geçirme
Sayfa CSRF'ye karşı savunmasızsa, kullanıcının şifresini, e-posta adresini veya kimlik doğrulamasını değiştirmesini sağlayarak ona erişim sağlayabilirsiniz:
CSRF (Cross Site Request Forgery)XSS ile Hesap Ele Geçirme
Uygulamada bir XSS bulursanız, çerezleri, yerel depolamayı veya hesabı ele geçirmenizi sağlayacak web sayfasından bilgileri çalabilirsiniz:
XSS (Cross Site Scripting)Aynı Kaynak + Çerezler
Sınırlı bir XSS veya bir alt alan ele geçirme bulursanız, çerezlerle (örneğin, onları sabitleyerek) o kurban hesabını tehlikeye atmayı deneyebilirsiniz:
Cookies HackingŞifre Sıfırlama Mekanizmasına Saldırı
Reset/Forgotten Password BypassYanıt Manipülasyonu
Eğer kimlik doğrulama yanıtı basit bir boolean'a indirgenebiliyorsa, false'u true olarak değiştirmeyi deneyin ve herhangi bir erişim elde edip edemediğinizi görün.
OAuth ile Hesap Ele Geçirme
OAuth to Account takeoverHost Başlık Enjeksiyonu
Şifre sıfırlama isteği başlatıldıktan sonra Host başlığı değiştirilir.
X-Forwarded-For
proxy başlığıattacker.com
olarak değiştirilir.Host, Referrer ve Origin başlıkları aynı anda
attacker.com
olarak değiştirilir.Şifre sıfırlama başlatıldıktan sonra e-postayı yeniden göndermeyi seçerken, yukarıda belirtilen üç yöntem de kullanılır.
Yanıt Manipülasyonu
Kod Manipülasyonu: Durum kodu
200 OK
olarak değiştirilir.Kod ve Gövde Manipülasyonu:
Durum kodu
200 OK
olarak değiştirilir.Yanıt gövdesi
{"success":true}
veya boş bir nesne{}
olarak değiştirilir.
Bu manipülasyon teknikleri, veri iletimi ve alımı için JSON kullanıldığında etkilidir.
Mevcut oturumun e-posta adresini değiştirme
Saldırgan yeni bir e-posta ile e-posta adresini değiştirmeyi talep eder.
Saldırgan, e-posta değişikliğini onaylamak için bir bağlantı alır.
Saldırgan, kurbana bağlantıyı gönderir, böylece tıklayabilir.
Kurbanın e-posta adresi saldırganın belirttiği e-posta adresi ile değiştirilir.
Saldırgan şifreyi kurtarabilir ve hesabı ele geçirebilir.
Bu, bu raporda da olmuştur.
Eski Çerezler
bu yazıda açıklandığı gibi, bir hesaba giriş yapmak, çerezleri kimlik doğrulaması yapılmış bir kullanıcı olarak kaydetmek, çıkış yapmak ve sonra tekrar giriş yapmak mümkündü. Yeni girişle, farklı çerezler oluşturulmuş olsa da eski çerezler tekrar çalışmaya başladı.
Referanslar
Last updated