SORU
13 EKİM 2008, PAZARTESİ


Şu ya da bu şekilde daha güvenli OLSUN SONRASI mı?

Bir HTTP karşılaştıran bir HTTP POST için geldiğinde, güvenlik açısından farklar nelerdir? Seçeneklerden biri doğal olarak daha güvenlidir? Eğer öyleyse, neden?

POST URL hakkında bilgi ifşa değil farkındayım, ama önemli olan gerçek değeri midir, yoksa sadece güvenlik bilinmezlik aracılığıyla? Hiç bir güvenlik sorunu olduğunda POST tercih etmem gerektiğini bir nedeni var mı?

Düzenleme:
HTTPS, POST verileri kodlanmış, ama URL 3. bir şahıs tarafından kokladı olabilir mi? Ayrıca, ben ile ilgili JSP, JSP kullanarak veya benzer bir çerçeve, olur adil ki en iyi yöntem uzak durmak yerleştirerek hassas verileri POST veya GET tümüyle kullanarak sunucu tarafı kodu için kolu hassas bilgi yerine?

CEVAP
16 Kasım 2009, PAZARTESİ


İstek POST isteği daha az güvenlidir. Ne fazla gerçek "güvenlik" kendisini; POST istekleri kullanarakolmazsihirli bir şekilde web sitenizin göze çarpan bir miktar kötü niyetli saldırılara karşı güvenli hale getirmek. Ancak, kullanma istekleriolabiliraksi takdirde güvenli bir uygulama güvensiz olun.

Sen "kullanmak zorunda değilsiniz," hala çok geçerli değil, ama bu ile ilgisi yoktur . değişiklik istekleri OLSUN mantra ^em>kötü niyetlidavranış. Giriş formları olanlar yanlış istek türü kullanılarak gönderilen en duyarlı.

Örümcekler ve web Hızlandırıcılar arama

Bu değişen veriler için POST istekleri kullanmalısınız gerçek nedeni budur. Arama örümcekler web sitenizde her bağlantı takip edecek, ama buldukları rasgele form doldurmak değil.

Web Hızlandırıcılar istemci makine, ve "click" tüm bağlantılar . üzerinde çalıştırmak çünkü arama örümcekler daha kötüdür, ^em>oturum açmış kullanıcı bağlamında. Böylece, bir kullanan bir uygulama, eğer bir yönetici gerekiyorsa bile bir şeyler silmek için istek OLSUN, mutlu bir şekilde itaat emri (non-zararlı!) hızlandırıcı web ve delete everything it sees.

Şaşkın vekil krizi

confused deputy attack bir milletvekili tarayıcı olduğu) possible regardless of whether you use a GET or a POST request.

Saldırganın kontrolündeki web siteleri ve SONRASI* without user interaction*3 vardır.

Sadece senaryoda hangi YAZI olduğunu biraz daha az duyarlı olan birçok web sitesi, bu değil altında saldırganın kontrol (diyelim ki, bir üçüncü taraf forum) izin almasi keyfi resim (izin saldırganın enjekte rasgele bir GET isteği), ama önlemek için tüm yolları enjekte keyfi bir POST isteği, ister otomatik ya da manuel.

Bir web Hızlandırıcılar karıştı Yardımcısı saldırının bir örneği olduğunu iddia edebilir, ama bu sadece bir tanım meselesi. Eğer bir şey, kötü niyetli bir saldırgan bu üzerinde hiçbir kontrole sahip, pek çoksaldırıhatta Yardımcısıkafam karıştı.

Proxy günlükleri

Proxy sunucuları ALMAK URLs bütün olarak oturum açmak için büyük olasılıkla, sorgu dizesi sıyırma olmadan. POST isteği parametreleri normal olarak kaydedilir. Çerezler her iki durumda da açmış olması olası değildir. (example)

Bu YAZI lehine çok zayıf bir argüman. Öncelikle, un-şifreli trafik bütünüyle açmış olabilir; kötü niyetli bir proxy zaten gerekli her şeye sahiptir. İkincisi, istek parametreleri sınırlı kullanmak için bir saldırgan: ihtiyaçları olan şey, kurabiyeler, eğer öyleyse tek şey varsa proxy günlükleri, onlar Olası edebilmek için saldırı ya da bir GET veya POST URL.

Orada oturum açma istekleri için bir istisna vardır: bu kullanıcının parolasını içeren eğilimindedir. Proxy günlüğünde bu tasarrufu SONRASI durumda eksik olan saldırı vektör açılır. Ancak, düz HTTP üzerinden giriş doğal bir güvensizlik zaten.

Proxy cache

Önbellekleme vekiller yanıtları ALMAK, ama SONRASI tepkiler görülmemiştir. ELDE yanıtları yapılabilir söyledikten dışı olduğu saptanırsa POST işleyicisi URL dönüştürme daha az çaba ile.

"" . Özet HTTP

Eğer kullanıcı sayfayı talebi üzerine ALMAK sunumu, üçüncü taraf Web sitesine gitmek için olsaydı, bu üçüncü taraf Web sitesi istek parametreleri şey görür.

Kategorisinde "istek üçüncü bir tarafa parametreleri bu parametreler mevcuttur ne bağlı olan.", ortaya ait İstekleri bu bağışıklık kazanmış durumda POST, bir hacker istek yararlanabilmesi için ancak sunucu yanıtı takın kendi web sitesi için bir bağlantı gerekir.

Tarayıcı geçmişi

Bu çok benzer bir "bağımsız değişken: istekleri, tarayıcı geçmişinde saklanır kendi parametreleri ile birlikte. günlükleri" proxy için. Saldırganın kolayca eğer makineye fiziksel erişimi varsa, bu elde edebilirsiniz.

Yenileme eylem tarayıcı

Tarayıcı bir kullanıcı inmez GET isteği yeniden deneyin."". yenile Kapandıktan sonra geri sekme ne zaman almış olabilir. Herhangi bir işlem (ödeme) böylece uyarı olmadan tekrarlanır.

Tarayıcı bir uyarı olmadan bir POST isteğini yeniden deneyecek.

Bu sadece değişen veriler için POST istekleri kullanmak için iyi bir sebeptir, ama bu kötü davranışlara güvenlik ile ilgisi yok.

Ne yapmalıyım?

  • Veri, özellikle güvenlikle ilgili nedenlerden dolayı değiştirme istekleri kaydedersiniz.
  • Giriş formları, sadece POST istekleri kullanın; aksi takdirde saldırı vektörleri tanıttı.
  • Eğer siteniz hassas işlemleri gerçekleştirir, gerçekten bu, tek bir cevap kaplı olabilir. çünkü ne yaptıklarını bilir, birine ihtiyacım var. İhtiyacınız için HTTPS kullan, HSTS, CSP, azaltmak SQL enjeksiyon, script injection (XSS), CSRF ve bir sürü başka şeyler olabilir belli platformu (gibi toplu atama güvenlik açığı çeşitli çerçeveler: ASP.NET MVC, Ruby on Rails, vb.). Arasında fark yaratacak tek şey yoktur "" (değil) sömürülebilir ve "güvenli değil". güvenli

HTTPS, POST verileri kodlanmış, ama URL 3. bir şahıs tarafından kokladı olabilir mi?

Hayır, kokladı olamaz. Ama Urller, tarayıcı geçmişinde saklanır.

En iyi yöntem mümkün SONRASI hassas veri yerleştirme veya tamamen ve sunucu tarafı kod hassas bilgileri işlemek için kullanarak kaçınmaktır yerine söylemek adil olur mu?

Ne kadar hassas olduğunu bağlıdır, ya da daha spesifik olarak, ne şekilde. Belli ki müşteri göreceksiniz. İstemci bilgisayara fiziksel erişimi olan herkes bunu görür. İstemci geri gönderme yönetebilirler. Eğer o zaman bunun için, sunucu üzerindeki hassas verileri tutun ve gitmesine izin verme.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Day9TV

    Day9TV

    22 NİSAN 2010
  • The Amazing Atheist

    The Amazing

    20 Kasım 2006
  • UlyssesForever's channel

    UlyssesForev

    28 ŞUBAT 2012