什麼是 OWASP?完整解析 OWASP Top 10 漏洞與防護策略

2025-10-21

什麼是 OWASP?

OWASP(Open Web Application Security Project)是致力於提升軟體安全性的全球非營利組織。除了最廣為人知的 OWASP Top 10 外,OWASP 也推出許多實用資源,包括安全開發最佳實務指南、OWASP 滲透測試工具 Zed Attack Proxy(ZAP),以及用於測試安全程式設計而刻意保留漏洞的系統。此外,OWASP 也在全球各地設有據點,並定期舉辦資安相關的研討會與技術交流活動。

什麼是 OWASP Top 10?

OWASP Top 10 是由 OWASP 公布的十大 Web 應用程式安全風險清單,每隔幾年會進行更新。目前的版本為 2021 年所發布,下一次更新預計是 2025 年。OWASP Top 10 的主要目的是協助開發與資安人員了解各項常見威脅,除了說明風險內容外,也提供如何預防、偵測與修補漏洞的建議與實務指南。

除了最廣為人知的 Web 應用程式 Top 10,OWASP 也針對其他系統提供對應清單。例如,API Top 10 著重於Web API 常見的安全問題,因此部分項目可能與主要清單有所重疊。

這份清單的設計宗旨,在於凸顯當前 Web 應用程式中最關鍵的安全漏洞,包含真實環境中最常見的威脅,以及由開發人員和資安社群所回饋的新興風險,協助企業掌握最迫切需要關注的安全議題。

#1. 存取控制失效(Broken Access Control)

當 Web 應用程式未能妥善限制使用者對機敏資料及功能的存取時,就存在存取控制失效的風險。例如,應用程式沒有正確實行存取控制機制、預設分配過高權限,或允許攻擊者提高權限,以認證用戶或管理員身分操作系統功能。

#2. 加密失效(Cryptographic Failures)

加密演算法的目的,是防止資料被未經授權存取或惡意竄改。當應用程式在需要加密時未採用加密機制,或錯誤使用加密元件導致防護效果失效時,就屬於「加密失效」。

常見的狀況包括:

⦁ 傳輸敏感資料時使用明文(例如使用 HTTP 而非 HTTPS)
⦁ 採用已知弱點或過時的加密演算法
⦁ 使用隨機性不足的來源來產生加密金鑰或安全性相關資料

這類漏洞會讓攻擊者更容易攔截、解密或偽造資料,進而危及整體系統的機密性與完整性。

#3. 注入漏洞(Injection)

當網頁應用程式使用的語言會將使用者輸入(User Input)與程式指令混合(例如 SQL)時,就可能出現「注入漏洞」。若應用程式未對使用者輸入進行驗證、清理或過濾,攻擊者就能透過惡意或格式錯誤的輸入,改變原本指令的行為。

#4. 不安全的設計(Insecure Design)

不安全的設計指的是應用程式架構中基本設計失誤,導致重要的安全管控沒有被納入或落實。

常見範例包括:

⦁ 在錯誤訊息中暴露敏感資訊
⦁ 以不安全的方式儲存敏感帳號或憑證資料
⦁ 違反應用程式內部的信任邊界(Trust Boundaries)

這類問題通常起源於軟體開發生命週期的規劃與設計階段,與其他漏洞不同,後者通常是在開發階段產生的程式錯誤。

#5. 安全設定錯誤(Security Misconfiguration)

當應用程式設定不當或防護不足,無法有效抵禦潛在攻擊時,就會產生安全設定錯誤的漏洞。

常見情況包括:

⦁ 啟用不必要的功能或服務
⦁ 使用預設密碼或硬編碼(Harcode)密碼
⦁ 錯誤訊息或堆疊追蹤(Stack Trace)中洩露過多資訊

這類漏洞可能讓攻擊者更容易入侵系統或取得敏感資料,因此正確的設定與系統強化(Hardening)是防護關鍵。

#6. 使用弱點或過時的元件(Vulnerable and Outdated Components)

Web 應用程式通常會依賴第三方元件或外掛。如果這些元件或依賴項(Dependency)沒有即時更新,就可能含有可被利用的漏洞。這不僅包括直接使用的元件或嵌入的套件,也包含間接依賴的元件,一路延伸到軟體供應鏈的最底層。

簡單來說,任何未更新或過時的第三方元件,都可能成為攻擊者入侵的入口,維護更新與版本管理是降低風險的重要措施。

#7. 身分識別與認證失效(Identification and Authentication Failures)

身分識別與認證失效指的是無法正確驗證使用者身份的漏洞。

常見例子包括:

⦁ 容易遭受帳號填充攻擊(Credential Stuffing)
⦁ 允許使用弱密碼或預設密碼
⦁ 認證資訊儲存方式不安全(明文、加密方式不當或雜湊強度不足的密碼)

這與存取控制失效(Broken Access Control)不同,後者是指已成功驗證身份的使用者,其權限管理不當導致可操作未授權功能或資料。

#8. 軟體與資料完整性失效(Software and Data Integrity Failures)

「軟體與資料完整性失效」於 2021 年被新增至 OWASP Top 10 中,主要是指對第三方資料或程式碼過度信任所產生的漏洞。

常見情況包括:

⦁ 使用來自不可信來源的第三方元件或插件
⦁ CI/CD 流程安全不足,容易被植入惡意程式
⦁ 自動安裝更新時未驗證完整性或真實性
⦁ 序列化(Serialization)相關漏洞也屬於這類問題

這類漏洞會讓攻擊者藉由惡意程式碼或資料,破壞應用程式的安全性與資料完整性。

#9. 安全日誌與監控失效(Security Logging and Monitoring Failures)

安全日誌與監控失效指的是日誌記錄不足或監控不當的問題。

常見情況包括:

⦁ 未正確記錄登入失敗嘗試,可能讓應用程式容易遭受帳號填充攻擊(Credential Stuffing)
⦁ 組織對日誌與事件缺乏有效監控,導致潛在的資安攻擊未被發現

這類問題會降低企業對攻擊的偵測與應變能力,讓漏洞與威脅持續存在。

#10. 伺服器端請求偽造(Server-Side Request Forgery, SSRF)

伺服器端請求偽造漏洞發生在 Web 應用程式根據使用者提供的 URL 抓取遠端資源,但未先驗證該 URL 的合法性。這會造成安全問題,因為攻擊者可能誘使應用程式替他發出惡意請求。

常見範例:攻擊者利用 SSRF 漏洞繞過防火牆或存取控制清單(ACL),讓受害應用程式能存取攻擊者裝置或帳號無法直接存取的內部資源。

簡單來說,SSRF 是攻擊者「借用」伺服器的權限去做原本自己無法做的操作。

結語

在現今資安威脅快速演進的環境下,OWASP Top 10 已成為企業檢視應用程式安全風險的重要指標。了解漏洞只是第一步,能否有效落實防護才是關鍵。透過 Orca Security 的雲端安全態勢管理、Qualys 和 IONIX 的弱點/外部攻擊面管理、Thales 的資料加密與完整性保護、Imperva 與 Array Networks 的應用程式與網站防護,以及 Proofpoint 的郵件安全與帳號接管防護等解決方案,企業可全面對應 OWASP Top 10 的各類高風險漏洞,打造長期穩健的安全韌性。

參考來源:IONIX