Web应用程序的安全问题及对策.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Web应用程序的安全问题及对策.doc

Web应用程序的安全问题及对策 摘 要:Web页面是所有互联网应用的主要界面和入口,各行业信息化过程中的应用几乎都架设在Web平台上,关键业务也通过Web应用程序来实现,Web应用程序的安全性变得越来越重要。Web应用本身具有一些的安全弱点,其安全漏洞常被利用来攻击。Web应用程序的安全问题是一个复杂的综合问题,在Web应用程序开发阶段就应予以重视,分别从数据库设计、程序设计、Web服务器等三个层面去考虑如何加强Web应用程序的安全性。 关键词:Web应用程序;Web安全;安全弱点;安全漏洞;Web开发 中图分类号:TP393.08 进入二十一世纪以来,互联网以惊人的速度在中国应用和普及。互联网已经成为一项重要的社会基础设施,Web应用也逐渐成为软件开发的主流之一[1]。Web页面是所有互联网应用的主要界面和入口,各行业信息化过程中的应用几乎都架设在Web平台上,关键业务也通过Web网站来实现。经过调查发现:目前,传统的大多数企事业网站通常采用防火墙、入侵检测/漏洞扫描等技术作为网站边界的防护[2]。尽管防火墙、入侵检测等技术已经比较成熟,Web应用的特殊性往往导致防范各类安全性问题的难度很大,因为Web应用攻击通常来自应用层,并且可能来自任何在线用户,甚至包括已经通过认证的用户[3]。同时,对Web应用程序的攻击也可以说是形形色色、种类繁多,常见的有挂马、SQL注入、缓冲区溢出等。正是因为这样,Web应用程序最容易遭受攻击,Web应用程序的安全性变得越来越重要。 1 Web应用的安全弱点 Web应用本身具有一些安全弱点,归纳起来有以下几点: (1)TCP/IP协议本身的缺陷。 (2)网络结构的不安全性。 (3)数据窃听。 (4)验证手段的有效性问题。 (5)人为因素。 2 Web应用程序的安全漏洞 根据Symantec发布的《SymantecInternetSecurItythreatreport》,60%以上的软件安全漏洞是关于Web应用的[4]。开放式Web应用程序安全项目(openWebapplIcatIonSecurItyproject,OWASP)在2010年公布的Web应用十大安全漏洞中[5]: (1)注入漏洞。 (2)跨站脚本漏洞。 (3)失败的认证和会话管理。 (4)直接对象引用隐患。 (5)CSRF跨站点请求伪造。 (6)安全配置错误。 (7)限制URL访问失败。 (8)尚未验证的访问重定向。 (9)不安全的密码存储。 (10)传输层保护不足。 另外还值得一提的是,很多程序员常使用网上一些公开免费的源码模版来开发Web应用程序,公开的源码的安全性低,非常容易让黑客找到源码的漏洞,从而威胁到Web应用程序的安全。 3 Web应用程序开发中的安全对策 一个Web系统由Web服务器系统、Web客户端系统和Internet网络组成[6]。这三个系统都会产生Web应用程序的安全问题,所以Web应用程序的安全问题是一个复杂的综合问题。在Web应用程序开发阶段就应对于安全问题予以重视,下面分别从数据库设计、程序设计、服务器等三个层面去考虑如何加强Web应用程序的安全性。 3.1 数据库设计层面 数据库存放着Web应用程序最重要的部分:数据。在开发过程中的数据库设计阶段就应该考虑好安全问题,以下建议有助于提高其安全性。 (1)在设计数据库时如果涉及跨库操作,应尽量使用视图来实现。 视图可以让用户或者程序开发人员只看到他们所需要的数据,而不需要把表中的所有信息与字段暴露出来,这样增强了数据的安全性。 (2)对数据库的操作使用存储过程。 (3)注意使用数据库建表时的字段类型,不要用可能被修改的字段做主键,否则会给相关记录的更新带来隐患。 (4)尽量避免大事务的处理。 (5)尽量避免使用游标。 3.2 程序设计层面 目前大多数的网络攻击和互联网安全事件源于应用软件自身的脆弱性,而其根源来自程序开发者在网页程序编制过程中缺乏相关的安全意识和知识,并且开发完成后也缺乏相应的代码检测机制和手段。这些脆弱性在日后就成为了黑客用来发动攻击、进行页面篡改、以及布放和传播网页木马的最有效途径[7]。 Web应用系统形式多样,但其内在特征基本一致,即具有较强的交互性并且使用数据库系统。由于SQL注入使用SQL语法,从技术上讲,凡是Web 应用中构造SQL语句的步骤均存在潜在的攻击风险。因此,如果对用户的输入不做合法性验证,就不能避免SQL注入的发生[8]。 作为Web应用程序的开发者,决不能假定用户不会有恶意行为,也不能假定用户输入的数据都是安全的。对恶意的用户来说,从客户端向Web应用程序发送具有潜在危险的数据是很容易的。程序也可能有未被检查出的错误和漏洞,会成为攻击者下手的对象。 对此开发者在设计和开发Web应用程序时应采取必要的安全设计措

文档评论(0)

lnainai_sj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档