2012-01-22 54 views
8

使用最近發佈的asp.net漏洞修補程序ms11-100更新我們的系統後,我們發現某些頁面開始失敗,出現異常「[ HttpException(0x80004005的):URL編碼的表單數據是無效]」這是在asp.net論壇涵蓋這裏:ASP.NET Web.config繼承不適用於MS11-100的MaxHttpCollectionKeys設置

http://forums.asp.net/t/1754512.aspx/1?Microsoft+security+bulletin+MS11+100+breaking+our+site

和計算器在這裏:

ASP.NET MS11-100: how can I change the limit on the maximum number of posted form values?

我試圖嘗試的是通過將該頁面移動到它自己的文件夾,將攻擊區域所建議的更改限制到特定頁面,以便我可以在該文件夾中使用設置爲aspnet的特定web.config:MaxHttpCollectionKeys一個大於默認值1000的值。

我發現除非在根文件夾的web.config中指定此設置,否則此設置不會生效。看起來像asp.net只是在該頁面的新文件夾中的web.config文件中忽略該設置。

還有什麼我需要做的,使這種情況發生?或者根本不可能,因爲環境的性質?

+0

我不確定這個問題,但是在低級配置的某個地方,這部分可以用'overrideModeDefault =「Deny」'鎖定。有關Web.config繼承和覆蓋的更多信息,請參閱:[ASP.NET開發人員應瞭解的關於Web.config繼承和覆蓋的10件事](http://weblogs.asp.net/jgalloway/archive/2012/01/17/10 -things-asp-net-developers-should-know-about-web-config-inheritance-and-overrides.aspx) – tugberk

+0

@ tugberk這個密鑰在部分,所以它沒有鎖定在站點級別。 –

回答

4

根據我的理解,這些東西的工作原理 - 我有一些疑慮,你可以改變文件夾級別web.config的設置。 看起來像MaxHttpCollectionKeys屬於應用程序池級別,因此要更改基本值 - 您應該創建另一個應用程序池。

+1

謝謝阿列克謝,那正是我所擔心的:)。 – fallenprogrammr

1

我也試圖把它放在一個子文件夾中,但沒有運氣。只要我把它放在根web.config中就行了。