解讀OWASP應用安全驗證標準ASVS

OWASP應用程序安全驗證標準(OWASP Application Security Verification Standard,ASVS)為測試web應用程序技術安全控制提供了基礎,還為開發人員提供了安全開發的要求列表。

1. 簡介

OWASP應用安全驗證標準,是一份測試應用安全的清單,可供架構師、開發人員、測試人員、安全專家、工具供應商和消費者參考,用于定義、構建、測試和驗證安全的應用。當前最新版本是Version 4.0.3, 于2021年10月發布,具體文檔可點此下載(訪問密碼:6277)。ASVS 5.0版本的計劃和路線圖已經公布,關注博主,后續會持續更新。

OWASP(Open Web Application Security Project)開放網絡應用安全項目是一個全球自由開放的社區,通過其社區主導的開源軟件項目、全球數百個分會、數萬名成員以及舉辦本地和全球會議,致力于提高應用軟件的安全性。

2. 主要應用場景

OWASP應用程序安全驗證標準(ASVS)項目的主要目的是在使用商業上可行的開放標準執行Web應用程序安全性驗證時,規范可用的覆蓋范圍和嚴格程度。該標準為測試應用程序技術安全控制以及環境中的任何技術安全控制提供了基礎,這些技術安全控制用于防止跨站點腳本(XSS)和SQL注入等漏洞。此標準可用于建立Web應用程序安全性的置信度。制定這些要求時考慮到以下場景:

  • 用作衡量標準:為應用程序開發人員和應用程序所有者提供一個衡量標準,用于評估他們的Web應用程序的信任程度,

  • 用作指導:為安全控制開發人員提供指導,指導他們在安全控制中構建哪些內容,以滿足應用程序安全要求;

    在敏捷開發過程中,為了獲得安全的產品,ASVS可以作為框架來定義團隊需要實施的特定任務。 一種通用方法是:從 Level 1 開始,根據指定級別的 ASVS 要求,驗證特定應用程序或系統,查找缺少哪些項目,并在待辦事項中提出特定工單/任務。 這有助于對具體任務進行優先排序(梳理),并使安全在敏捷開發中可見。 這也可用于確定組織中審計和審查任務的優先;其中,特定的 ASVS 要求,可以作為團隊成員審查、重構或審計的驅動因素,并可以記錄到最終的待辦清單中。

  • 在采購過程中使用:為在合同中規定應用程序安全驗證要求提供依據。ASVS 是一個很好的框架,可以幫助確保安全軟件的采購或定制開發服務的采購。 買方可以簡單地設定一個要求,即他們希望采購的軟件必須按照 ASVS 的 Level x 來開發,并要求賣方證明該軟件滿足ASVS的x級。

3. 如何使用ASVS

簡單總結,ASVS其實就兩個主要目標:

  • 1、幫助組織開發和維護安全的應用程序;
  • 2、允許安全服務廠商、安全工具供應商和消費者調整他們的要求和產品。

3.1. 應用安全驗證級別

用程序安全驗證標準(ASVS)定義了三個安全驗證級別,級別越高,要求越嚴格:

  • ASVS Level 1: 適用于低保證級別,可通過滲透測試驗證。如果一個應用程序能夠充分防御 OWASP Top10 或其他類似檢查表中提到的那些容易發現的安全漏洞,那么它就達到了ASVS Level 1。
  • ASVS Level 2: 適用于包含敏感數據的應用程序(需要保護),是大多數應用程序的推薦級別。如果一個應用程序能夠充分抵御當今與軟件相關的大多數風險,那么它就達到了ASVS Level 2(級別或標準)。
  • ASVS Level 3: 適用于最關鍵的應用程序:執行高價值交易、包含敏感醫療數據的應用程序,或任何需要最高級別信任的應用程序(例如軍事、健康、安全和關鍵基礎設施等領域的應用)。

每個ASVS級別都包含一個安全要求的列表。其中的每一項,都可以對應到開發人員必須在軟件中建立的特定安全特性和功能。OWASP應用安全驗證標準級別(4.0版)如下圖所示:
在這里插入圖片描述

3.2. 如何使用這個標準

使用應用程序安全驗證標準(ASVS)的最佳方法之一,是將其作為一個藍圖,創建一個針對你的應用程序、平臺或組織的安全編碼檢查表。 建議根據不同的項目場景,針對其中最重要的安全要求增加關注。

4. 具體內容

由于標準要求多達60頁,在此不做展開,感興趣的可以下載文檔原件:

  • 中文版本,共62頁,點此下載(訪問密碼:6277)
  • 英文版本,共73頁,點此下載(訪問密碼:6277)

文章主要包含14章節內容:

  • 1架構、設計和威脅建模
  • 2認證
  • 3會話管理
  • 4訪問控制
  • 5驗證、過濾和編碼
  • 6存儲密碼學
  • 7錯誤處理和日志記錄
  • 8數據保護
  • 9通訊
  • 10惡意代碼
  • 11業務邏輯
  • 12文件和資源
  • 13API和Web Service
  • 14配置
    在這里插入圖片描述

5. 參考

[1] https://owasp.org/www-project-application-security-verification-standard/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/715966.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/715966.shtml
英文地址,請注明出處:http://en.pswp.cn/news/715966.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

電子電氣架構——AUTOSAR架構下EcuM喚醒源事件詳解

電子電氣架構——AUTOSAR架構下EcuM喚醒源事件詳解 我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 沒有人關注你。也無需有人關注你。你必須承認自己的價值,你不能站在他人的角度來反對自己。人…

Verilog原語、Verilog保留關鍵字

Verilog基元 Vivado合成支持Verilog門級原語,下表所示除外。 Vivado合成不支持Verilog開關級原語,例如以下原語: cmos、nmos、pmos、rcmos、rnmos、rpmos rtran、rtranif0、rtranif1、tran, tranif0,tranif1 門級…

Qt/自定義控件的封裝

新建文件,選擇Qt設計師界面類 創建空界面 這是自己控件封裝的文件,雙擊跳轉到設計界面進行設計 跳轉到其他的ui界面,創建一個widget 右鍵,選擇提升為 在提升的類名稱輸入剛剛創建的類名,添加后選擇提升,勾選…

政安晨【示例演繹虛擬世界開發】(五):從制作一個對戰小游戲開始(Cocos Creator 《擊敗老大》)(第二段)

政安晨的個人主頁:政安晨 歡迎 👍點贊?評論?收藏 收錄專欄: AI虛擬世界大講堂 希望政安晨的博客能夠對您有所裨益,如有不足之處,歡迎在評論區提出指正! 現在我們已經學會了如何向場景中添加圖片,接下來繼…

計算機設計大賽 深度學習機器視覺車道線識別與檢測 -自動駕駛

文章目錄 1 前言2 先上成果3 車道線4 問題抽象(建立模型)5 幀掩碼(Frame Mask)6 車道檢測的圖像預處理7 圖像閾值化8 霍夫線變換9 實現車道檢測9.1 幀掩碼創建9.2 圖像預處理9.2.1 圖像閾值化9.2.2 霍夫線變換 最后 1 前言 🔥 優質競賽項目系列,今天要分…

怎么運行/opencv/modules/imgproc/test下的test_cvtyuv.cpp

怎么運行/opencv/modules/imgproc/test下的test_cvtyuv.cpp 要運行test_cvtyuv.cpp,你需要按照以下步驟操作: 獲取OpenCV源代碼,編譯并安裝opencv:首先,確保你已經下載并安裝了OpenCV。如果沒有,請前往Open…

Leetcode630. 課程表 III

Every day a Leetcode 題目來源:630. 課程表 III 解法1:反悔貪心 經驗告訴我們,在準備期末考試的時候,先考的課程先準備。同理,lastDay 越早的課程,應當越早上完。但是,有的課程 duration 比…

2023年09月CCF-GESP編程能力等級認證Scratch圖形化編程四級真題解析

一、單選題(共15題,共30分) 第1題 人們所使用的手機上安裝的 App 通常指的是( )。 A:一款操作系統 B:一款應用軟件 C:一種通話設備 D:以上都不對 答案:B 第2題 下列流程圖的輸出結果是?( ) A:9 B:7 C:5 D:11 答案:A 第3題 默認小貓角色,執行下列程序…

IO,硬盤與文件

IO與計算機存儲空間 IO(輸入/輸出)是計算機領域中指的是數據在計算機與外部設備之間的傳輸過程。存儲通常指的是計算機中用來保存數據的介質或設備,硬盤是存儲設備的一種,通常是指硬盤驅動器(Hard Disk Drive&#xf…

文章解讀與仿真程序復現思路——電網技術EI\CSCD\北大核心《考慮時空相關性的流域水風光多能互補系統高維不確定性場景生成方法》

本專欄欄目提供文章與程序復現思路,具體已有的論文與論文源程序可翻閱本博主免費的專欄欄目《論文與完整程序》 論文與完整源程序_電網論文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 這篇文章的標題涵蓋了以下幾個關鍵方…

C語言編程大題

以下總結編程大題的常考題型 1,輸出 100-200 之間所有素數。 要求: (1)編寫一個判斷一個整數是否為素數的函數 void prime(int n),若是素數則輸出,否則不輸出 (2)主函數中調用 prime 函數,輸出 100-200 之間所有素數 說明:素數是指除了1和該數本身之外,不能被其它任何整…

【C++】用命名空間避免命名沖突

🌸博主主頁:釉色清風🌸文章專欄:C🌸今日語錄:如果神明還不幫你,說明他相信你。 🪷文章簡介:這篇文章是結合譚浩強老師的書以及自己的理解,同時加入了一些例子…

NOC2023軟件創意編程(學而思賽道)python小高組初賽真題

軟件創意編程 一、參賽范圍 1.參賽組別:小學低年級組(1-3 年級)、小學高年級組(4-6 年級)、初中組。 2.參賽人數:1 人。 3.指導教師:1 人(可空缺)。 4.每人限參加 1 個賽項。 組別確定:以地方教育行政主管部門(教委、教育廳、教育局) 認定的選手所屬學段為準。 二、…

MATLAB知識點:if條件判斷語句的嵌套

?講解視頻:可以在bilibili搜索《MATLAB教程新手入門篇——數學建模清風主講》。? MATLAB教程新手入門篇(數學建模清風主講,適合零基礎同學觀看)_嗶哩嗶哩_bilibili 節選自?第4章:MATLAB程序流程控制 我們通過一個…

基于springboot+vue的教師工作量管理系統

博主主頁:貓頭鷹源碼 博主簡介:Java領域優質創作者、CSDN博客專家、阿里云專家博主、公司架構師、全網粉絲5萬、專注Java技術領域和畢業設計項目實戰,歡迎高校老師\講師\同行交流合作 ?主要內容:畢業設計(Javaweb項目|小程序|Pyt…

Java集合-Map接口

在Java中,Map接口表示鍵值對的集合,其中每個鍵都是唯一的,并且每個鍵映射到一個值。Map接口是集合框架中的一部分,位于java.util包中。它定義了一系列操作來管理鍵值對,例如添加鍵值對、刪除鍵值對、獲取鍵對應的值等。…

7.1.1 selenium介紹及安裝chromedriver

目錄 1. Selenium的用途 2. 安裝Selenium庫 3. 安裝chromedriver 1. 查看谷歌版本號?編輯 2. 找到最新版本及下載 3. 配置環境變量 4. 檢測是否配置成功 5. 用python初始化瀏覽器對象檢測: 6. 參考鏈接 1. Selenium的用途 在前面我們提到:在我…

Github項目推薦-LightMirrors

項目地址 https://github.com/NoCLin/LightMirrors 項目簡述 “LightMirrors是一個開源的緩存鏡像站服務,用于加速軟件包下載和鏡像拉取。目前支持DockerHub、PyPI、PyTorch、NPM等鏡像緩存服務。 當前項目仍處于早期階段。”–來自項目說明。 也就是說&#xff…

爆紅提醒:ESLint: Parsing error: Unexpected token. Did you mean `{‘>‘}` or `gt;`?

錯誤情況:> 會爆紅提示:ESLint: Parsing error: Unexpected token. Did you mean {>} or >? function().then((res) > {console.log(res.data); }解決方法:修改.eslintrc或者.eslintrc.js的配置 module.exports {// 其他配置..…

RocketMq——Consume相關源碼

摘要 RocketMQ只要有CommitLog文件就可以正常運行了,那為何還要維護ConsumeQueue文件呢? ConsumeQueue是消費隊列,引入它的目的是為了提高消費者的消費速度。畢竟RocketMQ是基于Topic主題訂閱模式的,消費者往往只關心自己訂閱的…