0
可能通過Request.QueryString.Get("url")
得到一個字符串,但ASP.NET引發了一個異常:「客戶端檢測到潛在危險的Request.Path值」。 我不會爲任何目的而信任此URL(例如,只是將客戶端重定向到該URL)。我應該改變我的設計還是簡單地關閉ASP.NET異常?如何抑制此驗證?在ASP.NET中通過URL獲取URL會很危險嗎?
可能通過Request.QueryString.Get("url")
得到一個字符串,但ASP.NET引發了一個異常:「客戶端檢測到潛在危險的Request.Path值」。 我不會爲任何目的而信任此URL(例如,只是將客戶端重定向到該URL)。我應該改變我的設計還是簡單地關閉ASP.NET異常?如何抑制此驗證?在ASP.NET中通過URL獲取URL會很危險嗎?
其實和用戶輸入一樣危險。取決於你將要使用它的內容。
asp.net將嘗試限制某些可能的「錯誤」,在這種情況下,它會進行請求驗證,以防止可能的XSS等,並嘗試從您自己身上節省。你當然可以覆蓋這個<%@ Page validateRequest="false" %>
,但你需要確實確保你現在不要在你的系統中引入安全問題。
登錄重定向也使用這個,只要確保它是HTML編碼。 – Marko 2010-10-31 20:31:19
我打算不讓用戶對它進行編碼以便閱讀,那麼他們可以輕鬆地進行更改。然後怎樣呢 ? – Xaqron 2010-10-31 20:37:54