ASP.NET permintaan yang memiliki banyak bentuk tombol, file, atau JSON payload anggota gagal dengan pengecualian

Dukungan untuk Windows XP telah berakhir

Microsoft mengakhiri dukungan untuk Windows XP pada 8 April 2014. Perubahan ini telah memengaruhi pemutakhiran perangkat lunak dan opsi keamanan Anda. Pelajari apa artinya ini bagi Anda dan cara untuk tetap terlindungi.

Dukungan untuk Windows Server 2003 berakhir pada 14 Juli 2015

Microsoft mengakhiri dukungan untuk Windows Server 2003 pada 14 Juli 2015. Perubahan ini telah memengaruhi pemutakhiran perangkat lunak dan opsi keamanan Anda. Pelajari apa artinya ini bagi Anda dan cara untuk tetap terlindungi.

PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.

Klik disini untuk melihat versi Inggris dari artikel ini:2661403
RINGKASAN
Microsoft pembaruan keamanan MS11-100 batas jumlah maksimum bentuk tombol, file, dan JSON anggota 1000 di permintaan HTTP. Karena dari perubahan ini, ASP.Aplikasi NET menolak permintaan yang memiliki lebih dari 1000 elemen-elemen ini. Klien HTTP yang membuat jenis permintaan akan ditolak, dan pesan kesalahan akan muncul di web browser. Pesan galat biasanya akan memiliki kode status HTTP 500. Batas ini baru dapat dikonfigurasi secara per aplikasi. Silakan lihat bagian "pemecahan masalah" untuk petunjuk konfigurasi.


GEJALA
ASP.NET permintaan yang memiliki banyak bentuk tombol, file, atau JSON payload menerima respons kesalahan dari server. Log aplikasi pada server memiliki entri peringatan dengan Sumberitu adalah versi tertentu dari ASP.NET, dan peristiwa ID 1309. Log peristiwa berisi salah satu pesan berikut:


Pesan 1:
Aplikasi informasi:
Aplikasi domain: / LM/W3SVC/1/ROOT /<App domain=""></App>
Percaya tingkat: menengah
Aplikasi Virtual Path:<VDIR path=""></VDIR>
Aplikasi Path:<App path=""></App>
Nama mesin:<Machine name=""></Machine>
Proses informasi:
Proses ID: 0001
Nama proses: w3wp.exe
Nama rekening: IIS APPPOOL\DefaultAppPool
 
Pengecualian informasi:
Jenis pengecualian: HttpException
Pengecualian pesan: URL-encoded bentuk data tidak sah.
di System.Web.HttpRequest.FillInFormCollection()
di System.Web.HttpRequest.get_Form()
di System.Web.HttpRequest.get_HasForm()
pada System.Web.UI.Page.GetCollectionBasedOnMethod (Boolean dontReturnNull)
di System.Web.UI.Page.DeterminePostBackMode()
pada System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


Pesan 2:
Aplikasi informasi:
Aplikasi domain: / LM/W3SVC/1/ROOT /<App domain=""><b00></b00></App>
Percaya tingkat: menengah
Aplikasi Virtual Path:<VDIR path=""><b00></b00></VDIR>
Aplikasi Path:<App path=""><b00></b00></App>
Nama mesin:<Machine name=""></Machine>
 
Proses informasi:
Proses ID: 0001
Nama proses: w3wp.exe
Nama rekening: IIS APPPOOL\DefaultAppPool
 
Pengecualian informasi:
Jenis pengecualian: InvalidOperationException
Pengecualian pesan: operasi ini tidak sah karena untuk keadaan saat ini objek.
di System.Web.HttpRequest.FillInFilesCollection()
di System.Web.HttpRequest.get_Files()
pada FileUpload.Page_Load (objek pengirim, EventArgs e)
pada System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp objek o objek t, EventArgs e)
pada System.Web.Util.CalliEventHandlerDelegateProxy.Callback (objek pengirim, EventArgs e)
pada System.Web.UI.Control.OnLoad (EventArgs e)
di System.Web.UI.Control.LoadRecursive()
pada System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint

Pesan 3:
Aplikasi informasi:
Aplikasi domain: / LM/W3SVC/1/ROOT /<App domain=""><b00></b00></App>
Percaya tingkat: menengah
Aplikasi Virtual Path:<VDIR path=""><b00></b00></VDIR>
Aplikasi Path:<App path=""></App>
Nama mesin:<Machine name=""></Machine>
 
Proses informasi:
Proses ID: 0001
Nama proses: w3wp.exe
Nama rekening: IIS APPPOOL\DefaultAppPool
 
Pengecualian informasi:
Jenis pengecualian: InvalidOperationException
Pengecualian pesan: operasi ini tidak sah karena untuk keadaan saat ini objek.
pada System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeDictionary (Int32 kedalaman)
pada System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeInternal (Int32 kedalaman)
pada System.Web.Script.Serialization.JavaScriptObjectDeserializer.BasicDeserialize (String masukan, Int32 depthLimit, JavaScriptSerializer serializer)
pada System.Web.Script.Serialization.JavaScriptSerializer.Deserialize (JavaScriptSerializer serializer, String input, jenis jenis, Int32 depthLimit)
pada System.Web.Script.Serialization.JavaScriptSerializer.DeserializeObject (String input)
pada Failing.Page_Load (objek pengirim, EventArgs e)
pada System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp objek o objek t, EventArgs e)
pada System.Web.Util.CalliEventHandlerDelegateProxy.Callback (objek pengirim, EventArgs e)
pada System.Web.UI.Control.OnLoad (EventArgs e)
di System.Web.UI.Control.LoadRecursive()
pada System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


Berkas log IIS menunjukkan entri yang menyerupai berikut ini:
2011-01-01 00: 00: 00:: 1 Posting /machine/default.aspx - 80-:: 1-500 0 0 187




PENYEBAB
Microsoft security update keamanan buletin MS11-100 alamat perubahan default jumlah maksimum bentuk tombol, file, dan JSON anggota yang ASP.NET akan menerima permintaan untuk 1.000. Perubahan ini dilakukan untuk mengatasi kerentanan Denial of Service bahwa Microsoft security bulletin MS11-100 dokumen.


PEMECAHAN MASALAH
Aplikasi yang mencapai batas ini untuk bentuk tombol atau file dapat memodifikasi ASP.NET appSetting Aspnet:MaxHttpCollectionKeys, seperti yang ditunjukkan di bawah ini dalam ASP.Aplikasi NET file konfigurasi. Pengaturan ini alamat kesalahan pesan 1 dan kesalahan pesan 2 dari "Gejala" bagian.
<configuration>  <appSettings>    <add key="aspnet:MaxHttpCollectionKeys" value="1000" />  </appSettings></configuration>


Catatan Jika Anda menggunakan ASP.NET 1.1, pengaturan yang disesuaikan dengan menambahkan nilai DWORD ke kunci registri berikut:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET\1.1.4322.0\MaxHttpCollectionKeys


Aplikasi yang memukul batas ini untuk JSON muatan dapat memodifikasi ASP.NET appSettingAspnet:MaxJsonDeserializerMembers, seperti yang ditunjukkan di bawah ini dalam ASP.Aplikasi NET file konfigurasi. Pengaturan ini alamat kesalahan pesan 3 dari "Gejala" bagian.
<configuration>  <appSettings>    <add key="aspnet:MaxJsonDeserializerMembers" value="1000" />  </appSettings></configuration>



CatatanMeningkatkan nilai ini di atas pengaturan default meningkat kerentanan server kerentanan Denial of Service yang telah dijelaskan pada buletin keamanan MS11-100.


REFERENSI
Untuk informasi lebih lanjut tentang buletin keamanan MS11-100, lihat artikel TechNet berikut: Untuk informasi lebih lanjut, klik nomor artikel berikut ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
2638420 MS11-100: Kerentanan dalam.NET Framework dapat memungkinkan ketinggian hak istimewa: 29 Desember 2011

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 2661403 - Tinjauan Terakhir: 01/12/2012 22:53:00 - Revisi: 2.0

Microsoft .NET Framework 4, Microsoft .NET Framework 3.5 Service Pack 1, Microsoft .NET Framework 3.5, Microsoft .NET Framework 2.0 Service Pack 2, Microsoft .NET Framework 2.0 Service Pack 1 (x86), Microsoft .NET Framework 2.0, Microsoft .NET Framework 1.1 Service Pack 1, Microsoft .NET Framework 1.1, Microsoft .NET Framework 1.0 Service Pack 3, Microsoft .NET Framework 1.0, Windows 7 Service Pack 1, Windows 7 Enterprise, Windows 7 Professional, Windows 7 Ultimate, Windows 7 Home Premium, Windows 7 Home Basic, Windows Server 2008 R2 Service Pack 1, Windows Server 2008 R2 Standard, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Datacenter, Windows Server 2008 Service Pack 2, Windows Vista Service Pack 2, Microsoft Windows Server 2003 Service Pack 2, Microsoft Windows XP Service Pack 3

  • atdownload kbbug kbexpertiseinter kbfix kbsecbulletin kbsecurity kbsecvulnerability kbmt KB2661403 KbMtid
Tanggapan