本文結合其它使用者案例分析講解挖掘某雙一流站點的過程,包含日誌洩露漏洞深入利用失敗,到不弱的弱口令字典進入後臺,再到最後偶遇一個貌似只在靶場遇到過的高危漏洞。
資訊蒐集:
web站點的話從域名,ip等入手範圍太大了,於是決定直接從小程式入手。
微信搜尋學校名稱,便直接可以透過公眾號,小程式尋找目標。這裡注意如果你要挖掘某edu的漏洞,就可以多關注他們的公眾號,小程式,看看最近有沒有什麼新的功能出現,這種功能點漏洞比較容易出現。
於是我直接在某公眾號發現了一個新功能:報名入口。臨近畢業,所有有很多公司可能會來學校宣講或者招人,這種時候就很有可能出現新功能,本案例就是。
照常點選功能,出現跳轉,直接轉瀏覽器測web頁面。
日誌洩露nday:
在登陸時發現限定了登陸時間,而目前已經不在時間內,可見這其實就是一個臨時的系統。
我檢查js資訊嘗試除錯js繞過,沒成功就透過報錯發現為thinkphp框架,直接上工具一把梭。
連結:https://github.com/Lotus6/ThinkphpGUI
只可惜只存在一個日誌洩露的nday,沒能shell。
根據日誌洩露目錄可以發現能夠遍歷近一年的日誌資訊,此時的思路就是從日誌中看能不能拿到管理員或者其它使用者登陸的敏感資訊,例如賬號密碼之類,這樣就可以擴大日誌洩露危害,進一步挖掘利用。
【----幫助網安學習,以下所有學習資料免費領!加vx:dctintin,備註 “部落格園” 獲取!】
① 網安學習成長路徑思維導圖
② 60+網安經典常用工具包
③ 100+SRC漏洞分析報告
④ 150+網安攻防實戰技術電子書
⑤ 最權威CISSP 認證考試指南+題庫
⑥ 超1800頁CTF實戰技巧手冊
⑦ 最新網安大廠面試題合集(含答案)
⑧ APP客戶端安全檢測指南(安卓+IOS)
參考文章:
https://cloud.tencent.com/developer/article/1752185
這篇文章就是利用kali自帶工具whatweb探測出thinkphp框架:
並透過dirb掃除.svn洩露:
再透過svnExploit工具進行下載利用:
連結:https://github.com/admintony/svnExploit
並在svn中發現大量日誌洩露:
並透過找到最新的日誌資訊,找到密碼hash值,透過cmd5實現解密併成功進入後臺:
https://blog.csdn.net/qq_41781465/article/details/144092247
這篇文章也是在日誌資訊中成功找到賬號密碼,配合dirsearch掃出後臺,成功登陸:
不過我這次日誌資訊量雖然很大,且經過我實際嘗試也確實會記錄我的一些操作資訊,但翻遍日誌卻並貌似不存在敏感資訊:
但我發現在日誌中洩露了sql語句,貌似可以尋找對應介面,引數拼接成資料包嘗試sql注入,但我找遍了日誌都沒有發現可以直接使用的介面或者代入了sql語句的引數。
不弱的弱口令:
翻找js檔案,嘗試直接拼接登陸驗證介面,和其它查詢介面全部失敗。
不過根據找到的其它js路徑發現其目錄結構基本拼接在/syl/下,於是根據經驗在目錄後拼接admin,系統跳轉到後臺管理員登陸介面,輸入賬戶為admin頁面顯示密碼錯誤,輸入其它賬戶頁面顯示賬號不存在,可知賬戶為admin。
根據頁面特徵製作字典並加上弱口令top500的內容,嘗試爆破成功:密碼為頁面根路徑字母syl+88888888。
這種:syl88888888一看就是弱口令,但如果你只是透過現存的什麼top100,top500這種字典是爆破不出來的,所以在進行滲透測試時一定還要根據頁面特徵,關鍵字,系統名稱首字母等資訊製作特定的社工字典嘗試。
比如kali自帶的cewl工具,便是一種基於爬蟲,對頁面目錄資訊進行迴圈爬取再生成字典的工具。
工具分析文章:https://www.cnblogs.com/jackie-lee/p/16132116.html
成功進入後臺。
並發現大量資訊洩露:
存在四千多條使用者敏感資訊洩露。
爬出靶場的高危:
透過dirsearch掃描目錄,看有沒有結果。
直接掃出來了好幾條.git路徑,直接訪問洩露的路徑看不出什麼敏感資訊。
但很明顯站點存在.git資訊洩露漏洞,一個我曾經只在ctf技能樹復現過的漏洞。
Git就是一個開源的分散式版本控制系統,在執行gitinit初始化目錄時會在當前目錄下自動建立一個.git目錄,用來記錄程式碼的變更記錄等,釋出程式碼的時候如果沒有把.git這個目錄刪除而是直接釋出到伺服器上,那麼攻擊者就可以透過它來恢復原始碼,從而造成資訊洩露等一系列的安全問題。
嘗試githack進行探測利用(只能python2使用)
工具連結:https://github.com/BugScanTeam/GitHack
該工具基本原理就是解析.git/index檔案,找到工程中所有的檔案,檔名,再去.git/objects/資料夾下下載對應的檔案,並透過zlib解壓檔案並按原始的目錄結構寫入原始碼
結果我直接把整個git扒了下來,得到站點整套原始碼,於是透過vscode開啟分析:
隨意翻找檔案,找到mysql資料庫賬號密碼,於是掃描埠發現開啟3306,嘗試連線,發現似乎做了IP白名單限制,於是放棄。
再翻找檔案,發現居然直接把後臺部分使用者的資訊寫在了.sql檔案內,包含姓名,身份證,電話等資訊,不過只有幾百條。
此處其實還可以深入對php原始碼進行審計,發現更多高危漏洞,但我卻不會php代審,所以打到這裡就收工了,覺得應該可以拿證了。
整個滲透過程很順利,大概就兩三個小時,還是資訊蒐集做得好,不然都不一定能出成果,同時需要多閱讀漏洞挖掘文章,這樣在滲透測試過程中才能對漏洞利用更加熟練。
更多網安技能的線上實操練習,請點選這裡>>