发明名称 一种WebShell文件的检测方法和装置
摘要 本发明公布了一种WebShell检测方法和装置,所述检测方法基于变量回溯和抽象语法树,针对目录中的多个文件进行WebShell检测,包括可疑文件筛选过程、特征匹配检测过程、抽象语法树分析检测过程、无关代码剔除过程和数学公式检测过程,输出确定的WebShell文件。检测装置包括:可疑文件筛选单元、特征匹配单元、抽象语法树检测分析单元、剔除无关代码单元和数学公式检测单元;通过这些单元实现对WebShell文件的检测。利用本发明技术方案,能够很全面、系统地、快速、精确地对WebShell进行检测,检测效率高、误报率低,从而保证Web服务的安全。
申请公布号 CN106572117A 申请公布日期 2017.04.19
申请号 CN201610995538.X 申请日期 2016.11.11
申请人 北京安普诺信息技术有限公司 发明人 张涛;宁戈;高申
分类号 H04L29/06(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 北京万象新悦知识产权代理事务所(普通合伙) 11360 代理人 黄凤茹
主权项 一种WebShell检测方法,所述检测方法基于变量回溯和抽象语法树,针对目录中的多个文件进行WebShell检测,包括可疑文件筛选过程、特征匹配检测过程、抽象语法树分析检测过程、无关代码剔除过程和数学公式检测过程,输出确定的WebShell文件;依次包括如下步骤:A.可疑文件筛选过程:读取网站目录中文件,通过筛选过滤出可疑文件,得到可疑文件集T:B.特征匹配检测过程:对筛选出的可疑文件集T,将T中的可疑文件与常见WebShell特征库H进行特征匹配检测,将匹配成功的文件识别为WebShell文件;将匹配不成功的剩余文件记为可疑文件集Q,再进行抽象语法树分析检测过程;C.抽象语法树分析检测过程包括如下步骤:C1.对于可疑文件集Q中加密、变形的可疑文件进行变量回源、函数回源或解码操作;C2.利用抽象语法树分析所述疑文件集Q中的可疑文件;C3.将所述疑文件集Q中的可疑文件与特征库I进行匹配;所述特征库I是通过对WebShell文件经常利用的函数进行抽取形成的特征库;将匹配成功的文件识别为WebShell文件;将匹配不成功的剩余文件记为可疑文件集S,再进行无关代码剔除过程;D.无关代码剔除过程:读取可疑文件集S中的可疑文件,剔除出无关代码;将所述剔除出无关代码之后的文件,再与特征库K进行匹配;所述特征库K具体是对已知的WebShell文件进行源码分析,剔除出无关代码后而形成;将匹配成功的文件识别为WebShell文件;将匹配不成功的剩余文件记为可疑文件集R,再进行数学公式检测过程;E.数学公式检测过程,具体包括以下步骤:E1.根据信息熵ie、最长单词数lw和重合指数ic,计算得到可疑文件集R中的文件的代码混淆程度值;E2.设定混淆程度阈值,当文件的代码混淆程度值大于所述设定的混淆程度阈值时,将该文件识别为WebShell文件;反之,将该文件识别为不是WebShell文件;至此完成检测,输出确定的WebShell文件。
地址 100085 北京市海淀区信息路科实大厦B座6层A2室