OWASP 安全风险知识
OWASP 安全风险知识
https://www.bilibili.com/video/BV1ey4y1V7Jj
OWASP Top 10 系列课程一共有11期, 剩下的8期课程可以复制链接观看 https://edu.cwasp.com/#/Course/Detail?id=462
什么是 OWASP?
OWASP,全称是:Open Web Application Security Project,翻译为中文就是:开放式Web应用程序安全项目,是一个非营利组织,不附属于任何企业或财团,因此这个组织不受商业控制地进行安全开发和安全普及,OwASP组织的工具、文档、论坛和全球各地分会都是开放的,当然开放是有前提的,他对所有致力于改进应用程序安全的人士开放。
为什么我们需要OWASP TOP 10我们使用web应用程序一直很频繁,但是不安全的web网页正在破坏着我们的金融、医疗、国防、能源和其他重要的基础设施。随着我们的软件变得愈加重要、复杂且相互关联,实现应用程序安全的难度也呈指数级增长。而现代软件开发过程的飞速发展,使得快速、准确地识别软件安全风险变得愈发的重要。我们再也不能忽视像《OWASP Top 10》中所列出的相对简单的安全问题。
虽然“OWASP Top 10”项目的最初目标只是为了提高开发人员和管理人员的安全意识,但它已经成为了实际的应用安全标准。
OWASP组织 2017年发布的Web安全十大威胁OWASP Top 10-2017主要基于超过40家专门从事应用程序安全业务的公司提交的数据,以及500位以上个人完成的行业调查。这些数据包含了从数以百计的组织和超过10万个实际应用程序和API中收集的漏洞。前10大风险项是根据这些流行数据选择和优先排序,并结合了对可利用性、可检测性和影响程度的一致性评估而形成。
OWASP Top 10 的首要目的是教导开发人员、设计人员、架构师、管理人员和企业组织,让他们认识到最严重Web应用程序安全弱点所产生的后果。Top 10提供了防止这些高风险问题发生的基本方法,并为获得这些方法的提供了指引。
应用程序安全风险啪药安添去集il https://www.cwasp.cn/
什么是应用程序安全风险?
攻击者可以通过应用程序中许多不同的路径方法去危害企业组织或者其业务。每种路径方法都代表了一种风险,所造成的危害有可能无关紧要,也可能导致破产。为了确定企业的风险,可以结合其产生的技术影响和对企业的业务影响,去评估威胁来源、攻击向量和安全漏洞的可能性。
风险=可能性*影响
What is OWASP WebGoat?
WebGoat是OWASP组织研制出的用于进行web漏洞实验的应用平台,用来说明web应用中存在的安全漏洞。
WebGoat运行在带有java环境的平台之上,当前提供的训练课程有30多个,其中包括:跨站脚本攻击(XSS)、访问控制、线程安全、操作隐藏字段、操纵参数、弱会话cookie、SQL盲注、数字型SQL注入、字符串型SQL注入、web服务、Open Authentication失效、危HTML注释等等。
WebWolf有些挑战要求运行本地web服务器。
WebWolf是一个攻击者,它可以帮助我们解决WebGoat中的一些任务和挑战。例如,任务可能要求提供文件或连接回自己的环境或接收电子邮件。为了不运行WebGoat打开并连接到internet,提供这个应用程序,称为WebWolf
Burp Suite是一个集成化的渗透测试工具,
它集合了多种渗透测试组件,使我们自动化地或手工地能更好的完成对web应用的渗透测试和攻击。
Burp Suite是由Java语言编写而成,而Java自身的跨平台性,使得软件的学习和使用更加方便。Burp Suite不像其他的自动化测试工具,它需要你手工的去配置一些参数,触发一些自动化流程,然后它才会开始工作。
Burp Suite Pro 2x
WebGoat和jekins冲突
OWASP TOP 10
A1-2017
Injection.注入漏洞
将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入、NoSQL注入、OS 注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命令或访问数据。
注入有哪些类型
啪鿎学院
SQL注入
按照注入点类型分类
数字型、字符型、搜索型、GET注入、POST注入、Cookie注入、HTTP头部注入
按照执行效果来分类
基于布尔的盲注、基于时间的盲注、基于报错注入、联合查询注入、堆查询注入、宽字节注入
NoSQL注入:OS注入、LDAP注入、HTML注入、Xpath注入、shell注入、
表达式注入
漏洞产生的原因(威胁来源)用户提供的数据没有经过应用程序的验证、过滤或净化。
动态查询语句或非参数化的调用,在没有上下文感知转义的情况下,被用于解释器。
在ORM(对象关系映射,Object Relational Mapping,简称ORM)搜索参数中使用了恶意数据,这样搜索就获得包含敏感或未授权的数据。
恶意数据被直接使用或连接,导致SQL语句或命令在动态查询或存储过程中同时包含结数据构和恶意数据。
漏洞产生的影响
数据丢失、损坏或篡改拖库(信息泄露
夺权,执行OS命令或恶意代码
如何防御?啪哒学院
应用安全威胁 I A1-注入
代码审计,代码审计是最有效的检测应用程序的注入风险的办法之一;不要使用动态语句,或者参数化语句;不要使用拼接SQL语句;使用安全的API;使用存储过程来执行所有的查询;使用“最小权限”限制数据库用户的权限,不要使用管理员权限进行数据库连接。
使用“黑/白名单”或正则表达式,对用户输入的信息执行严格的输入检查;不要显示详细的错误信息(信息泄露);在查询中使用LIMIT和其他SQL控件,以防止在SQL注入时大量地泄露记录。
将用户的登录名、密码等数据加密保存。
OWASP TOP 10
A2-2017
Broken Authentication.
失效的身份认证
验证 VS 授权
验证(Authentication)-你是谁?授权(Authorization)-你能做什么?
漏洞产生的原因(威胁来源)允许凭证填充,这使得攻击者获得有效用户名和密码的列表。
允许暴力破解或其他自动攻击。
允许默认的、弱的或众所周知的密码,例如“123456”或“admin”。
使用弱的或失效的验证凭证,忘记密码程序,例如“基于知识的答案”,这是不安全的。
使用明文或弱散列密码(参见:A3:2017-敏感数据泄露)。
缺少多因素身份验证或拥有失效的多因素身份验证。
URL中的会话ID暴露(例如URL重写)。
在成功登录后不会更新会话ID。
没有正确地使会话ID失效。当用户不活跃的时候,用户会话或认证令牌
(特别是单点登录(SSO)令牌)没有正确注销或失效。
漏洞产生的影响响
口 身份盗窃。
攻击者只需要访问几个帐户,或者只需要一个管理员帐户就可以破坏我们的系统。
信息泄露。
根据应用程序领域的不同,可能会导致放任洗钱、社会安全欺诈以及用户身份盗窃、泄露法律高度保护的敏感信息。
如何防御?
应用安全威胁| A2-失效的身份认证
多因素身份验证以防止自动凭据填充、暴力破解和凭据盗用重放攻击。
不要使用任何默认凭据进行发布或部署,特别是对于管理员用户。
执行弱密码检查,例如根据前10000个最差密码的列表测试新设置或新更改的密码。
确保密码长度、复杂性和轮换策略与NIST 800-63 B第5.1.1节中关于记忆秘密或其他现代的基于证据的密码策略的指南相一致。
通过对所有结果使用相同的message,确保注册功能、凭据恢复和API路径能够抵御帐户枚举攻击。
限制或延迟失败的登录尝试。记录所有登录失败的记录,并在检测到凭据填充、暴力破解或其他攻击时通知管理员。
使用服务器端的、安全的、内置的会话管理器,在登录后生成一个新的具有高熵的随机会话ID。会话ID不应在URL中,应安全存储,并在注销、空闲和绝对超时后失效。

浙公网安备 33010602011771号