论文部分内容阅读
互联网的迅速发展使得数据变得越来越重要,而作为数据的主要存储器之一的数据库就承担起了保护数据的重要角色。近年来对数据库的攻击手段层出不穷,其中SQL注入尤为突出,成为影响数据库安全的重要因素。与此同时,各种网络云课堂受到了越来越多的用户青睐。但即便是网络课堂发展日渐完善的今天,仍然在某些教学领域缺乏一个层次明了、实验环境丰富的针对性教学系统。因此,设计一个安全可靠的实验教学系统变得十分迫切。本文论述了 SQL注入原理及实现方法,分析比较了现有SQL注入防御方法,着重论述了基于模式匹配的SQL注入防御模型,研究对比了两种多模匹配算法,最终提出了正逆SQL注入防御模型。同时,本文分析了 LAMP架构,研究了现有负载均衡方法,最终设计实现了功能完善的实验教学系统。本文的主要工作如下:(1)提出了正逆SQL注入防御模型,该模型分为良性SQL匹配和恶意SQL匹配两部分。通过分析现有模式列表库存在的问题,针对SQL语句的结构特征,本文给出了模式列表库的优化方法,并将这种方法应用于良性SQL匹配模块和恶意SQL匹配模块。除此,在良性SQL匹配中还采用了hash方法,在恶意SQL匹配中利用WM算法实现模式匹配。最后通过安全性测试验证了正逆SQL注入防御模型的有效性和匹配过程的高效性,解决了SQL注入防御在安全和效率两方面无法很好平衡的问题。(2)通过分析整型参数存在的安全问题,利用AES对称加密算法给出了整型参数SQL注入防御的通用方法。(3)设计并实现了实验教学系统,包括系统架构设计、负载均衡设计、数据库设计、各模块设计、各模块的功能实现及各模块技术难点解决方案设计,并对系统的各个功能模块进行了详细的功能测试,验证了实验教学系统各模块均已实现。