[发明专利]一种代码注入检测方法、装置、电子设备及可读存储介质在审
申请号: | 202210099441.6 | 申请日: | 2022-01-27 |
公开(公告)号: | CN114500053A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 陈勇;马维士;刘加瑞 | 申请(专利权)人: | 安徽华云安科技有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L67/02 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 张文娥 |
地址: | 230094 安徽省合肥市高新区华*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 注入 检测 方法 装置 电子设备 可读 存储 介质 | ||
1.一种代码注入检测方法,其特征在于,包括:
获取用户端访问服务器时产生的HTTP流量中的指定字段,以将所述指定字段作为待检测字符串;
使用第一解码方式对所述待检测字符串进行第一解码,将第一解码结果作为第一字符串;所述第一解码方式对应的编码方式为第一编码方式;
使用第二解码方式对所述第一字符串进行第二解码,将第二解码结果作为第二字符串;其中,所述第二解码方式对应的编码方式为第二编码方式;所述第一编码方式和所述第二编码方式为绕过正则表达式检测的两种不同的编码方式;
使用所述待检测字符串对应的第三解码方式对所述第二字符串进行第三解码,得到第三字符串;
对所述第三字符串中的每个关键字进行PHP代码语义转义,生成所述第三字符串对应的目标特征串;
在PHP代码注入语义特征库中进行查询,若所述PHP代码注入语义特征库中存在所述目标特征串,则确定本次访问为PHP代码注入。
2.根据权利要求1所述代码注入检测方法,其特征在于,所述获取用户端访问服务器时产生的HTTP流量中的指定字段,以将所述指定字段作为待检测字符串之前,还包括:
获取所述用户端访问所述服务器时产生的所述HTTP流量;所述HTTP流量包括访问流量和响应流量;
使用HTTP协议对所述HTTP流量进行解析,得到目标字段;所述目标字段中包含多个所述指定字段。
3.根据权利要求1所述代码注入检测方法,其特征在于,所述第一编码方式为base64编码,所述第一解码方式为base64解码,所述第二编码方式为16进制编码,所述第二解码方式为16进制解码;
或者,
所述第一编码方式为16进制编码,所述第一解码方式为16进制解码,所述第二编码方式为base64编码,所述第二解码方式为base64解码。
4.根据权利要求1所述代码注入检测方法,其特征在于,所述使用第一解码方式对所述待检测字符串进行第一解码,将第一解码结果作为第一字符串,包括:
使用第一解码方式对所述待检测字符串进行第一解码,判断所述第一解码是否解码成功;
若所述第一解码成功,则将所述第一解码后得到的第一解码结果作为所述第一字符串;
若所述第一解码失败,则将所述待检测字符串作为所述第一字符串。
5.根据权利要求1所述代码注入检测方法,其特征在于,所述使用第二解码方式对所述第一字符串进行第二解码,将第二解码结果作为第二字符串,包括:
使用第二解码方式对所述第一字符串进行第二解码,判断所述第二解码是否解码成功;
若所述第二解码成功,则将第二解码后得到的第二解码结果作为所述第二字符串;
若所述第二解码失败,则将所述第一字符串作为所述第二字符串。
6.根据权利要求1所述代码注入检测方法,其特征在于,所述对所述待检测字符串中的每个关键字进行PHP代码语义转义,生成所述待检测字符串对应的目标特征串,包括:
识别所述待检测字符串中的目标空格;所述目标空格包括单独的一个空格或者连续的多个空格;
根据所述待检测字符串中的目标空格,对所述待检测字符串进行分词处理,得到所述待检测字符串对应的关键字集合;
针对所述关键字集合中的每个关键字,对该关键字进行PHP代码语义转义,生成该关键字对应的字符;
按照各个所述关键字在所述待检测字符串中的排列顺序,对所述字符进行拼接,生成所述目标特征串。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽华云安科技有限公司,未经安徽华云安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210099441.6/1.html,转载请声明来源钻瓜专利网。