基于云的webshell攻击检测方法、装置及网关的制作方法_4

文档序号:9380243阅读:来源:国知局
为webshell攻击文件。
[0107]进一步的,依据上述装置实施例,本发明实施例还提供了一种基于云的webshell攻击检测网关,该网关包括如图2或3所示的装置。
[0108]本发明实施例提供的基于云的webshell攻击检测网关,能够在外部向网站服务器发送脚本文件时,截获该脚本文件,并基于云平台先对该脚本文件进行特征变形痕迹的检测,再将改动过的特征语句进行还原,最后将还原后的特征语句与基本特征语句进行比较,若相同,贝1J判定该脚本文件为webshell攻击文件。与现有技术中仅进行基本特征语句的检测方法相比,本发明通过先将改动后的特征语句进行还原,使得被打乱的特征语句还原为原有的特征语句,再与基本特征语句进行比对,使得隐藏在脚本文件中的基本特征语句被检测出来,从而确定该脚本文件为webshell攻击文件。
[0109]本发明的实施例公开了:
[0110]Al、一种基于云的webshell攻击检测方法,所述方法包括:
[0111]截获向网站服务器发送的脚本文件;
[0112]基于云平台检测所述脚本文件中是否存在预设的特征变形痕迹,所述特征变形痕迹为对所述脚本文件中的特征语句进行形式改动所产生的痕迹;
[0113]若所述脚本文件中存在所述特征变形痕迹,则根据预设的还原规则对改动过的特征语句进行还原,所述还原规则为特征变形规则的逆规则;
[0114]检测还原后的特征语句是否与预设的基本特征语句相同,所述基本特征语句为攻击敏感语句;
[0115]若所述还原后的特征语句与所述基本特征语句相同,则确定所述脚本文件为webshell攻击文件。
[0116]A2、根据Al所述的方法,所述特征变形痕迹为以下一个或任意多个的组合:
[0117]注释语句、变量赋值字符、预设特征字符和预设特征函数名。
[0118]A3、根据A2所述的方法,若所述特征变形痕迹包括注释语句,则所述基于云平台检测所述脚本文件中是否存在预设的特征变形痕迹,包括:
[0119]基于所述云平台检测所述脚本文件中是否存在所述注释语句;
[0120]所述若所述脚本文件中存在所述特征变形痕迹,则根据预设的还原规则对改动过的特征语句进行还原,包括:
[0121]若所述脚本文件中存在所述注释语句,则将所述注释语句删除。
[0122]A4、根据A2所述的方法,若所述特征变形痕迹包括变量赋值字符,则所述基于云平台检测所述脚本文件中是否存在预设的特征变形痕迹,包括:
[0123]基于所述云平台检测所述脚本文件中是否存在所述变量赋值字符;
[0124]所述若所述脚本文件中存在所述特征变形痕迹,则根据预设的还原规则对改动过的特征语句进行还原,包括:
[0125]若所述脚本文件中存在所述变量赋值字符,则将被赋值的变量还原。
[0126]A5、根据A2所述的方法,若所述特征变形痕迹包括预设特征字符,则所述基于云平台检测所述脚本文件中是否存在预设的特征变形痕迹,包括:
[0127]基于所述云平台检测所述脚本文件中是否存在所述预设特征字符;
[0128]所述若所述脚本文件中存在所述特征变形痕迹,则根据预设的还原规则对改动过的特征语句进行还原,包括:
[0129]若所述脚本文件中存在所述预设特征字符,则将所述预设特征字符删除。
[0130]A6、根据A2所述的方法,若所述特征变形痕迹包括预设特征函数名,则所述基于云平台检测所述脚本文件中是否存在预设的特征变形痕迹,包括:
[0131]基于所述云平台检测所述脚本文件中是否存在所述预设特征函数名;
[0132]所述若所述脚本文件中存在所述特征变形痕迹,则根据预设的还原规则对改动过的特征语句进行还原,包括:
[0133]若所述脚本文件中存在所述预设特征函数名,则根据特征函数功能的逆功能对对应特征函数的语句进行还原。
[0134]A7、根据Al至A6中任一项所述的方法,在所述检测所述脚本文件中是否存在预设的特征变形痕迹之前,所述方法进一步包括:
[0135]向所述云平台获取所述特征变形痕迹、所述还原规则以及所述基本特征语句;
[0136]或者,通过所述云平台更新本地缓存的所述特征变形痕迹、所述还原规则以及所述基本特征语句。
[0137]A8、根据Al至A6中任一项所述的方法,在所述确定所述脚本文件为webshell攻击文件之后,所述方法进一步包括:
[0138]向所述云平台上报所述脚本文件。
[0139]B9、一种基于云的webshell攻击检测装置,所述装置包括:
[0140]截获单元,用于截获向网站服务器发送的脚本文件;
[0141]检测单元,用于基于云平台检测所述截获单元截获的所述脚本文件中是否存在预设的特征变形痕迹,所述特征变形痕迹为对所述脚本文件中的特征语句进行形式改动所产生的痕迹;
[0142]还原单元,用于当所述检测单元检测到所述脚本文件中存在所述特征变形痕迹时,根据预设的还原规则对改动过的特征语句进行还原,所述还原规则为特征变形规则的逆规则;
[0143]所述检测单元,还用于检测所述还原单元还原后的特征语句是否与预设的基本特征语句相同,所述基本特征语句为攻击敏感语句;
[0144]确定单元,用于当所述检测单元检测到所述还原后的特征语句与所述基本特征语句相同时,确定所述脚本文件为webshell攻击文件。
[0145]B10、根据B9所述的装置,所述检测单元检测的所述特征变形痕迹为以下一个或任意多个的组合:
[0146]注释语句、变量赋值字符、预设特征字符和预设特征函数名。
[0147]B11、根据BlO所述的装置,所述检测单元,包括:第一检测模块,用于当所述特征变形痕迹包括注释语句时,基于所述云平台检测所述脚本文件中是否存在所述注释语句;
[0148]所述还原单元,包括:
[0149]第一删除模块,用于当所述脚本文件中存在所述注释语句时,将所述注释语句删除。
[0150]B12、根据BlO所述的装置,所述检测单元,包括:
[0151]第二检测模块,用于当所述特征变形痕迹包括变量赋值字符时,基于所述云平台检测所述脚本文件中是否存在所述变量赋值字符;
[0152]所述还原单元,包括:
[0153]第一还原模块,用于当所述脚本文件中存在所述变量赋值字符时,将被赋值的变量还原。
[0154]B13、根据BlO所述的装置,所述检测单元,包括:
[0155]第三检测模块,用于当所述特征变形痕迹包括预设特征字符时,基于所述云平台检测所述脚本文件中是否存在所述预设特征字符;
[0156]所述还原单元,包括:
[0157]第二删除模块,用于当所述脚本文件中存在所述预设特征字符时,将所述预设特征字符删除。
[0158]B14、根据BlO所述的装置,所述检测单元,包括:
[0159]第四检测模块,用于当所述特征变形痕迹包括预设特征函数名时,基于所述云平台检测所述脚本文件中是否存在所述预设特征函数名;
[0160]所述还原单元,包括:
[0161]第二还原模块,当所述脚本文件中存在所述预设特征函数名时,根据特征函数功能的逆功能对对应特征函数的语句进行还原。
[0162]B15、根据B9至B14中任一项所述的装置,所述装置进一步包括:
[0163]获取单元,用于在所述检测单元检测所述脚本文件中是否存在预设的特征变形痕迹之前,向所述云平台获取所述特征变形痕迹、所述还原规则以及所述基本特征语句;
[0164]更新单元,用于在所述检测单元检测所述脚本文件中是否存在预设的特征变形痕迹之前,通过所述云平台更新本地缓存的所述特征变形痕迹、所述还原规则以及所述基本特征语句。
[0165]B16、根据B9至B14中任一项所述的装置,所述装置进一步包括:
[0166]上报单元,用于在所述确定单元确定所述脚本文件为webshell攻击文件之后,向所述云平台上报所述脚本文件。
[0167]C17、一种基于云的webshell攻击检测网关,所述网关包括如B9至B16中任一项所述的装置。
[0168]在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0169]可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
[0170]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[01
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1