转载:挖洞思路:前端源码泄露漏洞并用source map文件还原

注:source map原理可以参考文章JavaScript Source Map 详解 - 阮一峰的网络日志

0x01漏洞简介
webpack是一个JavaScript应用程序的静态资源打包器(module bundler)。它会递归构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个bundle。大部分Vue应用会使用webpack进行打包,如果没有正确配置,就会导致Vue源码泄露,可能泄露的各种信息如API、加密算法、管理员邮箱、内部功能等等。

0x02 漏洞复现
找到含.map的js页面
进入到一个*.js的页面查看源码:

选一个点进去拉到最下面:

 后缀加上.map访问https://xxx.js.map

会直接下载app.91c9e19843b6a38f9ff5.js.map

0x03 source map文件还原
reverse-sourcemap

这个工具,两年前发布的,居然文件和目录都能全部还原出来,牛逼。

全局安装

npm install --global reverse-sourcemap


然后( -o 后面跟的是还原后的目录)

reverse-sourcemap -o aaa -v app.9fbea7c7.js.map


0x04 检测插件
SourceDetector是一个谷歌浏览器插件,此插件可以自动的判断网站是否存在js.map文件,并且能够利用该插件直接下载到js.map的Vue源码

git clone https://github.com/LuckyZmj/SourceDetector-dist

提示:
如果此命令下载失败,可直接访问https://github.com/LuckyZmj/SourceDetector-dist下载.zip文件:

 然后解压,谷歌浏览器添加扩展程序(注意是添加文件中的dist文件夹)

 

 0x05 漏洞修复
在项目路径下修改config/index.js中build对象productionSourceMap: false;
建议删除或禁止访问正式环境中的js.map文件;
————————————————
版权声明:本文为CSDN博主「白帽子九一」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44930903/article/details/124257571

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值