SORU
29 NİSAN 2013, PAZARTESİ


JSON Kaçırma hala modern tarayıcılarda sorun oluyor?

Backbone.js ve Tornado web server kullanıyorum. Omurga toplama veri almak için standart davranış JSON Dizi olarak göndermek için.

Öte yandan, Hortum standart davranış JSON Dizi şu güvenlik açığı nedeniyle değil izin vermektir

http://haacked.com/archive/2008/11/20/anatomy-of-a-subtle-json-vulnerability.aspx

Bir ilgili kişi: http://haacked.com/archive/2009/06/25/json-hijacking.aspx

Benim JSON bitirmek için değil, daha çok doğal gerçekten nesneler listesinden bir nesne geliyor.

Modern tarayıcılar (yani mevcut Chrome) Firefox, Safari ve Internet Explorer 9 bu saldırılar yeniden edemedi. Aynı zamanda modern tarayıcılar bu sorunları ele geçirdi her yerde teyit edemedi.

Herhangi bir olası kötü becerileri programlama yanıltmak değilim emin olmak için ne zavallı becerileri "d"

JSON Kaçırma bu saldırılar hala modern tarayıcılarda bir sorun bugün.

(Not: Üzgünüm Olası Çoğalt: Is it possible to do 'JSON hijacking' on modern browser? ama beri kabul edilen cevap değil, cevap - soru sandım zaman sor tekrar ve biraz daha net açıklamalar.)

CEVAP
2 HAZİRAN 2013, Pazar


Hayır, artık mümkün değerleri 21, 27, Chrome, Firefox veya IE 10 [] {} kurucular geçirilen yakalamak için. İşte küçük bir test sayfası, ana saldırı http://www.thespanner.co.uk/2011/05/30/json-hijacking/ açıklanan dayalı:

http://jsfiddle.net/ph3Uv/2/

window.Array geçersiz kılar ve Object.prototype.foo ve testler için bir pasör kısa ve uzun formları üzerinden diziler ve nesneleri başlatma ekler.

ES4 spec, Bölüm 1.5, "gerektirir global, standart bağlamaları Nesne ve Dizi için kullanılabilir oluşturmak için yeni nesneleri nesne ve dizi başlatıcılar" ve notlar Uygulama Emsal "Internet Explorer 6, Opera 9.20 ve Safari 3 değil saygı yerel veya küresel rebindings Nesne ve Dizi, ama orijinal Nesne ve Dizi kurucular." Bu ES5, section 11.1.4 korunur.

Allen Wirfs-Brock explained ES5 de nesne başlatma DefineOwnProperty kullanır gibi belirleyiciler tetik gerektiğini belirtir. MDN: Working with Objects "JavaScript 1.8.1, belirleyiciler İtibaren artık nesne ve dizi başlatıcılar özellikleri ayarlarken denir." belirtiyor Bu V8 issue 1015 giderilmiş.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • androidandme

    androidandme

    10 Mart 2009
  • glowpinkstah

    glowpinkstah

    16 Mayıs 2006
  • Trulia

    Trulia

    29 Kasım 2006