源碼泄露漏洞


前言

前些時間碰到的一道CTF題目是關於Git源碼泄露的,相對而言比較基礎的一道題目,無奈技藝不精,當時也並不知道Git源碼泄露的漏洞,也是看過Writeup之后才知曉!所以找個時間來總結學習下,避免下次仍是無從下手。

.git源碼泄露

成因

熟悉git的應該知道在執行git init初始化目錄的時候會創建一個.git目錄,包含了所有的git存儲何操作的對象,關於.git文件夾更多細節,可以看看:https://blog.csdn.net/mayfla/article/details/78653396

所以在管理員發布代碼的時候,沒有把.git目錄刪除,而是直接發布到了服務運行的目錄當中,那么攻擊者就能夠通過此文件來恢復源代碼了。

工具:Githackhttp://www.freebuf.com/sectool/66096.html

改進版Githackhttps://github.com/BugScanTeam/GitHack

CTF例題——mfw(攻防世界)

  • 訪問

  • 通過Githack獲取源碼

  • 后面就是分析源碼得到flag了
  • 此外還有.hg源碼泄漏,也都差不多,就不再去重復一遍了

svn文件泄露

成因

SYN(Subversion),一個開源集中型版本控制系統,而Git屬於分散型版本控制系統

在SVN管理的過程中,會自動生成一個.svn的文件夾,包含了源代碼信息,而如果管理員直接復制代碼文件到Web服務器上,使得.svn文件同樣暴露在外網環境下而沒有清理

利用工具:dvcs-ripperhttps://github.com/kost/dvcs-ripper

OR Seay-SVNhttps://pan.baidu.com/s/1mrNpB

例題:SVN信息泄露漏洞分析(第1題)——墨者學院在線靶場

  • 先掃描看看

  • 通過dvcs-ripper獲取源碼

  • 此外還有cvsBazaar/bzr

.DS_Store文件泄露

成因

在發布代碼時沒有刪除文件夾中隱藏的.Ds_Store文件,導致敏感信息泄露

CTF例題——Bugku

  • 掃描

網站備份壓縮文件

成因

  1. 服務器管理員錯誤地將網站或者網頁的備份文件放置到服務器web目錄下。
  2. 編輯器在使用過程中自動保存的備份文件或者臨時文件因為各種原因沒有被刪除而保存在web目錄下。
'.rar','.zip','.tar','.tar.bz2','.sql','.7z','.bak','.txt','.swp'等

.swp文件,就是vim源文件泄漏,

可能導致備份文件或者編輯器的緩存文件被下載,導致敏感信息泄露,給服務器的安全埋下隱患。

可以通過掃描工具加以利用

CTF例題——備份是個好習慣(Bugku)

打開后一串字符:d41d8cd98f00b204e9800998ecf8427ed41d8cd98f00b204e9800998ecf8427e

開始認為時16進制,但並不是,后面得知時MD5加密值

  • 發現index.php.bak

  • 接下來就分析源碼獲得flag

WEB-INF/web.xml泄露

WEB-INF是Java的WEB應用的安全目錄。如果想在頁面中直接訪問其中的文件,必須通過web.xml文件對要訪問的文件進行相應映射才能訪問。

WEB-INF主要包含一下文件或目錄:

WEB-INF/web.xml : Web應用程序配置文件, 描述了servlet和其他的應用組件配置及命名規則.
WEB-INF/database.properties : 數據庫配置文件
WEB-INF/classes/ : 一般用來存放Java類文件(.class)
WEB-INF/lib/ : 用來存放打包好的庫(.jar)
WEB-INF/src/ : 用來放源代碼(.asp和.php等)

DDCTF2018-Web-Writeup

參考

https://blog.csdn.net/gitchat/article/details/79014538?utm_source=copy

https://www.cnblogs.com/dsli/p/7282917.html

https://blog.csdn.net/qq_26406447/article/details/90510433

https://www.secpulse.com/archives/55286.html


免責聲明!

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



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