1 / 50
文档名称:

双层防御SQL注入攻击方法.pdf

格式:pdf   页数:50页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

双层防御SQL注入攻击方法.pdf

上传人:2024678321 2016/4/4 文件大小:0 KB

下载得到文件列表

双层防御SQL注入攻击方法.pdf

文档介绍

文档介绍:I 摘要互联网应用程序使用日趋广泛,然而互联网开发人员水平和经验参差不齐,使得互联网应用程序存在大量安全隐患。在Open Web Application Security Project互联网应用安全风险评估排行中,注入攻击被认为是危害最广的攻击,而SQL注入攻击又是最常见的注入。攻击者通过构造恶意的输入字符串,修改原有SQL逻辑结构,从而读取到额外信息甚至执行恶意命令,危害极大,所以如何更有效的防御SQL注入攻击成为紧迫的问题。通过对SQL注入攻击特征的学****提取出两个主要特征:一是大多数常见的SQL 注入攻击存在攻击特征字符串;二是SQL注入攻击的本质特征是修改SQL语句原有逻辑结构。通过对大量SQL注入防御方案的研究,本文结合互联网应用防火墙的应用层过滤器的思路,和应用逻辑层检查SQL结构的思路,提出了一个新的双层防御模型。模型依照这两大特征,将各种各样的SQL注入分两类进行防御:一是防御含有特征攻击字符串的SQL注入攻击;二是防御无明显特征的SQL注入攻击。模型两层结构都采取了静态分析和动态监控结合的方式防御SQL注入攻击。其中,第一层模块采取应用层过滤器检查常见SQL注入攻击特征字符串是否存在;第二层监控实时的SQL请求,检查SQL结构是否被恶意更改。以J2EE平台的互联网应用程序为防御对象,实现了双层防御模型的系统“Double Layer Defense Project”。本系统利用javaFilter实现了对HttpRequest的拦截验证,借助源码等分析工具,实现了动态SQL结构的实时检查。最后实验结果表明双层防御模型一方面可以轻量级的过滤掉常见含攻击特征字符串的SQL注入请求,另一方面可以从修改SQL语句结构来精确判断一个SQL注入攻击,从而实现了对SQL注入攻击更全面有效的防御。关键词:SQL注入攻击,应用层过滤器,双层防御模型 II Abstract Nowadays web applicationsare widelyused,however a lot of security problems happened due todevelopers’skill OWASP (Open Web Application Security Project) TOP10 list,SQL injection ingone of themost extensive security problems, so effectivedefenseof SQL injection attacks e an urgentproblem. After learningcharacteristicsof SQL injection attacks, we extracted two main features: one mon SQL injection attacksalways includefeatures of offensivestrings;the otheris the essentialfeature, whichSQL injection attacksmust modify thelogicof original SQL onstudy ofother defensiveapproaches, this paper proposed a double layer defense model to defend againstSQL injection, bines "Application Filter" defenseofWeb Application Firewallwith"Logical_SQL" defense on application-layer. Our bines static analysis and dynamic monitoring in both layers: the first layer interceptsHttpRequestand checks whether malicious injection strings exist or not, the second layer intercepts execution of SQL statements andchecks whether the logical structure of SQL statements changed or not. To protectweb applications upon J2EE platform,our system called ”Double Layer Defense Proj