
資訊收集&踩點
這是一個普通的等保滲透專案,要求在一天內完成,接到專案時已經快中午了,由于時間急促,資訊收集一番便開干了,
經過前期踩點發現站點使用了webpack打包且存在流量限制,目錄掃描超過200會ban ip,掃描器無法正常使用,通過查看js檔案發現了多個系統介面,但都存在權限校驗,無法進一步利用,

重新回到登錄頁面進行測驗,發現此處存在用戶名列舉漏洞,利用用戶名列舉得到存在賬號admin,通過查看js發現登錄密碼正則匹配為強口令,且存在賬號鎖定策略,密碼錯誤五次賬號鎖定15分鐘,繼續測驗發現此處驗證碼有效期為一次,無法進行繞過,批量爆破用戶弱口令也無法實作

手動嘗試多個強口令登錄無果,之后開啟抓包截獲登錄資料包,觀察回傳包發現登錄失敗的response code為500,結合response回傳內容和webpack資訊可知,response code狀態控制著系統跳轉鏈接,通過更改response code狀態為200,嘗試使用邏輯漏洞突破限制,但由于系統存在權限校驗,該嘗試也以失敗告終,


之后通過搜索關鍵字,從某js檔案得到admin賬號密碼,嘗試登陸,但也失敗了,

漏洞挖掘
用戶名列舉&弱口令
登錄頁面無識訓,為了尋找其它的突破點,利用搜索引擎、GitHub等對目標進行資訊收集,最終在目標官網處發現其郵箱用戶名,復制該用戶名回到目標系統,利用用戶名列舉漏洞可知該賬號存在于目標系統,為可登錄用戶,

得到了切入點,使用先前收集到的admin密碼登錄,但登錄失敗,隨后便對該用戶進行多個強口令登錄嘗試,由于驗證碼有效和賬號鎖定策略,在經過多次重復勞作后,登錄成功,

由于登錄成功的賬號需要更改密碼,為了不影響業務的穩定性,詢問客戶是否能更改密碼,在取到客戶同意后便更改密碼重新進行登錄,意料之外的是還存在第二層驗證,也就是下面的短信驗證碼認證機制,經過測驗發現此處可爆破驗證碼,但不清楚驗證碼的組合及長度,通過f12定位原始碼,發現密碼輸入的maxlength為4,猜測此處驗證碼為4位數,嘗試爆破驗證碼,但失敗,


為了繞過驗證碼認證機制,繼續對該介面測驗,通過測驗發現可利用此介面下發登錄驗證碼到任意手機號,利用該設計缺陷,更改phone內容為本機號碼,使用本機接收驗證碼并登錄,但此次嘗試也失敗了,

通過短信可知此處的驗證碼為6位數,并非是4位,這里有點奇怪,因為前端限制了輸入驗證碼的長度為4,正常用戶肯定不會f12更改maxlength再登錄的,抱著疑問問了下客戶才知道這個驗證碼登錄功能僅限于管理員登錄使用,非管理員用戶則是直接登錄,通過短短的幾句話可知,這個賬號具備管理員權限,且目前已經有了賬號密碼,只要繞過短信認證,即可獲取后臺管理員權限,由于6位數驗證碼爆破可能性較小,使用亂數爆破一番后失敗,此時測驗再次陷入僵局,

邏輯漏洞
回到登錄處重新尋找突破口,經過觀察登錄資料包,在登錄處發現了一個突破點,當使用賬號密碼登錄成功后,再來到驗證碼登錄步驟時,此時的驗證碼登錄資料包會存在Authorization欄位,這時回到webpack查看認證邏輯,根據代碼邏輯,當登錄資料包存在Authorization欄位,再去更改response code狀態是可以繞過驗證碼登錄后臺的,


利用該邏輯缺陷,回到驗證碼登錄頁面輸入任意驗證碼,抓包修改回應內容為200即可突破限制進后臺,

獲取到了后臺權限,為了擴大漏洞危害,繼續對后臺進行漏洞挖掘,嘗試getshell,

檔案上傳漏洞
進到后臺找尋上傳點,最終在某檔案上傳處繞過前端限制上傳了jsp檔案,但令人失望的是,上傳檔案被放到了物件存盤OSS,

繼續對其它上傳點進行嘗試,通過不懈努力,終于找到一個上傳檔案放到本地服務器的上傳介面,但存在限制,需要進行繞過,

經過多次嘗試,發現更改介面為uploadtest,即可繞過限制傳shell,但shell雖然傳上去了,訪問卻提示了介面例外,shell無法正常使用,后來重新上傳txt、png等檔案訪問,也都為例外,沒辦法,上傳點無法正常使用,只能尋找其它突破點了,

SQL注入
繼續測驗也只發現了個布爾注入和一些xss,到這里已經下午5點多了,由于時間問題,只能停下來,把報告給寫了,到此,本次測驗也告一段落,


思考
攻擊路徑:
1.利用用戶名列舉得到賬號xx,
2.xx賬號存在弱口令,更改密碼登錄時發現存在短信驗證碼限制,
3.利用邏輯漏洞繞過短信驗證碼限制獲取后臺權限,但由于系統缺陷無法get shell,
本文使用了組合漏洞進后臺,中間環節哪怕缺少一個漏洞,如用戶名列舉,可能都導致進后臺失敗,雖然用戶名列舉這種漏洞在各位師傅看來用處不大,但在特定情景下,其作用還是非常顯著的,如果不是用戶名列舉確定了xx用戶的存在,在驗證碼有效的情況下,或許我在嘗試幾個弱口令被封賬號后便放棄這個用戶賬號,從而就沒有后續突破后臺的操作了,所以說滲透需要細心,每個漏洞都能環環相扣,或許一個用戶名列舉就能賦予我們突破的靈感,
最后
想學網路安全以及正在學習網路安全的同學可以關注私我獲取【網路安全學習資料·攻略】

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/316379.html
標籤:其他
