常见类型:
.git源码泄露
.svn源码泄露
.hg 源码泄露
.git源码泄露
Git源码泄露是指将敏感或保密的代码、文件或数据意外地或非授权地公开到公共的Git存储库中。初始化目录git init会生成.git文件,如果因此发布到服务器上可能被利用复原源码.
简单检查: 网址/.git
目录了解:
- hooks:存放一些sheel的地方。
- info:存放仓库的信息
- object:存放所有git对象的地方
- refs:存放提交hash的地方
- config:github的配置信息
- description:仓库的描述信息,主要给gitweb等git托管系统使用
- HEAD:映射到ref引用,能够找到下一次commit的前一次哈希值
修复建议:删除.git目录或者修改中间件配置进行对.git隐藏文件夹的访问。
.svn源码泄露
SVN是一种版本控制系统,用于管理和跟踪项目中的源代码和文件。
出现原因: 网站管理员在发布代码时,没有使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,可以利用.svn/entries文件,获取到服务器源码。
修复建议:删除web目录中所有.svn隐藏文件夹,开发人员在使用SVN时,严格使用导出功能,禁止直接复制代码
.hg 源码泄露
Mercurial是一种分布式版本控制系统,用于管理和跟踪项目中的源代码和文件
使用
hg init
的时候会生成.hg