SVN 源码泄露

1、漏洞成因

SVN(subversion)是源代码版本管理软件,在SVN的使用中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。如果在发布代码时,直接复制代码文件夹到Web服务器,同时.svn隐藏文件夹也被上传到程序根目录,可以利用.svn/entries文件,获取到服务器源码、svn服务器账号密码等信息。

关于svn利用分两个版本一个版本是svn>1.6,还有一个是svn<1.6

svn>1.6,文件名会被hash,然后再按照文件名对应hash的方式存到wc.db中,就是个sqlite数据库。最后我们按照名称遍历下载即可。

svn<1.6,文件会先去读取entries文件的中的目录结构,因为默认文件名都是直接明文存的。

2、漏洞实例

3、工具利用

4、漏洞修复

删除web目录中所有.svn隐藏文件夹,开发人员在使用SVN时,严格使用导出功能,禁止直接复制代码。

Last updated

Was this helpful?