http://msdn.microsoft.com/zh-cn/library/f13d73y6(v=vs.100).aspx
MSDN中有许多关于这方面的文档
http://blog.csdn.net/lanbingkafei/article/details/7550815
文件上传攻击
http://vod.sjtu.edu.cn/help/Article_Show.asp?ArticleID=559
Web Security網站安全基礎篇(二)
http://newsletter.ascc.sinica.edu.tw/news/read_news.php?nid=1917
脚本攻击防范策略完全篇
常见表单及URL攻击的几种方法
http://www.51testing.com/?uid-342316-action-viewspace-itemid-219957
严格的身份验证,每当有人请求访问非公共信息时,都要确保他们的身份与所声称的一致。使用Credential凭据防止担子欺骗,不将密码或其他敏感信息保存在 Cookie 中。
授权文件访问权限。每当您从不可信的信息源获得信息时,都要采取步骤确保它不包含任何可执行代码。
使用 Windows 的日志记录功能来保存服务器上任何活动的审核追踪。
防止信息泄露的最佳方法是没有要泄露的信息。
存储密码的另一种方法是只存储密码的哈希。当用户提供凭据时,您可以散列用户的密码并仅比较二者的哈希。如果必须公开敏感信息,建议您在存储信息时将其加密,并使用安全套接字层 (SSL) 在将此信息发送到浏览器或从浏览器发送时将其加密。
使用 IIS,您可以调节应用程序,即,它会限制将为其提供服务的请求的数量。
关闭不使用的端口并关闭不使用的服务。
运行监视入站和出站通信的病毒检查程序。
使用 Windows 事件日志记录,并且经常检查这些日志,以查找可疑活动。这样的活动包括:反复尝试登录您的系统,以及向您的 Web 服务器发出数量巨大的请求。
将您的 Web 应用程序的文件保存在应用程序根目录下的一个文件夹中。不要让用户指定在应用程序中进行文件访问的路径。这样有助于防止用户访问服务器的根目录。
防止恶意用户的输入
如果您的应用程序在浏览器和服务器之间传输敏感信息,请考虑使用安全套接字层 (SSL)。
考虑将 Cookie 的 Secure 和 HttpOnly 属性设置为 true。
将 IIS 配置为使用进程调节,这样可以防止应用程序消耗过多的 CPU 时间。