svn(subversion)是源**管理軟體,造成svn源**漏洞的主要原因是管理員操作不規範。在使用svn管理本地**過程中,會自動生成乙個名為.svn的隱藏資料夾,其中包含重要的源**資訊。但一些**管理員在發布**時,不願意使用」匯出「功能,而是直接複製**資料夾到web伺服器上,這就使.svn隱藏資料夾被暴露於外網環境,黑客可以借助其中包含的用於版本資訊追蹤的」entries」檔案,逐步摸清站點結構「 (可以利用.svn/entries檔案,獲取到伺服器原始碼、svn伺服器賬號密碼等資訊)
更嚴重的問題在於,svn產生的.svn目錄下還包含了以.svn-base結尾的源**檔案副本(低版本svn具體路徑為text-base目錄,高版本svn為pristine目錄),如果伺服器沒有對此類字尾做接資訊,黑客則可以直接獲得檔案源**。
利用1、漏洞利用工具: seay svn漏洞利用工具
修復1、在web伺服器配置檔案中增加一段**,過濾掉.svn檔案,返回404
nginx伺服器:
location ~ ^(.*)\/\.svn\/apache伺服器:重啟nginx
order allow,deny2、查詢伺服器上所有.svn隱藏資料夾,刪除deny from all
重啟apache
以下命令刪除當前目錄下.svn資料夾
find . -type d -name ".svn"|xargs rm -rf防禦rm -rf `find .-type d -name .svn`
find . -name ".svn" -type d | xargs -n1 rm-r
使用指令碼刪除
#!/bin/bash
cd /home/web/
find ./ -name ".svn" |xargs -n1 echo >/dev/null 2>&1
find ./ -name ".svn" -print0 |xargs -0 rm -rf
if [ $? -ne 0 ];then
echo "remove .svn dirs failed"fi
以上檔案儲存為.sh
執行之後,會刪除/home/web目錄及其子目錄中所有.svn隱藏資料夾。
開發人員在使用svn時,嚴格使用匯出功能。禁止直接複製**。
SVN原始碼洩露漏洞
svn subversion 是源 版本管理軟體,造成svn源 漏洞的主要原因是管理員操作不規範。在使用svn管理本地 過程中,會自動生成乙個名為.svn的隱藏資料夾,其中包含重要的源 資訊。但一些 管理員在發布 時,不願意使用 匯出 功能,而是直接複製 資料夾到web伺服器上,這就使.svn隱藏資...
git原始碼洩露
0x00 原理 在 安全維護方面,git和svn資訊洩露是非常常見也是非常致命的乙個漏洞。當前大量開發人員使用git進行版本控制,對站點自動部署。如果配置不當,可能會將.git資料夾直接部署到線上環境。這就引起了git洩露漏洞。githack是乙個.git洩露利用指令碼,通過洩露的.git資料夾下的...
GitHack Git原始碼洩露
執行命令即可 一樣先是掃瞄發現 git 洩露 使用 githack 工具 clone 目標源 到本地 git原始碼洩露不止涉及到當前git版本時需要檢視歷史記錄 git loggit resetgit diffgit log 會出現先前的幾個版本資訊,注意要切換到原始碼洩露資料夾裡 dist 每個版...