萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 資訊安全防護

防止 Access 資料庫被下載的 9 招實戰防護

ASP/Access 架構網站最怕資料庫被直接下載。本文從「偽裝檔名」到「多層加密」提供 9 種防護手段,依據資產價值選擇適當層級。

九大防護手段 (由弱至強)

#方法操作要點安全性適用場景
1修改資料庫檔名改為難以猜測名稱 (如 data_20240101_x7k.mdb)★☆☆☆☆僅防禦路徑猜測,路徑洩露即失效
2副檔名改為 .asa/.asp配合 IIS 解析:
1. OLE 物件欄位插入 <% 文字檔
2. IIS 以 ASP 解析 → 回傳 500 錯誤,無法下載
★★☆☆☆需 Access 操作 OLE 欄位,較繁瑣
3檔名前加 # 或空格命名 #data.mdb 或 data 123.mdb → HTTP 解析時 # 後內容被截斷/空格編碼為 %20,下載失效★★☆☆☆利用 HTTP 協定特性,但部分鍛工具可繞過
4資料庫加密 + 設定密碼1. 工具→安全性→加密/解密 → 另存為新檔
2. 獨佔模式開啟 → 工具→安全性→設定資料庫密碼
3. 連接字串加 PWD=密碼
★★★☆☆防竊取檔案後直接開啟,**但 Access 加密極弱,專用工具秒破**
5將資料庫移出 Web 目錄放置於 wwwroot 上層目錄 (如 D:\App_Data\),連接字串用實體路徑★★★★☆**最推薦、成本最低**,「不在 Web 根目錄下」即無法直接 URL 存取
6IIS 設定 MIME 對應拒絕 .mdbIIS 管理員 → MIME 類型 → 移除 .mdb 或設為 application/octet-stream 並啟用「拒絕服務」★★★☆☆防直接下載,但不防包含漏洞腳本讀取
7資料夾權限鎖定 (NTFS)資料庫資料夾 → 安全性 → 移除 Users/Everyone,僅給 IIS 執行身分 (IUSR/ApplicationPoolIdentity) 讀取權限★★★★☆作業系統層面存取控制,最可靠
8升級至 SQL Server / SQLite遷移至具備完整權限體系、加密、備份的資料庫引擎★★★★★根治 Access 架構缺陷,企業級應用必選
9Web 應用防火牆 (WAF) + 程式碼審計部署 WAF 規則攔截 SELECT * FROM、路徑遍歷等攻擊;定期審計 SQL 注入、路徑洩露漏洞★★★★★纵深防禦,配合上層應用安全

實戰建議組合拳

  1. 基礎:方法 5 (移出 Web 目錄) + 方法 7 (NTFS 權限) + 方法 6 (MIME 拒絕)。
  2. 進階:方法 4 (加密/密碼) 作為第二道防線 + 方法 9 (WAF/審計)。
  3. 根治:規劃遷移至 SQL Server Express / PostgreSQL / SQLite (方法 8)。

核心原則:**「不在 Web 根目錄、不依賴單一機制、假設洩露也要安全」**。

copyright © 萬盛學電腦網 all rights reserved