今天收到一份在线检测机构的报告,其中有一项提到某服务存在webpack漏洞可以被利用,这个服务正是开源程序Gitlab。
尽管Gitlab是一个开源的程序,为了让漏洞提示被合理的“解决”掉,我们来看看怎么处理。
Gitlab的js
文件里没有.map
后缀的特征,无法定位哪一份是SourceMap文件,gitlab.rb
配置文件中没有可配置webpack(尝试设定productSourceMap:false
)的区域。
可以通过修改Nginx的配置文件来禁用Source Map。
打开Nginx站点配置,通常在/usr/local/nginx/conf/vhost/你的域名.conf
或 /etc/nginx/conf/sites-available/你的域名.conf
在对应的location
配置中,添加以下配置来禁用Source Map:
location ~* \.(?:css|js)$ {
# 省略其他配置
# 禁用Source Map(必须)
access_log off;
# 添加以下配置来禁止浏览器加载Source Map文件(非必需)
disable_symlinks off;
add_header X-SourceMap "" always;
}
保存并关闭文件,执行命令 nginx -s reload
重新加载Nginx配置。
至此,以上步骤即可成功关闭devtool中的Source Map。