域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)
2018年12月9日,國(guó)內(nèi)某安全組織,對(duì)discuz X3.2 X3.4版本的漏洞進(jìn)行了公開(kāi),這次漏洞影響范圍較大,具體漏洞是discuz 的用戶(hù)前段SQL注入與請(qǐng)求偽造漏洞,也俗稱(chēng)SSRF漏洞,漏洞產(chǎn)生的原因首先:php環(huán)境的版本大約PHP5.2,dizcuzX3.2 X3.4版本,服務(wù)器環(huán)境是windows 2008 2003 2012系統(tǒng),linux centos不受此漏洞的影響。
漏洞的詳情與利用
該漏洞產(chǎn)生的原因是由于source目錄下的module文件里的misc模塊代碼,具體的是misc_imgcropper.php文件第54行到56行之間的函數(shù)變量賦值問(wèn)題導(dǎo)致可以插入惡意非法參數(shù),導(dǎo)致可以進(jìn)行變量,我們跟進(jìn)這個(gè)函數(shù)傳遞到了那里。
跟蹤這個(gè)函數(shù)查到調(diào)用到了class目錄下的class_images.php,代碼如下圖:
從上述代碼中可以看出傳遞過(guò)來(lái)的url函數(shù),被正常解析到curl請(qǐng)求當(dāng)中去,通過(guò)這里的代碼功能我們可以知道,我們可以調(diào)用cur的請(qǐng)求,去請(qǐng)求一些其他網(wǎng)站,curL:www.***.com.那么我們可以偽造自己構(gòu)造的XSS獲取代碼,把代碼放到自己的網(wǎng)站當(dāng)中,讓訪問(wèn)者自動(dòng)訪問(wèn)我們精心制作的地址即可。但是利用這個(gè)請(qǐng)求偽造攻擊的漏洞需要一定的條件就是需要網(wǎng)址的跳轉(zhuǎn)才能更好的利用。
在discuz漏洞的利用過(guò)程中我們發(fā)現(xiàn)有些php版本也存在問(wèn)題,必須是大約PHP5.2版本的,有些curl網(wǎng)址的請(qǐng)求才能有效果。我們提交的方式是get方式的數(shù)據(jù)提交,使用referer進(jìn)行判斷跳轉(zhuǎn)。discuz官方對(duì)于來(lái)路的判斷跳轉(zhuǎn)進(jìn)行了嚴(yán)格的過(guò)濾,導(dǎo)致你能使用任何地址進(jìn)行跳轉(zhuǎn),我們來(lái)看下官方是如何寫(xiě)的代碼。如下圖:
從代碼里可以看到限制了只要是本地的網(wǎng)址https://127.0.0.1/discuz才能跳轉(zhuǎn),我們測(cè)試了很多方式發(fā)現(xiàn)可以繞過(guò)discuz的限制,https://127.0.0.1%23%40www.安全測(cè)試.com&quickforward=2即可進(jìn)行繞過(guò),我們本地來(lái)測(cè)試下該漏洞:
discuz漏洞修復(fù)
關(guān)于discuz 3.4漏洞修復(fù),建議使用者盡快升級(jí)discuz到最新版本,針對(duì)于curl的請(qǐng)求,php版本降級(jí)于5.2版本一下,或者是限制curl的功能使用。對(duì)discuz上的漏洞進(jìn)行修復(fù),或者是對(duì)網(wǎng)站安全防護(hù)參數(shù)進(jìn)行重新設(shè)置,使他符合當(dāng)時(shí)的網(wǎng)站環(huán)境。如果不懂如何修復(fù)discuzx3.4版本discuzx3.0版本以及discuzx3.2版本漏洞,也可以找專(zhuān)業(yè)的網(wǎng)站安全公司來(lái)處理,國(guó)內(nèi)也就Sinesafe和綠盟、啟明星辰等安全公司比較專(zhuān)業(yè).本文來(lái)源:www.sinesafe.com
申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!