修复npm项目中的漏洞
起因
最近不少开发者应该和我一样,收到了GitHub的提醒。当你的项目中用到了含有漏洞的库时,GitHub就会给你发邮件提醒你通过更新依赖版本的方法来修复漏洞,这次出问题的是一个叫做tar
的库,具体漏洞的内容可以参考这里。
修复方法
npm已经为开发者提供了快速检查和修复依赖中漏洞的命令。
检查漏洞
npm audit
这个指令并不会更新任何依赖,它的作用是检查当前项目下所有的依赖,并报告依赖中漏洞的危险性,漏洞的等级也有中等和高危等,会以黄色和红色标出。
修复漏洞
npm audit fix
运行这个指令后,npm就会自动通过更新到新版本的方法来修复漏洞,最后会报告漏洞的修复情况。
手动修复tar
漏洞
在这次有关tar
的漏洞中,tar
作为node_gyp
的第三方依赖,并没有办法被上述办法修复,npm也会在运行完命令后提示你手动修复漏洞,现在我们就来手动修复一下这个漏洞。