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

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 2661403 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

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:
Microsoft Security Bulletin MS11-100 - kritis
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

Properti

ID Artikel: 2661403 - Kajian Terakhir: 12 Januari 2012 - Revisi: 2.0
Berlaku bagi:
  • 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, ketika digunakan dengan:
    • Windows 7 Enterprise
    • Windows 7 Professional
    • Windows 7 Ultimate
    • Windows 7 Home Premium
    • Windows 7 Home Basic
  • Windows 7 Enterprise
  • Windows 7 Professional
  • Windows 7 Ultimate
  • Windows 7 Home Premium
  • Windows 7 Home Basic
  • Windows Server 2008 R2 Service Pack 1, ketika digunakan dengan:
    • Windows Server 2008 R2 Standard
    • Windows Server 2008 R2 Enterprise
    • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Standard
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 Service Pack 2, ketika digunakan dengan:
    • Windows Server 2008 for Itanium-Based Systems
    • Windows Server 2008 Datacenter
    • Windows Server 2008 Enterprise
    • Windows Server 2008 Standard
    • Windows Web Server 2008
  • Windows Vista Service Pack 2, ketika digunakan dengan:
    • Windows Vista Business
    • Windows Vista Enterprise
    • Windows Vista Home Basic
    • Windows Vista Home Premium
    • Windows Vista Starter
    • Windows Vista Ultimate
    • Windows Vista Enterprise 64-bit edition
    • Windows Vista Home Basic 64-bit edition
    • Windows Vista Home Premium 64-bit edition
    • Windows Vista Ultimate 64-bit edition
    • Windows Vista Business 64-bit edition
  • Microsoft Windows Server 2003 Service Pack 2, ketika digunakan dengan:
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows XP Professional x64 Edition
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows XP Service Pack 3, ketika digunakan dengan:
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional
Kata kunci: 
atdownload kbbug kbexpertiseinter kbfix kbsecbulletin kbsecurity kbsecvulnerability kbmt KB2661403 KbMtid
Penerjemahan Mesin
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

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com