没有合适的资源?快使用搜索试试~ 我知道了~
首页OWASP Top 10 2017
资源详情
资源评论
资源推荐

1
版权和许可
2003-2017 OWASP基金会©版权所有
本文档的发布基于《Creative Commons Attribution Share-Alike 4.0 license》
。任何重复使用或发行,
都必须向他人澄清该文档的许可条例。
目录
关于
OWASP
“开源Web应用安全项目”(OWASP)
是一个开放的社区,
致力于帮助各企业组织开发、购买和维护可信任的应用程序。
在OWASP ,您可以找到以下免费和开源的信息:
• 应用安全工具和标准;
• 关于应用安全测试、安全代码开发和安全代码审查
方面的完整书籍;
• 演示文稿和视频;
• 关于常见风险的Cheat Sheets;
• 标准的安全控制和安全库;
• 全球各地分会;
• 尖端技术研究;
• 专业的全球会议;
• 邮件列表。
更多信息,请访问: https://www.owasp.org。
更多中文信息,请访问:http://www.owasp.org.cn/。
所有的OWASP工具、文档、论坛和全球各地分会都是开放
的,并对所有致力于改进应用程序安全的人士开放。
我们主张将应用程序安全问题看作是人、过程和技术的
问题,
因为提供应用程序安全最有效的方法是在这些方面提升。
OWASP是一个新型组织。我们没有商业压力,使得我们能
够提供无偏见、实用、低成本的应用安全信息。 尽管OWASP支
持合理使用商业安全技术,但OWASP不隶属于任何技术公司。
和许多开源软件项目一样,OWASP以一种协作、开放的方式制
作了许多不同种类的材料。
OWASP基金会是确保项目长期成功的非营利性组织。几乎
每一个与OWASP相关的人都是一名志愿者,这包括了OWASP
董事会、全球各地分会会长、项目领导和项目成员。我们用资金
和基础设备来支持创新的安全研究。
我们期待您的加入!
TOC
目录
TOC- 关于OWASP ……………………………
1
FW- 前言 ……………..……………………….
2
I- 简介 ………..………………………….…
3
RN- 发布说明 …………..………………......
4
Risk- 应用程序安全风险 …………………..…
5
T10- OWASP Top 10 应用软件安全
-风险 – 2017 …………..………………
6
A1:2017- 注入 ….…………..……………………
7
A2:2017- 失效的身份认证 …………………...….
8
A3:2017- 敏感信息泄露 …….…………………
9
A4:2017- XML 外部实体(XXE) .…………….
10
A5:2017- 失效的访问控制 ……………………..
11
A6:2017- 安全配置错误 …….………………...
12
A7:2017- 跨站脚本(XSS) …..………………
13
A8:2017- 不安全的反序列化 .………………..
14
A9:2017- 使用含有已知漏洞的组件 ……….……….
15
A10:2017- 不足的日志记录和监控 ………..………..
16
+D- 开发人员下一步做什么? ….…………..
17
+T- 安全测试下一步做什么? .…………..
18
+O- 企业组织下一步做什么? …….……..
19
+A- 应用程序管理者下一步做什么? ..….
20
+R- 关于风险的备注说明 ..……………….
21
+RF- 关于风险因素的详细说明 ….……….
22
+DAT- 方法论和数据 ………………………
23
+ACK- 致谢 ……….……………………….
24

2
FW
前言
不安全的软件正在破坏着我们的金融、医疗、国防、能源和其他重要的基础设施。随着我们的软件变得愈加重要、
复杂且相互关联,实现应用程序安全的难度也呈指数级增长。而现代软件开发过程的飞速发展,使得快速、准确地识别
软件安全风险变得愈发的重要。我们再也不能忽视像《OWASP Top 10》中所列出的相对简单的安全问题。
在2017年版《OWASP Top 10》文档的编制过程中,我们收到了大量的反馈意见,对处理反馈意见所投入的努力远
大于在编制该文档时付出的努力。这显现出了大家对“OWASP Top 10”有非常高的热情,以及为大多数用例设置恰当
的“10大应用程序安全风险”对OWASP是多么的重要。
虽然 “OWASP Top 10”项目的最初目标只是为了提高开发人员和管理人员的安全意识,但它已经成为了实际的应
用安全标准。
在本版本中,我们以可测的方式简明地编写问题和建议,使得《OWASP Top 10》能更适用于企业组织的应用安全
计划。我们鼓励大型和高效的组织在需要使用真正标准时能使用《OWASP 应用程序安全验证标准(ASVS)》,但对于
大多数组织而言,《OWASP Top 10》是开启应用安全旅程的重要开端。
我们已经为《OWASP Top 10》的不同用户编写了一系列建议后续步骤,包括适用于CIO和CISO的“开发人员下一
步做什么?”、“安全测试人员下一步做什么?”、“企业组织下一步做什么?”,以及适用于应用程序管理人员或应
用程序生命周期负责人的“应用程序管理者下一步做什么?” 。
从长远来看,我们鼓励所有的软件开发团队和组织机构创建一个与您团队或组织文化和技术都兼容的应用安全计划。
这些计划可以是任意形式和规模。您应该利用您企业组织的现有优势,并根据《应用软件保障成熟度模型》来衡量和改
进企业组织的应用安全计划。
我们希望《OWASP Top 10》能对您的应用程序安全有帮助。如果有任何疑问、评论和想法,请不要犹豫,立即通
过GitHub与OWASP取得联系。
• https://github.com/OWASP/Top10/issues
您可以在以下链接找到《OWASP Top 10》及不同语言的翻译文档:
• https://www.owasp.org/index.php/top10
最后,我们要感谢 “OWASP Top 10”项目创始领导人Dave Wichers和Jeff Williams付出的辛勤努力,并相信我们
能在大家的帮助下完成这项工作。谢谢!
• Torsten Gigler
• Brian Glas
• Neil Smithline
• Andrew van der Stock
感谢Autodesk 对2017年版“OWASP Top 10”项目提供的赞助。
感谢SecZone 对2017年版“OWASP Top 10”中文项目(包括:RC1版、RC2版和最终版)提供的赞助。
感谢提供漏洞普遍性数据或其他帮助的企业组织和个人,以及中文项目组成员,我们将他们列在本文的致谢页中。
前言
项目赞助

3
未来活动的路线图
不要停滞于“OWASP Top 10”。正如在《OWASP开
发者指南》和《OWASP Cheat Sheet系列》中所讨论的
那样,能影响整个Web应用程序安全的漏洞成百上千。
这些材料是当今Web应用程序和API开发人员的必读资料
。
而指导相关人员如何有效地查找Web应用程序和API中漏
洞的信息,则包含在《OWASP测试指南》中。
持续完善。本《OWASP Top 10》将不断更新。即使您
不改变应用程序的任何一行代码,您的应用程序也可能
随着新漏洞被发现和攻击方法被改进而变得脆弱。要了
解更多信息,请查阅本文结尾建议部分有关开发人员、
安全测试人员、企业组织和应用程序管理者下一步做什
么的内容?。
积极思考。当您已经做好准备停止查找漏洞并集中精力
建立强大的应用程序安全控制时,《OWASP主动控制》
项目是开发人员构建安全应用程序的起点,《OWASP应
用程序安全验证标准(ASVS)》是企业组织和应用程序
审查者如何去开展验证工作的指导手册。
合理使用工具。安全漏洞可能很复杂并且藏匿在代码行
的深处。在许多案例中,查找并消除这些弱点的成本最
有效方法,就是为专家装配高级工具。但我们不推荐仅
依赖工具的方法,因为它只是提供了安全的虚假感觉。
发展方向。在您的企业组织中,需重点关注如何将安全
成为组织文化的一部分。更多信息,请参见《OWASP软
件保证成熟度模型(SAMM)》。
鸣谢
我们要感谢为支持2017年版更新而提供其漏洞数据的
组织。我们收到了超过40项对“数据召集号召”的响应。
所有贡献给Top 10发布版本的数据、贡献者的完整列表,
都第一次被公开。我们相信这是迄今为止我们公开收集到
的数量最大、类型最多的漏洞数据集合之一。
由于贡献者的数量大大超出了本区域的空间范围,因
而我们创建了单独的一页以表彰他们作出的贡献。我们希
望对这些组织表示衷心的感谢,因为它们处于愿意公开分
享脆弱性数据方面的第一线。我们希望能继续增长,并鼓
励更多的组织也能这样做,并且,这可能被视为“基于证
据安全”的关键里程碑之一。没有这些了不起的贡献,
“OWASP Top 10”是不可能实现的。
非常感谢500多位花时间完成了行业排名调查的个人
。
你们的声音帮助我们确定了两个新的类型。另外,我们也
非常感谢额外的评论、鼓励和批评。我们知道你们的时间
宝贵,我们想说声谢谢。
我们要感谢那些贡献了重大建设性意见和大量时间去
审查“Top 10”更新的个人。我们已经尽可能多的将他们
列在了本文的“致谢” 页中。
最后,我们要感谢所有将本版本文档翻译成许多不同
语言版本的翻译人员,从而帮助《OWASP Top 10》能在
全世界范围内被更容易的接触到。
I
简介
欢迎参阅
2017年版《OWASP Top 10》!
本版本的主要变化是添加了组织内最新筛选出的两类风险:(1)“A8: 2017-不安全的反序列化”;(2)“A10:
2017-不足的日志记录和监控”。本版本《OWASP Top 10》的两个关键区别是收集了大量社区反馈意见和企业组织数
据,这可能是我们在编制应用安全标准时收集的最大数据量。因此,我们相信新版《OWASP Top 10》代表了当前组织
面临最具影响力的应用程序安全风险。
2017年版的《OWASP Top 10》主要基于超过 40家专门从事应用程序安全业务的公司提交的数据,以及500位以上
个人完成的行业调查。这些数据包含了从数以百计的组织和超过10万个实际应用程序和API中收集的漏洞。前10大风险
项是根据这些流行数据选择和优先排序,并结合了对可利用性、可检测性和影响程度的一致性评估而形成。
《OWASP Top 10》的首要目的是教导开发人员、设计人员、架构师、管理人员和企业组织,让他们认识到最严重
Web应用程序安全弱点所产生的后果。Top 10提供了防止这些高风险问题发生的基本方法,并为获得这些方法的提供了
指引。

4
2013
版至2017版改变了哪些内容?
在过去四年里,事务变化的节奏加快了步伐,“OWASP Top 10”也需要改变了。本次,我们完全重构了《OWASP Top 10》,
包括:改进了方法论、使用了一个全新的“数据召集”过程、与社区合作、重新排序风险、重新编写每一项风险,并对现有的常用框
架和语言增加了参考资料。
在过去的几年中,应用程序的基础技术和结构发生了重大变化:
• 使用node.js和Spring Boot构建的微服务正在取代传统的单任务应用,微服务本身具有自己的安全挑战,包括微服务间互信、容器
工具、保密管理等等。原来没人期望代码要实现基于互联网的访问,而现在这些代码就在API或RESTful服务的后面,提供给移动
应用或单页应用(SPA)的大量使用。代码构建时的假设,如受信任的调用等等,再也不存在了。
• 使用JavaScript框架(如:Angular和React)编写的单页应用程序,允许创建高度模块化的前端用户体验;原来交付服务器端处理
的功能现在变为由客户端处理,但也带来了安全挑战。
• JavaScript成为网页上最基本的语言。Node.js运行在服务器端,采用现代网页框架的Bootstrap、Electron、Angular和React则运
行在客户端。
新增加的风险类型(由数据统计支撑)
• A4:2017 XML外部实体(XXE),是一个主要由源代码分析安全测试工具数据集支撑的新类型。
新增加的风险类型(由社区反馈支撑)
我们要求社区对两个前瞻的弱点类别进行洞察。在500多个审查意见提交后,删除了已有数据统计支撑的问题(敏感数据暴露和
XXE)后,这两个新问题为:
• A8:2017-不安全的反序列化,允许在受影响的平台上远程执行代码或操纵敏感对象。
• A10:2017-不足的日志记录和监控,缺乏可以防止或明显延迟恶意活动和破坏安全检测、事件响应和数字取证的安全措施。
落榜但仍未忘记的风险类型
• “A4不安全的直接对象引用”和“A7功能级访问控制缺失”合并成为“A5:2017 失效的访问控制”。
• “A8 CSRF”。因为很多平台融入了CSRF防御,所以只有5%的应用程序受到了威胁。
• “A10未验证的重定向和转发”。虽然大约8%的应用程序受此威胁,但是现在大多被XML外部实体(XXE)挤掉了。
RN
发布说明
2013年版《OWASP Top 10》
2017年版《OWASP Top 10》
A1
– 注入
A1:2017
– 注入
A2
– 失效的身份认证和会话管理
A2:2017
–失效的身份认证
A3
– 跨站脚本(XSS)
A3:2017
–敏感信息泄漏
A4
– 不安全的直接对象引用 [与A7合并]
∪
A4:2017
– XML外部实体(XXE) [新]
A5
– 安全配置错误
A5:2017
– 失效的访问控制 [合并]
A6
– 敏感信息泄漏
A6:2017
– 安全配置错误
A7
– 功能级访问控制缺失 [与A4合并]
∪
A7
:2017 – 跨站脚本(XSS)
A8
– 跨站请求伪造 (CSRF)
A8:2017
– 不安全的反序列化 [新,来自于社区]
A9
– 使用含有已知漏洞的组件
A9:2017
–使用含有已知漏洞的组件
A10
– 未验证的重定向和转发
A10:2017
– 不足的日志记录和监控 [新,来自于社区]
剩余24页未读,继续阅读














安全验证
文档复制为VIP权益,开通VIP直接复制

评论0