阿里雲提示Discuz uc.key泄露致使代碼注入漏洞uc.php的解決方法

適用全部用UC整合php

阿里雲提示漏洞:api

discuz中的/api/uc.php存在代碼寫入漏洞,致使黑客可寫入惡意代碼獲取uckey,..........

 

漏洞名稱:Discuz uc.key泄露致使代碼注入漏洞函數


補丁文件:/api/uc.php

補丁來源:雲盾自研阿里雲

 

解決方法:
找到文件/api/uc.php​ 中的如下代碼:

spa

$configfile = substr($configfile, -2) == '?>' ? substr($configfile, 0, -2) : $configfile;

大概216行,替換成如下:code

$configfile = preg_replace("/define\('UC_API',\s*'.*?'\);/i", "define('UC_API', '".addslashes($UC_API)."');", $configfile);

更新代碼後,在阿里雲後臺這條漏洞後面點「驗證一下」,便可看到這條漏洞補上就沒有了blog

 

 

 

 


 科普一下:PHP addslashes() 函數ci


 在每一個雙引號(")前添加反斜槓:it

<?php 
$str = addslashes('Shanghai is the "biggest" city in China.');
echo($str); 
?> 

結果:Shanghai is the \"biggest\" city in China.class

相關文章
相關標籤/搜索