OWASP Top 10網絡應用系統安全2021 正式發布
簡介
Open Web Application Security Project (OWASP) 屬一個致力提倡網絡應用系統安全的非商業機構,該組織最近發布了最新版本的十大網絡應用系統安全風險報告 (OWASP Top 10)。 OWASP Top 10旨在提昇應用系統開發員的安全意識,它依重要性列舉了頭十個最關鍵的網絡應用系統安全 (AppSec) 風險,並提供了影響範圍、例子和預防措施。這報告自 2003 年首次發布以來,已經成為行業上的標準,讓業界和開發員參照,以設計及開發安全度高的應用系統。為緊貼網絡保安趨勢的變化,該報告會每隔三至四年更新一次。隨著最新版本的 OWASP Top 10 剛剛發布,HKCERT 想藉此機會總結變化並分析新版本中的 3 個新類別。
為什麼OWASP Top 10會為最常用的應用系統安全標準?
OWASP Top 10以分類和優先順序列出了最關鍵的十個網絡應用系統安全風險,以便機構專注於實施預防和緩解措施。 最新版本的OWASP Top 10由兩種方法編制而成:十個類別中有八個來自超過 500,000 個應用系統的統計數據,而其餘兩個則是透過行業調查選出業界認為最高風險的類別。OWASP表示,之所以採用這種混合方式,是因為統計數據只反映了過去已知的事實,未能包括最近的趨勢,調查的投票結果正好填補這方面的不足。
2021 年OWASP Top 10由過去對近 30 個常見缺陷列表 (CWE) 的分析新增到約 400 個,這改變最終也改變了今年的類別組成,各類別的排名則以計算可利用性和影響性而進行排名。
這個全面而有系統的產生方法令 OWASP Top 10成為最常用的網絡應用系統安全標準之一。
與 2017 年Top 10相比,有什麼改變?
2021 年的OWASP Top 10可以在 https://owasp.org/Top10/ 找到。
與2017年版本相比,2021年的OWASP Top 10保留了所有的風險類別,部份通過更廣泛的範圍和排名合併。以下總結了今年的變化:
- “敏感數據暴露”之前歸類為廣泛的症狀,現在或因為是可能導致敏感數據暴露或系統受損的根本原因,而被重新歸類為“加密故障”。
- “跨網站指令碼(XSS)”現在屬於更廣泛的“注入”類別。技術上,它是透過注入指令碼來攻擊訪問受影響網站的其他用戶,與以有保安漏洞的伺服器作為目標的SQL、操作系統指令、輕型目錄存取協定(LDAP)注入攻擊不同,但緩解措施卻是相似的,即輸入驗證和上下文輸出編碼(Contextual Output Encoding)。
- “XML外部實體 (XXE) ”已歸入“安全錯誤配置”類別,因為開發人員在其代碼中錯誤地配置 XML 處理器 (XML Parser)。
- “不安全反序列化 (Insecure deserialization) ”被重新歸類為“軟件和數據完整性錯誤”類別。這是序列化物件保護不足的問題,導致數據被篡改,從不可信的來源傳遞給應用程序,對物件屬性的未授權操作可能會導致目標系統上的應用程序邏輯缺陷甚至遠程代碼執行 (RCE)。大部份的不安全反序列化錯誤都可歸因於使用了有保安漏洞的開源軟件,因此問題不容忽視,需要積極管理。
這次OWASP Top 10新增三個類別,分別為“A04:2021- Insecure Design”、“A08:2021- Software and Data Integrity Failures”和“A10:2021- Server-Side Request Forgery”。
A04:2021-Insecure Design
這個類別著眼於與設計和架構缺陷相關的風險。系統邏輯無法有效地防止攻擊,或者沒有內置程序來處理異常或濫用情況,有可能導致網絡應用系統出現異常行為。2021年初Facebook的數據洩露事件便是近期的例子之一,大量Facebook用戶的個人數據相信是通過數據抓取獲得的,並在黑客論壇上出售。如Facebook於系統設計時有考慮這種情況,而實施有效的流量限制和數據下載限制來制止自動化工具,這次事故或可以避免。OWASP建議業界應使用安全軟件開發生命周期、安全設計模式和威脅模型分析來應對此風險。
A08:2021-Software and Data Integrity Failures
這是另一個最具破壞力的風險之一。它是在軟件更新、重要數據和 CI/CD 管道期間未有驗證其没有被惡意篡改的情況發生。2017 年的”不安全反序列化”現在亦被歸入此類別。它與代碼或基礎設施未獲針對篡改保護有關。2020 年 12 月,網絡管理軟件公司 SolarWinds 遭到黑客攻擊,並在其軟件開發環境中注入了惡意代碼。由於該公司缺乏有效的代碼驗證程序,所以未能及時發現而令惡意代碼被傳遞給 18,000 多個機構,這次事故被認為是史上最嚴重的網絡攻擊之一。代碼簽署、使用受信任的代碼存儲庫和軟件供應鏈安全工具是可以用作消除此類威脅的預防措施。
A10:2021-Server-Side Request Forgery (SSRF)
這是根據行業調查為當前版本新添加的類別,以提高我們的關注度和認知度。它是指一些網絡應用系統容許使用者輸入個別網址來擷取網絡上的其他資源。根據受影響網絡應用系統的用途,黑客可利用 SSRF 漏洞來存取未經授權訪問的敏感資料,並且可能會在附加條件下提升為遠程代碼執行。另外由於雲端是圍繞網絡所構建的,而雲端服務供應商使用 HTTP 端點來處理數據是很常見的做法,因此雲端亦成為主要攻擊媒介之一。2021 年 1 月,Accellion 文件傳輸設備數據洩露事故就是由系統上的 SSRF 漏洞 (CVE-2021-27103) 引起的,當時黑客存取了本應無法從互聯網存取的本地 SOAP網絡服務而造成破壞。要防止SSRF,開發者可以在網絡層和應用層實施深度防禦控制。
建議
OWASP Top 10有助提高機構和開發人員對網絡應用系統保安威脅的認識。香港電腦保安事故協調中心(HKCERT) 建議機構採用該列表作為建立安全軟件開發文化的出發點。官方網站提供可付諸實行的資訊,能作為機構的保安清單和內部網絡應用系統安全開發的標準。
請謹記,OWASP Top 10不等於網絡應用系統中的所有漏洞,它只列出了網絡應用系統中最常見的類別和最具影響的十個保安風險。除了OWASP Top 10,還有很多其他資源,包括 OWASP 應用程序安全驗證標準,它是一個保安要求和測試的列表。另外,還有CWE,它將OWASP中的每個大類拆分為可被實際攻擊的漏洞細項,還涵蓋了其他不應被忽視的漏洞。除了採用業界標準外,開發員應對應用程式的保安風險和威脅模式還要有深入的理解,引用OWASP 香港分會負責人Boris So所說:
「不要只受典型攻擊模式所束縛,嘗試理解OWASP Top 10當中的概念,並在分析網絡應用系統安全上運用適當的判斷和推理。」
所以OWASP Top 10只是安全軟件開發文化的起點,不斷的檢視潛在保安漏洞及完善軟件才是安全開發的關鍵。
參考:
新的Top 10包括
- A01:2021-Broken Access Control
- A02:2021-Cryptographic Failures
- A03:2021-Injection
- A04:2021-Insecure Design
- A05:2021-Security Misconfiguration
- A06:2021-Vulnerable and Outdated Components
- A07:2021-Identification and Authentication Failures
- A08:2021-Software and Data Integrity Failures
- A09:2021-Security Logging and Monitoring Failures *
- A10:2021-Server-Side Request Forgery *
* 從行業調查中添加
分享至