最近公司的项目在交付时需要出具安全报告,但扫描结果显示十个中高危风险,风险都是下图这样的,
在网上找了解决方案,也顺利的解决了问题,在此记录一下:
问题解析: 当漏洞扫描时会扫描某个切片后的js文件:http://127.0.0.1:3333/static/js/chunk-73623.hf76274.js ,但验证的时候它会这样去验证:http://127.0.0.1:3333/static/js/chunk-73623.../webapps/static/js/RHFHSBF123.js
问题原因: Webpack进行chunk切片时,命名规则使用的(.)进行连接,js文件名称包含了这个(.),导致漏扫工具可以篡改这个url地址。
解决方案:更改Webpack打包命名规则,使其打包出来的文件不是以(.)进行连接的,例如:
output: {
filename: 'static/js/[name][hash].js',
chunkFilename: 'static/js/[id]-[hash:6].js'
}
再漏扫就不会出现问题啦,亲测好用!
注:Vue版本不同可能配置稍微不同,但大致思想都差不多,就是改vue.config.js中打包输出的命名规则。