论文部分内容阅读
SQL注入诞生于Web应用和数据库相互连接时。在1998年圣诞节,Rain Forest Puppy首次发布了一篇关于SQL注入的报告,介绍了如何利用SQL注入漏洞对网站发起攻击。国外的研究人员从1999年开始从事相关研究工作,而国内的研究工作从2002年后才开始大量出现。但到目前为止,许多安全专家和开发人员仍对SQL注入不了解。SQL注入漏洞广泛存在于Web应用中。根据OWASP发布的十大安全漏洞威胁报告(OWASP Top 10)和360发布的安全报告可知,注入漏洞一直严重威胁着网站安全。360发布的《2014年全国网站安全报告》指出SQL注入漏洞占到了所有检出的网站漏洞的14.5%。由此可见,SQL注入漏洞的安全威胁一直存在。本文的主要研究工作如下:1.阐述了SQL注入漏洞的研究背景及意义,介绍了国内外对SQL注入研究的现状。2.详细介绍了SQL注入的测试技术,包括SQL注入的寻找和SQL注入的确认。本文介绍了基于远程渗透测试的SQL注入漏洞挖掘方法:借助推理进行测试、数据库错误、应用程序响应和SQL盲注;确认SQL注入漏洞可以借助以下四种技术:区分数字和字符串、内联SQL注入、终止式SQL注入和时间延迟。3.详细研究了SQL注入的利用技术。在识别出应用的注入漏洞后,下一步是如何研究如何利用SQL注入漏洞。本文总结了五种常见的SQL注入利用技术,包括常见的漏洞利用技术、识别数据库、使用UINION语句提取数据、使用条件语句和枚举数据库模式。4.总结了现有SQL注入漏洞检测技术,本文提出了基于启发式漏洞检测、常规检测和基于模糊测试的检测技术相结合的一种混合式的SQL注入漏洞检测方法。5.研究了Web应用防火墙(WAF)的检测和绕过技术,通过将Payload进行编码、混淆等处理,清除了SQL注入检测中可能遇到的障碍。同时对移动应用和HTML5客户端、NoSQL等前沿领域的SQL注入问题进行了探索。6.设计、实现和测试了SQL注入的自动化检测系统。基于上述提到的混合式SQL注入漏洞的检测方法,设计并实现了SQL注入的自动化检测系统,对关键模块的设计和实现进行了详细说明,并进行了全面的系统测试。测试结果表明,该系统能够实现对Web应用的SQL注入漏洞检测。