首页 资讯 招标 项目 展会 更多

位置:首页 > 新闻频道 > 技术动态


新型SQL注入及其防御技术研究与分析

2016-03-28 10:08:59 安装信息网

相关链接: 中国安全网 中国质量网 中国论文网 中国资讯网

 李鑫,张维纬,隋子畅,郑力新

 (1.华侨大学工学院,福建泉州362021;2东北林业大学信息与计算机工程学院,黑龙江哈尔滨150000)

 摘要:SQL注入严重威胁Web安全,并在近些年发展出新的技术。当前研究主要集中于对传统SQL注入技术的检测与防御,而忽视了新型SQL注入技术。文章在介绍传统SQL注入和现有防御技术的基础上,详细介绍了3种新型SQL注入技术——客户端SQL注入、防注检测绕过和二阶SQL注入,并从注入的效果、防御方法等方面对传统与新型SQL注入技术进行了分析比较。对注入效果的分析结果表明,新型SQL注入技术具有危害大、影响范围广、依赖手工实施等特点;对防御方法的分析结果表明,新型SQL注入技术虽然能够突破一些传统的防御方案,但是依赖现有防御技术能够对其进行有效防御。文章并在分析的最后针对每一种技术提出了适合的Web防御方案。

0引言

 随着互联网的爆炸式发展,Web服务受到了广泛的应用。然而,Web服务也遇到越来越多的安全问题,如SQL注入、XSS、CSRF、缓冲区溢出等各种漏洞攻击不断出现。其中,SQL注入是一种危害极大的Web漏洞,严重威胁着互联网信息的安全。在开放Web应用程序安全项目( OSWAP)近些年的统计中,以SQL注入为主的注入漏洞依然是影响Web应用程序安全最严重的漏洞【41。虽然在过去几年许多专家针对传统SQL注入进行了深入研究,并提出多种检测和防御方法11,121,但是,目前的大多数学者都局限于对传统SQL注入漏洞的研究,而忽视了随着HTML 5、Web 2.0等新兴技术而发展的新型SQL注入技术。

 在关于SQL注入的大量研究中,冯谷和高鹏提出了3种SQL注入技术:Cookie注入技术、XPath注入技术和基于时间差的SQL盲注技术。Cookie注入可以归为服务器变量注入;基于时间差的SQL盲注属于基于响应的SQL盲注技术。近几年出现了许多新的SQL注入技术,如客户端SQL注入、防注检测绕过技术和二阶SQL注入技术等,几乎没有学者进行研究。这些新发展出的SQL注入技术使以往的防御措施失去作用,并在客户端安全、数据安全和内网安全等方面产生更加严重的威胁。因此,有必要对新出现的SQL注入技术进行深入研究与分析比较,为新型SQL注入漏洞的检测及攻击防御提供依据。

1SQL注入技术

1.1 SQL注入概述

 SQL注入是一种通过操纵Web输入来修改后台SQL语句以利用代码进行攻击的技术。数据库驱动的Web应用通过接受用户输入来构造SQL语句,并传递给后台数据库执行。如果攻击者能够通过构造用户输入来影响传递给数据库的查询,数据库执行攻击者注入的攻击载荷后就会产生SQL注入攻击。SQL注入漏洞主要由缺少用户输入验证及数据与控制结构混合在同一传输通道中所引起。Web应用程序构造发送给数据库执行的SQL查询字符串时采用的动态拼接技术导致用户控制的污染数据同SQL查询字符串混合在一起,从而使得攻击载荷注入到SQL查询中被数据库执行。而缺少用户输入验证导致攻击者可以直接构造攻击载荷执行数据库操作命令,如UNION、UPDATE、EXEC等。图1为SQL注入攻击的过程。

 从图1可以看出,攻击者在URL的category参数中注入攻击载荷发送给Web应用程序。存在SQL注入漏洞的Web应用使用该攻击载荷构造SQL查询并发送给数据库,从而导致数据库在执行攻击载荷后返回敏感数据给Web应用并最终被攻击者获得。

1.2传统SQL注入

 SQL注入的本质是污染数据(用户可以控制的数据)未经严格过滤到达危险函数,从而导致攻击者可以通过注入任意命令操纵数据库。传统SQL注入技术可以分为非法/逻辑错误查询、联合查询、附带查询、重言式、基于响应的SQL盲注等5种。

 1)非法/逻辑错误查询

 非法/逻辑错误查询是最常用的传统SQL注入技术。攻击者构造注入语句引起数据库错误并产生详细的错误提示,,而详细的数据库错误提示会泄露大量信息。数据库错误包括语法、类型转换和逻辑错误。攻击者通过引起不同的数据库错误获取信息。例如,通过语法错误会获取查询中的参数信息,通过类型转换错误推断参数的数据类型并获取表中数据,通过逻辑错误获取数据库的元数据。

 2)联合查询

 联合( UNION)查询技术利用SQL允许通过UNION操作符把不同SELECrr查询的结果整合到一个结果集的特性,在原查询后拼接一个新的SELECT查询以获取信息。攻击者使用联合查询攻击时可以结合重言式攻击使原查询WHERE条件为false,这样结果集中只包含攻击者所构造的第2个SELECT查询的结果。攻击者想要提取的数据就会取代原来的内容显示。

 3)附带查询

 附带查询攻击是在不改变原查询的情况下拼接一条或多条完整的查询语句,查询语句之间通过“;”连接。数据库在收到查询字符串后会连带所有的SQL语句一起执行。使用附带查询攻击时,攻击者可以进行任意数据库操作,包括添加/删除/修改数据,读/写底层操作系统文件等。

 4)重言式

 重言式攻击是通过在原查询中构造重言式改变原查询WHERE条件的真假。重言式攻击的目的在于验证注入点和改变查询逻辑,其攻击结果取决于原查询的功能。例如,可以通过重言式攻击绕过原查询中对用户的限时,实现修改用户密码的功能。

 5)基于响应的SQL盲注

 基于响应的SQL盲注技术是通过判断注入攻击载荷前后Web的不同响应获取信息。这种注入技术通常一次请求只能推断出1位信息(是或否),因此也叫推断技术。它又可以分为基于内容的SQL盲注和基于时间的SQL盲注两种。基于内容的SQL盲注是通过Web页面内容的变化推断Web应用信息和数据,而基于时间的SQL盲注则是通过Web页面的响应时间进行推断。

1.3现有防御技术

 SQL注入漏洞防御技术通过采用某种策略加强应用程序的安全性,防止和抵御SQL注入攻击。随着对传统SQL注入技术的研究,有大量防御技术被提出,较为典型的有输入过滤、参数化查询、Web应用防火墙、SQL查询串封装和SQL指令随机化等5种。

 1)安全编码

 安全编码是在代码层对SQL注入攻击进行防御,包括输入过滤和输入编码两种。在源代码中输入过滤采用正则表达式或者字符串匹配的方式,检测用户输入的类型是否有敏感字符。匹配原则包括只允许合法字符的白名单和过滤非法字符的黑名单两种。输入编码是对用户输入中的敏感字符进行转义或替换,即对用户输入进行消毒处理,是输入过滤匹配后所采取的措施。安全编码虽然能在一定程度上防御SQL注入攻击,但是大量Web应用中仍然存在SQL注入漏洞。这是因为一方面安全编码虽然对开发人员有较高的要求,但是大量开发人员安全意识并不高;另一方面Web应用的复杂性使同一安全编码方案并不能覆盖所有的情况,从而导致过滤的不全面。

 2)参数化查询

 参数化查询也是在代码层对SQL注入攻击进行防御,即预编译包含参数(替代用户输入)的SQL查询字符串,先行解析其语法结构,使得最后拼接的用户输入只能作为字符串常量存在。参数化查询从SQL注入漏洞产生的根本原因一一数据与控制结构混合在同一传输通道——进行防御,能有效预防大多数SQL注入攻击的产生。但是参数化查询也有其局限性,一方面是其只能参数化数据值,而不能参数化SQL关键字或标识符,当拼接到SQL查询中的用户输入内容为后者时将无法使用参数化查询;另一方面,参数化语句通常作为查询或存储过程调用,当被调用的数据库功能在函数或者存储过程的实现中使用了动态构造SQL查询时仍会产生SQL注入。被参数化查询存储到数据库中的污染数据有可能在Web应用其他功能时使用,从而产生SQL注入,也就是本文中将介绍的二阶SQL注入。

 3) Web应用防火墙

 Web应用防火墙(WAF)是一种网络设备或一种添加了安全特性的基于软件的解决方案,通常以嵌入到Web服务器或应用程序中的模块存在,基于HTTP/HTTPS的双向分析为Web应用提供防护。WAF是Web防御技术的发展趋势,国内安全厂商都有相关安全产品。WAF虽然有强大的功能,但是其基于污染数据特征的检测方法在目前有大量绕过技术。而各大WAF厂商也在不断修补自己的漏洞检测规则以完善产品。

 4) SQL查询串封装

 SQL查询串封装是为了解决大多数编程语言使用CLI与数据库交互,从而导致SQL注入只有在发生后才会被发现而提出的防御技术。MCCLURE提出的SQL DOM和WR COOK提出的Safe Query Objects通过封装SQL查询语句解决这个问题。它们以类型检查API的系统化方式替代不受限制的动态SQL查询字符串构造,消除可能导致SQL注入漏洞的代码。但是这项技术需要开发人员重新学习新的编程模型,并不被广泛使用。

 5) SQL指令随机化

 BOYD提出的SQLrand是一种基于随机指令集的技术,它通过代理服务器拦截由应用程序构造的SQL查询字符串以添加随机指令。由于攻击者无法预知所添加的随机指令,注入的关键字就会被检测出来。SQL指令随机化虽然有一定的效果,但是会降低应用程序的运行效率,在现实中应用并不广泛。

2新型SQL注入技术

 相较于传统的SQL注入技术,新型SQL注入技术不仅在攻击方式上有所增加,而且在攻击深度上有了进一步的发展。在传统的SQL注入中,往往只是威胁服务器端的信息安全,而近几年利用SQL注入攻击客户端的技术发展迅猛。其次,以往能够成功抵御传统SQL注入攻击的防护措施在新型防注检测绕过技术面前也显得力不从心。再次,二阶SQL注入是一种先把攻击载荷存储在持久存储中,再到达危险函数的新型技术,它的隐蔽性和攻击性更强。本部分将介绍客户端SQL注入、防注检测绕过技术和二阶SQL注入3种新型SQL注入技术。

2.1客户端SQL注入技术

 HTML 5带来了众多新特性,其中之一就是内置了通过SQL语言来访问的数据库。客户端可以通过JavaScript使用被称为SQLLite的文件型数据库在客户端获取和存储数据。HTML5允许应用程序把数据存入客户端数据库以便用户界面快速检索所需数据,这能在加快应用响应速度的同时减小服务器负担。并且它还允许应用程序离线运行,应用程序处理的数据先驻留在客户端中,联网后再与服务器同步。

 HTML 5在带来便利的同时也带来了安全隐患。与服务器端SQL注入类似,如果客户端应用程序以非安全的方式访问本地数据库中由攻击者控制的数据,就会产生客户端SQL注入攻击。客户端SQL注入主要在两个方面区别于传统SQL注入技术:发送攻击数据的通道和提取数据的机制。利用客户端SQL注入技术,必须先找到能被攻击者在本地客户端控制并且被应用程序发送到其他客户端数据库中的数据片段,如新闻类应用中的用户评论、社交网络应用中的用户个人资料等。这些数据片段首先被发送到服务器,再由服务器分发到客户端数据库,最终数据片段中的攻击载荷在客户端数据库被执行。由于攻击者客户端与被攻击者客户端间隔服务器,攻击者无法获取被攻击客户端是否发生了错误、响应状态改变、时间延迟等异常。因此客户端SQL注入是纯盲状态的,处理SQL盲注的常用技术不起作用。但是客户端SQL注入技术又是白盒环境的,即攻击者可以通过观察自己的客户端实例了解客户端应用所使用的防御措施、客户端数据库中敏感数据的存储位置等信息。攻击者还可以通过加载两个客户端实例,以一个客户端中实施攻击观察另一个客户端的反应的方式调整攻击方法。

 客户端SQL注入攻击的流程如图2所示。

 由图2可以看出,客户端sQL注入可以分为白盒测试和注入攻击两个阶段。白盒测试阶段是客户端SQL注入技术相比与其他SQL注入技术所独有的阶段,主要目的是收集信息。在分析客户端实例时,攻击者通过分析客户端中加载的实例收集应用程序使用的防御措施、可以实施SQL注入攻击的位置、用户机密数据存储的位置、可以提取数据的途径等信息。通常对于攻击者能够直接输入但是会受到输入验证检测的数据和攻击者可以控制的基于文本的数据容易实施客户端SQL注入攻击。双客户端模拟攻击阶段,攻击者通过加载两个客户端实例来收集每一条攻击语句执行后的效果、绕过防御措施的方法等信息。注入攻击阶段,攻击者利用在白盒测试阶段中收集到的信息编写攻击载荷和选择注入点,然后把攻击载荷包含在受其控制的一组数据中经由服务器发送给被攻击客户端应用进行存储。之后客户端使用这些数据构造SQL查询,导致客户端SQL注入攻击。

 社交网络、新闻、Web邮件等都是常见并且易受这种攻击的应用。例如,在社交网络应用中,好友资料被存储在本地数据库中以便离线查看。攻击者在自己的资料中添加可以提取用户敏感资料的攻击载荷,并发送到被攻击客户端。此时如果被攻击客户端为了存储好友资料而使用动态拼接方式构造SQL查询字符串,攻击载荷得以执行,即被攻击客户端中用户敏感资料被提取到他自己的个人资料中,继而被社交网络应用发送给攻击者。

 客户端SQL注入区别于传统SQL注入技术,威胁客户端的信息安全。随着HTML 5、Web 2.0等技术的普及与发展,会有更多的客户端受到此技术的威胁。

2.2防注检测绕过技术

 面对SQL注入攻击的威胁,Web应用通常会使用部署在应用代码中或者以WAF、IDS形式存在的输入过滤器来防御SQL注入攻击。本节将介绍编码、注释符、空字节和动态查询等新型防注检测绕过技术。

 1)编码

 通过编码可以改变注入语句的字符特征,使其在检测时不会被黑名单匹配到,并且编码后的语句被服务器解析后能正常执行。最常用到的编码技术有URL编码、UTF-8、十六进制编码和char()函数。而新型防注绕过检测技术是对传统编码技术的多次复合使用。例如,使用双重URL编码表示“’”“’”,“”’对应的URL编码为%27,“%”对应的URL编码为%25,则双重编码后可以用%2527来表示“”’。在许多不得不采用基于黑名单的输入检测中,使用多重复合编码后的有效载荷能成功绕过检测,发动攻击。

  2)注释符

  使用内联注释符能够绕过多种模式匹配输入过滤器。注释符在SQL代码中可以代替空格分割每个关键字,避开针对空格的检查。例如:

 http://www.test.com/u ser.asp?uid=l /**/having/**/l=l

 而在一些数据库如MySQL中,注释符甚至可以出现在SQL关键字的内部,不改变SQL语句的效果。例如:

 http://www.test.com/user.asp? uid=l/**/ha/**/ving/**/1=1

 关键字内部使用注释符把关键字变成了多个片段,如“ha”和“ving”。单独来看这些片段是没有威胁甚至是常用单词,因此可以绕过防注检测。上述语句被成功执行后会触发数据库错误并返回当前查询第一个参数名称。

  3)空字节

  编写过滤器与应用程序时所使用的代码不同导致它们对空字节的处理会有所差异。托管代码编写的程序会把空字节连同后面的输入一起处理,而非托管代码则会把空字节当作字符串的结尾而不做处理。只需在不希望被阻止的字符前面添加空字节的URL编码01000,就能实现空字节绕过过滤器。例如:

 http://www.test.com/product.asp?category=booko/000’;CREATE

 DATABASE Test:——

 上述语句以GET方式发送给Web服务器后,非托管代码所编写的过滤器遇到空字节01000就会当作到了数据的结尾,不对后边内容做检查,而Web应用则会把全部数据一起处理,导致有效载荷被执行。

 4)动态查询

 借助于数据库的动态查询功能,把要执行的SQL查询转化成字符串传递给执行查询的函数,是近期出现的另一种绕过输入过滤器的方法。这种方法通常会把过滤的查询语句转化成对应的ASCII字符的十六进制编码。

例如:

 DECLARE@ q VARCHAR(200)

 SELECT @q= Ox44526f50205461526c65207465737

43b /*Drop table test;*/

 EXEC (@q)

 如果上述代码成功绕过SQL注入防御措施,将会删掉名为test的数据库,造成巨大损失。

 防注检测绕过是一种通过攻击者与安全厂商或开发人员不断博弈而发展的技术。它可以让传统的输入检测失去作用,与其他SQL注入结合使用则会发挥出巨大作用。

2.3二阶SQL注入技术

 传统的SQL注入都属于一阶SQL注入技术。在这种技术中,由攻击者控制的污染数据会在应用程序内部直接到达危险函数,进而导致攻击者可以通过注入任意命令操作数据库。攻击者利用一阶SQL注入漏洞时,只需要在应用程序同一位置就可以实现从注入攻击载荷到获取数据的整个过程。而在二阶SQL注入技术中,污染数据需要经由PDS(持久存储),再到达危险函数。表现在攻击过程中则是攻击者首先需要通过应用程序的存储功能把攻击载荷存储到服务器的持久存储中,接下来在其他功能中使应用程序提取攻击载荷到危险函数,即二阶SQL注入漏洞要经过存储和触发两个阶段。这两个阶段通常在应用程序的不同位置完成,而目前已知的大多数SQL注入漏洞动态检测软件都是通过对待检测注入点发送大量测试用例,观察应用程序当前响应来判断是否存在漏洞。这种在Web应用程序的同一位置生成攻击和观察响应的方法显然无法有效检测二阶SQL注入攻击。

 二阶SQL注入技术中的持久存储是指在服务器端写入磁盘的位置,主要包括数据库、SESSION和系统文件3种。其中数据库是最为常见的形式,此时污染数据的存储位置具体到某一个数据库服务器中一个数据库上一个表的特定列和行。在Web应用程序中,大多数编程语言都提供了统一的内置函数来与数据库进行通信,如PHP中所有的SQL指令都通过mysql_query()发送给数据库。SQL中插入数据的INSERT语句共有3种,分别是:

 而这3种INSERT写入方式按照是否包含写入时具体字段名称,又可以把前两种称为显式写入,最后一种称为隐式写入。在显式写入中应用程序源代码显式包含了数据存储位置的所有信息,通过分析源代码可以定位到此时的持久存储点。而隐式写入由于没有在代码中包含数据存储位置的字段信息,;因此无法通过分析源代码定位污染数据的持久存储点。

 在成功执行查询命令后,mysql_query()函数会返回一个查询结果集。对于查询结果集的处理,PHP包括以下3种方式:

 这3种处理结果集的方式按照是否指明字段名称,也可被分为显式读取和隐式读取两种类型。同理,两种类型也分别对应通过分析源代码能否确定污染数据的来源。

  传统静态分析技术是通过分析源代码中污染数据是否最终走向危险函数实现检测SQL注入漏洞。通过上面的分析可以看到,二阶SQL注入漏洞的污染数据会先经过持久存储再到达危险函数,但是静态分析源代码却无法准确将污染数据的存储和读取位置有效联系起来。因此,通过静态分析的方式检测二阶SQL注入漏洞也无法达到很好的效果。一阶SQL注入污染数据数据流走向如图3虚线箭头所示,二阶SQL注入如图3实线箭头所示。

 传统Web安全边界观认为污染数据来自于用户可以直接控制的输入,而来自于数据库内部的已验数据是安全的。在此思想影响下的传统SQL注人防御措施大多集中于对用户输入的处理,如在用户输入时立刻进行的黑/白名单过滤审查、危险字符替换、参数化查询等,但对于来自数据库等的已验数据则不做任何处理。从图3可以看出,二阶SQL注入技术正是通过先把攻击有效载荷存储到数据库中再加以利用,绕过SQL注入防御措施,实现注入攻击。而有效载荷几乎可以是一阶SQL注入中的任何技术,因此二阶SQL注入技术几乎可以实现一阶SQL注入的所有效果,而且它更隐蔽,在Web应用程序中的位置也更敏感,一旦被触发会造成更大的危害。

3 SQL注入分析

 本文从注入效果和防御方法两个方面,对比介绍5种传统和3种新型SQL注入技术。

 分析SQL注入效果的技术指标主要有:获取敏感数据、修改原查询的结构、绕过输入过滤器、工具实现、上传文件、获取后台权限、获取系统权限、内网渗透等。其中,获取敏感数据是SQL注入攻击的目的,也是评价一种SQL注入技术好坏的硬性指标。修改原查询的结构可以使攻击者注入更加强大的攻击载荷。目前网站普遍使用输入过滤器来防御SQL注入攻击,因此绕过输入过滤器是发现注入点后能否进行SQL注入攻击的关键因素。SQL注入攻击是一个繁琐的过程,攻击者通常要对注入点发送大量的请求。因此,能否自动化实现SQL注入攻击决定了这项技术的可利用性。上传文件、获取后台权限、系统权限以及进行内网渗透则是进行SQL注入攻击的目的,也是衡量一种SQL注入技术好坏的重要指标。本部分将从这些技术指标深入分析比较传统和新型SQL注入技术的不同效果,其中传统型SQL注入包括非法/逻辑错误查询、联合查询攻击、附带查询、重言式、基于响应的SQL盲注等具有代表性技术,新型SQL注入技术包括客户端SQL注入、防注检测绕过技术、二阶SQL注入等技术。具体分析比较结果如表l所示,“√”表示SQL注入技术具有此效果,“×”表示不具有此效果。

 从表1可以看出,传统SQL注入技术能够实现除了绕过过滤器之外所有的注入攻击效果,能够有效完成一次从搜集信息到获取系统权限完整的渗透测试,但是对于绕过现有的过滤器不理想,因此单独靠传统的sQL注入技术很难在今后取得理想的效果。新型SQL注入技术能够实现除了工具实现之外的所有注入攻击效果,也能够完成一次完整的渗透测试,并且能够有效绕过现有过滤器,应用范围广。由于3种新型SQL注入需要根据不同的环境进行变化,这需要测试人员的人为分析,因此无法通过工具实现。3种新型SQL注入技术中,客户端SQL注入攻击效果侧重于客户端,能够窃取受害者的个人敏感数据。防注检测绕过技术需要与其他SQL注入技术结合使用,是能否成功攻击的关键技术。二阶SQL注入技术几乎能够完成传统SQL注入所有的效果,也是现在SQL攻防研究中的热点;并且其十分隐蔽,传统检测工具对其没有较好的检测能力。总的来说,新型SQL注入检测技术是在传统技术上的发展,它以传统SQL注入技术为基础。一次成功的SQL注入攻击需要多种技术的联合使用。

 以1.3节介绍的5种现有技术分析其对5种传统和3种新型sQL注入技术的防御效果,分析结果如表2所示,“√”表示能防御对应的SQL注入技术,“○”表示能部分防御对应的SQL注入技术,“×”表示不能防御对应的SQL注入技术。

 从表2可以看出,安全编码技术能够部分防御二阶SQL注入之外的其他SQL注入技术,且它的防御效果取决于在具体环境下所采取的编码措施。它不能够防御二阶SQL注入技术是因为二阶SQL注入技术通常存在于无法严格限制用户输入的地方,而且经过数据库的存储能够还原转义后的字符。参数化查询能够有效防御大多数SQL注入技术,但是对于二阶SQL注入的防御效果取决于其在应用程序中的部署情况,因为二阶SQL注入通常会在传统安全边界以外的一些地方出现。WAF是服务器端安全措施,不能防御客户端SQL注入,也不能防御二阶SQL注入,因为二阶SQL注入的攻击载荷来自于数据库而不是HTTP请求,对于其他技术的防御效果取决于其设置的安全策略。SQL查询串封装也是服务器端安全措施,能够有效防御除了客户端SQL注入之外的所有技术。SQL指令随机化技术不能防御非法/逻辑错误查询技术,因为它不能纠正查询字符串中的语法错误;由于其是服务器端措施,也不能防御客户端SQL注入技术;但它能够有效防御其他SQL注入技术。

 3种新型SQL注入技术中,客户端SQL注入由于其位置特点,可以采用安全编码和参数化查询两种方法进行防御。虽然所有防御方法都能够对防注检测绕过技术起到一定的防御作用,但是综合考虑稳定性和系统开销,最好的防御措施是参数化查询。二阶SQL注入可以通过在与数据库交互的地方完全采用参数化查询规避安全边界盲区,进行有效防御。

4结束语

 SQL注入长期以来一直是危害最大的安全漏洞之一。防御SQL注入攻击需要及时了解新出现的SQL注入技术并采取相应的防御措施。本文从传统和新型SQL注入技术,以及现有的防御技术等方面进行了介绍,重点介绍了3种代表性的新型SQL注入技术。文章最后以传统SQL注入技术与上述3种技术做比较,分析传统与新型SQL注入技术的攻击效果和现有技术下的防御方法,有利于安全人员采取针对性措施加强Web应用程序的安全。由于开发人员的疏忽以及SQL注入技术的不断发展,应用程序中难免存在SQL注入漏洞,因此如何在攻击发生之前发现和修补漏洞是接下来研究的重点。

关键字:

上一篇:变截面箱梁ANSYS前处理程序开发与应用

下一篇:返回列表

行业资讯月点击排行

展会信息月点击排行

招商信息月点击排行

首页 资讯 招标 项目 展会
关于我们 | 广告服务 | 友情连接 | 联系我们
触屏版 电脑版
安装信息网 www.36qyk.cn.