基于Web知识库的多层次Webshell防御研究
发布时间:2020-08-25 06:50
【摘要】:Web系统的广泛使用使得其安全性越来越被重视。攻击者对Web系统攻击成功后,通常会上传Webshell达到长久控制服务器的目的。因此,如何高效的检测Webshell成为Web安全领域热门的课题。本文从实验入手,选取十个使用率高的开源项目,并爬取了 1233个Webshell随机放置在这些项目中,然后分别利用动态和静态检测算法对Webshell进行检测。最终,得出当前检测算法的两个不足:泛化防御问题,无法对不同的Web系统进行针对性的防御,导致算法不同项目之间成功率差别很大;单层次防御问题,只在单一层面做防御,很容易被Webshell逃逸,导致检测率降低。针对这两个问题,本文提出基于Web知识库的多层次检测理论。从建立Web知识库入手,首先选取功能测试阶段产生的测试数据作为原始数据,然后,建立针对请求与响应的请求响应树,最后,在文件树的基础上扩展请求响应树形成描述该Web系统的知识库。围绕Web知识库,文章又从前期加固,中期防御和后期审计三个层次,建立对应的不同防御方法。实现了多层次防御系统。最后,利用对开源漏洞平台DVWA的防御,进行了本系统与其它检测算法的准确性对比,在准确性上能够提高15%左右,在误报率上能够降低5%左右。
【学位授予单位】:浙江大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP393.08
【图文】:
安全配置错误,敏感信息泄露,攻击检测与防护不足,跨站点请求伪造,使用含逡逑有己知漏洞的组件和未受有效保护的API列为Web系统10大最常见漏洞,各个逡逑常见漏洞所占比例如图1.1所示。攻击者利用这些漏洞控制服务器后,通常会向逡逑web服务器上传Webshell,以便对内网进行进一步渗透。Webshell是一种利用逡逑Web服务器支持的脚本语言执行服务器系统命令的方法。逡逑1逡逑
户的合法请求。逡逑通过统计,发现管理员请求的次数为75056远低于疑似攻击的次数413401,逡逑它们分部的折线图如图2.7所示。逡逑91逦7逡逑/逦-0-逦y=attack逡逑8邋-逦0邋6邋o逦p逦y=admin逡逑丨逡逑Serial逡逑图2.7管理员用户与攻击请求量对比逡逑可以看出,在实际运行环境中学习并建立知识库是比较困难的,主要存在两逡逑类问题:逡逑>用户访问频率无法确定。部分系统用户对系统的操作较少,这类型的逡逑请求甚至远远不如访问异常的请求多,学习起来很容易忽略,影响用逡逑户的正常使用;逡逑>自动化攻击频率和方式比较固定。在2.1.2节中已经提到,针对Web逡逑系统的攻击方式第一步是发现目标,而这一步中往往使用自动化的扫逡逑描工具,比如Burpsuit[?],Zaproxy[24]等,这就导致攻击数据通常是有逡逑22逡逑
继续考察实验结果,通过对比可以发现,静态检测方法和动态检测方法对于逡逑实际项目的检测成功率都不高。分别是71.23%和63.34%。但是,逃逸二者检测逡逑的Webshell各有不同。相同的概率仅为44.22%和34.73%。如图3.4所示。逡逑198逦295逡逑?态检》方法.逦动态栓a方法逡逑55.77%逦65.27%逡逑图3.4动态静态检测对比逡逑再去计算对每个项目的平均检测成功率:NeoPI概率为54.42%,Modsecurity逡逑概率为47.22%,计算每个Webshell平均逃逸率:NeoPI为52.44%,邋Modsecurity逡逑为邋47.1%。逡逑综合三个指标可以得出结论二:逡逑结论二:两种检测算法存在着互补关系,单一的检测算法准确性较低。逡逑事实上,静态检测算法可以看成是对系统运行后的安全审计,而动态检测可逡逑以看成是系统运行阶段的防御。可以认为单一层次的防御对Webshell的检测是有逡逑35逡逑
本文编号:2803398
【学位授予单位】:浙江大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP393.08
【图文】:
安全配置错误,敏感信息泄露,攻击检测与防护不足,跨站点请求伪造,使用含逡逑有己知漏洞的组件和未受有效保护的API列为Web系统10大最常见漏洞,各个逡逑常见漏洞所占比例如图1.1所示。攻击者利用这些漏洞控制服务器后,通常会向逡逑web服务器上传Webshell,以便对内网进行进一步渗透。Webshell是一种利用逡逑Web服务器支持的脚本语言执行服务器系统命令的方法。逡逑1逡逑
户的合法请求。逡逑通过统计,发现管理员请求的次数为75056远低于疑似攻击的次数413401,逡逑它们分部的折线图如图2.7所示。逡逑91逦7逡逑/逦-0-逦y=attack逡逑8邋-逦0邋6邋o逦p逦y=admin逡逑丨逡逑Serial逡逑图2.7管理员用户与攻击请求量对比逡逑可以看出,在实际运行环境中学习并建立知识库是比较困难的,主要存在两逡逑类问题:逡逑>用户访问频率无法确定。部分系统用户对系统的操作较少,这类型的逡逑请求甚至远远不如访问异常的请求多,学习起来很容易忽略,影响用逡逑户的正常使用;逡逑>自动化攻击频率和方式比较固定。在2.1.2节中已经提到,针对Web逡逑系统的攻击方式第一步是发现目标,而这一步中往往使用自动化的扫逡逑描工具,比如Burpsuit[?],Zaproxy[24]等,这就导致攻击数据通常是有逡逑22逡逑
继续考察实验结果,通过对比可以发现,静态检测方法和动态检测方法对于逡逑实际项目的检测成功率都不高。分别是71.23%和63.34%。但是,逃逸二者检测逡逑的Webshell各有不同。相同的概率仅为44.22%和34.73%。如图3.4所示。逡逑198逦295逡逑?态检》方法.逦动态栓a方法逡逑55.77%逦65.27%逡逑图3.4动态静态检测对比逡逑再去计算对每个项目的平均检测成功率:NeoPI概率为54.42%,Modsecurity逡逑概率为47.22%,计算每个Webshell平均逃逸率:NeoPI为52.44%,邋Modsecurity逡逑为邋47.1%。逡逑综合三个指标可以得出结论二:逡逑结论二:两种检测算法存在着互补关系,单一的检测算法准确性较低。逡逑事实上,静态检测算法可以看成是对系统运行后的安全审计,而动态检测可逡逑以看成是系统运行阶段的防御。可以认为单一层次的防御对Webshell的检测是有逡逑35逡逑
【参考文献】
相关期刊论文 前1条
1 胡建康;徐震;马多贺;杨婧;;基于决策树的Webshell检测方法研究[J];网络新媒体技术;2012年06期
本文编号:2803398
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2803398.html