查找Node.js安全漏洞,并在有人破解您的应用程序之前通过修复来保护它们。
有一些在线工具可以找到 PHP,WordPress,Joomla等常见的安全漏洞,他们可能无法检测您的应用程序是否构建在Node.js上。
在最新发现中,超过80%的snyk用户发现他们的Node.js应用程序容易受到攻击
由于配置错误,过时的NPM包等可能存在数百个漏洞,以下安全扫描程序应该能够帮助您找到安全漏洞。
注意:本文重点介绍查找漏洞和添加安全保护的工具,了解如何保护node.js免受在线威胁

1 Snyk

Snyk检查你的node.js GitHub存储库以查找依赖项中的弱点并持续修复它们。您可以使用NPM安装它。使用Snyk有四个主要优点

  1. 测试易受攻击的依赖项
  2. 获得有关新漏洞的通知
  3. 通过必要的升级和补丁来降低风险
  4. 防止添加更多依赖项

您可以在公共Node.js应用程序GitHub存储库中免费使用Snyk。除了您的应用程序,您还可以在公共NPM包上执行测试,如express,ionic等。
【20190402】Netsparker Web应用程序安全扫描程序 - 图1
您可以查看其中一个测试应用程序的扫描结果

2来源清除

使用SourceClear自动扫描Node.js应用程序,并在部署到生产环境之前修复问题。Source Clear帮助您构建安全的应用程序,而不仅仅是Node.js,还支持Python,Ruby和Java项目。
【20190402】Netsparker Web应用程序安全扫描程序 - 图2
Source Clear管理大量库和漏洞数据库,以检测项目中的所有类型的安全风险。使用Source Clear,您可以灵活地与构建工具集成并自动扫描新提交。
【20190402】Netsparker Web应用程序安全扫描程序 - 图3
您可以完全了解所使用的库,看看它们是否容易受到攻击。

3节点安全平台

节点安全平台也称为nsp,是监控节点应用程序安全性的最流行的解决方案之一。
您可以在GitHub pull请求中添加检查,因此在生产环境中不会部署易受攻击的代码。
NSP是免费的开源和第一个私人回购。
【20190402】Netsparker Web应用程序安全扫描程序 - 图4

4 Acunetix

Acunetix扫描整个网站,查找前端和服务器端应用程序中的安全漏洞,并为您提供可操作的结果。
【20190402】Netsparker Web应用程序安全扫描程序 - 图5
针对超过3000个漏洞的Acunetix测试包括OWASP前10名,XSS,SQLi等。您可以注册14天试用以查看您的存储桶中是否有漏洞。

5 Retire.js

Retire.js会检查您的代码是否存在已知的公共漏洞,并告知您是否有任何detect.Retire.js是命令行扫描程序,并且可用作Chrome和Firefox扩展程序。

6 OWASP依赖性检查

与Retire.js类似,OWASP依赖性检查确定Node.js,Python和Ruby中是否存在任何公开披露的漏洞。
您可以将其用作命令行,ant任务,Maven或Jenkins插件。
此外,您可以考虑实施头盔,以使用必要的HTTP标头保护您的应用。默认情况下,头盔可帮助您应用以下标题。

  • DNS预取
  • 隐藏X-Powered-By
  • HTTP严格传输安全性
  • NoSniff
  • XSS保护

实施后,您可以使用在线工具来验证HTTP标头

7 NodeJsScan

静态代码扫描程序。NodeJsScan可以与CI / CD管道集成并准备好它的docker。它的自托管解决方案具有漂亮的仪表板。
【20190402】Netsparker Web应用程序安全扫描程序 - 图6
您可以将NodeJsScan用作基于Web的CLI或Python API。它扫描远程代码注入,打开重定向,SQL注入,XSS等。
结论
上述工具应该能够帮助您扫描nodejs应用程序中的安全漏洞,以便您可以保护它们。除了保护核心Nodejs应用程序之外,您还应该考虑使用WAF来防御在线威胁和DDoS攻击。