我正在寻找 ASP.Net 中最好的可重用库和内置功能,以防止 OWASP 十大安全漏洞,如注入、XSS、CSRF 等,以及用于检测这些漏洞的易于使用的工具,以供测试团队使用。
您认为在开发生命周期中何时开始将安全编码整合到应用程序中的最佳时机?
我的两分钱:
并从维基百科的CSFR文章中提取:
- 要求在 GET 和 POST 参数中进行身份验证,而不仅仅是 cookie;
- 检查 HTTP Referer 标头;
- 确保没有 crossdomain.xml 文件授予对 Flash 电影的意外访问权限[14]
- 限制身份验证 cookie 的生命周期
- 处理 POST 时,如果您知道 URL 参数应该来自表单,请忽略它们
- 在所有表单提交和副作用 URL 中要求一个秘密的、用户特定的令牌可以防止 CSRF;攻击者的站点无法在其提交的内容中放入正确的令牌
我的经验是,仅仅给开发人员一个工具箱并希望得到最好的结果实际上并没有那么好。安全性是代码质量的一个方面。安全问题是错误。像所有错误一样,即使是更了解的开发人员最终也会编写它们。解决这个问题的唯一方法是制定一个流程来捕获错误。
想想你需要什么样的安全过程。只做自动化测试?代码审查?手动黑盒测试?设计文件审查?您将如何对错误跟踪系统中的安全问题进行分类?您将如何确定修复安全漏洞的优先级?您可以向客户提供什么样的保证?
可以帮助您入门的是 OWASP ASVS 验证标准,它可以帮助您验证您的安全验证过程是否确实有效:http ://code.google.com/p/owasp-asvs/wiki/ASVS
第一个最佳实践:在编码时注意漏洞。如果您编写代码,请考虑一下您在做什么。