Javascript

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

  • July 24, 2012

我們的開發團隊一直在考慮將 Node.js 用於需要高級安全性的新企業應用程序。使用者包括聯邦警察,因此我們很有可能最終會接受安全審計。

  • 鑑於 Node.js 相對較新,它是否還有需要解決的安全問題?
  • 是否有人對 Node.js 有任何開發經驗,並且對使用其結構的潛在攻擊有任何見解?

我很感激幫助。

編輯: StackOverflow 上的一些使用者建議使用反向代理,但我很好奇是否有人有更多建議。

儘管我無法指出任何具體報告的缺陷,但我會對 node.js 架構感到緊張——您的程式碼在其中作為網路伺服器程式碼的一部分執行。雖然使用 mod_php 之類的東西,仍然只有一個程序同時處理 HTTP 和邏輯層,兩者之間有明顯的功能分離,並且 Web 伺服器和邏輯層之間的介面經過明確設計和測試以適應故障- 特別是在邏輯層。

此外,還有許多可用於網路伺服器(尤其是 Apache)的工具,它們有助於管理並(正確使用)增強安全性。

另一個主要考慮因素是技能/支持/培訓的可用性——無論其質量/實用性如何,與其他 Web 開發平台相比,node.js 都有很多工作要做。

我們的開發團隊一直在考慮使用 Node.js

您正在專門嘗試在一個您並不完全熟悉的平台上傳遞應該是非常安全的應用程序(從您上面的陳述來看),這似乎是非常魯莽的。Web 應用程序中的大多數安全漏洞不是因為開發環境中的錯誤,而是因為添加在頂部的定制程式碼中的錯誤。

當然,使用反向代理將有助於獲得標準的 HTTP 日誌記錄、異常檢測並減少協議級別攻擊的影響。

建構安全 Web 應用程序的最佳工具之一是mod_security - AFAIK,它只能在 Apache 中執行 - 但它提供了部署前端系統的可能性(與mod_proxy一起),提供通常的 Web 伺服器功能(日誌記錄、靜態內容)以及身份驗證服務,並使用 node.js 作為後端。

引用自:https://serverfault.com/questions/285123