node/js 漏洞

Vulnerabilities can exist in all products. The larger your software grows, the greater the potential for vulnerabilities.

所有产品中都可能存在漏洞。 您的软件增长得越大,潜在的漏洞就越大。

Vulnerabilities create opportunities for exploits which could ruin both the user experience and the product itself.

漏洞为利用创造了机会,可能破坏用户体验和产品本身。

Additionally, in today’s fast-paced world, the rate of vulnerabilities increase as companies demand rapid development (or update) processes. And exploiters are everywhere, looking to take advantage of them.

此外,在当今快节奏的世界中,随着公司要求快速开发(或更新)流程,漏洞的发生率也在增加。 剥削者无处不在,希望利用它们。

That is why it’s important to check for vulnerabilities as early as possible in your applications. This can help you make sure that the final product is secure, and save you a lot of time in the long-run.

因此,尽早检查应用程序中的漏洞很重要。 这可以帮助您确保最终产品是安全的,从长远来看可以节省大量时间。

In this article, we'll look at six tools that will help you check for vulnerabilities in Node.js.

在本文中,我们将研究六个工具,这些工具将帮助您检查Node.js中的漏洞。

Node.js中的漏洞 (Vulnerabilities in Node.js)

Security vulnerabilities are very common in Node.js. As developers, we keep using open source tools because we do not want to reinvent the wheel. This makes development easier and faster for us, but at the same time it introduces possible vulnerabilities to our applications.

安全漏洞在Node.js中非常常见。 作为开发人员,我们一直在使用开源工具,因为我们不想重新发明轮子。 这使我们的开发更容易,更快捷,但同时又为我们的应用程序引入了可能的漏洞。

The best we can do for ourselves is to continually verify the packages we use because the more dependencies we use, the more room there is for more vulnerabilities.

我们能为自己做的最好的事情就是不断验证我们使用的软件包,因为我们使用的依赖项越多,存在更多漏洞的空间就越大。

Manually checking dependencies can be stressful and can increase development time. And going online to find out how vulnerable a package is before installing it can be time-consuming, especially for an application with many dependencies.

手动检查依赖关系可能会很麻烦,并且会增加开发时间。 并且在安装之前先上网查找软件包的脆弱性可能是耗时的,特别是对于具有许多依赖性的应用程序而言。

This is why we need automated tools to help us with this process.

这就是为什么我们需要自动化工具来帮助我们完成此过程的原因。

用于检查Node.js中漏洞的工具 (Tools for Checking for Vulnerabilities in Node.js)

1. Retire.js (1. Retire.js)

Retire.js helps developers detect versions of libraries or modules with known vulnerabilities in Node.js applications.

Retire.js帮助开发人员检测Node.js应用程序中具有已知漏洞的库或模块的版本。

It can be used in four ways:

它可以以四种方式使用:

  • A command line scanner to scan a Node.js application.命令行扫描程序,用于扫描Node.js应用程序。
  • A Grunt plugin (grunt-retire), used to scan Grunt enabled applications.

    Grunt插件( grunt-retire ),用于扫描启用了Grunt的应用程序。

  • Browser extensions (Chrome and Firefox). These scan visited sites for references to insecure libraries and puts warnings in the developer console.浏览器扩展(Chrome和Firefox)。 这些扫描访问的站点以引用不安全的库,并在开发人员控制台中发出警告。
  • Burp and OWASP Zap Plugin, used for penetration testing.Burp和OWASP Zap插件,用于渗透测试。

2. WhiteSource翻新 (2. WhiteSource Renovate)

WhiteSource Renovate is a multi-platform and multi-language open source tool by WhiteSource which performs automated dependency updates in software updates.

WhiteSource Renovate是WhiteSource的一种多平台,多语言的开源工具,可以在软件更新中执行自动的依赖项更新。

It offers features such as automated pull requests when dependencies need updating, supports numerous platforms, easy modification, and lots more. All changelogs and commit histories are included in each update of the application.

它提供了功能,例如在需要更新依赖项时自动执行拉取请求,支持众多平台,易于修改等等。 所有更改日志和提交历史记录都包含在应用程序的每次更新中。

It can be used in various ways such as:

它可以以多种方式使用,例如:

  • A command-line tool for automating the process of updating dependencies to invulnerable dependencies.一个命令行工具,用于自动将依赖关系更新为无敌的依赖关系。
  • Github Application for performing the automation process on GitHub repositoriesGithub应用程序,用于在GitHub存储库上执行自动化过程
  • GitLab Applications for integrating the automation process on GitLab repositoriesGitLab应用程序,用于在GitLab存储库上集成自动化流程

WhiteSource Renovate also has an on-premises solution that extends the CLI tool to add more features thereby making your applications more efficient.

WhiteSource Renovate还具有一个本地解决方案,该解决方案扩展了CLI工具以添加更多功能,从而使您的应用程序更高效。

3.OWASP依赖性检查 (3.OWASP Dependency-Check)

Dependency-Check is a Software Composition Analysis (CPA) tool used for managing and securing open source software.

依赖关系检查是一种软件组成分析(CPA)工具,用于管理和保护开源软件。

Developers can use it to identify publicly disclosed vulnerabilities in Node.js, Python, and Ruby.

开发人员可以使用它来识别Node.js,Python和Ruby中公开披露的漏洞。

The tool inspects the project's dependencies to gather information about every dependency. It determines if there is a Common Platform Enumeration (CPE) identifier for a given dependency, and if found, it generates a list of associated Common Vulnerability and Exposure (CVE) entries.

该工具检查项目的依存关系,以收集有关每个依存关系的信息。 它确定给定依赖项是否存在通用平台枚举(CPE)标识符,如果找到,它将生成关联的通用漏洞和披露(CVE)条目的列表。

Dependency-Check can be used as a CLI tool, a Maven plugin, an Ant Task and a Jenkins plugin.

Dependency-Check可用作CLI工具, Maven插件, Ant Task和Jenkins插件 。

4. OSS索引 (4. OSS INDEX)

The OSS Index allows developers to search for millions of components to discover the vulnerable and invulnerable ones. This assures developers that the components they plan on using are well protected.

OSS索引使开发人员可以搜索数百万个组件以发现易受攻击的组件。 这可以确保开发人员计划使用的组件受到良好的保护。

They also provide developers with various tools and plugins for programming languages like JavaScript.

他们还为开发人员提供了各种工具和插件,用于诸如JavaScript的编程语言。

These allow them to scan projects for open source vulnerabilites as well as integrate security into the development process of the project.

它们使他们可以扫描项目中的开源漏洞,并将安全性集成到项目的开发过程中。

5. Acutinex (5. Acutinex)

Acunetix is a web application security scanner that allows developers to identify vulnerabilites in Node.js applications and enables them to fix the vulnerabilities to prevent hackers. It comes with a 14 day trial for testing applications.

Acunetix是一个Web应用程序安全扫描程序,可让开发人员识别Node.js应用程序中的漏洞,并使他们能够修复漏洞以防止黑客入侵。 它附带一个为期14天的测试应用程序试用版。

The benefits of using Acunetix to scan web applications are numerous. Some of them are:

使用Acunetix扫描Web应用程序的好处很多。 他们之中有一些是:

  • Tests for over 3000 vulnerabilities测试3000多个漏洞
  • Analysis of external links for malwares and phishing URLs分析恶意软件和网络钓鱼URL的外部链接
  • Scanning of HTML, JavaScript, single page applications, and web services扫描HTML,JavaScript,单页应用程序和Web服务

6. NODEJSSCAN (6. NODEJSSCAN)

NodeJsScan is a static security code scanner. It is used for discovering security vulnerabilities in web applications, web services and serverless applications.

NodeJsScan是静态安全代码扫描程序。 它用于发现Web应用程序,Web服务和无服务器应用程序中的安全漏洞。

It can be used as a CLI tool (which allows NodeJsScan to be integrated with CI/CD pipelines), a web based application, and also has a Python API.

它可以用作CLI工具(允许NodeJsScan与CI / CD管道集成),基于Web的应用程序,并且还具有Python API。

结论 (Conclusion)

Packages, libraries and components for Node.js applications are released regularly, and the fact that they are open source leaves room for vulnerabilities. This is true whether you're working with Node.js, Apache Struts vulnerabilities, or any other open source framework.

Node.js应用程序的软件包,库和组件会定期发布,而它们是开源的事实为漏洞留下了空间。 无论您使用的是Node.js, Apache Struts漏洞还是任何其他开源框架,这都是事实。

Developers need to watch out for vulnerabilities in new releases of packages and know when it's necessary to update packages. The tools above can ease the process of creating efficient and reliable products.

开发人员需要注意新版本软件包中的漏洞,并知道何时需要更新软件包。 上面的工具可以简化创建高效,可靠产品的过程。

翻译自: https://www.freecodecamp.org/news/6-tools-you-can-use-to-check-for-vulnerabilities-in-node-js/

node/js 漏洞

node/js 漏洞_6个可用于检查Node.js中漏洞的工具相关推荐

  1. c语言哈密顿路径算法,用于检查给定图中是否存在哈密顿循环或路径的C ++程序...

    哈密顿循环是哈密顿路径,因此从哈密顿路径的最后一个顶点到第一个顶点有一条边(在图中).它在无向图中是一条路径,该路径恰好访问该图的每个顶点一次. 功能和目的:Begin 1.function isSa ...

  2. js和python哪个好_Python与Node.JS:哪一个比较适合您的项目?

    在进行新项目时选择正确的编程语言可能是程序员经常做出的比较艰巨的决定之一. 这个挑战背后的原因是,每个新项目都会遇到一个独特的问题,并且在编程世界中,没有任何行业的大师. 不同的编程语言都有其长处和短 ...

  3. 检查xml文件中包含非法xml字符的个数(

    xml中需要过滤的字符分为两类,一类是不允许出现在xml中的字符,这些字符不在xml的定义范围之内.另一类是xml自身要使用的字符,如果内容中有这些字符则需被替换成别的字符. 第一类字符 对于第一类字 ...

  4. 使用 husky 和 lint-staged 检查 Node.js 的代码一致性

    在软件开发过程中,代码风格检查(Code Linting)是保障代码规范和一致性的有效手段.过去,Lint 的工作一般在 Code Review 或者 CI 的时候进行,但这样会导致问题的反馈链,浪费 ...

  5. node.js搭建简单服务器,用于前端测试websocket链接方法和性能测试

    WebSocket简介 谈到Web实时推送,就不得不说WebSocket.在WebSocket出现之前,很多网站为了实现实时推送技术,通常采用的方案是轮询 (Polling)和Comet技术,Come ...

  6. 构建node.js基础镜像_我如何使用Node.js构建工作抓取网络应用

    构建node.js基础镜像 by Oyetoke Tobi Emmanuel 由Oyetoke Tobi Emmanuel 我如何使用Node.js构建工作抓取网络应用 (How I built a ...

  7. 深入浅出Node.js(一):什么是Node.js(转贴)

    以下内容转自:http://www.infoq.com/cn/articles/what-is-nodejs/ 作者:崔康 [编者按]:Node.js从2009年诞生至今,已经发展了两年有余,其成长的 ...

  8. Node.js中的常用工具类util

    util是一个Node.js核心模块,提供常用函数的集合,用于弥补JavaScript的功能的不足,util模块设计的主要目的是为了满足Node内部API的需求.其中包括:格式化字符串.对象的序列化. ...

  9. 深入浅出Node.js(一):什么是Node.js

    专栏的第一篇文章<什么是Node.js>尝试从各个角度来阐述Node.js的基本概念.发展历史.优势等,对该领域不熟悉的开发人员可以通过本文了解Node.js的一些基础知识. 从名字说起 ...

最新文章

  1. MYSQL自定义排序
  2. 【渝粤教育】国家开放大学2018年春季 3780-21T燃气设备操作与维护 参考试题
  3. 设计模式的C语言应用-责任链模式-第三章
  4. MySQL按照汉字拼音首字母排序
  5. 修改Ubuntu系统的用户名和主机名、创建和删除用户
  6. 今天我必须要全网曝光这几个公众号
  7. 绝对定位实现漂浮工具条停靠在内容旁边
  8. cplex java_【CPLEX教程02】配置Cplex的Java环境以及API说明
  9. C# 读取txt文本数据
  10. watir_WatirMaker简介-录制基于Ruby的Watir
  11. CVPR 2021最全论文开放下载!附pdf下载链接!
  12. 什么是资本的本质?到如何认清一个人的本质?
  13. 联想电脑重装win7系统详细图文教程
  14. httpwatch使用_使用JavaScript的HTTPWatch自动化
  15. 最清晰易懂的MinMax算法和Alpha-Beta剪枝详解
  16. eclipse一些有用的技巧总结
  17. 笔记本键盘失灵,外接键盘不行,只有无线鼠标能用【完美解决】!
  18. 「Python条件结构」if…else实现计算税后工资
  19. 姿态估计2-08:PVNet(6D姿态估计)-源码无死角解析(4)-RANSAC投票机制
  20. mysql学习(5) - 使用子查询

热门文章

  1. 【css】如何使页面压缩时文本内容不换行
  2. Java中的自动装箱和拆箱
  3. MyBatis的使用
  4. SQL Server 2012 OFFSET/FETCH NEXT分页示例
  5. App功能测试的注意点
  6. Springboot 中 Mybatis 的使用
  7. C#程序调用cmd执行命令
  8. 20、C#里面方法的创建和显示
  9. iOS_25彩票_幸运转盘
  10. linux 安装安装rz/sz 和 ssh