Crossday Discuz! Board 論壇系統(tǒng)(簡(jiǎn)稱(chēng) Discuz! 論壇)是一個(gè)采用 PHP 和 MySQL 等其它多種數(shù)據(jù)庫(kù)構(gòu)建的高效論壇解決方案。作為商業(yè)軟件產(chǎn)品, Discuz! 在代碼質(zhì)量,運(yùn)行效率,負(fù)載能力,安全等級(jí),功能可操控性和權(quán)限嚴(yán)密性等方面有著良好的口碑。對(duì)于站長(zhǎng)而言,利用 Discuz! 均能夠在最短的時(shí)間內(nèi),花費(fèi)最低的費(fèi)用,采用最少的人力,架設(shè)一個(gè)性能優(yōu)異、功能全面、安全穩(wěn)定的社區(qū)論壇平臺(tái)。它能運(yùn)行于Windows平臺(tái)和Linux平臺(tái),目前已經(jīng)有超過(guò)100萬(wàn)的用戶(hù)。 使用Discuz!來(lái)建設(shè)論壇方便快捷,能夠滿(mǎn)足論壇功能需求,其安全性與同類(lèi)相比是相對(duì)最高的,因此深受廣大用戶(hù)的喜愛(ài),而在網(wǎng)絡(luò)攻防技術(shù)研究中最為核心的東西就是獲取用戶(hù)數(shù)據(jù)以及獲得系統(tǒng)的完全控制權(quán)限,本文主要針對(duì)Discuz!數(shù)據(jù)庫(kù)如何獲取管理員權(quán)限而展開(kāi)研究的。在某些情況下,是完全可以獲取一個(gè)Webshell,在獲取Webshell的情況下,可以進(jìn)一步獲取Mysql等有關(guān)數(shù)據(jù)庫(kù)連接的用戶(hù)和密碼等信息,由于Discuz!特有的加密方式,即使通過(guò)SQL注入猜解獲取了Discuz!論壇管理員的密碼也無(wú)法破解,因此如何通過(guò)操作數(shù)據(jù)庫(kù)來(lái)獲得管理員權(quán)限就尤為有用。本文研究的技術(shù)可以應(yīng)用在兩個(gè)方面: (1)恢復(fù)論壇管理員的密碼。對(duì)于Discuz!論壇管理員來(lái)說(shuō),如果忘記密碼了,那么對(duì)于整個(gè)論壇的管理將無(wú)從下手,因此只能想辦法恢復(fù)。 (2)提升權(quán)限獲取用戶(hù)數(shù)據(jù)庫(kù)文件。在得到Webshell的情況下,通過(guò)本文研究的技術(shù)可以輕易的查看管理員信息,修改論壇設(shè)置、備份數(shù)據(jù)庫(kù)等操作,還可以讓普通用戶(hù)具有管理員權(quán)限。 實(shí)驗(yàn)環(huán)境: (1)數(shù)據(jù)庫(kù)——Mysql5.1 (2)Mysql數(shù)據(jù)庫(kù)客戶(hù)端管理軟件——Mysql-Front (3)Discuz!論壇版本7.0,下載地址:http://download./Discuz (一)Discuz!論壇加密方式 Discuz!6.X以及后面的7.0版本都采用md5多重加密,其加密函數(shù)有checkmd5和authcode,該函數(shù)在Discuz!缺省安裝include目錄下的global.func.Php文件中。先采用salt方式,隨機(jī)獲得一個(gè)字符串,然后把明文密碼MD5之后,再與隨機(jī)字符串連接起來(lái)之后,再次MD5。加密密碼為:md5(md5($newpw).$salt) 其中$salt為random,返回的字符串$hash。這樣就極大的提高了用戶(hù)密碼的安全性。 1.checkmd5函數(shù) 以上代碼主要度對(duì)密碼進(jìn)行檢測(cè),有三個(gè)參數(shù): @param string $md5 @param string $verified @param string $salt 返回值為“0”表示失敗;為“1”采用“MD5 with salt”;為“2”采用“Dual MD5”; 為“3”表示是采用正常md5加密方式,為“4”采用“MD5-16”方式。 2.authcode函數(shù) 以上代碼主要用來(lái)加密或者解密用戶(hù)信息,其中參數(shù)意義如下: @param $string - 加密或解密的串 @param $operation - 加密還是解密 @param 密鑰 @return 返回字符串 $ckey_length 隨機(jī)密鑰長(zhǎng)度 取值 0-32;加入隨機(jī)密鑰,可以令密文無(wú)任何規(guī)律,即便是原文和密鑰完全相同,加密結(jié)果也會(huì)每次不同,增大破解難度。取值越大,密文變動(dòng)規(guī)律越大,密文變化 = 16 的 $ckey_length 次方,當(dāng)此值為 0 時(shí),則不產(chǎn)生隨機(jī)密鑰 |
|
來(lái)自: 昵稱(chēng)800675 > 《我的圖書(shū)館》