本文僅供安全研究、防禦教學與授權滲透測試參考。未經書面授權對任何系統進行攻擊、植入後門、竊取資料均屬違法,嚴禁用於非法用途。請遵守當地法律法規與《網絡安全法》相關規定。
root 空密碼或弱口令,且對外開放 3306 埠。test 資料庫建立單欄 cmd TEXT 資料表。INSERT,內容為建立 WScript.Shell 物件並執行 net user/net localgroup 指令新增管理員帳號。SELECT * FROM a INTO OUTFILE 'C:\\...\\Startup\\a.vbs',寫入所有使用者啟動資料夾。SYSTEM 或 Administrators 成員)。FILE 權限(GRANT FILE ON *.* TO 'root'@'%')。| 層面 | 具體措施 |
|---|---|
| 帳號與認證 | 強制複雜密碼、啟用 validate_password 元件、禁止 root 遠端登入(bind-address=127.0.0.1 或防火牆限制)、採用 SSH 隧道/VPN 存取。 |
| 最小權限 | 應用布號移除 FILE、PROCESS、SUPER、SHUTDOWN 等高危權限;僅授予特定資料庫的 DML 權限。 |
| 檔案系統 | MySQL 服務帳號不可為 Administrator;資料目錄與 secure_file_priv 限定專用匯入匯出目錄,禁止寫入系統目錄、啟動資料夾。 |
| 網路隔離 | 3306 埠不對公網開放;僅允許應用伺服器 IP 存取;生產環境強制 SSL 連線(require_secure_transport=ON)。 |
| 稽核與監控 | 啟用審計日誌(MariaDB Audit Plugin / MySQL Enterprise Audit),警報異常 INTO OUTFILE、CREATE TABLE、GRANT FILE 等操作。 |
| 作業系統 | 啟用 AppLocker/軟體限制原則封鎖啟動資料夾 .vbs/.bat/.ps1;定期修補 OS 漏洞;關閉不必要的服務。 |
mysql.user、mysql.db、mysql.tables_priv 是否被竄改;排查 INTO OUTFILE 產出的可疑檔案。此攻擊本質上是弱密碼 + 過度權限 + 檔案寫入濫用 + 作業系統啟動機制的組合拳。防禦核心在於「最小權限、網路隔離、強認證、審計可見」,單一防線失效時仍有纵深防護生效。