我知道我的回答引用的Java,但我覺得它至少提供一些背景(另一個原因響應大對此事發表評論)爲什麼我們需要的服務器/客戶端輸入的衛生也。
從你所引用的文件:
String Fields
To validate string fields, such as names, addresses, tax identification numbers, and so on, use regular expressions to do the following:
Constrain the acceptable range of input characters.
Apply formatting rules. For example, pattern-based fields, such as tax identification numbers, ZIP codes, or postal codes, require specific patterns of input characters.
Check lengths.
如果你還沒有任何在客戶端/服務器端,熟練的攻擊者可能會破壞你的系統通過提供較長的輸入限制此字符串/類型/驗證長度字符串。事實上,這是Java中的一個問題(不確定它適用於.NET/IIS,假設它是因爲.NET使用散列碼實現平等,我可能也是錯誤的)。
這裏有趣的是,我們有前兩天在這裏SO。
如果您可以將字符串大小限制爲限制字符。您可以安全地避免這些問題。
好的答案!那麼...... – markzzz 2012-02-15 13:45:09
1 - 「如果你將數據傳遞給標準的.NET Framework對象,那麼這些應該處理他們自己的衛生問題」我應該調用哪種類型的句柄?或者你的意思是「它自動調用它自己的衛生工具?」 – markzzz 2012-02-15 13:45:42
2 - 是的,我的意思是「肯定」在考慮「請求驗證」活動。事實上,將它變成虛假:它是一個很好的功能,我沒有看到爲什麼要禁用它:) – markzzz 2012-02-15 13:46:24