开始挖洞也有好几天了,虽说没啥成绩,但是也学到了一些东西,感悟到了不少
挖洞过程中遇到了个有意思的利用过程,借此来聊一下

前言

起初是因为喜欢偏向实战一些,早些天就开始学习起了挖洞,小目标想挖本cnvd证书
我知道它很难挖,但是没想到这么折磨,虽然挖的时间并不长,却也切身感受到面对庞大互联网资产时无从下手的痛苦

最开始我按着主流观点挖掘通用型漏洞多些,尝试着挖通杀洞,而目前cnvd只收资产大于5000万的企业的10起以上案例的漏洞才会给证书

所以有一说一是真的难挖,挖了几天感觉毫无头绪,直接run去碰碰运气事件型有没有搞头(三大运营商或政府机关等平台的中高危漏洞)
你别说,单一顺着一个企业挖思路确实清晰一些,也是在中国联通的某平台挖到个有意思的漏洞

过程

既然是挖事件型,先试着从三大运营商入手,随便找一个然后正常的做信息收集

挖到的目标是中国联通的某智慧城市平台

image.png

发现是类似于一个小的监控平台,像是一个未授权访问,不过重点不是这个

放到扫描器进行扫描目录和api等,发现一个js.map的文件泄露,而对于我来说,也是第一次遇见这样的文件,通过搜索得知

1
2
js.map 文件是 JavaScript Source Map 文件的一种,通常用于在调试 JavaScript 代码时进行源代码映射。这种文件包含了源代码和编译后的代码之间的映射关系,可以帮助开发人员在浏览器中调试压缩过的 JavaScript 代码时定位到源代码中的位置。
Source Map 文件包含了编译后的代码与源代码的对应关系,以及行号、列号等信息,这样在浏览器的开发者工具中就能够将错误或者日志信息准确地映射回源代码,方便开发人员进行调试和定位问题。

也就是说,此文件是有可能造成js文件的源码泄露,而如果网站服务端刚好是用纯js写的(如node.js),那么就造成了严重的网站源码泄露


刚好,此平台是纯js架构,利用扫描出的未授权接口,下载出该平台的map文件,发现是类似编译后的构成

image.png

通过搜索发现如下的利用方式:

可以利用reverse-sourcemap工具反编译js.map文件

  1. 全局安装此工具:npm install –global reverse-sourcemap

  2. 反编译泄露文件至aaa文件夹reverse-sourcemap -o aaa -v xxx.js.map

image.png

运行后成功拿到网站源码,后续可以进行代码审计进一步扩大危害,目前已提交至cnvd等待进一步审核

总结

说实话,这个洞早在一周前就挖到了,提交过程也是艰难坎坷,审核一直不给过说是缺少平台归属证明,这几天一直收集证据写文档了,真的磨人性子,纯折磨王,可能这个洞最后也就不了了之了,但是这个过程总是要经历的,接下来还是老老实实继续挖通用型吧

对于这些时间的漏洞挖掘,体会最大的就是耐心是多么的重要,找洞两小时,利用两分钟,起码常见的漏洞利用过程真的不难,但是耐心做好信息收集然后一个一个测试才是真的折磨
但是确实还是能挖到东西的,就像我如此浮躁的人也莫名的找到过两次上亿资产的企业后台用的若依这种如此高危的框架,甚至默认密码直接进后台,之后就是两三个中高危,当时就觉得这种公司的安全意识也这么低吗…只可惜当时也不知道怎么想的,交不了cnvd我也懒得去交公益src了,不过也确实没啥卵用哈哈

最后闲聊几句,其实感觉这个信息泄露挺有意思的,毕竟也是第一次见,居然没见CTF有人出过(可能是我做的题太少了哈哈),然后希望自己能坚持下去这条路吧,最近的状态实在太低迷了