CVE-2018-20129: DedeCMS V5.7 SP2前臺文件上傳getshell漏洞預警

 

 

0x00 漏洞背景

2018-12-11 在CVE中文申請站公佈了一個 DEDECMS 5.7 SP2 最新版本中存在文件上傳漏洞,具有管理員權限者可利用該漏洞上傳並getshell執行任意PHP代碼。xise

經過分析驗證。該漏洞要求管理員權限登錄。並且要開啓會員功能,這個功能在默認情況下是不開啓,需要管理員手動開啓。http://caidaome.com

經過360CERT判斷,該漏洞危害小,影響面有限。但還是推薦使用DedeCMS的用戶進行相關驗證,並執行修復建議。

 

0x01 漏洞詳情

include/dialog/config.php 在dialog操作的時候,針對用戶權限進行校驗。這就限制了必須是管理員。

隨後 include/dialog/select_images_post.php 進行圖片的校驗,在這裏可以明顯的看到邏輯錯誤,這裏針對文件名中的異常符號進行了替換爲”的操作,並且隨後的正則過濾條件限定寬鬆。導致漏洞產生。騰訊分分彩

對數據包進行修改

漏洞

同時在分析中發現一處有意思的點

如果要開啓會員功能,需要訪問到sys_info.php, 但這個文件最終會調用到dede_random_bytes, 其中有個一個關於MCRYPT_DEV_URANDOM的檢測。

如果不是用的集成環境包,而是手動配置服務器,以Debain9爲例,若沒有安裝libmcrypt-dev 這個package則會導致訪問不存在的函數is_php

進而導致無法進行系統基本參數設置。

 

0x02 修復建議

1.文件後綴名檢測進行重寫。 2.對上傳文件名進行統一重命名,後綴名只允許爲image type類。 3.對上傳文件夾進行限制,不允許執行php。http://kj169.cc/

除了上述方式以外,還可以直接進行代碼層面的修改

對於受影響的正則表達式進行強化。限定$cfg_imgtype固定結尾的文件。

include/dialog/select_images_post.php

if(!preg_match("#\.(".$cfg_imgtype.")#i", $imgfile_name))
->
if(!preg_match("#\.(".$cfg_imgtype.")$#i", $imgfile_name))

 

0x03 時間線

2018-12-11 CVE中文申請站進行細節公開

2018-12-21 360CERT發佈預警

 

0x04 參考鏈接

CVE-2018-20129:DedeCMS V5.7 SP2前臺文件上傳漏洞 – CVE中文申請站

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章