论文部分内容阅读
本文研究了Web应用的四种主流安全威胁:跨站脚本攻击(XSS)、SQL注入攻击、Shell注入攻击、Webshell运行攻击及其危害。针对这四种威胁,本文设计了一种新颖的Web应用安全增强系统,系统基于PHP内核实现访问控制,结合Web应用中的信息流和PHP内核的控制流,利用精确染色机制对外部输入数据做污点标记并动态追踪污点数据的流向,在含有污点数据输入和输出的危险API函数调用前先检测其操作数后执行,保证了数据的安全性;结合白名单机制对Web应用程序访问服务器端文件、应用程序、网络的行为进行审计,避免WebShell破坏服务器端文件,执行恶意程序,监听网络端口,劫持服务器。系统分为六部分:污点数据传播模块、SQL注入攻击防护模块、Shell注入攻击防护模块、XSS攻击防护模块、文件访问控制模块和应用程序访问控制模块。本文的创新点和贡献主要包括:1)引进了精确染色机制对外部输入的数据染色,并实现污点数据的动态传播,能够直观地区分外部输入数据,分析此类数据是否带有恶意是防护注入攻击、XSS攻击的关键;2)引进了白名单机制对Web应用程序操作服务器端文件、应用程序、网络的行为进行审计,有效地防护文件上传漏洞攻击和Webshell的威胁;对于一些基于云平台的Web应用,系统很难区别用户上传的脚本是否良性,本文设计的系统能很好地防范这类潜在的威胁;3)基于PHP内核实现访问控制,提出了危险API函数的概念,利用挂钩opcode处理函数的方式对危险API的调用必须先检测后执行:4)本文设计的系统对于Web应用的防护较全面,既能防护主流漏洞攻击,又能防护Webshell,可以限制Web应用的操作领域;该系统部署简单,运行时间开销低,没有明显的性能下降,不需要对Web应用的源代码做任何修改;本文提出的方案通用性很强,对于Python、Perl应用平台同样适用。本文第一章介绍了本文研究背景、主要工作和文章结构;第二章对上述四种主流的Web安全威胁进行了详细的研究、分析和举例;第三章着重研究了现有的Web应用安全防护方法并总结了各自的优劣;在第四章中引出了本文的设计方案。本文详细描述了系统的框架、实现技术原理、系统工作流程和实验结果。