SVN repository found,關於AWVS掃描出的SVN漏洞?

路徑為/.svn/format

HTTP headers:

GET /.svn/format HTTP/1.1
Cookie: MoodleSession=7bd0ii8eak4o2s2jbad1ej4f47
Host: ****
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21
Accept: */*

HTTP response:

HTTP/1.1 200 OK
Date: Sat, 17 Sep 2016 07:34:29 GMT
Server: Apache/2.4.7 (Ubuntu)
Last-Modified: Wed, 26 Nov 2014 05:59:24 GMT
ETag: "3-508bcbacd491d"
Accept-Ranges: bytes
Content-Length: 3
Keep-Alive: timeout=5, max=59
Connection: Keep-Alive

頁面返回數字12

看下面的修復方式給出如下

&
Order allow,deny
Deny from all
&

如果說僅僅禁止所有訪問該目錄的請求,那麼漏洞造成方式應該是該目錄開放訪問,可是好像看不出有什麼可以利用的價值

下面的CWE給的是CWE-513

表示小白一個,完全不懂svn是幹啥用的,見過好多次,也不知道是什麼,求大神幫忙解答下原理以及如何利用。


最近挖到幾個Seay-svn源代碼備份漏洞,所以結合查閱的資料整理了下:

成因

SVN(subversion)是源代碼版本管理軟體,造成SVN源代碼漏洞的主要原因是管理員操作不規範。「在使用SVN管理本地代碼過程中,會自動生成一個名為.svn的隱藏文件夾,其中包含重要的源代碼信息。但一些網站管理員在發布代碼時,不願意使用『導出』功能,而是直接複製代碼文件夾到WEB伺服器上,這就使.svn隱藏文件夾被暴露於外網環境,黑客可以藉助其中包含的用於版本信息追蹤的『entries』文件,逐步摸清站點結構。」(可以利用.svn/entries文件,獲取到伺服器源碼、svn伺服器賬號密碼等信息)

更嚴重的問題在於,SVN產生的.svn目錄下還包含了以.svn-base結尾的源代碼文件副本(低版本SVN具體路徑為text-base目錄,高版本SVN為pristine目錄),如果伺服器沒有對此類後綴做解析,黑客則可以直接獲得文件源代碼。

利用

1、漏洞利用工具: Seay SVN漏洞利用工具

2、添加網站url

在被利用的網址後面加 /.svn/entries,列出網站目錄,甚至下載整站。

修復

1、在web伺服器配置文件中增加一段代碼,過濾到.svn文件,返回404

nginx伺服器:

location ~ ^(.*)/.svn/

{

return 404;

}

重啟nginx

Apache伺服器:

Order allow,deny

Deny from all

重啟Apache

2、查找伺服器上所有.svn隱藏文件夾,刪除

以下命令刪除當前目錄下.svn文件夾

find . -type d -name ".svn"|xargs rm -rf

rm -rf `find . -type d -name .svn`

find . -name ".svn" -type d | xargs rm -fr

find . -name ".svn" -type d | xargs -n1 rm -R

使用腳本刪除

#!/bin/sh

cd /home/web/

find ./ -name ".svn" |xargs -n1 echo &> /dev/null 2&>1

find ./ -name ".svn" -print0 | xargs -0 rm -fr

if [ $? -ne 0 ]; then

echo "remove .svn dirs failed!"

fi

以上文件保存為.sh

執行之後,會刪除 /home/web目錄及其子目錄中 所有 .svn 隱藏文件夾

防禦

開發人員在使用SVN時,嚴格使用導出功能。禁止直接複製代碼。

漏洞掃描參考資料:svn信息泄漏探測工具(新手學python) | 阿德馬Web安全

漏洞利用參考資料:Seay-svn源代碼備份漏洞利用工具2.0版 | 漏洞人生

修復方案參考資料:SVN源碼泄露漏洞 - 楊參謀 - 博客園


推薦閱讀:

Word Office 2016 for mac啟動就崩潰?
xcode中的project.pbxproj衝突怎麼解決

TAG:黑客Hacker | 信息安全 | SVNSubversion |