複選題

4. 為了防範常見的網站應用程式攻擊,如 SQL 注入(SQL Injection)與跨網站指令碼(XSS),開發團隊在設計安全架構時,應實施下列哪些防護與應變技術最為適切?(複選)
(A) 在伺服器端採用參數化查詢(Parameterized Queries) 或預處理敘述(Prepared Statements)來處理所有資料庫操作
(B) 在網頁前端實作嚴格的內容安全策略(Content Security Policy, CSP)以限制外部腳本的載入與執行
(C) 對所有使用者輸入的資料,在輸出至網頁時進行適當的編碼(Output Encoding)
(D) 僅在 HTTP 協定上運行網站,避免 HTTPS 加密造成的效能損耗

答案:登入後查看
統計: A(53), B(52), C(52), D(0), E(0) #3536950

詳解 (共 2 筆)

#6622217
好的,身為資訊科學領域的教授,我將針對...


(共 2732 字,隱藏中)
前往觀看
1
0
#6628879

CSP(Content Security Policy,內容安全政策)就是一種「瀏覽器端的白名單安全機制」,網站可以透過 HTTP 標頭或 <meta>,告訴瀏覽器「哪些資源可以載入,哪些不行」。

為什麼需要 CSP?

因為 XSS(跨站腳本攻擊) 和惡意外部資源是網站安全的大宗問題。
即使程式碼有漏洞,如果有嚴格 CSP,攻擊者就算插入 <script>alert(1)</script>,瀏覽器也會因為 CSP 禁令而拒絕執行。

CSP 能做什麼?

  • 限制腳本來源 (script-src)
    只能載入自家(self)或特定 CDN,阻擋惡意第三方腳本。

  • 限制樣式來源 (style-src)
    防止有人用 CSS 偷竊資料或嵌入奇怪字體。

  • 限制圖片來源 (img-src)
    避免外洩敏感資訊(例如攻擊者用圖片請求收集用戶 ID)。

  • 禁止危險功能 (object-src / frame-ancestors / form-action)
    阻止 <object> / <iframe> 被惡意利用。

  • 搭配 nonce 或 hash
    僅允許帶有正確 nonce 或 hash 的 <script> 內聯程式碼執行,抵禦 XSS。

  • 回報機制 (report-uri / report-to)
    讓網站收集 CSP 違規報告,方便調整政策。


(A) 參數化查詢 / 預處理敘述

正確
這是防範 SQL Injection 最重要的手法,可以避免惡意輸入被當成 SQL 語法執行。

(B) 內容安全策略 (CSP)

正確
CSP 能有效降低 XSS 攻擊風險,限制瀏覽器載入與執行未授權的腳本來源,是 OWASP 推薦的重要防禦措施之一。

(C) 輸出編碼 (Output Encoding)

正確
針對輸入資料,在輸出到網頁前進行適當的編碼 (例如 < → &lt;),可防範反射型與儲存型 XSS。

(D) 僅用 HTTP,避免 HTTPS

錯誤
HTTPS 與 SQLi / XSS 防禦無關,而且停用 HTTPS 會讓傳輸過程容易被竊聽與竄改,反而更危險。

0
0