现在的位置: 首页 > 综合 > 正文

OWASP 10要素增强Web应用程序安全(转自:http://net.zdnet.com.cn/network_security_zone/2007/0316/381942.shtml)

2013年11月19日 ⁄ 综合 ⁄ 共 2163字 ⁄ 字号 评论关闭

 

本文关键词:安全管理 10base Web安全

随着Web应用程序的增多,随之而来的就是这些Web应用程序所带来的安全漏洞。不遵从规范化的编码指导,会使企业、员工以及企业的客户面对严重的安全风险,遭到各种恶意攻击。

我们将向大家介绍Open Web Application Security Project (开放式Web应用程序安全项目,OWASP) 10要素,以及OWASP建议大家在软件开发生命周期中应该嵌入的标准化方法。

商业风险
现在的企业都在向客户提供通过浏览器访问企业信息的功能,同时集成Web服务的应用程序也越来越多,这些都导致企业所面临的风险不断增加。这并不代表开发人员没有认真的对待程序开发工作,只是当Web应用程序的数量越来越多,其潜在的隐患也会越来越频繁的暴露在互联网下。根据OWASP的观点:

“当企业发布了一个Web应用程序,它们就是在邀请全球的网民向其发送HTTP请求。而攻击内容也可以随着这些正常的HTTP请求穿过防火墙,过滤系统,系统平台上的安全措施以及网络中的入侵检测系统,而不被企业所发现。这意味着企业的Web应用程序代码本身就是企业安全围墙的一部分。随着企业所采用的Web应用程序数量和复杂度的增加,企业的安全围墙将更多的暴露在网络中。”

目前,企业所开发的很多新应用程序都是Web应用程序。另外,Web服务也越来越频繁的被用来集成Web应用程序或与Web应用程序进行交互。所带来的问题就是,Web应用程序和服务的增长已经超越了程序开发人员所接受的安全培训以及安全意识的范围。

随着存在安全隐患的Web应用程序数量的增长,OWASP也总结出了Web应用程序的十大脆弱点。在这个10要素列表中,不但包括了Web应用程序的脆弱性介绍,还包括了OWASP的建议内容,帮助程序开发人员和企业尽量避免这些脆弱点给企业系统带来的风险。

OWASP 10要素中还包括了一个指南,帮助企业决定该如何向客户提供信息。比如联邦贸易委员会(FTC)就在2003年1月的商业案例文档中将这个列表作为了信息安全的参考内容。同年,FTC还将OWASP 10要素列表作为指控Guess公司没有尽力做好客户的信息安全保护工作的参考资料。

10要素列表
以下列表来自OWASP 10要素项目: (OWASP, 2006):

 

  • Unvalidated Input非法输入 --在数据被输入程序前忽略对数据合法性的检验,是一个常见的编程漏洞。随着我们对Web应用程序脆弱性的调查,非法输入的问题已经成为了大多数Web应用程序安全漏洞的一个主要特点。

     

  • Broken Access Control 失效的访问控制 --大部分企业都非常关注对已经建立的连接进行控制,但是,允许一个特定的字符串输入可以让攻击行为绕过企业的控制。

     

  • Broken Authentication and Session Management失效的账户和线程管理--良好的访问控制并不代表万事大吉了。企业还应该保护用户的密码,会话令牌,账户列表以及其它任何可以给攻击者提供有利信息帮助他们攻击企业网络的内容。

     

  • Cross Site Scripting (XSS) Flaws 跨站点脚本攻击--XSS是一种常见的攻击。当攻击脚本被嵌入企业的Web页面或其它可以访问的Web资源中,当没有保护能力的台式机访问这个页面或资源时,脚本就会被启动。这种问题可以影响成百上千的员工以及企业客户的终端电脑。

     

  • Buffer Overflows缓存溢出--缓存溢出问题一般出现在较早的编程语言如C语言编写的程序中。这种编程错误其实也是由于没有很好的确定输入内容在内存中的位置所草成的。在本文的后续部分中,我们会讲到,通过一些高级的编程环境,如Java以及.Net,可以很好的控制此类问题。

     

  • Injection Flaws 注入式攻击--如果没有成功的阻止带有语法含义的输入内容,有可能导致对数据库信息的非法访问。比如在Web表单中输入的内容,应该保持简单,并且不应该还有可被执行的代码内容。

     

  • Improper Error Handling 异常错误处理--当错误发生时,向用户提交错误提示是很正常的事情,但是如果提交的错误提示中包含了太多的内容,就有可能会被攻击者分析出网络环境的结构或配置。

     

  • Insecure Storage 不安全的存储--对于Web应用程序来说,妥善的保存密码,用户名,以及其它与身份验证有关的信息是非常重要的工作。对这些信息进行加密是非常有效的方式,但是一些企业会采用那些未经实践验证的加密解决方案,其中就可能存在漏洞。

     

  • Application Denial of Service 程序拒绝服务--与拒绝服务攻击 (DoS)类似,应用程序的DoS攻击利用大量非法用户抢占应用程序资源,导致合法用户无法使用该Web应用程序。

     

  • Insecure Configuration Management不安全的配置管理--有效的配置管理过程可以为Web应用程序和企业的网络架构提供良好的保护。

    针对以上列表,我有两点要说明一下。首先,这个列表并不能涵盖企业的Web应用程序中的全部脆弱点,它只是OWASP的成员组织最常遇到的问题,因此也是你应该着重检查的内容。

    第二,这个列表并没有先后顺序。它只是根据每个OWASP成员根据自己企业的Web应用程序环境的脆弱性所排列的。

  • 抱歉!评论已关闭.