网站注入式攻击原理与防范.docVIP

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

网站注入式攻击原理与防范   摘 要: 网站注入式攻击成为Web应用系统的严重安全隐患。通过该类型攻击,攻击者能非法获得对Web应用程序数据库无限制的访问权限,进而得到企业和网络用户的机密信息,如银行账号、交易数据等,给网络用户和企业造成了巨大损失。通过对注入式攻击途径、动机、流程及原理的分析,结合目前普遍采用的攻击测试方法,提出一些防范方法和措施。采用这些方法和措施可极大限度地减少网站注入攻击的可能性,保护数据库的安全。   关键词: 注入式攻击; 攻击原理; 攻击防范; 网络安全   中图分类号:TP309.2 文献标志码:A 文章编号:1006-8228(2013)08-22-03   0 引言   网站注入是动态网页经常存在的一种漏洞(这些漏洞并非Window、IIS、SQL Server或者其他底层代码的漏洞,而是在这些平台上运行的由程序员自行编写的代码中的漏洞),攻击者利用这种漏洞可以通过SQL语句直接访问数据库,因而对系统的安全产生很大隐患。随着B/S模式应用开发的发展,相当一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在着安全隐患。本文通过对注入式攻击途径、动机、流程及原理的分析,结合目前普遍采用的攻击测试方法,提出一些防范方法和措施。这些防范方法可极大程度地减少网站注入攻击的可能性,保护数据库的安全。   1 网站注入攻击途径、流程及原理分析   1.1 SQL注入攻击的途径   用户通过一定的途径将自己的输入提交给Web应用程序,因而SQL注入也就有其相应的攻击途径。恶意用户一般通过客户端输入、Server变量以及Cookie三种[1]基本的方式进行畸形SQL语句查询的提交,从而达到进行SQL注入的最终目的。   通过用户输入注入 在客户端页面上的输入是用户和Web应用程序最主要的交互方式,用户输入主要通过HTTP的GET和POST请求提交。Web应用程序通过访问这些请求变量并引用包含在这些变量中的用户输入值(变量值),然后使用这些用户输入值,动态地生成SQL查询语句,提交给后台数据库。恶意用户则通过精心构造用户输入值进行SQL注入。   通过Server变量注入 Server变量是包含在HTTP、网络header和环境变量中的变量。浏览器请求和服务端的响应都包含headers。Headers提供有关请求和响应的附加信息,包括浏览器生成请求和服务端响应过程的信息。恶意用户就可能通过伪造HTTP和headers的值操纵数据库,生成攻击。   通过Cookie注入 Cookie是Web应用程序产生的包含状态信息的文件,存储在客户端并由客户端完全控制。因此恶意用户可以任意处理Cookie内容,若Web应用程序用Cookie的内容动态构造SQL查询,那么恶意用户就可以使用Cookie的内容构造SQL查询,并将攻击嵌入Cookie提交。   1.2 网站注入攻击的分类   使用注释符(- -,#) 使用注释通常可以使攻击者绕过验证。SQL在查询中支持注释,如,- -、#等。通过注入注释符,恶意用户或者攻击者可以毫不费力的截断SQL查询语句。   重言式攻击 该类型攻击是为绕过验证、识别可注入的参数或者提取数据。这种攻击的目的是在条件句中注入代码,使该条件句恒真。攻击者利用查询条件中的可注入字段,将条件转换为重言式,使数据库返回所有相关行。这类攻击的结果依赖于攻击对象在应用程序中的作用,最常见的是绕过验证和提取数据。   不合法/逻辑错误查询(SQL注入攻击发现技术) 其攻击动机是识别可攻击参数、识别数据库的类型和版本等信息或提取数据等。该类型的攻击其实是攻击的一个预备步骤,用于为其他类型的攻击收集信息,包括数据库的类型和结构。语法错误可以识别可注入参数,类型转换错误可以推导某列的数据类型或者取得数据,逻辑错误可以返回导致错误的表和列的名字。从这些错误信息中得到的信息为其他攻击方法收集了必要的攻击信息。   Union查询攻击 Union查询动机是绕过验证或者提取数据。攻击者在查询语句中注入Union SELECT语句,并且因为用户控制“SELECT语句”的内容,攻击者可以得到想要的信息。   附带查询攻击 该类型攻击是为提取数据、添加和修改数据、实现拒绝服务或者执行远程命令。该类型的攻击并不改变原有查询,而是在原有查询后插入新的查询语句。数据库配置如果允许执行多个查询语句,那么攻击者将能在原有查询后插入任何SQL命令,包括存储过程(系统或用户自定义的),因而这种攻击能造成巨大危害。   利用存储过程攻击 数据库厂商用一些标准存储过程来扩展数据库的功能并允许其与系统交互,或者用户会自定义一些存储过程。通过其他类型攻击搜集到数据库的相关信息(数据库类型

文档评论(0)

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

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

1亿VIP精品文档

相关文档