WebShell检测方法、装置及系统制造方法及图纸

技术编号:15847074 阅读:42 留言:0更新日期:2017-07-18 19:59
本发明专利技术公开了一种WebShell检测方法,应用于服务器,所述方法包括:接收终端上传的脚本文件;采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。本发明专利技术还公开了一种WebShell检测装置及系统。本发明专利技术由服务器采用静态数据流分析方式和统计及/或语义特征分析方式等高级检测方式对脚本文件进行分析检测,使得WebShell的检测更加准确。

【技术实现步骤摘要】
WebShell检测方法、装置及系统
本专利技术涉及信息安全
,尤其涉及一种WebShell检测方法、装置及系统。
技术介绍
WebShell是网络上最主要的安全威胁之一,黑客利用漏洞上传特定文件到Web站点目录,可以获取对目标主机的长期访问权限,从而造成系统破坏,以及盗取机密信息等一系列恶性入侵事件。传统的WebShell检测方式主要有两种:1)由终端从规则角度去检测,若规则匹配已知WebShell以减少误报,就容易导致未知WebShell的检测能力下降,若规则匹配未知的WebShell以提升识别率,就容易导致误报增多。2)由服务器从流量内容的角度去检测,由于WebShell作为一种攻击手段,可以通过加密、混淆会话内容等手段增强隐蔽性。因此,由终端从规则的角度,或由服务器从流量内容的角度去判断,对WebShell检测的准确性都较低。
技术实现思路
本专利技术的主要目的在于提出一种WebShell检测方法、装置及系统,旨在解决传统的WebShell检测方式,准确性较低的技术问题。为实现上述目的,本专利技术提供的一种WebShell检测方法,应用于服务器,所述WebShell检测方法包括:接收终端上传的脚本文件;采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。优选地,所述静态数据流分析方式为:采用预设的风险函数和风险变量,对接收到的脚本文件对应的自定义函数和变量进行推导得到推导信息,并利用所述风险函数和风险变量以及所述推导信息对所述脚本文件进行分析;所述统计及/或语义特征分析方式为:预先从被标记脚本文件的语法树中提取多维度特征,并基于机器学习算法预先训练得到的训练模型对接收到的脚本文件对应的多维度特征进行分析。优选地,所述根据两个分析结果,确定所述脚本文件是否为WebShell文件的步骤包括:在两个分析结果皆是脚本文件异常时,通知所述终端上传所述脚本文件关联的Web访问日志和访问统一资源定位符URL;在接收到的所述Web访问日志中进行特征提取,并将提取的特征输入到预设的检测模型中,以得到检测结果;及采用所述语法树中提取的风险参数对接收到的所述访问URL进行修饰,以构造出特定访问URL,向所述特定访问URL发起访问请求以得到检测结果;若两个检测结果都无误,则确定所述脚本文件为WebShell文件。优选地,所述向所述特定访问URL发起访问请求以得到检测结果的步骤之后,所述WebShell检测方法还包括:若两个检测结果中存在误判,则转移至线下的人工审核,以由人工审核确定所述脚本文件是否为WebShell文件。此外,为实现上述目的,本专利技术还提出一种WebShell检测装置,应用于服务器,所述WebShell检测装置包括:接收模块,用于接收终端上传的脚本文件;分析模块,用于采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;处理模块,用于根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。优选地,所述静态数据流分析方式为:采用预设的风险函数和风险变量,对接收到的脚本文件对应的自定义函数和变量进行推导得到推导信息,并利用所述风险函数和风险变量以及所述推导信息对所述脚本文件进行分析;所述统计及/或语义特征分析方式为:预先从被标记脚本文件的语法树中提取多维度特征,并基于机器学习算法预先训练得到的训练模型对接收到的脚本文件对应的多维度特征进行分析。优选地,所述处理模块包括:通知单元,用于在两个分析结果皆是脚本文件异常时,通知所述终端上传所述脚本文件关联的Web访问日志和访问统一资源定位符URL;提取输入单元,用于在接收到的所述Web访问日志中进行特征提取,并将提取的特征输入到预设的检测模型中,以得到检测结果;及构造访问单元,用于采用所述语法树中提取的风险参数对接收到的所述访问URL进行修饰,以构造出特定访问URL,向所述特定访问URL发起访问请求以得到检测结果;第一确定单元,用于若两个检测结果都无误,则确定所述脚本文件为WebShell文件。优选地,所述处理模块还包括:转移单元,用于若两个检测结果中存在误判,则转移至线下的人工审核,以由人工审核确定所述脚本文件是否为WebShell文件。此外,为实现上述目的,本专利技术还提出一种WebShell检测系统,所述WebShell检测包括终端和服务器,所述服务器如上文所述的WebShell检测装置,所述终端包括:预处理模块,用于对脚本文件进行预处理,以过滤掉非脚本标签内容;计算筛选模块,用于采用模糊哈希算法计算出所述脚本文件的模糊哈希值,并将计算的所述模糊哈希值与指纹库中预存脚本文件的模糊哈希值进行比对,以筛选出与预存脚本文件不匹配的脚本文件;判断模块,用于采用预置的规则对筛选出的脚本文件进行分析,以判断筛选出的所述脚本文件是否为可疑的脚本文件;上传模块,用于若筛选出的所述脚本文件为可疑的脚本文件,则将所述脚本文件上传至所述服务器。优选地,所述判断模块包括:比对单元,用于将所述规则中的各个预存字符串与筛选出的所述脚本文件进行比对;处理单元,用于统计各个预存字符串与所述脚本文件的匹配次数,并结合各个预存字符串对应的权重计算所述脚本文件的总得分;第二确定单元,还用于在所述总得分达到预设阈值时,确定所述脚本文件为可疑的脚本文件。优选地,所述上传模块,还用于在接收到所述服务器基于所述脚本文件可疑所发送的通知信息时,上传所述脚本文件关联的Web访问日志和访问URL至所述服务器。本专利技术提出的WebShell检测方法、装置及系统,服务器接收到终端上传的脚本文件,然后采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果,最终根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。本专利技术由服务器采用静态数据流分析方式和统计及/或语义特征分析方式等高级检测方式对脚本文件进行分析检测,相对于终端中的规则检测,检测的方式更加复杂,并且不依赖可被加密、混淆的流量内容,从而提高了WebShell检测的准确性。附图说明图1为本专利技术WebShell检测方法较佳实施例的流程示意图;图2为图1中步骤S30的细化流程示意图;图3为本专利技术较佳实施场景示意图;图4为本专利技术WebShell检测装置较佳实施例的功能模块示意图;图5为图4中处理模块30的细化功能模块示意图;图6为本专利技术WebShell检测系统较佳实施例的功能模块示意图;图7为图6中判断模块60的细化功能模块示意图。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例的解决方案主要是:服务器接收终端上传的脚本文件,然后采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果,最终根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。以解决传统的WebShell检测方式,仅从规则或流量内容的角度去判断,难以判定请求是本文档来自技高网...
WebShell检测方法、装置及系统

【技术保护点】
一种WebShell检测方法,其特征在于,应用于服务器,所述WebShell检测方法包括:接收终端上传的脚本文件;采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。

【技术特征摘要】
1.一种WebShell检测方法,其特征在于,应用于服务器,所述WebShell检测方法包括:接收终端上传的脚本文件;采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。2.如权利要求1所述的WebShell检测方法,其特征在于,所述静态数据流分析方式为:采用预设的风险函数和风险变量,对接收到的脚本文件对应的自定义函数和变量进行推导得到推导信息,并利用所述风险函数和风险变量以及所述推导信息对所述脚本文件进行分析;所述统计及/或语义特征分析方式为:预先从被标记脚本文件的语法树中提取多维度特征,并基于机器学习算法预先训练得到的训练模型对接收到的脚本文件对应的多维度特征进行分析。3.如权利要求2所述的WebShell检测方法,其特征在于,所述根据两个分析结果,确定所述脚本文件是否为WebShell文件的步骤包括:在两个分析结果皆是脚本文件异常时,通知所述终端上传所述脚本文件关联的Web访问日志和访问统一资源定位符URL;在接收到的所述Web访问日志中进行特征提取,并将提取的特征输入到预设的检测模型中,以得到检测结果;及采用所述语法树中提取的风险参数对接收到的所述访问URL进行修饰,以构造出特定访问URL,向所述特定访问URL发起访问请求以得到检测结果;若两个检测结果都无误,则确定所述脚本文件为WebShell文件。4.如权利要求3所述的WebShell检测方法,其特征在于,所述向所述特定访问URL发起访问请求以得到检测结果的步骤之后,所述WebShell检测方法还包括:若两个检测结果中存在误判,则转移至线下的人工审核,以由人工审核确定所述脚本文件是否为WebShell文件。5.一种WebShell检测装置,其特征在于,应用于服务器,所述WebShell检测装置包括:接收模块,用于接收终端上传的脚本文件;分析模块,用于采用静态数据流分析方式和统计及/或语义特征分析方式,分别对接收到的脚本文件进行分析,得到两个分析结果;处理模块,用于根据两个分析结果,确定所述脚本文件是否为WebShell文件,并执行相应的反馈操作至所述终端。6.如权利要求5所述的WebShell检测装置,其特征在于,所述静态数据流分析方式为:采用预设的风险函数和风险变量,对接收到的脚本文件对应的自定义函数和变量进行推导得到推导信息,并利用所述风险函...

【专利技术属性】
技术研发人员:刘旭林瀚驰王大伟
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1