Web 應用程式安全
Web 應用程式把業務規則寫在伺服器上,並接受來自全世界的輸入。OWASP Top 10 是這領域最常用的風險地圖:它不是完整標準,但能避免團隊只修自己剛好聽過的那一種攻擊。
2021 年版怎麼讀(防禦)
| 編號 | 風險 | 開發時先問 |
|---|---|---|
| A01 | 失效的存取控制 | 每個請求是否在伺服器端再檢查「這個使用者能不能做」? |
| A02 | 加密機制失效 | 密碼、個資、連線是否用對演算法與協定? |
| A03 | 注入 | 查詢、命令、樣板是否與資料分開? |
| A04 | 不安全的設計 | 有沒有威脅模型,還是上線後再補洞? |
| A05 | 安全設定錯誤 | 除錯模式、預設帳號、雲端儲存權限? |
| A06 | 過時元件 | 套件有沒有鎖定與掃描? |
| A07 | 識別與驗證失敗 | MFA、會話、密碼重設流程? |
| A08 | 軟體與資料完整性 | CI/CD 與更新是否驗簽? |
| A09 | 日誌與監控失敗 | 登入失敗、授權失敗有沒有人看? |
| A10 | 伺服器端請求偽造 | 伺服器會不會替使用者去抓任意網址? |
實務建議:存取控制與注入先修好,再談華麗的 WAF。WAF 是補償,不是取代安全的程式。
建議影片
OWASP Top 10 2021 - The List and How You Should Use It
影片說明 OWASP 是什麼、2021 清單相對舊版的變化(存取控制升到第一、注入仍在前三),以及如何拿來排開發與檢測優先順序。請搭配 官方 Top 10 閱讀,清單會隨年版更新。
官方學習資源
官方文件與證照方向
- OWASP Top 10
- OWASP Application Security Verification Standard (ASVS)
- 開發團隊亦可參考各雲端廠商的應用程式安全訓練,但以 OWASP 為共通語言。