bu hedefe ulaşmak için kesin bir yolu yoktur. Paylaşılan bir kimlik bilgisi (uygulamada bir paket halinde) kullanan bir web hizmetiniz varsa, o kimlik bilgisini tersine çevirmek mümkün olacaktır. Nihayetinde, başka bir makinede çalışan bir müşterinin "sizin" müşteriniz olmasını sağlamak imkansızdır.
bu birçok tartışmalar olmuştur. Umutsuz değil, sadece% 100 (hatta% 90) çözmek imkansız. SSL üzerinden basit bir paylaşılan sırrı, saldırganların çoğunu kullanıcılarınıza zarar vermeden veya geliştirecek çok şey bırakmadan durduracaktır. Güvenlik değil, gizliliktir, ancak ucuzdur ve "çoğunlukla etkilidir" pahalıya göre çok daha iyidir ve "çoğunlukla etkilidir."
çok yüksek bir değer ürün varsa, o zaman daha agresif (pahalı) çözüm garanti edebilir.
- , kullanıcıyı ziyade programını veya
- Sürekli teyakkuz kimlik denetimi yeni saldırılar için izliyor ve onları yama düzeltmeleri ile yanıt: Bu çözümlerin tamamı iki şeyden birini içermektedir.
ikincisi çok pahalı ve asla bitmez. Buna değdiğinden emin ol.
Bazı diğer yararlı tartışmalar:
DÜZENLEME "SSL üzerinden paylaşılan sır" sözüm hakkında bir şey belirtmek istedim. Sertifikayı doğrulamazsanız, çok kolay insan-orta saldırılara maruz kaldığınızı unutmayın. Charles gibi hazır proxy'ler bunu yapabilir. En iyi yaklaşım, geri döndürülen SSL sertifikasının yalnızca "herhangi bir güvenilir sertifika" değil, kök sertifikanız tarafından imzalandığından emin olmaktır. Uygulamanız tarafından güvenilen sertifikaları SecTrustSetAnchorCertificates()
ile yeniden yapılandırabilirsiniz. iOS5:PTL, bu tekniği Bölüm 11'de (sayfa 221) kapsar. Bunu ayrıca RNPinnedCertValidator adlı kütüphaneye de ekledim.
Bir başka iyi katman, sunucunun, istemcinin tele hiç eklemeden paylaşılan bir sırrı paylaştığını doğruladığı bir meydan okuma yanıtı sistemi uygulamaktır. Challenge-resonse authentication'daki Wikipedia makalesi, algoritmanın iyi bir açıklamasını içerir.
Gerçekten aşağıda cevabını kabul etmelidir. Bu çok iyi. –