1.11.1 SVN信息泄漏(SVN info)
0x01 漏洞描述
在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。一些网站管理员在发布代码时,不愿意使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn
隐藏文件夹被暴露于外网环境,黑客可以借助其中包含的用于版本信息追踪的entries
文件,获取站点信息。
0x02 漏洞危害
攻击者可以利用.svn/entries
文件,获取到应用程序源代码、svn服务器账号密码等信息。同时,SVN产生的.svn
目录下还包含了以.svn-base
结尾的源代码文件副本(低版本SVN具体路径为text-base
目录,高版本SVN为pristine
目录),如果服务器没有对此类后缀做解析,黑客则可以直接获得文件源代码。
- 攻击者利用该漏洞可下载网站源代码,获得数据库的连接账号密码等敏感信息;
- 攻击者可通过获取的源代码进一步分析出新的系统漏洞,从而进一步入侵系统;
0x03 修复建议
- 查找服务器上所有.svn隐藏文件夹,删除。
- 开发人员在使用SVN时,严格使用导出功能,禁止直接复制代码。
1.11.2 Git信息泄漏(Git info)
0x01 漏洞描述
开发者在使用git作为版本控制时,在一个目录中初始化一个仓库以后 , 会在这个目录下产生一个名叫 .git
的隐藏文件夹,这个文件夹里面保存了这个仓库的所有版本等一系列信息。如果服务器将.git
文件夹放在了web目录下,就可能导致攻击者利用.git
文件夹内的信息获取应用程序所有源代码。
0x02 漏洞危害
- 攻击者利用此漏洞可获取应用程序源代码,分析源码进行进一步攻击利用;
- 攻击者利用此漏洞可获取数据配置信息,可能直接导致应用程序用户信息泄漏,设置获取服务器权限;
0x03 漏洞修复
1.删除网站目录下的.git
文件
2.中间件上设置.git
目录访问权限,禁止访问
1.11.3 DS_Store信息泄漏(DS_Store info)
0x01 漏洞描述
苹果的操作系统会在每一个文件夹中产生这个文件记录这个文件夹中的相关信息。实际上,这一文件包含了文件夹中所有的文件名和子文件夹名。和windows相比,等同于desktop.ini和Thumbs.db两个文件。
0x02 漏洞危害
- 攻击者利用该漏洞可能获取网站相关的文件夹和文件名;
- 攻击者可通过解析这一文件,可能会发现数据库备份文件、配置文件以及一些缓存文件,甚至是密钥等;
0x03 修复建议
- 在不影响代码运行的情况下,删除
.DS_Store
文件。 - 在中间件中设置对应的文件、目录的访问权限