论文部分内容阅读
随着互联网技术的快速发展,越来越多的网络服务以Web应用的形式提供给人们。针对Web应用程序的攻击有很多种,其中SQL(Structured Query Language)注入是最常见,最易于实施且危害最大的攻击。之前对SQL注入攻击的研究主要集中在以HTTP的GET或者POST提交为途径的攻击方式上。随着注入技术的发展,一种以HTTP HEADER为途径的新型SQL注入攻击开始流行起来。这种攻击技术有着很强的隐蔽性和危害性,并且成蔓延之势。目前对于这种攻击技术的研究比较缺乏,本文针对这种新型SQL注入技术进行了深入的研究。本文阐述了 SQL注入攻击技术的产生背景,攻击原理,发展趋势以及针对SQL注入攻击的防御手段和防御系统的相关知识。作者开发了 一个包含新型SQL注入漏洞的Web应用,然后搭建测试环境,最后利用著名的注入工具SqlMap进行注入实验。通过对实验结果的分析揭示了这种以HTTP HEADER为途径的新型SQL注入攻击技术的原理及过程。针对此类新型注入攻击设计了一套名为HHSIDS(HttpHeader SQL Injection Defend System)的防御系统,最终使用 JAVA语言编码实现了该防御系统。HHSIDS防御系统的主要的防御目标是以HTTP HEADER为途径的新型SQL注入攻击。此外,对于普通的以GET或者POST为途径的SQL攻击,该防御系统也有着良好的防御效果。HHSIDS防御系统解决了传统防御系统无法有效防御的以HTTP HEADER为途径的SQL注入攻击问题。作者对HHSIDS防御系统进行了大量的SQL注入攻击实验,通过功能测试和性能测试两方面对防御系统的可靠性和鲁棒性进行了评估。实验数据显示该防御系统有着比较低的误报率和漏报率,对SQL注入攻击能够起到明显的防御效果,同时不会明显增加应用请求的响应延迟。该防御系统具有一定的应用价值。