背景
测试工程师测试出某个包有安全风险,比如 axios 低版本存在 Server-Side Request Forgery Attack 但是并未给出安全的版本,作为前端开发如何确认应该升级到哪一个版本?

据我所者有两种方法
npm audit
js
axios 1.0.0 - 1.8.1
Severity: high
Server-Side Request Forgery in axios - https://github.com/advisories/GHSA-8hc4-vh64-cxmj
axios Requests Vulnerable To Possible SSRF and Credential Leakage via Absolute URL - https://github.com/advisories/GHSA-jr5f-v2jv-69x6
fix available via `npm audit fix`
node_modules/axios
提示 :如果不能运行 npm audit
,尝试切换到 npm 官方镜像,缺点是会检查所有依赖大概十几秒。
snyk
可以通过 security.snyk.io/ 搜索

涵盖29个包管理器
比如 security.snyk.io/vuln/npm?se...

可以看到其实要升级到 1.8.3
结论
建议使用 snyk 确认安全版本,npm audit 还是有点滞后而且需要配置官方 registry 且耗时因为只能扫描所有包。