基于动态污点分析的SQL注入攻击检测问题的研究

来源 :北京工业大学 | 被引量 : 14次 | 上传用户:asdfghjkj
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
互联网技术的飞速发展,使得以数据库为中心的Web应用系统越来越广泛。然而随之而来的安全问题也越来越频繁,SQL注入攻击是Web应用系统面临的严重安全威胁之一,其检测问题的研究具有重要的现实意义。本文研究了常见的SQL注入攻击漏洞检测方法,并归纳分析了各类检测方法的优缺点。针对目前常见的检测方式具有较高的误报率和漏报率,以及漏洞检测的实时性较差的特点,提出了一种基于动态污点分析的SQL注入攻击检测方法。结合动态污点分析的原理,设计了一种内嵌在应用程序中的动态污点分析模型以追踪污点数据在应用程序中的实时传播过程,并且利用SQL词法及语法分析技术,将SQL字符串解析成SQL语法树,利用污点分析检测构建的语法树,根据污点状态触发注入攻击报警机制。SQL注入攻击发生的根本原因是动态构造的SQL执行语句中被恶意攻击者注入了具有SQL语义的特殊字符或语句。基于上述原因,本文的SQL检测方法设计思路是:首先,在动态污点分析的影子内存标记阶段,通过封装基本字符和字符串类型,将变量中的每个字符用一个对应的标识符标记其污点状态;其次,基于高级程序语言分析了具有污点传播功能的操作类型,并根据不同类型定义了相应的污点传播规则及实现方式,使得污点数据在应用程序执行过程中的传播状态能被实时准确记录;最后,结合SQL语句解析原理,将动态构造的SQL语句进行语句模式提取,通过分析提象的语法树结构中是否含有污点数据,来判断SQL注入攻击是否发生,并根据污点数据所在的语句块判定攻击形式。本文进行了实验验证,实验证明基于动态污点分析的SQL注入攻击检测模型具有较低的误报率和漏报率。
其他文献
语音识别技术可以实现人机交互,作为机器的听觉系统,它可以利用机器理解并识别语音信号,把语音信号转变为相应文本或者命令。作为一个新兴高技术产业,语音识别技术的应用越来
语义网络和现代软件工程相结合的研究在互联网技术高速发展的今天已成为研究热点之一.其中,由于语义互联信息的模型及元模型能增强网上知识的共享与互操作,成为重要的研究课
当前网络路由技术关注的焦点是链路可连接性,并且通常只支持一类服务,即尽力而为服务.Multi-Protocol Label Switching[RFC3031]作为新一代的网络技术,它通过标记交换结合网
随着数据信息的急剧膨胀,直连到主机的本地存储模式已显得力不从心,网络正成为主要的信息处理模式.SAN(StorageAreaNetwork,存储区域网络)技术应运而生,成为人们解决存储带宽
随着软件复用的发展,特定于领域的、基于体系结构的复用策略成为复用研究中的一个重要内容.DSSA(特定领域的软件体系结构)是领域工程中领域分析阶段的产品,给出了领域分析模
人机智能交互(Human-Computer Intelligent Interaction,旨在使人类更自然地使用计算机)是近年来蓬勃发展的科学领域,我们知道要想让计算机能和人自然交流需要计算机拥有人类
在日益增长的网络服务中,为了研究如何向用户提供更高质量的服务,确保服务能够得到用户的认可,以用户为中心来评价服务质量是当前的迫切需要。用户体验质量(QoE, Quality of
在发达的互联网时代,软构件是高效软件开发与服务的主流技术.而建立一个管理和检索软构件的软构件库,则是大范围复用软构件的必然途径.随着众多软构件库的出现,他们之间的互
网络已成为人们社会生活必不可少的一部分.而目前网络安全问题日益严重,成为阻碍网络发展的主要障碍.传统的安全手段都是被动和静态方式,当然不足已抵御千变万化的入侵.入侵
互操作是构件运行支撑平台的核心能力之一.不同的互操作技术适用于不同的应用领域,因此,如何在不改变应用运行支撑环境基础结构的前提下,根据不同应用需求定制或扩展不同互操