SORU
12 AĞUSTOS 2012, Pazar


Nasıl Giriş Olmadan Web Servis Güvenliğini Sağlamak İçin

Bir web hizmetine konuşan bir mobil uygulaması var (şu anda İOS ve yakında) Android. Giriş yok ve veriler gizlidir. Temel olarak, app bir marker (boylam, enlem) ve bir harita üzerinde görüntülemek için en yakın 25 işaretçilerine Alır Nakleder.

Çok saçma bir uygulama var ve herkes web hizmeti kötüye için büyük çaba koyarak hayal edemiyorum. Ancak, birçok işaretleri Gönderme birisi için eğlenceli olduğunu görüyorum. Beni en çok endişelendiren biri birçok istekleri (pahalı bant genişliği kullanan ve uygulama verilerim saçmalık yapma) iten bir script çalışıyor.

Yavaş yavaş bu güvenli olamaz sonuca ulaşan benim. En iyi cevap "bunu yapma". Kimlik doğrulaması olmadan web hizmeti sağlamaz. Pek çok hizmetler açıktır. Google You Tube API ama en çok açık değil. Ne yazık ki, başka seçeneğim yok. Bu yüzden bakıyoruz gün sonra benim düşünce. Çok uzak bir güvenlik uzmanı değilim ve benim yaklaşım geliştirilmiş olabilir eminim farkında olun. Ama doğru yönde bir işaret olabilir. İnşallah biri daha tecrübeli düşmek ve bu geliştirmek doğru olabilir. this article ve yorum özellikle yararlı buldum.

İleti Düzeyi Güvenlik

Karma bir şifreleme ile msj güvenli olacaktır. Müşteriler ve web service URL ve SONRASI tüm argümanları bir karma oluşturmak için bir tuz olarak kullanılan paylaşılan gizli bir kopyasını saklayın. Karma ek bir değişken olarak geçirilen ve karma yeniden inşa ve diğer ucunu (bir tuz olarak paylaşılan anahtar kullanarak) ile karşılaştırılır. Bu herhangi bir mobil istemci kodu ters dakika içinde tasarlanmış olabilir anlayana kadar oldukça iyidir. Tamamen işe yaramaz olan.

İstemci Ölçer

Müşteri oranı iletileri dürüst kullanıcılar tarafından gönderilen sayısını kısıtlamak için bir önlem olarak mesaj sınırlayıcı içerir. Yine bu mobil cihaz jailbreaks saldırganın karşı işe yaramaz.

Yan Güvenlik Sunucusu

Sunucu tarafında mümkün olduğunca ek güvenlik önlemleri, yalnız müvekkiliniz (gizli ortak) tehlikede olduğu varsayımı üzerinde durmak gerekir. Ne var burada:

Bir hata arg yeniden gönderme saldırılarını sınırlamak için kullanılan UTC zaman. Bu sunucuda aynı hata tekrar tekrar ateş, bir saldırganın önlemek gerekir.

Sunucu IP oranı ile sınırlandırılması gerçekleştirir. Evet, IPs kolayca sahte ve proxy değiştirme çocuk oyun ama her şey çok küçük olduğunda yardımcı olur.

Tabii ki, sunucu kesinlikle tüm argümanları doğrular, parametised sorguları kullanır ve istisnalar dönüş yok.

Seviye Güvenlik Taşıma

Maalesef, amir bağımsız istemci SSL sertifikaları bir kayıt işlemi olmadan mümkün olup olmadığından emin değilim. Ve msg karma kontrol kullanıyorum çünkü (ve benim veri özel değil) tamamen SSL masaya getiriyor ne olduğundan emin değilim. Ancak, muhtemelen SSL kullan (bir uygulama geniş cert) çünkü ekler bir düzeyde güvenliği olduğunu kolayca ve ucuza dağıtılan (de olsa bir maliyeti ek bağlantı süresi için her msg).

Benim Yaklaşım Büyük Büyük Büyük Delik

Uygulamanın popüler olması gereken biri istemci paylaşılan gizli uzlaşma konusunda uyardı duyuyorum. Ve muhtemelen internette yayınlayacağız diye. Yani gerçekten tüm sunucu tarafında aşağı gelir. Ne yazık ki,Tanımlamak ve saldırgan engellemek için bir yol var. Ben bunu yürekten isterim.

Son Bir Rica

Araştırma gün sonra sahip olduğum tek şey bu. Ama ben daha fazlasını istiyorum. Özellikle sunucu tarafı güçlendirmek için herhangi bir fikir takdir ediyorum. Bu yüzden, bu YÜZDEN benim puan bir ödül olarak koyduk. Evet efendim, 97 puan!

CEVAP
22 AĞUSTOS 2012, ÇARŞAMBA


Şu anda sadece iOS uygulaması olduğu belirli bir durumda, aslında, bir çözüm var.

  1. Kullanıcı ve ilk kez uygulama indirme çalıştıktan sonra, app bir GUID ile geliyor /access_token/create bir API vurur ve Apple'ın Push Bildirimleri üzerinden Başvuru geri aktarır.

  2. Uygulama mağazaları bu access_token, ve tüm sonraki istekleri kullanır. Bu access_token temelinde gerçek API olabilir sınırı.

Temelde, Apple ilk isteği gerçek bir iOS cihazdan gelen sağlanması, tüm zor işleri yapsın.

Masaüstü istemcileri için bu uzatmak mümkün, ama biraz UX kalıntıları. Sadece değiştirme Adım 1 izin /access_token/create kabul et keyfi istekleri, ve eğer istek değil, bir iOS cihaz, güç kullanıcı için doğrulama e-posta adresi/çözmek bir kaptan vs vermeden önce onları bir access_token.

Android cihazlar için pek tanıdık ile) olabilir benzer bir İtme Bildirim mekanizması, bu durumda kullanabilirsiniz, ya da olmayabilir, bir İtme Bildirim mekanizması, bu durumda olabilir tabi Android kullanıcıları için rahatsızlık yukarıda listelenen.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Doc Adams

    Doc Adams

    20 HAZİRAN 2007
  • Jeb Corliss

    Jeb Corliss

    17 Kasım 2006
  • ModNation Racers H.Q.

    ModNation Ra

    31 Ocak 2010