OWASP 發(fā)布了2021年草案,全新的OWASP Top 10 2021帶有三個新的類別和排位的變化。
OWASP Top 10是每個Web應(yīng)用程序的最低或基本安全測試要求。
OWASP Top 10于2003年首次推出,經(jīng)過多次修訂。現(xiàn)在發(fā)布了2021年的報告草案。
2021年前10名發(fā)生了什么變化:有三個新類別,四個類別的命名和范圍發(fā)生了變化,并且 2021年的前10 名中進行了一些合并。
OWASP Top 10 2021
A01:2021 - Broken Access Control 失效的訪問控制
從 2017 年的第五位上升到首位,它也被稱為授權(quán),它定義了 Web 應(yīng)用程序如何向某些用戶而不是其他用戶授予對內(nèi)容和功能的訪問權(quán)限。
訪問控制強制執(zhí)行策略,使用戶不能在其預(yù)期權(quán)限之外采取行動。故障通常會導(dǎo)致未經(jīng)授權(quán)的信息泄露、修改或破壞所有數(shù)據(jù)或執(zhí)行超出用戶限制的業(yè)務(wù)功能。常見的訪問控制漏洞包括:
1) 通過修改 URL、內(nèi)部應(yīng)用程序狀態(tài)或 HTML 頁面,或僅使用自定義 API 攻擊工具來繞過訪問控制檢查。
2) 允許將主鍵更改為其他用戶的記錄,允許查看或編輯其他人的帳戶。
3) 特權(quán)提升。在未登錄的情況下充當用戶或以用戶身份登錄時充當管理員。
4) 元數(shù)據(jù)操作,例如重放或篡改 JSON Web 令牌 (JWT) 訪問控制令牌,或用于提升權(quán)限或濫用 JWT 失效的 cookie 或隱藏字段。
5) CORS 錯誤配置允許未經(jīng)授權(quán)的 API 訪問。
6) 強制以未經(jīng)身份驗證的用戶身份瀏覽經(jīng)過身份驗證的頁面或以標準用戶身份瀏覽特權(quán)頁面。訪問 API 時缺少對 POST、PUT 和 DELETE 的訪問控制。
A02:2021 - Cryptographic Failures 加密失敗
從第三位上升到第二位,以前稱為敏感數(shù)據(jù)泄露(Sensitive Data Exposure),這是廣泛的癥狀而不是根本原因。缺乏加密通常會導(dǎo)致敏感數(shù)據(jù)泄露或系統(tǒng)受損。
首先是確定傳輸中和靜止數(shù)據(jù)的保護需求。例如,密碼、信用卡號、健康記錄、個人信息和商業(yè)秘密需要額外保護,主要是如果該數(shù)據(jù)屬于隱私法(例如歐盟的通用數(shù)據(jù)保護條例 (GDPR))或法規(guī)(例如金融數(shù)據(jù)保護)例如 PCI 數(shù)據(jù)安全標準 (PCI DSS)。對于所有此類數(shù)據(jù):
1) 是否有任何數(shù)據(jù)以明文形式傳輸?這涉及 HTTP、SMTP 和 FTP 等協(xié)議。外部互聯(lián)網(wǎng)流量是危險的。驗證所有內(nèi)部流量,例如,負載平衡器、Web 服務(wù)器或后端系統(tǒng)之間的流量。
2) 默認情況下或在較舊的代碼中是否使用任何舊的或弱的加密算法?
3) 是否正在使用默認加密密鑰、生成或重復(fù)使用弱加密密鑰,或者是否缺少適當?shù)拿荑€管理或輪換?
4) 是否未強制執(zhí)行加密,例如,是否缺少任何用戶代理(瀏覽器)安全指令或標頭?
5) 用戶代理(例如,應(yīng)用程序、郵件客戶端)是否不驗證收到的服務(wù)器證書是否有效?
A03:2021 - Injection 注入
從第一位下降到第三位,它是一種攻擊者利用未經(jīng)驗證的輸入漏洞并通過在后端數(shù)據(jù)庫中執(zhí)行的 Web 應(yīng)用程序注入 SQL 命令的技術(shù)。
跨站腳本攻擊現(xiàn)在是此版本中此類別的一部分。
應(yīng)用程序在以下情況下容易受到攻擊:
1) 應(yīng)用程序不會驗證、過濾或清理用戶提供的數(shù)據(jù)。
2) 沒有上下文感知轉(zhuǎn)義的動態(tài)查詢或非參數(shù)化調(diào)用直接在解釋器中使用。
3) 在對象關(guān)系映射 (ORM) 搜索參數(shù)中使用惡意數(shù)據(jù)來提取額外的敏感記錄。
4) 直接使用或連接惡意數(shù)據(jù)。SQL 或命令包含動態(tài)查詢、命令或存儲過程中的結(jié)構(gòu)和惡意數(shù)據(jù)。
一些更常見的注入是 SQL、NoSQL、OS 命令、對象關(guān)系映射 (ORM)、LDAP 和表達式語言 (EL) 或?qū)ο髨D導(dǎo)航庫 (OGNL) 注入。源代碼審查是檢測應(yīng)用程序是否容易受到注入攻擊的最佳方法。強烈建議對所有參數(shù)、標頭、URL、cookie、JSON、SOAP 和 XML 數(shù)據(jù)輸入進行自動化測試。組織可以將靜態(tài)源 (SAST) 和動態(tài)應(yīng)用程序測試 (DAST) 工具包含到 CI/CD 管道中,以在生產(chǎn)部署之前識別引入的注入缺陷。
A04:2021 - Insecure Design 不安全的設(shè)計
這是 OWASP Top 2021 的一個新類別,它關(guān)注與設(shè)計和架構(gòu)缺陷相關(guān)的風險。
不安全設(shè)計是一個廣泛的類別,代表許多不同的缺陷,表現(xiàn)為缺失或無效的控制設(shè)計。缺少不安全的設(shè)計是缺少控制的地方。例如,想象一下應(yīng)該加密敏感數(shù)據(jù)的代碼,但沒有方法。無效的不安全設(shè)計是可以實現(xiàn)威脅的地方,但域(業(yè)務(wù))邏輯驗證不足會阻止該操作。例如,假設(shè)域邏輯應(yīng)該根據(jù)收入等級處理流行病稅收減免,但不驗證所有輸入都已正確簽名并提供比應(yīng)授予的更重要的減免收益。
安全設(shè)計是一種文化和方法,它不斷評估威脅并確保代碼經(jīng)過穩(wěn)健設(shè)計和測試,以防止已知的攻擊方法。安全設(shè)計需要安全的開發(fā)生命周期、某種形式的安全設(shè)計模式或鋪砌道路組件庫或工具,以及威脅建模。
A05:2021 - Security Misconfiguration 安全配置錯誤
從第六位移至第五位,它側(cè)重于跨應(yīng)用程序堆棧的安全加固或?qū)υ品?wù)的權(quán)限配置不當。
XML 外部實體 (XXE) (XML External Entities,XXE)現(xiàn)在屬于此類別。
如果應(yīng)用程序是:
1) 在應(yīng)用程序堆棧的任何部分缺少適當?shù)陌踩珡娀驅(qū)υ品?wù)的權(quán)限配置不正確。
2) 啟用或安裝了不必要的功能(例如,不必要的端口、服務(wù)、頁面、帳戶或權(quán)限)。
3) 默認帳戶及其密碼仍處于啟用狀態(tài)且未更改。
4) 錯誤處理向用戶顯示堆棧跟蹤或其他信息過多的錯誤消息。
5) 對于升級的系統(tǒng),最新的安全功能被禁用或未安全配置。
6) 應(yīng)用程序服務(wù)器、應(yīng)用程序框架(例如,Struts、Spring、ASP.NET)、庫、數(shù)據(jù)庫等中的安全設(shè)置未設(shè)置為安全值。
7) 服務(wù)器不發(fā)送安全標頭或指令,或者它們未設(shè)置為安全值。
8) 軟件已過時或易受攻擊(請參閱 A06:2021-易受攻擊和過時的組件)。
如果沒有協(xié)調(diào)一致的、可重復(fù)的應(yīng)用程序安全配置過程,系統(tǒng)將面臨更高的風險。
A06:2021 - Vulnerable and Outdated Components 易受攻擊和過時的組件
從第九位升至第六位,是我們難以測試和評估風險的已知問題。此類別重點關(guān)注客戶端和服務(wù)器端使用的所有易受攻擊的組件版本。
你的系統(tǒng)可能很脆弱:
1) 如果您不知道您使用的所有組件的版本(客戶端和服務(wù)器端)。這包括您直接使用的組件以及嵌套的依賴項。
2) 如果軟件易受攻擊、不受支持或已過期。這包括操作系統(tǒng)、Web/應(yīng)用程序服務(wù)器、數(shù)據(jù)庫管理系統(tǒng) (DBMS)、應(yīng)用程序、API 和所有組件、運行時環(huán)境和庫。
3) 如果您不定期掃描漏洞并訂閱與您使用的組件相關(guān)的安全公告。
4) 如果您沒有以基于風險的方式及時修復(fù)或升級底層平臺、框架和依賴項。這通常發(fā)生在修補是變更控制下的每月或每季度任務(wù)的環(huán)境中,使組織面臨數(shù)天或數(shù)月不必要地暴露于固定漏洞的風險。
5) 如果軟件開發(fā)人員不測試更新、升級或修補的庫的兼容性。
6) 如果您不保護組件的配置(請參閱 A05:2021-安全配置錯誤)。
A07:2021 – Identification and Authentication Failures 認證和授權(quán)失敗
以前它被稱為損壞的身份驗證(Broken Authentication),此類別側(cè)重于身份驗證失敗。從第二位下滑到第七位。
它會導(dǎo)致自動攻擊,例如攻擊者使用用戶名和密碼列表的憑據(jù)填充。
確認用戶的身份、身份驗證和會話管理對于防止與身份驗證相關(guān)的攻擊至關(guān)重要。如果應(yīng)用程序存在以下情況,則可能存在身份驗證漏洞:
1) 允許自動攻擊,例如撞庫,其中攻擊者擁有有效用戶名和密碼的列表。
2) 允許蠻力或其他自動攻擊。
3) 允許使用默認密碼、弱密碼或眾所周知的密碼,例如“Password1”或“admin/admin”。
4) 使用弱或無效的憑據(jù)恢復(fù)和忘記密碼流程,例如無法確保安全的“基于知識的答案”。
5) 使用純文本、加密或弱散列密碼(請參閱 A3:2017-敏感數(shù)據(jù)泄露)。
6) 缺少或無效的多因素身份驗證。
7) 在 URL 中公開會話 ID(例如,URL 重寫)。
8) 成功登錄后不要輪換會話 ID。
9) 不會正確地使會話 ID 無效。用戶會話或身份驗證令牌(主要是單點登錄 (SSO) 令牌)在注銷或一段時間不活動期間未正確失效。
A08:2021 – Software and Data Integrity Failures 軟件和數(shù)據(jù)完整性故障
這是 OWASP Top 10 2021 中引入的一個新類別,它側(cè)重于與無法防止完整性違規(guī)的代碼和基礎(chǔ)設(shè)施相關(guān)的軟件和數(shù)據(jù)完整性故障。
2017 年的不安全反序列化(Insecure Deserialization)現(xiàn)在是這一大類別的一部分。
軟件和數(shù)據(jù)完整性故障與不能防止完整性違規(guī)的代碼和基礎(chǔ)設(shè)施有關(guān)。例如,在對象或數(shù)據(jù)被編碼或序列化為攻擊者可以看到和修改的結(jié)構(gòu)的情況下,很容易受到不安全的反序列化的影響。另一種形式是應(yīng)用程序依賴來自不受信任的來源、存儲庫和內(nèi)容交付網(wǎng)絡(luò) (CDN) 的插件、庫或模塊。不安全的 CI/CD 管道可能會導(dǎo)致未經(jīng)授權(quán)的訪問、惡意代碼或系統(tǒng)受損。最后,許多應(yīng)用程序現(xiàn)在包括自動更新功能,其中更新在沒有充分完整性驗證的情況下被下載并應(yīng)用于以前受信任的應(yīng)用程序。攻擊者可能會上傳自己的更新以分發(fā)并在所有安裝上運行。
A09:2021 – Security Logging and Monitoring Failures 安全日志記錄和監(jiān)控失敗
以前是日志記錄和監(jiān)控不足(Insufficient Logging&Monitoring),從第十位前進一步,此類別已擴展為包括更多類型的故障。此類別有助于檢測、升級和響應(yīng)活動的違規(guī)行為。
此類故障會直接影響可見性、事件警報和取證。
如果沒有日志記錄和監(jiān)控,就無法檢測到漏洞。任何時候都會發(fā)生日志記錄、檢測、監(jiān)控和主動響應(yīng)不足的情況:
1) 不記錄可審計的事件,例如登錄、失敗登錄和高價值交易。
2) 警告和錯誤不會生成、不充分或不清楚的日志消息。
3) 不會監(jiān)控應(yīng)用程序和 API 的日志是否存在可疑活動。
4) 日志僅存儲在本地。
5) 適當?shù)木瘓箝撝岛晚憫?yīng)升級流程沒有到位或有效。
6) DAST 工具(例如 OWASP ZAP)的滲透測試和掃描不會觸發(fā)警報。
7) 應(yīng)用程序無法實時或接近實時地檢測、升級或警告主動攻擊。
通過使用戶或攻擊者可以看到日志記錄和警報事件,您很容易受到信息泄漏的影響(請參閱 A01:2021 – 損壞的訪問控制)。
A10:2021 – Server-Side Request Forgery (SSRF) 服務(wù)器端請求偽造
此類別是新添加的。側(cè)重于保護 Web 應(yīng)用程序在不驗證用戶提供的 URL 的情況下獲取遠程資源的連接。
每當 Web 應(yīng)用程序在未驗證用戶提供的 URL 的情況下獲取遠程資源時,就會出現(xiàn) SSRF 缺陷。它允許攻擊者強制應(yīng)用程序?qū)⒕脑O(shè)計的請求發(fā)送到意外目的地,即使受到防火墻、VPN 或其他類型的網(wǎng)絡(luò) ACL 的保護也是如此。
隨著現(xiàn)代 Web 應(yīng)用程序為最終用戶提供方便的功能,獲取 URL 成為一種常見情況。因此,SSRF 的發(fā)病率正在增加。此外,由于云服務(wù)和架構(gòu)的復(fù)雜性,SSRF 的嚴重性越來越高。
OWASP介紹:
OWASP是一個開源的、非盈利的全球性安全組織,致力于應(yīng)用軟件的安全研究。OWASP的使命是使應(yīng)用軟件更加安全,使企業(yè)和組織能夠?qū)?yīng)用安全風險做出更清晰的決策。目前OWASP全球擁有250個分部近7萬名會員,共同推動了安全標準、安全測試工具、安全指導(dǎo)手冊等應(yīng)用安全技術(shù)的發(fā)展。
及時掌握網(wǎng)絡(luò)安全態(tài)勢 盡在傻蛋網(wǎng)絡(luò)安全監(jiān)測系統(tǒng)
【網(wǎng)絡(luò)安全監(jiān)管部門】免費試用
本文來源:owasp
如涉及侵權(quán),請及時與我們聯(lián)系,我們會在第一時間刪除或處理侵權(quán)內(nèi)容。
電話:400-869-9193 負責人:張明