Web服務器.svn隱藏文件夾漏洞利用、修復和杜絕


(1.7版本以前存在這個問題,1.7以后解決這個問題)

在SVN的使用中,

會自動生成一個名為.svn的隱藏文件夾,

其中包含重要的源代碼信息。

如果在發布代碼時,直接復制代碼文件夾到Web服務器,

同時.svn隱藏文件夾也被上傳到程序根目錄,

可以利用.svn/entries文件,獲取到服務器源碼、svn服務器賬號密碼等信息。

一、此隱藏文件夾是怎么來的?

從svn獲取發布版本時,沒有正確使用svn導出功能導致!

 

二、黑客是如何利用svn隱藏文件漏洞的?

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

 

2、添加網站url

在被利用的網址后面加/.svn/entries

 

就能列出來網站目錄,甚至下載整站。

 

三、修復漏洞

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

nginx服務器:

location ~ ^(.*)\/\.svn\/

{

return 404;

}

重啟nginx

Apache服務器:

<Directory ~ "\.svn">

Order allow,deny

Deny from all

</Directory>

重啟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隱藏文件夾


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM