瀏覽自家網站時彈出「位於 Google Code 的 Subversion Repository 伺服器 bijioc.googlecode.com 要求使用者名稱和密碼」對話框,實為網頁被植入惡意 JavaScript 代碼,嘗試從已停用的 Google Code 載入外部腳本。本文針對 Discuz、DedeCMS、WordPress 三大常見 CMS,提供精準清除步驟與防護建議。
一、故障現象與本質
- 瀏覽器彈出基本認證對話框,網址含
bijioc.googlecode.com。
- Google Code 專案託管服務已於 2016 年關閉,該網域不再提供服務,請求必然失敗。
- 本質:網站檔案被注入惡意
<script src="https://bijioc.googlecode.com/...></script> 代碼。
二、三大 CMS 受感染檔案定位與清除
| CMS | 受感染檔案路徑 | 清除動作 |
| Discuz! (X 系列) | static/js/common.js | 搜尋 bijioc.googlecode.com,刪除整行 script 標籤 |
| DedeCMS (織夢) | include/dedeajax2.js | 同樣搜尋關鍵字刪除惡意行 |
| WordPress | wp-includes/js/jquery/jquery.js | 搜尋並刪除惡意行;若主題/外掛也被感染,需全站掃描 |
三、通用清除步驟(適用於所有 PHP/靜態網站)
- 備份網站:打包程式碼與資料庫,防誤刪。
- 全站搜尋:使用 IDE(VS Code、PhpStorm)、Notepad++、或 SSH 指令:
grep -r "bijioc.googlecode.com" /path/to/webroot --include="*.js" --include="*.php" --include="*.html" --include="*.htm"
- 逐一編輯:開啟被列出的檔案,刪除包含該網域的完整
<script> 標籤行。
- 檢查其他可疑外連:同步尋
googlecode.com、github.io、raw.githubusercontent.com 等非常見 CDN 連結。
- 清除快取:CDN 快取(Cloudflare、又拍雲等)、伺服器快取(Opcache、Redis)、瀏覽器快取、CMS 後台快取更新。
- 驗證:無痕模式/清除快取後重新訪問網站,確認無彈窗。
四、入侵途徑分析與防護加固
常見入侵向量
- FTP/SSH/SFTP 弱密碼被暴力破解。
- CMS 核心/外掛/主題已知漏洞(如 Dedecms 上傳漏洞、WordPress 外掛 RCE、Discuz 模板注入)。
- 伺服器控制面板(寶塔、cPanel、Plesk)帳號洩漏。
- 共享主機跨站攻擊(鄰站被駭波及)。
加固清單
- 強制強密碼 + 双因子認證 (2FA):所有後台、FTP、SSH、資料庫、面板帳號。
- 核心/外掛/主題保持最新:啟用自動更新或定期手動更新。
- 停用/刪除未使用外掛與主題:減少攻擊面。
- 檔案權限最小化:目錄 755、檔案 644、可寫入目錄(uploads、cache、data)755/775 並設防執行權限(.htaccess/php.ini/open_basedir)。
- WAF/防火牆:雲端 WAF(Cloudflare、阿里雲盾)、主機端 ModSecurity、Nginx 阻擋可疑 UA/請求。
- 定期異地備份:程式碼 + 資料庫每日自動備份至異地存儲,驗證可還原。
- 完整性監控:Tripwire、AIDE、或簡單腳本定期比對核心檔案雜湊值。
五、進階:若清除後故障復發
- 資料庫內容被植入(posts、options 表的欄位含惡意 script) → SQL 搜尋清理。
- 核心檔案被替換(index.php、config.php、wp-config.php、config_global.php) → 對比官方原始檔案雜湊值。
- Webshell 殘留(*.php、*.jsp、*.asp、*.aspx 藏在上傳目錄/圖片目錄) → 掃描工具:河馬 webshell 掃描、D 盾、Linux Malware Detect (maldet)。
- 定時任務被植入 — 檢查 crontab、Windows 排程器、CMS 內建排程。
「位於 Google Code 要求密碼」是典型的 JS 外連劫持/植入攻擊,清除受感染 JS 檔案中的惡意行並清除快取即可即時恢復。但清除代碼只是治標,必須同步完成「弱點修補、帳號加固、權限最小化、備份驗證、完整性監控」等治本工作,才能避免再次被植入。建議建立「上線前掃描、上線後監控、異常即響應」的安全運營閉環。