Un ASP.Cererea NET care are o mulțime de formă taste, fișiere sau JSON payload membrii fails cu o excep?ie

Traduceri articole Traduceri articole
ID articol: 2661403 - View products that this article applies to.
Măriți totul | Reduceți totul

REZUMAT

Microsoft security update MS11-100 limite numărul maxim de formă taste, fișierele și JSON membrii la 1000 în o cerere HTTP. Din cauza de această schimbare, ASP.Aplicații NET respinge solicitările care au mai mult de 1000 de aceste elemente. Clientii HTTP care face aceste tipuri de solicitări vor fi negat, și va apărea un mesaj de eroare în browserul web. Mesajul de eroare va au de obicei un cod de stare HTTP 500. Această nouă limită poate fi configurată pe o bază per aplica?ie. Vă rugăm să consultați secțiunea „Rezolvare"pentru instrucțiuni de configurare.


SIMPTOME

ASP.NET solicitările care au o mulțime de formă taste, fișiere sau JSON payload primi un răspuns de eroare de la server. Jurnalul de aplicații pe serverul are o intrare de avertizare cu un SursăAceasta este o versiune specifică a ASP.NET, și un ID de eveniment de 1309. Jurnalul de evenimente conține unul dintre următoarele mesaje:


Mesajul 1:
Cererea de informa?ii:
Domeniu de aplicare: / LM/W3SVC/1/ROOT /<App domain=""></App>
Încredere nivel: mediu
Aplicarea Path Virtual:<VDIR path=""></VDIR>
Aplicarea Path:<App path=""></App>
Nume mașină:<Machine name=""></Machine>
Procesul de informații:
Proces ID: 0001
Proces Nume: w3wp.exe
Socoteală nume: IIS APPPOOL\DefaultAppPool
 
Excepție informații:
Excepție tip: HttpException
Mesaj de excepție: date formular codificate în URL-ul nu este valid.
la System.Web.HttpRequest.FillInFormCollection()
la System.Web.HttpRequest.get_Form()
la System.Web.HttpRequest.get_HasForm()
la System.Web.UI.Page.GetCollectionBasedOnMethod (Boolean dontReturnNull)
la System.Web.UI.Page.DeterminePostBackMode()
la System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


Mesaj 2:
Cererea de informa?ii:
Domeniu de aplicare: / LM/W3SVC/1/ROOT /<App domain=""><b00></b00></App>
Încredere nivel: mediu
Aplicarea Path Virtual:<VDIR path=""><b00></b00></VDIR>
Aplicarea Path:<App path=""><b00></b00></App>
Nume mașină:<Machine name=""></Machine>
 
Procesul de informații:
Proces ID: 0001
Proces Nume: w3wp.exe
Socoteală nume: IIS APPPOOL\DefaultAppPool
 
Excepție informații:
Excepție tip: InvalidOperationException
Mesaj de excepție: operațiune nu este validă datorită starea curentă a obiectului.
la System.Web.HttpRequest.FillInFilesCollection()
la System.Web.HttpRequest.get_Files()
la FileUpload.Page_Load (Object sender, EventArgs e)
la System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp, o obiect, obiectul t, EventArgs e)
la System.Web.Util.CalliEventHandlerDelegateProxy.Callback (Object sender, EventArgs e)
la System.Web.UI.Control.OnLoad (EventArgs e)
la System.Web.UI.Control.LoadRecursive()
la System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint

Mesajul 3:
Cererea de informa?ii:
Domeniu de aplicare: / LM/W3SVC/1/ROOT /<App domain=""><b00></b00></App>
Încredere nivel: mediu
Aplicarea Path Virtual:<VDIR path=""><b00></b00></VDIR>
Aplicarea Path:<App path=""></App>
Nume mașină:<Machine name=""></Machine>
 
Procesul de informații:
Proces ID: 0001
Proces Nume: w3wp.exe
Socoteală nume: IIS APPPOOL\DefaultAppPool
 
Excepție informații:
Excepție tip: InvalidOperationException
Mesaj de excepție: operațiune nu este validă datorită starea curentă a obiectului.
la System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeDictionary (Int32 adâncime)
la System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeInternal (Int32 adâncime)
la System.Web.Script.Serialization.JavaScriptObjectDeserializer.BasicDeserialize (String intrare, Int32 depthLimit, JavaScriptSerializer serializer)
la System.Web.Script.Serialization.JavaScriptSerializer.Deserialize (JavaScriptSerializer serializer, șir de intrare, tip, Int32 depthLimit)
la System.Web.Script.Serialization.JavaScriptSerializer.DeserializeObject (String de intrare)
la Failing.Page_Load (Object sender, EventArgs e)
la System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp, o obiect, obiectul t, EventArgs e)
la System.Web.Util.CalliEventHandlerDelegateProxy.Callback (Object sender, EventArgs e)
la System.Web.UI.Control.OnLoad (EventArgs e)
la System.Web.UI.Control.LoadRecursive()
la System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


Fișierul de jurnal IIS arată o intrare care se aseamănă cu următorul text:
2011-01-01 00: 00: 00:: 1 POST /machine/default.aspx - 80-:: 1-500 0 0 187




CAUZĂ

Securitatea Microsoft update că securitate Buletinul MS11-100 adrese se modifică implicit numărul maxim de formă taste, fișierele și JSON membrii care ASP.NET va accepta într-o cerere la 1000. Această schimbare a fost făcută pentru a aborda o vulnerabilitate de refuz de servicii că buletinului de securitate Microsoft MS11-100 documente.


REZOLUȚIE

Aplicații care ajunge la această limită pentru formular chei sau dosar poate modifica ASP.NET appSetting aspnet:MaxHttpCollectionKeys, a?a cum se arată mai jos într-un ASP.Fișierul de configurare a aplicației NET. Această setare se adresează eroare mesaj 1 și error mesaj de la 2 la "Simptome" secțiune.
<configuration>
  <appSettings>
    <add key="aspnet:MaxHttpCollectionKeys" value="1000" />
  </appSettings>
</configuration>


Notă Dacă tu ești folosire ASP.1.1. NET, setarea este ajustată prin adăugarea o valoare DWORD la următoarea cheie de registry:

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


Cererile care a lovit această limită pentru sarcinile utile JSON poate modifica ASP.NET appSettingaspnet:MaxJsonDeserializerMembers, a?a cum se arată mai jos într-un ASP.Fișierul de configurare a aplicației NET. Această setare se adresează error mesaj de la 3 la "Simptome" secțiune.
<configuration>
  <appSettings>
    <add key="aspnet:MaxJsonDeserializerMembers" value="1000" />
  </appSettings>
</configuration>



NotăCreșterea această valoare deasupra majorărilor setarea implicită susceptibilitatea la serverul o vulnerabilitate de refuz de servicii care este discutată în buletinul de securitate MS11-100.


REFERINȚE

Pentru mai multe informații despre buletinul de securitate MS11-100, consultați următorul articol TechNet:
Microsoft Security Bulletin MS11-100 - critică
Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a vedea articolul în baza de cunoștințe Microsoft:
2638420 MS11-100: De vulnerabilitate în.NET Framework ar putea permite altitudine de privilegiu: 29 decembrie 2011

Proprietă?i

ID articol: 2661403 - Ultima examinare: 12 ianuarie 2012 - Revizie: 2.0
SE APLICĂ LA:
  • Microsoft .NET Framework 4.0
  • 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, când se utilizează cu:
    • 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, când se utilizează cu:
    • 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, când se utilizează cu:
    • Windows Server 2008 for Itanium-Based Systems
    • Windows Server 2008 Datacenter
    • Windows Server 2008 Enterprise
    • Windows Server 2008 Standard
    • Windows Web Server 2008
  • Pachet Service Pack 2 pentru Windows Vista, când se utilizează cu:
    • 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, când se utilizează cu:
    • 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, când se utilizează cu:
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional
Cuvinte cheie: 
atdownload kbbug kbexpertiseinter kbfix kbsecbulletin kbsecurity kbsecvulnerability kbmt KB2661403 KbMtro
Traducere automată
IMPORTANT: Acest articol a fost tradus de software-ul de traducere automată Microsoft, si nu de un traducător. Microsoft vă oferă atât articole traduse de persoane, cât și articole traduse automat, astfel incat aveti access la toate articolele din Baza noastră de informatii în limba dvs. materna. Totuși, un articol tradus automat nu este întotdeauna perfect. Acesta poate conține greșeli de vocabular, sintaxă sau gramatică, la fel cum un vorbitor străin poate face greșeli vorbind limba dvs. materna. Compania Microsoft nu este responsabilă pentru nici o inexactitate, eroare sau daună cauzată de traducerea necorespunzătoare a conținutului sau de utilizarea traducerii necorespunzătoare de către clienții nostri. De asemenea, Microsoft actualizează frecvent software-ul de traducere automată.
Face?i clic aici pentru a vizualiza versiunea în limba engleză a acestui articol:2661403

Trimite?i feedback

 

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