[发明专利]一种webshell检测方法及装置在审
申请号: | 202110687587.8 | 申请日: | 2021-06-21 |
公开(公告)号: | CN113591074A | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 徐国爱;徐国胜;程柏钧 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F21/55 | 分类号: | G06F21/55;G06F21/56;G06K9/62;G06F8/41 |
代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 徐雅琴 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 webshell 检测 方法 装置 | ||
1.一种webshell检测方法,其特征在于,包括:
利用代码训练集训练预训练模型,得到检测预训练模型;所述代码训练集包括token序列、字符串序列和代码标签集合;
将待测代码输入所述检测预训练模型,以输出代码检测结果。
2.根据权利要求1所述的方法,其特征在于,将待测代码输入所述检测预训练模型之前,还包括:
解析所述待测代码,得到token序列和字符串序列;
将所述token序列进行符号化处理,得到符号化处理后的token序列。
3.根据权利要求2所述的方法,其特征在于,所述token序列包括变量名和字符串常量;
将所述token序列进行符号化处理,包括:
将所述变量名转换为变量符号,不同变量名对应不同的变量符号;
将所述字符串常量转换为字符串符号,所有字符串对应相同的字符串符号。
4.根据权利要求2或3所述的方法,其特征在于,将待测代码输入所述检测预训练模型,以输出代码检测结果包括:
将所述符号化处理后的token序列与所述字符串序列拼接后,以输入序列输入所述检测预训练模型;
所述检测预训练模型对所述输入序列进行标注,得到聚合序列向量,将所述聚合序列向量输入分类器,以输出所述待测代码是否为webshell的预测结果。
5.根据权利要求1所述的方法,其特征在于,利用代码训练集训练预训练模型,得到检测预训练模型,包括:
给定代码标签集合,将所述token序列输入所述预训练模型,进行序列标注任务训练,得到预训练后的预训练模型;
以所述token序列和所述字符串序列为输入,对预训练后的预训练模型进行微调,得到所述检测预训练模型。
6.一种webshell检测装置,其特征在于,包括:
训练模块,用于利用代码训练集训练预训练模型,得到检测预训练模型;所述代码训练集包括token序列、字符串序列和代码标签集合;
预测模块,用于将待测代码输入所述检测预训练模型,以输出代码检测结果。
7.根据权利要求6所述的装置,其特征在于,还包括:
解析模块,用于解析所述待测代码,得到token序列和字符串序列;
预处理模块,用于将所述token序列进行符号化处理,得到符号化处理后的token序列。
8.根据权利要求7所述的装置,其特征在于,所述token序列包括变量名和字符串常量;
所述预处理模块,用于将所述变量名转换为变量符号,不同变量名对应不同的变量符号;以及将所述字符串常量转换为字符串符号,所有字符串对应相同的字符串符号。
9.根据权利要求7或8所述的装置,其特征在于,
所述预测模块,用于将所述符号化处理后的token序列与所述字符串序列拼接后,以输入序列输入所述检测预训练模型;所述检测预训练模型对所述输入序列进行标注,得到聚合序列向量,将所述聚合序列向量输入分类器,以输出所述待测代码是否为webshell的预测结果。
10.根据权利要求6所述的装置,其特征在于,
所述训练模块,用于给定代码标签集合,将所述代码序列输入所述预训练模型,进行序列标注任务训练,得到预训练后的预训练模型;以所述代码序列和所述字符串序列为输入,对预训练后的预训练模型进行微调,得到所述检测预训练模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110687587.8/1.html,转载请声明来源钻瓜专利网。