thinkcmf 網站最新漏洞修復方法
近段時間發現很多APP程式用的是thinkcmf,此程式原始碼存在getshell漏洞,我們Sine安全緊急對此高危漏洞進行了分析和漏洞修復,攻擊者可以通過構造特定的請求包get請求即可在遠端伺服器上執行任意指令碼程式碼。
根據index.php中的配置,專案路徑為application,開啟 Portal 下的 Controller 目錄,選擇一個控制類檔案。
發現他的父類為Common\Controller\HomebaseController。
在HomeBaseController中加入如下測試程式碼
ThinkPHP是一套基於MVC的應用程式框架,被分成三個核心部件:模型(M)、檢視(V)、控制器(C)。
由於新增的程式碼在控制器中,根據ThinkPHP框架約定可以通過a引數來指定對應的函式名,但是該函式的修飾符必須為Public, 而新增的程式碼正好符合該條件。
可以通過如下URL進行訪問,並且可以新增GET引數arg1傳遞給函式。
cmfx-master/?a=test_public&arg1=run%20success
HomeBaseController類中有一些訪問許可權為public的函式,重點關注display函式.看描述就是可以自定義載入模版,通過$this->parseTemplate 函式根據約定確定模版路徑,如果不符合原先的約定將會從當前目錄開始匹配。
然後呼叫THinkphp Controller 函式的display方法
/**
* 載入模板和頁面輸出 可以返回輸出內容
* @access public
* @param string $templateFile 模板檔名
* @param string $charset 模板輸出字符集
* @param string $contentType 輸出型別
* @param string $content 模板輸出內容
* @return mixed
*/
public function display($templateFile = '', $charset = '', $contentType = '', $content = '', $prefix = '') {
parent::display($this->parseTemplate($templateFile), $charset, $contentType,$content,$prefix);
}
再往下就是呼叫Think View的fetch方法,這裡的TMPL_ENGINE_TYPE 為Think, 最終模版內容解析在ParseTemplateBehavior中完成
如下呼叫即可載入任意檔案
http://127.0.0.1:81/cmfx-master/?a=display&templateFile=README.md
五、執行漏洞
網站漏洞修復建議
通過此次審計程式碼發現問題的重點是對display 和 fetch 函式的修飾符模板函式進行修改,如果對程式程式碼不熟悉的話建議聯絡專業的網站安全公司來修復漏洞,國內做的比較專業的如Sinesafe,綠盟,啟明星辰,等等,對此很多app呼叫此程式的api介面原始碼,建議大家遇到此問題首先要進行全面的網站漏洞檢測和滲透測試,來達到事先預防此類攻擊帶來的危害。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31542418/viewspace-2664902/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 框架網站漏洞修復防護方法框架網站
- PrestaShop網站漏洞修復如何修復REST網站
- 網站漏洞修復 上傳webshell漏洞修補網站Webshell
- 網站漏洞修復案例之Discuz!3.4最新版本網站
- 網站程式碼漏洞審計挖掘與修復方法網站
- 怎麼修復網站漏洞騎士cms的漏洞修復方案網站
- 網站存在漏洞怎麼修復 如何修補網站程式程式碼漏洞網站
- 網站被攻擊 如何修復網站漏洞網站
- 網站被黑該怎麼修復漏洞網站
- WordPress網站漏洞利用及漏洞修復解決方案網站
- 網站漏洞檢測對漏洞檢測修復方案網站
- 網站漏洞修復之Metinfo 檔案上傳漏洞網站
- struts2架構網站漏洞修復詳情與利用漏洞修復方案架構網站
- apache網站漏洞修復解決辦法Apache網站
- 網站漏洞處理修復服務之lankecms篡改漏洞網站
- WordPress4.9最新版本網站安全漏洞詳情與修復網站
- ecshop漏洞修復以及如何加固ecshop網站安全網站
- 網站漏洞修復服務商關於越權漏洞分析網站
- 網站漏洞修復之圖片驗證碼的詳細修復方案網站
- 網站漏洞修補之ECshop4.0跨站指令碼攻擊修復網站指令碼
- 網站漏洞測試php程式碼修復詳情網站PHP
- 如何對網站登入進行漏洞測試以及漏洞修復網站
- 怎麼修復網站漏洞之metinfo遠端SQL隱碼攻擊漏洞修補網站SQL
- phpcms網站漏洞修復遠端程式碼寫入快取漏洞利用PHP網站快取
- 網站漏洞檢測 wordpress sql注入漏洞程式碼審計與修復網站SQL
- semcms網站漏洞挖掘過程與安全修復防範網站
- 網站安全防護-PHP反序列化漏洞修復網站PHP
- 網站漏洞測試 檔案上傳漏洞的安全滲透與修復網站
- 網站漏洞修復服務商對繞過認證漏洞的探討網站
- 網站漏洞修復SQL隱碼攻擊防護辦法網站SQL
- 網站漏洞修復公司處理網站被篡改跳轉到其他網站的解決辦法網站
- 【漏洞修復通知】修復Apache Shiro認證繞過漏洞Apache
- 我的網站被黑了,該如何排除漏洞並修復安全問題網站
- 網站漏洞該如何修復 加強伺服器的安全防護網站伺服器
- 網站漏洞修復對phpmyadmin防止被入侵提權的解決辦法網站PHP
- 修復網站漏洞對phpmyadmin防止被入侵提權的解決辦法網站PHP
- 滲透測試對網站漏洞修復執行命令重點檢查網站
- phpStudy poc漏洞復現以及漏洞修復辦法PHP