3 Grev Güvenliğinin Zayıf Yönleri


10

Güvenlikle ilgili bazı literatürleri okudum, özellikle şifre güvenliği / şifrelemesi ve merak ettiğim bir şey vardı: 3 vuruş kuralı şifre güvenliği için mükemmel bir çözüm mü? Yani, şifre girişimi sayısı küçük bir sayı ile sınırlıysa, bundan sonra tüm kimlik doğrulama istekleri yerine getirilmeyecek, bu da kullanıcıları izinsiz girişten korumaz mı? Bir şey üzerinde erişim veya kontrol elde etmenin her zaman kimlik doğrulama sisteminden geçmek anlamına gelmediğini, ancak bu özellik sözlük / kaba kuvvet saldırılarını geçersiz kıldığını bilmiyorum? Kaçırdığım bir şey var mı?


3
Bu soru gelecekteki başvurular için Güvenlik'te daha iyi sorulmuş olabilir .
maple_shaft

1
Bulduğum gibi, her zaman sormak için daha uygun bir yer var. Yine de, bunu hatırlamaya çalışacağım.
prelic

Yanıtlar:


13

Evet, giriş mekanizması aracılığıyla sözlük saldırılarını imkansız hale getirecektir . (Bu, veritabanına erişim elde ettikleri anlamına gelmez. Güvenlik için şifreleri doğru şekilde hash ve tuzlandırmanız gerekir.)

Ayrıca belirli bir kullanıcıya karşı DOS saldırısı olasılığını da sağlar. Oturum açmanızı önlemek istediğimi varsayalım. Tek yapmam gereken, hesabınıza karşı üç sahte giriş denemesi yapmak ve ardından girişinizi sıfırlamak için ne gerekiyorsa yapın. Bu konuyla uğraşmak biraz daha zordur.


1
Teşekkürler! Meraktan, tarif ettiğiniz ikinci problemle başa çıkmak için ne bir yaklaşım olurdu? Gerçek dünyadaki bir örnek için, tonlarca çevrimiçi forum, genel kullanıcı adını giriş kimliği olarak kullanır (acct veya başka bir şeye eklenmiş bir e-postanın aksine), yani her kullanıcının giriş yapmak için ne kullandığını görebilirim. Her bir kullanıcıyı hesabından kilitlememi engellemem ne olacak? İyi bir yönetici mi? Her bir kullanıcıyı siteden kilitlemek çok kolay olacak gibi görünüyor.
prelic

@prelic: Bu sorunla başa çıkmak için, "belirli bir IP adresi çok fazla geçersiz giriş denemesi yaparsa, engelle" gibi bir şey uygularım. Bu, bahsettiğiniz senaryoyu durduracaktır, ancak botnet gibi ciddi bir saldırı girişimi ile uğraşmayacaktır . Bunun için daha fazla güvenliğe ihtiyacınız var.
Mason Wheeler

4
Genel çözüm, belirli bir kullanıcı için sabit bir ipten gelen girişimlerin hızını dakikada 5'e bağlamaktır. Mükemmel değil, ancak aynı proxy'nin arkasında olmadıkça genellikle diğer kullanıcılara sorun oluşturmazsınız
Andrea

Başka bir yaklaşım, aynı IP'den 2 başarısız giriş denemesinden sonra bir captcha sunmaktır - ancak daha sonra kararlı bir saldırgan bu amaç için bir captcha kırıcı mekanik turk kiralayabilir, ayrıca aslında makineleri tutan iyi bir captcha bulmak oldukça zordur dışarı.
tdammers

3

Ayrıca, uygun yetki olmadan bir hesaba erişmenin yolları olarak sözlük saldırılarını daha az etkili hale getirdiğini de kabul ediyorum. Ancak:

  • Bu yaklaşım, sözlük saldırısını sisteme karşı DOS saldırısına dönüştürebilir ve kötü uygulandığında erişimi önleyebilir. Örneğin, bir sunucu kimlik doğrulama girişimleriyle sular altında kalabilir. Bunun bir yolu, kimlik doğrulama hizmetinin kilitli bir hesaba sonraki erişimlerin akışını denetlemesidir. Örneğin, bir hesap kilitliyse, sonraki her giriş denemesinden önce bir gecikme gösterin. Ancak, bir giriş denemesi ile erişim reddedildi arasında bir gecikme olabilir, bu da bir saldırganın aynı anda birçok kimlik doğrulama girişimini başlattığı dağıtılmış bir hizmet reddi saldırısına kapıyı açık tutar.

  • Diğer cevapta belirtildiği gibi, bu da saldırıya uğrayan hesabın yasal sahibine karşı sözlük saldırısını ham DOS'a dönüştürebilir. Meşru sahibin etkisini azaltmanın yolları şunlardır:

    • Kullanıcı adı mı yoksa yanlış şifre mi olduğuna dair hiçbir ipucu vermeyerek kullanıcı adlarında bir çalışmayı yavaşlatma. Bu, suçlunun kullanıcı adlarını yöneticiler tarafından daha görünür ve daha az etkili olduğunu tahmin ettiği saldırıları yapar.
    • Sabit sayıda başarısız denemeden sonra bir hesabı kilitlemek yerine, yalnızca bu kimlik doğrulama modunu kilitleyin. Başka bir deyişle, hesabı saldırıya uğrayan bir kullanıcının farklı bir (muhtemelen daha ilgili, ancak daha az kolayca saldırıya uğrayan) bir yöntemle kimlik doğrulaması yapmasını isteyin. İyi bir örnek, bir Android telefonun bir kullanıcının ekran kilidini açma düzeni veya PIN'i kullanarak kimlik doğrulaması yapamadıktan sonra Google Giriş bilgilerini nasıl kullanmasını gerektireceğidir. Teorik olarak, bu saldırıya uğramış bir kullanıcının hesaplarının kilidinin açılmasını istemesini gerektirir, ancak sistem yöneticisinin derhal müdahalesini gerektirmez.
    • Bunun yerine bir hesap aşağı kilitleme - arasından kimlik girişimlerine aşağı kilidi (veya kimlik doğrulama bu özel mod için bir hesap kilitleyerek ek olarak yukarı bakınız) bir yer saldırı kaynak olduğunu. Örneğin, kimlik doğrulaması bir kullanıcı adı ve parola ile ağ üzerinden yapılırsa, üç başarısız kimlik doğrulama girişiminden sonra aynı IP veya alt ağdaki kullanıcıların bir kullanıcı adı veya parola ile giriş yapmasını önleyebilirsiniz. Birden fazla kullanıcının (saldırgan dahil) aynı IP veya alt ağı kullanma şansının yüksek olduğu durumlarda, yalnızca IP veya alt ağ için kullanıcı adı / şifre kimlik doğrulamasını belirli bir süre için devre dışı bırakabilir ve masum için daha fazla ilgili kimlik doğrulama yöntemlerini açık bırakabilirsiniz. saldırganın yakınında bulunan kullanıcılar .
  • Korkunuz yanlışlıkla unutulmuş bir kullanıcıyı saldırganmış gibi cezalandırıyorsa, sabit sayıda başarısız denemeden sonra başarısız giriş denemelerinin akışını kontrol etmek yerine, bir hesabın saldırıya uğradığının kanıtı olarak giriş denemelerinin sıklığını kullanabilirsiniz. Örneğin, bir saniye içinde 10 kimlik doğrulama denemesi görürseniz, benzer kimlik doğrulama girişimlerini önlemek için yukarıdaki yöntemlerden birini kullanabilirsiniz. Alternatif olarak, bu hızlı giriş denemeleri akışını kontrol etmeye başlamak için bir sinyal olarak kullanabilirsiniz. Bu yöntem forumlarda gittikçe daha popüler hale gelirken, belirli bir IP'den belirli sayıda başarısız giriş denemesinden sonra, bu IP'nin kısa bir süre için kimlik doğrulaması önlenir.

  • Son olarak, bir kullanıcının bir DOS saldırısı tarafından tekrar tekrar hedeflenmesini önlemenin iyi bir yolu, hem şifresini hem de kullanıcı adını sıfırlamasına izin vermektir . Başka bir deyişle, hem kullanıcı adını hem de şifreyi sır olarak kabul edin. Kullanıcı adının başka bir yerde kullanıldığı yerlerde (örneğin, bir forumda, kullanıcı adı kullanıcının görünen adı ise), bu görünen adı ayrı bir şey olarak ele almanız yeterlidir. Bu yaklaşım genellikle kimlik doğrulamasında kullanılan kullanıcı adının kişinin e-posta adresi olduğu, değiştirilebilen ancak nadiren paylaşıldığı bir şey olduğu halde, sitede kullanılan görünen adın kullanıcı tanımlı olabilecek veya olmayabilecek bir şey olduğu sosyal ağlar tarafından kullanılır. değiştirilebilir.

Her neyse, umarım bu yaklaşımların bir ya da bir kısmı işe yarayacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.