前言
由于开发人员的疏忽,可以见到源码泄露问题。总结一下源码泄露问题。
源码泄露分类
.hg源码泄露
漏洞成因
hg init
的时候会生成.hg
漏洞利用
工具:dvcs-ripper
rip-hg.pl -v -u http://www.example.com/.hg/
.git源码泄露
漏洞成因
在运行git init初始化代码库的时候,会在当前目录下面产生一个.git的隐藏文件,用来记录代码的变更记录等等。在发布代码的时候,把.git这个目录没有删除,直接发布了。使用这个文件,可以用来恢复源代码。
漏洞利用
工具:dvcs-ripper
rip-git.pl -v -u http://www.example.com/.git/
.Ds_Store文件泄露
漏洞成因
在发布代码时未删除文件夹中隐藏的.DS_store,被发现后,获取了敏感的文件名等信息。
Eg:http://www.example.com/.ds_store
漏洞利用
工具:dsstoreexp
python ds_store_exp.py http://www.example.com/.DS_Store
SVN导致文件泄露
漏洞成因
Subversion,简称SVN,是一个开放源代码的版本控制系统,相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上越来越多的控制服务从CVS转移到Subversion。
Subversion使用服务端—客户端的结构,当然服务端与客户端可以都运行在同一台服务器上。在服务端是存放着所有受控制数据的Subversion仓库,另一端是Subversion的客户端程序,管理着受控数据的一部分在本地的映射(称为“工作副本”)。在这两端之间,是通过各种仓库存取层(Repository Access,简称RA)的多条通道进行访问的。这些通道中,可以通过不同的网络协议,例如HTTP、SSH等,或本地文件的方式来对仓库进行操作。
Eg: http://vote.lz.taobao.com/admin/scripts/fckeditor.266/editor/.svn/entries
漏洞利用
工具:dvcs-ripper
Seay-Svn