安全编码实践(.net)将其留给框架是一个明智的想法

本文关键字:一个 编码 net 安全 框架 | 更新日期: 2023-09-27 18:17:34

早在我的开发者时代(大约2011年),我就使用AntiXSS库之类的东西来帮助构建更安全的应用程序。我现在从一些与我一起工作的开发人员那里得知,. net框架现在"做了很多这样的事情"——这意味着(在我看来)这可能是懒惰的借口。

撇开懒惰不谈——现在的。net框架"足够了"吗?还是应该用其他安全库来增强它?如果有,是哪些?

更新:

我不担心任何一个特定的威胁;我想知道依赖。net框架是否被认为是好的(或"足够好")实践。

FYR:安全编码实践是"以防止意外引入安全漏洞的方式开发计算机软件的实践":

  • http://en.wikipedia.org/wiki/Secure_coding
  • https://www.owasp.org/index.php/OWASP_Secure_Coding_Practices_-_Quick_Reference_Guide
这方面的一个例子是解析/验证来自用户的输入。

安全编码实践(.net)将其留给框架是一个明智的想法

我想知道依赖。net框架是否被认为是好的(或者"足够好")实践

如果您正确地使用了框架,那么是的,它的各种安全特性的实现可以被认为是安全的。

然而,您必须很好地理解您试图减轻的威胁,以便知道您正在以预期的方式使用框架。通常需要启用/配置安全特性以提供所需的安全性。

例子:

  • HTML编码工作"开箱",但你可以很容易地引入双编码值或让用户输入滑过编码,如果你不小心。
  • ASP。Net不会验证用户是否篡改了id/特权值。
  • cookie可以设置为HTTP-only并且需要SSL,但是您必须为此编写代码。
  • ASP。Net没有提供(据我所知)一种净化HTML同时仍然允许良性标记的方法。这可能是一个很好的使用第三方库。
  • ASP。Net有一个很好的反crsf实现,但是你必须在你的代码中积极地使用它。在大多数情况下,框架不会阻止你绕过它并做一些不安全的事情。