第一篇 ASVS概述
第1章 使用应用安全验证标准 2
1.1 应用安全验证级别 3
1.2 如何使用这个标准 4
1.3 在实践中应用ASVS 7
第2章 评估软件是否达到验证水平 10
2.1 使用指导 11
2.2 自动渗透测试工具的作用 12
2.3 渗透测试的作用 12
2.4 用作详细的安全架构指导 13
2.5 用作现有安全编码清单的替代 13
2.6 用作自动化单元和集成测试指南 14
2.7 用作安全开发培训 14
第二篇 ASVS详解
第3章 V1:架构、设计和威胁建模 16
3.1 控制目标 17
3.2 验证要求 17
3.3 参考文献 19
第4章 V2:认证 20
4.1 控制目标 21
4.2 验证要求 21
4.3 参考文献 24
第5章 V3:会话管理 26
5.1 控制目标 27
5.2 验证要求 27
5.3 参考文献 29
第6章 V4:访问控制 30
6.1 控制目标 31
6.2 验证要求 31
6.3 参考文献 33
第7章 V5:恶意输入处理 34
7.1 控制目标 35
7.2 验证要求 35
7.3 参考文献 38
第8章 V6:密码学安全 40
8.1 控制目标 41
8.2 验证要求 41
8.3 参考文献 43
第9章 V7:错误处理和日志记录 44
9.1 控制目标 45
9.2 验证要求 46
9.3 参考文献 48
第10章 V8:数据保护 49
10.1 控制目标 50
10.2 验证要求 51
10.3 参考文献 52
第11章 V9:通信安全 53
11.1 控制目标 54
11.2 验证要求 54
11.3 参考文献 56
第12章 V10:HTTP安全配置 58
12.1 控制目标 59
12.2 验证要求 59
12.3 参考文献 60
第13章 V11:恶意控件 62
13.1 控制目标 63
13.2 验证要求 63
13.3 参考文献 64
第14章 V12:业务逻辑 65
14.1 控制目标 66
14.2 验证要求 66
14.3 参考文献 67
第15章 V13:文件和资源 68
15.1 控制目标 69
15.2 验证要求 69
15.3 参考文献 70
第16章 V14:移动应用程序 71
16.1 控制目标 72
16.2 验证要求 72
16.3 参考文献 74
第17章 V15:Web服务 75
17.1 控制目标 76
17.2 验证要求 76
17.3 参考文献 78
第18章 V16:安全配置 79
18.1 控制目标 80
18.2 验证要求 80
18.3 参考文献 81
第三篇 ASVS实践案例分析
第19章 ASVS的实践案例 83
19.1 案例1:作为安全测试指南使用 84
19.2 案例2:作为SDLC的实施指导 86
附 录
附录A 名词解释 89
附录B 参考文献 95
附录C 标准映射 97
附录D ASVS术语表 99
附录E 采用ASVS的OWASP项目 104
附录F OWASP安全编码规范快速参考指南 106
序1
关于标准
本书是根据《OWASP应用程序安全验证标准》翻译编写的。《OWASP应用程序安全验证标准》是架构师、开发人员、测试人员、安全专业人员及用户可以使用的应用程序安全性要求或测试的列表,以定义安全的应用程序。
版权和许可证
版权所有?2008—2016 OWASP基金会。本文档依照《知识共享署名授权许可协议3.0》发布。对于任何重用或分发,必须向他人明确这项工作的许可条款。
发布历史
第3.0.1版《OWASP应用程序安全验证标准》发布于2016年,该项目由Daniel Cuthbert和Andrew van der Stock领导。
? 2014年8月,第2.0版《OWASP应用程序安全验证标准》发布。
? 2015年9月,第3.0版《OWASP应用程序安全验证标准》发布。
? 2016年6月,第3.0.1版《OWASP应用程序安全验证标准》发布。
2015年第3.0版的贡献者
项目负责人 主要作者 贡献者和审稿人
Andrew van der Stock
Daniel Cuthbert Jim Manico Abhinav Sejpal
Ari Kes?niemi
Boy Baukema
Colin Watson
Cristinel Dumitru
David Ryan
Fran?ois-Eric Guyomarc’h
Gary Robinson
Glenn Ten Cate
James Holland
Martin Knobloch
Raoul Endres
Ravishankar S
Riccardo Ten Cate
Roberto Martelloni
Ryan Dewhurst
Stephen de Vries
Steven van der Baan
2014年第2.0版的贡献者
项目负责人 主要作者 贡献者和审稿人
Daniel Cuthbert
Sahba Kazerooni Andrew van der Stock
Krishna Raja Antonio Fontes
Archangel Cuison
Ari Kes?niemi
Boy Baukema
Colin Watson
Dr Emin Tatli
Etienne Stalmans
Evan Gaustad
Jeff Sergeant
Jerome Athias
Jim Manico
Mait Peekma
Pekka Sillanp??
Safuat Hamdy
Scott Luc
Sebastien Deleersnyder
2009年第1.0版的贡献者
项目负责人 主要作者 贡献者和审稿人
Mike Boberski
Jeff Williams
Dave Wichers Jim Manico Andrew van der Stock
Barry Boyd
Bedirhan Urgun
Colin Watson
Dan Cornell
Dave Hausladen
Dave van Stein
Dr. Sarbari Gupta
Dr. Thomas Braun
Eoin Keary
Gaurang Shah
George Lawless
Jeff LoSapio
Jeremiah Grossman
John Martin
John Steven
续表
项目负责人 主要作者 贡献者和审稿人
Ken Huang
Ketan Dilipkumar Vyas
Liz Fong Shouvik Bardhan
Mandeep Khera
Matt Presson
Nam Nguyen
Paul Douthit
Pierre Parrend
Richard Campbell
Scott Matsumoto
Stan Wisseman
Stephen de Vries
Steve Coyle
Terrie Diaz
Theodore Winograd
序2
欢迎使用《OWASP应用程序安全验证标准(ASVS)》第3.0.1版。ASVS是通过OWASP团队努力建立而成的安全要求和控制框架,其侧重于在应用程序设计、开发和测试时所需的功能和非功能安全控制。
本版本被认为是识别和采用的最佳实践经验。这将有助于新兴标准计划采用ASVS中的内容,同时协助现有的企业学习他人的经验。
OWASP ASVS项目组预计这个标准可能永远不会达到100%的完善并被认同。风险分析在某种程度上是主观的,这在尝试以适合所有标准的尺度进行泛化时,会产生挑战。但是,OWASP ASVS项目组希望本版本的最新更新是朝着正确的方向迈出的一步,并期望能为行业引入这一重要的概念。
第3.0.1版有什么新功能
(1)在第3.0.1版本中,ASVS增加了几个部分,包括配置、Web服务等,使本标准更适用于现代应用,如HTML5前端或移动客户端、使用SAML身份验证来调用一组RESTful Web服务。
(2)为确保使用人员不需要多次重复验证相同的项目,第3.0.1版ASVS删除了重复的标准。
第3.0.1版ASVS提供了一个映射到CWE常见弱点的枚举(CWE)字典。CWE映射可以用于识别信息利用的可能性,成功地利用这一结果。广义地说,如果不使用或实施安全控制及如何缓解弱点,那么还可以洞悉将来有可能出现的问题。
最后,在2015年OWASP AppSec欧洲大会期间,OWASP ASVS项目组与其他项目组、专家进行了评审,并在2015年的OWASP AppSec美国大会进行了最后的工作会议,纳入大量反馈意见。OWASP ASVS项目组希望读者能找到对本书有用的更新,并以项目组所能想象的方式使用它。
前 言
背景
2016年和2017年是我国网络安全行业飞速发展的两年。自2016年年底至2017年,国家先后发布并实施《网络空间安全战略》《网络安全法》《关于加强网络安全学科建设和人才培养的意见》等涉及网络安全方面的法律法规和政策文件。同时,“WannCry勒索病毒”“Structs2漏洞”“Office高危漏洞”等这样的全球性网络安全事件也不时刺痛着人们的神经。越来越多的网络安全研究机构、软件研发机构、专家学者逐渐认识到“没有软件安全,就没有网络安全”“安全不仅是网络安全专家的责任,更是每个软件开发从业人员的责任”。
那么,软件研发机构如何开发出安全的应用程序呢?安全的应用程序应该符合哪些标准呢?软件研发机构需要验证应用程序的哪些方面呢?本书是在这样的背景下翻译出版的。
ASVS简介
“OWASP应用程序安全验证标准(ASVS)”项目是OWASP全球安全组织的成功项目之一。该项目的主旨如下:为执行Web应用程序安全验证提供一套可行的标准,以规范应用程序的安全验证覆盖范围和安全级别。该项目的研究成果,即《OWASP应用程序安全验证标准(ASVS)》,最新版本为第3.0.1版。
该成果不仅为Web应用程序技术安全控制提供了测试参考标准,还为应用程序开发人员提供了一系列安全开发需求建议。为测试应用程序技术安全控制及依赖于测试环境中的任何技术安全控制提供了参考依据,以消除应用程序受到跨站脚本(XSS)、SQL注入等软件安全威胁的影响。此外,该成果还可用于标识应用程序的安全信任级别。
该成果可根据读者或使用人员的需要,作为度量标准、安全指导和采购要求。
(1)度量标准:为应用程序开发人员和应用程序所有者提供一个参考标准,以评估应用程序的可信任程度。
(2)安全指导:为应用程序中安全控制的开发人员提供有关构建安全控制的指导建议,以满足应用程序的安全开发需求。
(3)采购要求:为应用程序的采购合同,提供应用程序安全验证需求的参考标准。
读者对象
本书的主要读者对象包括但不限于:
(1)软件研发组织机构的技术专业负责人和项目主管。
(2)软件安全开发服务咨询与验证的相关人员。
(3)网络安全基础核心领域研究的专家学者。
(4)高等院校软件工程专业和网络安全专业的教育工作者。
(5)对软件安全开发感兴趣的个人。
内容结构
本书分为3篇,共19章。第一篇由第1、2章组成,对ASVS及其评估软件的使用方式进行了介绍。第二篇由第3~18章组成,分别介绍了16类验证关键点。第三篇由第19章组成,表述了ASVS的实践案例。
全书由王颉负责总体架构设计和质量控制,由Rip、张家银担任翻译顾问,由包悦忠、李旭勤负责技术指导。第1章由王颉翻译,第2章由王厚奎翻译,第3~10章由王厚奎和吴楠共同翻译,第11~18章由吴楠翻译,第19章及附录由王厚奎翻译。全文由赵学文负责统稿与编排。
致谢
特别感谢OWASP总部对OWASP中国组织本中文版ASVS相关工作予以的支持。
感谢OWASP中国和SecZone自OWASP Application Security Verification Standard(V2.0)发布以来对该项目持续的跟进、翻译、研究与分享。同时,也对该项目的参与人员表示感谢。
OWASP中国将对OWASP ASVS项目保持跟进,持续完善和深化本书。
中文版说明
(1)本书为OWASP Application Security Verification Standard(V3.0.1)的中文版。本书尽量保留原版本的格式与风格,但部分语言风格调整为中文表述。其中存在的差异,敬请谅解。
(2)为方便读者阅读和理解本书中的内容,本书对原英文版中明确内容为空的章节进行了删除,并对原英文版中的部分章节内容进行了顺序调整,致使本书的章节编号与原英文版中的章节编号不同。
(3)本书中的表格包含每条描述项的序号,以及其在原英文版中的原描述项序号,以方便读者进行匹配。
(4)由于译者团队水平有限,存在的错误敬请指正。
(5)如果您有关于本书的任何意见或建议,可以通过以
这本《软件安全开发指南――应用软件安全级别验证参考标准》的标题着实吸引人,尤其对于我这种对软件开发过程中的安全问题一直非常关注的读者来说。我一直觉得,在当前这个信息爆炸、网络攻击层出不穷的时代,软件的安全性不再是锦上添花,而是实实在在的刚需。想象一下,那些我们每天都在使用的APP,背后隐藏着多少潜在的安全漏洞?一旦被不法分子利用,后果不堪设想。这本书的出现,就像黑夜中的一盏明灯,指引着开发者们如何构建更安全的软件。我尤其期待书中能够深入浅出地讲解各种常见的安全威胁,比如SQL注入、跨站脚本攻击、缓冲区溢ロ等等,并且给出切实可行的防御策略。不仅仅是理论的罗列,更希望它能提供一些在实际开发中能够落地的方法论,比如代码审查的技巧、安全编码的规范,甚至是自动化安全测试的工具推荐。毕竟,纸上谈兵终觉浅,只有真正融入到开发流程中,安全才能得到根本的保障。我非常希望这本书能够成为我工具箱里不可或缺的一员,帮助我在开发过程中少走弯路,写出更令用户放心、更值得信赖的软件产品。
评分我一直在寻找一本能够切实指导我提升软件安全开发能力的实战手册。这本书的题目——《软件安全开发指南――应用软件安全级别验证参考标准》,给我一种非常专业且实用的感觉。我猜想,它会涵盖很多开发者在日常工作中经常遇到的安全问题,比如如何防止用户数据泄露、如何保障API接口的安全、如何应对DDoS攻击等等。我希望书中能够提供一些具体的技术方案和代码示例,让我们能够直接借鉴和应用。例如,在处理用户输入时,有哪些安全的过滤和验证方法?在存储敏感数据时,应该采取哪些加密措施?在设计用户认证系统时,有哪些最佳实践?我特别期待书中能够针对不同的应用场景,比如Web应用、移动应用、后端服务等,提供相应的安全开发指导和验证方法。如果书中还能包含一些关于安全测试的实用技巧,比如如何进行静态代码分析、动态安全测试,以及如何使用一些开源的安全工具,那对我来说就太有价值了。我希望这本书能够成为我提高软件安全开发水平的得力助手,让我的代码更加健壮,让我的应用更加安全。
评分读了这本书的目录,我感到非常振奋,因为它似乎解决了我长久以来在软件安全实践中遇到的一些困惑。我注意到其中提到了“安全级别验证参考标准”,这让我眼前一亮。很多时候,我们都知道要做安全,但究竟什么样的程度才算“安全”?“安全”的标准又在哪里?这本书很可能就是为我们提供了这样一个量化的、可衡量的参照系。我一直在思考,如何才能有效地评估我们现有软件的安全状态,以及如何设定一个明确的目标来提升安全性?这本书的“参考标准”部分,我猜测应该会提供一些评估框架、测试方法,甚至是不同安全级别的定义和要求。这对于我所在团队的内部安全建设非常有指导意义。我们经常在讨论“我们要不要花资源去做安全?”、“我们的安全投入是否足够?”、“我们和竞争对手相比,在安全方面处于什么水平?”。如果这本书能提供一套科学的评估体系,让我们能够清晰地识别风险,并有针对性地制定改进计划,那将是极大的帮助。我非常期待书中能够详细阐述这些标准是如何制定的,以及如何在实际项目中使用它们来指导开发和测试工作。
评分我一直对那些能够帮助我们深入理解软件背后“为什么”的书籍情有独钟。这本书的标题中的“应用软件安全级别验证参考标准”这一部分,让我产生了浓厚的兴趣。我猜想,它不仅仅会告诉我们“怎么做”,更会解释“为什么这么做”。例如,为什么某种攻击方式是危险的?这种危险背后隐藏着怎样的技术原理?而书中提供的防御措施,又是如何从根源上解决这些问题的?我希望它能够帮助我建立起一个更深层次的安全认知体系,而不只是机械地记忆一些安全编码规则。我期待书中能够对一些核心的安全概念进行深入的剖析,比如加密算法的原理、认证和授权机制的设计、数据防篡改的策略等等。如果能结合一些最新的安全技术和研究成果,并解释它们是如何应用在实际软件开发中的,那将是更棒的。我也很想知道,书中是如何定义和区分不同级别的安全要求的,以及这些级别是如何与实际的应用场景相对应的。这种深入的原理性讲解,对于提升整个团队的安全意识和技术能力,会起到事半功倍的效果。
评分我对这本书的内容充满了好奇,尤其是那些关于“应用软件安全开发指南”的部分。在快节奏的软件开发周期中,安全常常被放在了次要的位置,或者被视为一个独立于功能开发的额外工作。我一直坚信,安全应该内建于软件开发的全生命周期之中,而不是事后补救。这本书如果能提供一套系统化的安全开发流程,从需求分析、设计、编码、测试到部署和维护,每一个环节都有明确的安全考虑和实践建议,那将是我一直以来寻求的宝藏。我非常想了解书中是如何将安全理念融入到敏捷开发等主流开发模式中的。例如,在需求阶段,如何识别安全需求?在设计阶段,如何进行安全架构设计?在编码阶段,有哪些常见的安全陷阱需要避免?在测试阶段,又有哪些有效的安全测试技术?这本书的实操性越强,对我的价值就越大。我希望它不仅仅是理论的讲解,更能包含丰富的案例分析,展示不同安全问题是如何在实际项目中发生的,以及作者是如何通过书中提到的指南来解决这些问题的。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有