柚子快報(bào)激活碼778899分享:學(xué)習(xí) 筆記 Git泄露
柚子快報(bào)激活碼778899分享:學(xué)習(xí) 筆記 Git泄露
一、漏洞形成原因
使用git版本控制系統(tǒng)(記錄文件內(nèi)容變化)時(shí)錯(cuò)誤操作導(dǎo)致信息泄露
二、判斷是否存在git泄露
使用dirsearch工具掃描后臺(tái),如果存在則會(huì)掃描出 .git 目錄
dirsearch安裝
進(jìn)入root,輸入
apt-get install dirsearch
?出現(xiàn)如下圖所示時(shí)成功
dirsearch常用命令
-u?? ?指定url -e 語(yǔ)言?? ?指定網(wǎng)站語(yǔ)言,一般用-e*即所有語(yǔ)言 -i?? ?保留響應(yīng)狀態(tài)碼(不同狀態(tài)碼用逗號(hào)分隔,可指定范圍,如-i 200,300-400) -x?? ?排除響應(yīng)狀態(tài)碼(不同狀態(tài)碼用逗號(hào)分隔,可指定范圍,如-x 400,400-500) -w?? ?指定字典 -r?? ?遞歸目錄(即可掃描新掃描出的目錄下的目錄) -random-agents?? ?使用隨機(jī)User-Agent
三、漏洞危害
利用漏洞能下載.git文件夾下所有內(nèi)容,如果其中包含用戶名、密碼等隱私數(shù)據(jù),攻擊者可以通過審計(jì)獲取
四、git是什么
githack在kali中的安裝
下載連接
git clone https://github.com/BugScanTeam/GitHack
可以直接使用鏈接在kali里面下載githack,如果行不通可以在windows中下載壓縮包,然后解壓后拖到kali虛擬機(jī)中
GitCode - 開發(fā)者的代碼家園https://gitcode.com/BugScanTeam/GitHack/overview?utm_source=csdn_github_accelerator&isLogin=1然后進(jìn)入GitHack-master文件(這里我改成了GitHack)
在這里打開終端輸入命令
python2 GitHack.py http://challenge-efb678740fb6553d.sandbox.ctfhub.com:10800/.git
這樣表示安裝成功,需要在該目錄下使用
1.結(jié)構(gòu)
大體分為工作區(qū)、暫存區(qū)、本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)四個(gè)部分
工作區(qū):.git所在文件夾
暫存區(qū):一般存放在.git下的index(索引)中
本地倉(cāng)庫(kù):儲(chǔ)存分支信息
遠(yuǎn)程倉(cāng)庫(kù):儲(chǔ)存著各種項(xiàng)目例如國(guó)內(nèi)的 gitee ,國(guó)外的 github , gitlab 等等
2.常用命令
http://t.csdnimg.cn/Gd8Fy
Github命令大全 - 知乎
git init 初始化一個(gè)git倉(cāng)庫(kù)
git add x.txt 添加文件
git commit -m "wrote a test file" 提交文件
git rm x.txt 刪除文件
git commit -m "remove x.txt" 恢復(fù)文件
git stash pop 讀取最近一次保存內(nèi)容
git stash list 列出所有備份,可以利用這個(gè)列表決定從哪個(gè)地方恢復(fù)
git status 查看當(dāng)前倉(cāng)庫(kù)狀態(tài)和內(nèi)存狀態(tài)
git reset --hard 回退版本
git diff?對(duì)比
git log 顯示到HEAD所指向的commit為止的所有歷史記錄,從最近到最遠(yuǎn),可以看到3次
注:需在當(dāng)前版本庫(kù)和目錄下使用
3.步驟
前幾步大致相同,都是用dirsearch掃描是否存在git漏洞,然后打開githack連接,后面則是分為git log,git stash和git index幾種
stash翻譯是存放、隱匿,用于想要保存當(dāng)前的修改,但是想回到之前最后一次提交的工作倉(cāng)庫(kù)時(shí)進(jìn)行的操作.git stash將本地的修改保存起來,并且將當(dāng)前代碼切換到HEAD提交上??梢岳斫鉃閷?dāng)前工作進(jìn)度保存,暫存文件。通過git stash存儲(chǔ)的修改列表,可以通過git stash list查看,git stash show用于校驗(yàn),git stash apply用于重新存儲(chǔ),直接執(zhí)行g(shù)it stash等同于git stash save,執(zhí)行 git stash pop 是恢復(fù)文件
index翻譯為索引,可以理解為暫存文件,本地庫(kù)中的索引index就相當(dāng)于一個(gè)文件,默認(rèn)儲(chǔ)存在.git/index的路徑下
練習(xí)
ctfhub技能樹Log
首先用dirsearch -u 鏈接? ? 判斷是否存在git泄露,找到.git說明存在
用githack克隆目錄
python2 GitHack.py 鏈接.git
會(huì)在dist中存放新生成的文件,用終端打開,題目寫了log,就用git log查看提交歷史記錄,發(fā)現(xiàn)進(jìn)行了flag的添加,也就是add flag
法一:
用git reset --hard 回退版本,打開文件夾可找到flag
法二:
用git diff進(jìn)行文件對(duì)比可找到flag
ctfhub技能樹stash
掃描發(fā)現(xiàn)存在git泄露
克隆
同上題一樣用git log找到了add flag,但發(fā)現(xiàn)之前的兩種方法都不能找到flag
根據(jù)題目提示用git stash pop 讀取最近一次的保存內(nèi)容,得到flag?
ctfhub技能樹index
打開環(huán)境后用dirsearch掃描,發(fā)現(xiàn)存在git泄露
用githack克隆目錄
打開后即可找到flag
?用git log查看發(fā)下指針指向add glag,所有目錄文件夾中存有flag
柚子快報(bào)激活碼778899分享:學(xué)習(xí) 筆記 Git泄露
精彩鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。