论文部分内容阅读
随着互联网的兴起,银行业务,网上购物,在线教育,电子邮件,日常社交等网上业务已经成为人们日常生活中不可或缺的一部分。Web应用得到了广泛使用的同时也带来了一系列的计算机安全问题。SQL注入攻击是一种针对Web应用的最常见并且危害最大的攻击方式,如果不能及时阻止将会导致严重的后果,例如数据库中数据被窃取、篡改、删除等。SQL注入攻击的研究是从1998年开始,直到现在SQL注入攻击行为依然频繁发生,并且居高不下。因此,研究在Web应用中及时防御SQL注入攻击技术具有十分重要的理论意义和实用价值。本文的主要研究工作如下:首先,对Web应用程序防御SQL注入攻击的研究现状进行分析,目前防御技术大都只能够用来防御SQL注入攻击,却并没有考虑在攻击者攻击成功后阻止其对所获取信息的理解。针对上述问题,提出了一个难理解二阶SQL注入防御模型DUS。该模型不但能够用来防御SQL注入攻击,还用来在攻击者攻击成功后阻止其对所获取的信息理解。为了完成上述任务,防御模型设计两个阶段:输入验证阶段V和查询匹配阶段M。其次,设计了DUS防御模型的输入验证阶段V,在V阶段使用分类数据输入验证方法。该方法对用户输入进行敏感数据识别,对包含敏感数据的用户输入进行加密处理,对不包含敏感数据的用户输入进行规则过滤。这样可以解决现有防御技术没有考虑对攻击者攻击成功后阻止其对所获取信息理解的问题。设计了DUS防御模型的查询匹配阶段M,在M阶段使用语句规范化查询匹配方法。该方法提取SQL语句的操作类型和所使用的数据库表名,并对SQL语句进行语法剪裁,使之变为规范的SQL语句。然后对SQL语句进行查询匹配来防御SQL注入攻击。这样可以解决输入验证被攻击者绕过的问题。最后通过仿真实验验证DUS防御模型的性能。使用正确率、误报率、漏报率3个指标对DUS防御模型与GreenSQL工具进行对比评估。仿真实验结果表明,DUS防御模型是有效的、可行的,并且能有效降低漏报率,提高防御效率。