Node.js 在企业安全方面是否成熟?

cro*_*ies 6 javascript node.js

我们的开发团队一直在考虑将 Node.js 用于需要高级安全性的新企业应用程序。用户包括联邦警察,因此很有可能我们最终会接受安全审计。

  • 鉴于 Node.js 相对较新,它是否还有安全问题需要解决?
  • 有没有人对 Node.js 有任何开发经验,并对使用其结构的潜在攻击有任何见解?

我很感激你的帮助。

编辑: StackOverflow 上的一些用户建议使用反向代理,但我很好奇是否有人有更多建议。

sym*_*ean 5

虽然我无法指出任何具体报告的缺陷,但我会对 node.js 架构感到紧张 - 您的代码作为网络服务器代码的一部分运行。虽然像 mod_php 这样的东西,仍然只有一个进程同时处理 HTTP 和逻辑层,两者之间有明显的功能分离,并且网络服务器和逻辑层之间的接口已经明确设计和测试以适应故障- 特别是在逻辑层。

此外,还有许多可用于网络服务器(特别是 Apache)的工具,可以促进管理并(正确使用)增强安全性。

另一个主要考虑因素是技能/支持/培训的可用性——不管它的质量/实用性如何,与其他 Web 开发平台相比,node.js 有很多事情要做。

我们的开发团队一直在考虑使用 Node.js

您专门尝试在一个平台上交付应该是非常安全的应用程序(从您上面的陈述来看),您并不完全熟悉,这似乎非常鲁莽。Web 应用程序中的大多数安全漏洞不是因为开发环境中的错误,而是由于添加在顶部的定制代码中的错误。

当然,使用反向代理将有助于获得标准的 HTTP 日志记录、异常检测并减少协议级攻击的影响。

构建安全 Web 应用程序的最佳工具之一是mod_security - AFAIK,它只能在 Apache 中运行 - 但它提供了部署前端系统的可能性(与mod_proxy 一起)提供通常的 Web 服务器功能(日志记录、静态内容)以及身份验证服务,并使用 node.js 作为后端。