0%

第19天-Web应用&源码获取&闭源备份开发泄漏&WebPack打包&资源搜索&ICO定位

参考:

https://www.secpulse.com/archives/124398.html

https://mp.weixin.qq.com/s/zhjxW2mUEgq6dFAp3kBcgQ

#源码泄漏原因:

1、从源码本身的特性

2、从管理员不好的习惯入口

3、从管理员习惯的开发入口

4、从管理员不好的配置入口

5、从管理员不好的意识入口

6、从管理员资源信息搜集入口

源码泄漏大概集合:

Webpack打包泄漏

Webpack 是前端模块打包工具,核心作用:把浏览器不直接识别的零散资源(JS、CSS、图片、字体、Vue/React 组件等)统一编译、压缩、合并成浏览器可运行的静态文件

分为两种模式:

1、开发模式:不压缩代码、保留完整注释、不混淆变量、生成 source-map(源码映射文件),方便调试。
2、生产模式:默认代码压缩、变量混淆、删除注释、tree-shaking,一般不对外暴露完整源码映射。

Source-Map 是什么:

浏览器运行压缩混淆后的代码(一行几万字符、变量名 a/b/c),报错时无法定位原始代码行数。 Source Map(<font style="color:#DF2A3F;background-color:rgba(0, 0, 0, 0);">.map</font> 文件)是一份映射表: 压缩代码 开发时未压缩、带注释、完整变量名的原始源码。 拿到 <font style="color:#DF2A3F;background-color:rgba(0, 0, 0, 0);">.map</font> 文件,可一键还原完整前端源码(业务逻辑、接口地址、密钥、注释、内部逻辑全部暴露)。

source detector安装配置:https://blog.csdn.net/gitblog_00648/article/details/146995172

核心根源:错误配置导致完整源码映射文件(source-map)被部署到线上服务器,任何人可下载还原完整前端源代码。

composer.json

绝大多数现代PHP项目在搭建过程中都会产生composer.json文件,但它不是PHP语言本身强制生成的,而是使用composer包管理器是自动生成的配置文件。composer包管理器和python的pip几乎一样,它用来帮PHP项目自动下载、安装、管理第三方库(插件/组件)

GitHub源码泄漏

就是开发人员主动把代码上传到了这种代码平台上,但是特别重要的网站一般是不会,不过渗透过程你可以碰碰运气

git源码泄露

git是分布式的代码版本管理工具:通俗解读就是每个开发者电脑上都有完整的代码仓库+所有版本记录,Git是分布式代码管理工具,公司开发网站时,每个开发人员的电脑都必须装Git,大家写代码时,Git会完整记录代码的每一个迭代版本,以及谁改、什么时候改、改了什么的所有修改记录,团队之间靠Git配合同步代码,这是核心逻辑。

在网站URL后加一个.git如果有就存在这个漏洞

python GitHack.py url

GIT:https://github.com/lijiejie/GitHack

svn源码泄露

SVN是集中式的代码版本管理工具:SVN就是唯一的代码仓库+版本记录库,公司搭一台核心服务器装SVN→作为唯一的代码库+版本记录库;开发人员电脑装SVN客户端→仅作操作工具,本地只有写的代码,无任何版本记录;开发完通过客户端联网提交代码到核心服务器→服务器记录所有代码版本、修改信息(和Git记录的内容维度完全一致);网站部署时→从这台SVN核心服务器拉取纯代码上线即可(和Git部署逻辑完全相同,都只拿运行所需代码,不碰管理工具文件)。

在网站URL后加一个.svn如果有就存在这个漏洞

python SvnHack.py -u url python要用2如果当前是3就把目录写全 加–download就下载了

SVN:https://github.com/callmefeifei/SvnHack

网站备份压缩文件

把源码压缩后存放在网站目录下,通过御剑等目录扫描工具进行目录扫描即可

DS_Store文件泄露

.DS_Store是macos系统自动生成的隐藏文件,它是macos用来保存文件夹显示设置的配置文件,只要你用macos打开过一个文件夹,系统就会自动在里面生成一个.DS_Store文件,很多开发者用macos开发,然后直接把整个项目文件夹上传到网站根目录,忘记删除.DS_Store,攻击者访问网站.com/.DS_Store,就能直接看到这个目录下有哪些文件,相当于拿到了网站的目录地图,ds_store_exp工具

DS_Store:https://github.com/lijiejie/ds_store_exp

通用:https://github.com/0xHJK/dumpall这个是git、svn、ds_store通用工具

思路点:

1、使用指纹识别平台获取到目标CMS

通过搜索引擎获取到源码

2、使用指纹识别平台不能获取目标信息

后端:借助svn git composer.json ds_store 备份扫描等配置泄漏安全

前端:webpack打包 谷歌插件获取源码

3、借助资源平台去搜索(github gitee oschina等源码)

-特定文件(就是看访问网站加载的数据包名字有没有特殊含义的,直接去github上搜)

-特征联系方式(看页面有没有什么联系方式,github搜)

-github监控( 除了源码,漏洞更新,工具更新等都有用处)

目标使用的源码是开源还是闭源,是否公开

#源码泄漏实战文章

渗透测试实战—某资金盘信息收集(.idea目录泄露)

https://mp.weixin.qq.com/s/7cSrDZci_drE6wTGvQOOHw

SRC挖掘-js.map泄露到接管云上域控

https://mp.weixin.qq.com/s/QZsNjbTiaqC1qwzARVAiGQ