自学内容网 自学内容网

【渗透测试】Webpack源码泄露(js.map泄露)

一、漏洞简介

在Vue项目中使用Webpack时,如果未正确配置,会生成一个.map文件,它包含了原始JavaScript代码的映射信息。这个.map文件可以被工具用来还原Vue应用的源代码,从而可能导致敏感信息的泄露等风险

二、配置环境

  1. 安装nodejs

查看版本信息: npm -v

在这里插入图片描述

  1. 安装reverse-sourcemap

npm install -g reverse-sourcemap

在这里插入图片描述

三、js.map反编译

在目录扫描、Burpsuite数据返回包中发现存在js.map路径,下载该文件进行反编译:
reverse-sourcemap --output-dir . xxx.js.map

在这里插入图片描述

反编译后,即可查看源码JS文件结构及内容

在这里插入图片描述

通过泄露的Webpack源码,可以搜索API接口、AccessKey、Password、Phone等敏感信息

四、修复建议

  1. 禁用生成源映射文件:
    在生产环境中,应该禁用生成.map文件或者配置Webpack不生成这些文件。这可以通过在Webpack配置中设置devtool选项为false或者none来实现
    示例配置:
javascript
module.exports = {
  // 其他配置...
  devtool: false, // 或者 'none'
};
  1. 限制源映射的访问权限:
    如果无法完全禁用.map文件的生成,确保这些文件仅在需要调试时可用,并限制访问权限。
    可以通过Web服务器配置、权限设置或者在构建后删除这些文件来实现限制访问
  2. 加密或混淆源映射文件:
    对生成的.map文件进行加密或者混淆,以增加泄露后的难度。这可以通过使用专门的工具或者插件来实现

原文地址:https://blog.csdn.net/qq_48201589/article/details/140316032

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!