WEB应用安全评估标准- OWASP ASVS的整理介绍

简介: 今天完善了ASVS的PPT。整理成WORD了。 WEB应用安全评估标准- OWASP  ASVS  (Application Security Verification Standard) 一、什么是ASVS uThe OWASP Appl...

今天完善了ASVS的PPT。整理成WORD了。

WEB应用安全评估标准- OWASP  ASVS 
(Application Security Verification Standard)
一、什么是ASVS
uThe OWASP Application Security Verification Standard (ASVS) Project provides a basis for testing web application technical security controls.
uThe purpose for the ASVS is providing a standard of communication between software vendors and customers. The customer can ask 'How secure are you,' the vendor can answer 'THIS secure,' and everyone is on the same page.
uBy nature, the ASVS is platform independent and free of technical detail. It is simply a listing of security controls, subcategorized by topic and ordered by relative difficulty to implement. This lends itself tremendously well to supporting the development of an application security platform for any software - not just for communication with tool vendors.
uUse as a metric - Provide application developers and application owners with a yardstick with which to assess the degree of trust that can be placed in their Web applications,
uUse as guidance - Provide guidance to security control developers as to what to build into security controls in order to satisfy application security requirements, and
uUse during procurement - Provide a basis for specifying application security verification requirements in contracts.
二、怎样使用ASVS?

1.告知团队软件要有应用的安全测试计划,

2.确定至少达到的安全级别,建议至少1级。

3.与安全区域的验证点进行匹配查找,查找由于安全考虑,开发设计需要做改变的地方。

4.分派责任给开发团队,修改程序。

5.执行验证所选择的安全级别对应的验证
 举例
u一公司自己研发门户,开发团队遵循公司自己的SDLC进行开发,开发过程中,公司的安全团队要验证门户的安全性,可以采用自动化工具进行扫描。整个研发过程,参考ASVS的评估点进行设计、开发。
u同时,可以要求外部的专业安全渗透公司和专业人员,对客户端程序进行安全验证,采用ASVS中的一系列评估点评估。
u如果安全级别要求很高,还需要安全渗透人员,对源码、文档、程序、业务逻辑进行安全验证,依据ASVS中的评估点。



三、ASVS的历史版本

08/2014 – OWASP ASVS  2.0

06/2009 – OWASP ASVS “Release” 1.0

12/2008 – OWASP ASVS “Beta”

04/2008 – OWASP ASVS “RFP” (OWASP Summer of Code 2008)


四、ASVS 1.0与2.0的区别

u1.定义的安全级别不同。

u2.每个安全级别对应的安全区域和子项测试验证点不同。
定义的级别标准不同

ASVS 2.0---4个安全级别
uLevel 0 (Cursory)未定义,企业可以定义自己的标准,如自动扫描,强权限机制等,他适用于大部分的应用。0级不是个先决条件,如果企业没有定义了0级,则可以直接达到1级。如果定义了0级,则只有达到0级,才能达到其他级别。
uLevel 1 (Opportunistic) 能够抵御那些很容易发现的应用安全漏洞,适用于那些使用安全控制信任的系统,快速修复的系统,在有规划未来长期开发的产品的系统。
uLevel 2 (Standard) --能够抵御那些目前盛行、普遍流行的中高级风险应用安全漏洞,如OWASP TOP10,和业务逻辑的漏洞。代表了一个产业标准,大部分组织的敏感应用应该力求达到的标准,如重要的商业对商业的事务,包括哪些处理 医疗信息,执行重要商业敏感功能,其他敏感资产。
uLevel 3 (Advanced) ---能够抵御所有高级的应用安全漏洞,包括展示好的设计标准。包括了哪些很难被发现,必须高手有经验的攻击者花费精力锲而不舍的挖掘才能发现的漏洞。验证范围:包括本身写的代码,也包括第3方组件,但第3方组件是可选的,他没必要达到ASVS标准。

定义的安全验证区域和验证点不同

1.ASVS1.0中的V1\V12\V13\V14在ASVS2.0版本中的其他区域的验证点中包含了。

2.ASVS1.0包含121个验证点。ASVS2.0包含168个验证点。

安全验证区域

ASVS 1.0

ASVS 2.0

V1.安全架构

——

V2. 认证

V3. 会话管理

V4. 访问控制

V5. 输入验证

V6.输出解码与验证

V7. 密码或密钥算法安全

V8. 异常处理与日志

V9. 数据保护

V10. 传输安全

V11. HTTP 安全

V12. 安全配置

——

V13. 恶意代码查找

——

V14. 内部代码安全

——

V15.业务逻辑

——

V16.文件资源安全

——

V17.移动应用安全

——

ASVS 2.0 安全验证:13个区域,168个点

全需求区域

1级评估点

2级评估点

3级评估点

HTTP安全

3

7

7

传输安全

1

5

9

恶意攻击控制

0

0

11

会话管理

7

14

14

密码密钥安全

0

5

7

敏感数据保护

2

4

8

访问控制

8

12

13

认证

8

19

21

输入验证

9

13

16

文件资源安全

6

10

10

业务逻辑

0

10

10

移动应用

4

13

28

异常处理与日志

1

9

14

总计

49

121

168


五、ASVS 2.0 介绍

uASVS定义了4级,在深度上逐级增加。验证者职责要验证目标满足所有的定义级别的需求。如果满足所有N级需求,则说明应用程序达到了N级 安全标准。如果只满足了部分需求,而达到了低级别的如N-1,N-2的,则说应用程序达到了N-1,N-2级 安全标准
u验证的范围广度包含程序的组成部分的每一个安全需求,不仅包含编写的代码,也包含引用的外部组件。

六、建议各应用采用的安全级别
u这只是个参考标准,每个企业可以定义自己的标准。
uLevel 1: 所有互联网可访问的应用程序。
uLevel 2:含有少量或适当数量敏感医疗信息(受保护的卫生信息)的应用程序,个人身份信息,支付数据等业务应用。产品目录信息,内部团体信息,及拥有有限用户信息的应用程序(如联系方式)。含有少量或适量支付数据或付款功能的应用程序
uLevel 3: POS所包含的大量交易数据可能被用来进行诈骗。这包括为这些应用程序预留的任何管理接口。拥有大量敏感信息如全额信用卡卡号,母亲的姓,社会保险卡号等的应用程序。应用程序用来控制医疗设备,器件,或记录内容,这些都可能危及到人类生命。POS包含的大量交易数据可能被用来进行犯罪诈骗。包括这些应用程序的任何管理接口。

目录
相关文章
|
2天前
|
SQL 缓存 搜索推荐
后端技术在现代Web开发中的应用与挑战
本文将深入探讨后端技术在现代Web开发中的重要性,涵盖从基础架构到性能优化的多个方面。通过分析当前主流后端技术的优缺点,并提供一些实用的解决方案和建议,帮助开发者更好地应对日常开发中的挑战。
14 1
|
7天前
|
人工智能 关系型数据库 数据安全/隐私保护
后端技术在现代Web开发中的应用与挑战
本文将深入探讨后端技术在现代Web开发中的重要性,通过分析其在数据处理、业务逻辑实现和安全性保障方面的应用,揭示后端技术的核心价值。同时,本文还将讨论当前后端开发面临的主要挑战,如高并发处理、数据安全、微服务架构的复杂性等,并给出相应的解决方案。无论是后端开发者还是对后端技术感兴趣的读者,都可以通过这篇文章获得启发和指导。
|
15天前
|
前端开发 安全 JavaScript
构建高效Web应用:前后端分离架构的实践
【9月更文挑战第4天】在数字时代,Web应用已成为企业与用户互动的主要平台。本文将介绍如何通过前后端分离的架构设计来构建高效的Web应用,探讨该架构的优势,并分享实现过程中的关键步骤和注意事项。文章旨在为开发者提供一种清晰、高效的开发模式,帮助其在快速变化的市场环境中保持竞争力。
|
19天前
|
中间件 编译器 数据处理
在web开发中应用管道过滤器
【9月更文挑战第1天】本文介绍管道-过滤器架构将数据处理流程分解为一系列独立组件,通过管道连接,适用于数据流处理如图像处理、编译器设计等。通过具体实例说明了Gin如何有效支持管道-过滤器风格的设计,构建高性能Web服务。
33 9
|
20天前
|
Rust 安全 开发者
惊爆!Xamarin 携手机器学习,开启智能应用新纪元,个性化体验与跨平台优势完美融合大揭秘!
【8月更文挑战第31天】随着互联网的发展,Web应用对性能和安全性要求不断提高。Rust凭借卓越的性能、内存安全及丰富生态,成为构建高性能Web服务器的理想选择。本文通过一个简单示例,展示如何使用Rust和Actix-web框架搭建基本Web服务器,从创建项目到运行服务器全程指导,帮助读者领略Rust在Web后端开发中的强大能力。通过实践,读者可以体验到Rust在性能和安全性方面的优势,以及其在Web开发领域的巨大潜力。
29 0
|
20天前
|
开发者 Java 前端开发
Struts 2验证框架:如何让数据校验成为Web开发的隐形守护者?揭秘前后端一致性的秘诀
【8月更文挑战第31天】在现代Web开发中,数据验证对确保应用健壮性和良好用户体验至关重要。随着前后端分离架构的普及,保证数据校验一致性尤为关键。Struts 2 验证框架基于 JavaBean 验证 API(JSR 303/JSR 380),允许开发者通过注解或 XML 配置轻松定义验证规则,确保输入数据在执行业务逻辑前已通过验证。此外,Struts 2 支持与前端 JavaScript 验证相结合,确保前后端数据校验一致,提升用户体验。通过注解、XML 配置和资源文件,开发者可以轻松定义和调整验证规则,实现前后端一致的数据校验,提高应用健壮性。
26 0
|
20天前
|
Java 缓存 数据库连接
揭秘!Struts 2性能翻倍的秘诀:不可思议的优化技巧大公开
【8月更文挑战第31天】《Struts 2性能优化技巧》介绍了提升Struts 2 Web应用响应速度的关键策略,包括减少配置开销、优化Action处理、合理使用拦截器、精简标签库使用、改进数据访问方式、利用缓存机制以及浏览器与网络层面的优化。通过实施这些技巧,如懒加载配置、异步请求处理、高效数据库连接管理和启用GZIP压缩等,可显著提高应用性能,为用户提供更快的体验。性能优化需根据实际场景持续调整。
44 0
|
20天前
|
Java 数据库连接 Spring
Struts 2 插件开发竟如魔法盛宴,为框架注入超能力,开启奇幻编程之旅!
【8月更文挑战第31天】在Web开发中,Struts 2插件开发允许我们在不改动框架核心代码的前提下,通过创建实现特定接口的Java类来扩展框架功能、调整其行为或促进与其他框架(如Spring、Hibernate)的集成,从而更好地满足特定业务需求。遵循良好的设计原则与实践,能够确保插件的高效稳定运行并提升整体项目的可维护性。具体步骤包括创建项目、定义插件类、实现初始化与销毁逻辑,并将插件部署至应用中。
40 0
|
20天前
|
开发者 Java 开发框架
JSF与EJB,打造企业级应用的神器!让你的Web应用更加稳定、高效!
【8月更文挑战第31天】在现代企业级应用开发中,JSF(JavaServer Faces)与EJB(Enterprise JavaBeans)是两大核心技术。JSF作为一款基于Java的Web应用框架,以其丰富的UI组件和表单处理功能著称;EJB则专注于提供分布式事务处理及远程调用等企业级服务。两者的结合为企业应用带来了高效便捷的开发模式。下文将通过一个简单的示例展示如何利用JSF进行用户信息的输入与保存,并借助EJB实现相关业务逻辑。尽管这一组合具有明显优势,但在实际应用中还需考虑其局限性并作出合理选择。
34 0
|
20天前
|
开发者 安全 SQL
JSF安全卫士:打造铜墙铁壁,抵御Web攻击的钢铁防线!
【8月更文挑战第31天】在构建Web应用时,安全性至关重要。JavaServer Faces (JSF)作为流行的Java Web框架,需防范如XSS、CSRF及SQL注入等攻击。本文详细介绍了如何在JSF应用中实施安全措施,包括严格验证用户输入、使用安全编码实践、实施内容安全策略(CSP)及使用CSRF tokens等。通过示例代码和最佳实践,帮助开发者构建更安全的应用,保护用户数据和系统资源。
33 0