2010-08-19 34 views
0

當一個視圖模型被傳入到asp.net mvc控制器時,輸入是否會針對sql注入自動清理,或者是否必須使用類似Microsoft Antixss庫中的AntiXss.GetSafeHtml來清理ViewModel上的每個屬性?做的asp.net MVC 2控制器自動清理視圖模型的SQL注入,或者我必須手動?

我是新來的MVC,所以我不熟悉asp.net mvc控制器所做的所有幕後的事情。

謝謝!

編輯 - 我的意思是說我應該清理我的輸入,以便在sql下使用。 MVC中的防僞標記是否足以阻止xss?

回答

0

我不認爲它們已經過清理,儘管您似乎在文本中引用了標題和XSS中的sql注入 - 您擔心哪些問題?

您仍然需要正確地參數化任何SQL查詢,並且任何到前端的html輸出都應在Html.Encode()內。


要回答的評論,我認爲,前端應該做任何排序的SQL驗證(如周圍有簡單的消毒方式),而是依賴於正確paramterized查詢阻止這種攻擊。任何其他方式都有待解決。


另外 - 反僞造令牌減輕跨站請求僞造(XSRF),而不是XSS。在<script>alert("Hello");</script>中輸入您的文本框之一,然後轉到您的網站上的另一個頁面,這可能會直接在屏幕上輸出(例如,在表格中或作爲只讀視圖) - 如果您沒有正確編碼,一個問題。

+0

糟糕你的權利,我會編輯我的問題。我很擔心,但我更擔心sql注入。 xss的東西似乎被反僞造標記所覆蓋。 – 2010-08-19 14:29:13

+0

@JasonM - 請參閱我上面的編輯。 – Paddy 2010-08-19 15:21:01

+0

明白了,謝謝! – 2010-08-19 16:06:06

相關問題