iT邦幫忙

2025 iThome 鐵人賽

DAY 19
0
佛心分享-IT 人自學之術

從基礎開始—web學習之路系列 第 19

從基礎建設web網頁-前端防護補強

  • 分享至 

  • xImage
  •  

1. CSP(Content Security Policy)

Content-Security-Policy: default-src 'self'; frame-ancestors 'none'; base-uri 'self'

限制網頁可載入的資源來源,避免惡意第三方腳本注入。default-src 'self'只允許同源資源。
frame-ancestors 'none'禁止此頁被嵌入到 iframe,防止點擊劫持。
base-uri 'self':限制 base 標籤來源,避免攻擊者改變相對路徑的解析。

2. Referrer-Policy

Referrer-Policy: strict-origin-when-cross-origin

控制瀏覽器在跳轉時攜帶的 Referer 資訊。為了避免完整 URL 被洩露到外部網站。
跨域時:只傳送來源 (scheme + host + port)。更嚴格可用 no-referrer。

3. X-Frame-Options / Frame-Ancestors

目的是要防止 Clickjacking。而實作方式 X-Frame-Options: DENY → 完全禁止被嵌入 iframe。
或使用 CSP 的 frame-ancestors 'none'(優先使用)。

4. 輸入/輸出處理

原則:所有使用者輸入都必須經過嚴格處理。
具體作法:
輸入:驗證格式、過濾不合理資料(例如只允許數字、email 格式等)。
輸出:利用框架的 自動 HTML 轉義 機制(例如 React JSX 預設轉義,避免 XSS)。
避免:

element.innerHTML = userInput;

應改用 textContent 或框架綁定。

5. HTTP Method 與 API 設計

原則:遵循 REST 與安全規範。
建議做法:
敏感操作(非冪等) → 使用 POST / PUT / DELETE。
查詢(冪等) → 使用 GET。
好處:
避免敏感操作被瀏覽器快取或 CSRF 利用。
更符合安全模型與 API 設計習慣。


上一篇
從基礎建設web網頁-Cookie/Session 的重要性
下一篇
web基本認識-資料流動過程
系列文
從基礎開始—web學習之路20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言