sql注入漏洞安全检测.

SQL自动注入攻击工具框架的研究与实现张建平(1)李洪敏(1)黄晓芳(2)卢敏(1)(1)中国工程物理研究院总体工程研究所(四川绵阳919信箱428分箱621900)(2)西南科技大学计算机学院摘要:针对SQL注入攻击极强的破坏性和隐蔽性及目前SQL注入攻击检测手段单一化,不能做网站全面自动分析的弱点,研究SQL注入攻击的关键技术,并在此基础之上,构建SQL注入的自动化检测及攻击利用框架。关键词:SQL注入攻击;二阶SQL注入;自动检测中图分类号:TP393文献标识码:ATheResearchandImplementofAFrameworktoDetectSQLInjectionAttackAutomaticallyZhanjianping1Lihongmin1Huangxiaofang2Lumin1(1.InstituteofSystemEngineering,CAEP,Mianyang621900,China;2.ComputerCollege,SWUST,Mianyang621010,China)Abstract:AimingattheextremelystrongdestructiveandconcealmentfromtheSQLinjectionattackandtheweaknessoftheexiguousdetectionmeansforitsinabilitytocomprehensivelyandautomaticallyanalyzetheweaknessofwebsites,thispaperproposesamethodtoautomaticallydetecttheSQLinjectionattackbasedonstudyingonthekeytechnologyofSQLinjection.Keywords:SQLInjectionAttack,Second-orderSQLInjection,Automaticallydetection1.引言随着Web应用的发展越来越成熟,应用的各项技术发展得也越来越复杂。它们涵盖了从外部动态展示和内部工作网到以WEB协议方式传递数据的多种应用(如文档管理系统等)。这些系统的实用性及其存储数据、处理内容的机密性和敏感性都很高。据OWASP[1](开放式web应用程序安全项目)每隔三年更新一次的“十大安全隐患列表”,在近几次公布的总结Web应用程序最可能、最常见、最危险的十大安全隐患中,SQL注入攻击一直排列靠前。SQL注入攻击是一种非常有效且破坏性很大的渗透手段,通过利用数据库的外部接口把恶意代码插入到SQL语言中使数据库服务器解析并执行,以达到入侵目标数据库及至整个操作系统的目的。由于SQL注入是从正常的Web平台入口进行请求访问,和请求正常的Web页面没有什么区别,所以目前市面上除了专门的Web防御防火墙外,大部分防火墙都不会对这类SQL注入攻击进行监控和发出警报,若网站管理员没有经常查看IIS日志的经验和习惯,有可能被入侵很长一段时间后都没有任何发觉。因此,本文针对目前SQL注入攻击检测手段单一化,不能做网站全面自动分析的弱点,主要研究SQL注入攻击的关键技术,在此基础之上,构建SQL注入的自动化检测及攻击利用框架。2.SQL注入攻击技术研究为了防止SQL注入攻击,通常会在web应用的代码层中或通过第三方的外部实现,如Web应用防火墙(WAF)或入侵防御系统(IPS)中采用关键字过滤的方式,如select|delete|update|count|等;以及代码层级别的过滤器,使用的方法包括编码、消除敏感字符等等各种方法,用来过滤掉畸形的数据串。但是,目前对这种过滤机制也有相应的SQL注入攻击技术绕过该机制,常见方法有:大小写变换、使用编码的方式、构造畸形数据包的方式、使用空字节绕过过滤机制、构造超长数据包的方式等[2]。常见的SQL注入在单个HTTP请求和响应中的流程如下所示:(1)攻击者HTTP请求中插入了精心构造的参数;(2)应用服务器处理输入的参数,参数经过了拼接导致SQL查询被执行;(3)应用服务器有可能会对攻击者请求的参数返回输出结果。而二阶SQL注入攻击是另外一种高级攻击手法,该方法攻击过程如下所示:(1)攻击者HTTP请求中插入了精心构造的参数;(2)应用服务器存储该输入的参数准备处理;(3)攻击者进行第二次HTTP请求,同时插入了精心构造的参数;(4)应用服务器将处理第二次请求,应用服务器将会检索已存储的参数并处理,因此导致了SQL查询被执行;(5)应用服务器有可能会对第二次请求的参数响应返回输出结果。二阶SQL注入属于一种更细微的漏洞,通常更难被检查到[3]。下面举例说明,假设一个通讯簿的应用,在应用系统中,用户可以保存朋友的联系信息。用户在创建一个联系人时,用户可以输入姓名、Email和地址等信息。应用系统使用INSERT语句为该联系人创建新的数据库记录,并将输入中的引号双重编...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?