针对被请求字符串的鉴定方法、系统、装置和存储介质与流程

文档序号:17179969发布日期:2019-03-22 20:48阅读:288来源:国知局
针对被请求字符串的鉴定方法、系统、装置和存储介质与流程

本发明涉及信息安全技术领域,尤其是针对被请求字符串的鉴定方法、系统、装置和存储介质。



背景技术:

计算机系统和互联网系统进行着大量的数据交换,这些数据的主要表现形式是字符串。例如在使用超文本传输协议(http)实现客户机与服务器之间的通信时,通常使用post和get指令,从而在客户机和服务器之间进行被请求-响应。get指令用于从指定的资源被请求数据,post指令用于向指定的资源提交要被处理的数据,get指令和post指令针对的数据都是以字符串的形式存在的。

在实际网络环境中,存在大量的非法字符串,这些非法字符串中包含有非法字符,这些非法字符对于计算机系统来说是没有意义的,当包含非法字符的字符串被读取、写入或执行时,由于计算机系统的程序环境不能适配这些非法字符,容易因读写失败、产生乱码或陷入死循环等造成系统崩溃。如果被不法分子利用上述技术缺陷,将会造成大规模的网络瘫痪,造成严重的经济损失。



技术实现要素:

为了解决上述技术问题,本发明的目在于提供针对被请求字符串的鉴定方法、系统、装置和存储介质。

本发明所采取的第一技术方案是:

针对被请求字符串的鉴定方法,包括以下步骤:

根据字符串读写请求,加载目标字符串;

将目标字符串中的各元素提取出来,分别判断各元素是否属于标准字符集内的字符,并对判断结果进行统计;

如果目标字符串中超过预定数量的元素被判断为异常元素,且各异常元素在目标字符串中的位置符合预设的关系,则判断目标字符串是可疑字符串,否则判断目标字符串是安全字符串;所述异常元素为不属于标准字符集内字符的元素。

进一步地,当判断目标字符串是安全字符串时,执行相应操作以响应字符串读写请求。

进一步地,当判断目标字符串是安全字符串时,执行以下步骤:

加载目标字符串中各异常元素所属的非标准字符集;

根据非标准字符集与标准字符集之间预设的映射关系,将目标字符串中各异常元素替换为标准字符集中相应的字符;

执行相应操作以响应字符串读写请求。

进一步地,所述执行相应操作以响应字符串读写请求这一步骤,具体包括:

检测目标字符串的类型;

当判断目标字符串属于常量时,根据字符串读写请求对目标字符串进行读取或写入;

当判断目标字符串属于变量时,根据当前赋值条件对目标字符串中的各元素进行赋值,根据赋值后的目标字符串生成内容相同的字符串常量,根据字符串读写请求对字符串常量进行读取或写入。

进一步地,当判断目标字符串是可疑字符串时,拒绝响应字符串读写请求。

进一步地,在拒绝响应字符串读写请求后,还将字符串读写请求的来源标记为可疑。

进一步地,当判断目标字符串是可疑字符串时,执行以下步骤:

将目标字符串中异常元素全部删除;

执行相应操作以响应字符串读写请求。

本发明所采取的第二技术方案是:

针对被请求字符串的鉴定系统,包括:

字符串加载模块,用于根据字符串读写请求,加载目标字符串;

字符串处理模块,用于将目标字符串中的各元素提取出来,分别判断各元素是否属于标准字符集内的字符,并对判断结果进行统计;

字符串判断模块,用于如果目标字符串中超过预定数量的元素被判断为异常元素,且各异常元素在目标字符串中的位置符合预设的关系,则判断目标字符串是可疑字符串,否则判断目标字符串是安全字符串;所述异常元素为不属于标准字符集内字符的元素。

本发明所采取的第三技术方案是:

针对被请求字符串的鉴定装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行第一技术方案所述方法。

本发明所采取的第四技术方案是:

存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行第一技术方案所述方法。

本发明的有益效果是:在接收到字符串读写请求并明确相应的目标字符串时,对目标字符串进行检查,可以快速识别目标字符串中存在的异常字符并进行处理,避免系统因无法正确识别和处理异常字符而发生不良后果;无需使用杀毒程序对所有字符串进行扫描,提高工作效率,避免过多占用网络资源;可以对目标字符串中存在的异常元素进行自动修复或删除等处理,避免因存在异常元素而对整个计算机系统或网络系统带来冲击。

附图说明

图1为本发明方法流程图。

具体实施方式

本发明针对被请求字符串的鉴定方法,参照图1,包括以下步骤:

根据字符串读写请求,加载目标字符串;

将目标字符串中的各元素提取出来,分别判断各元素是否属于标准字符集内的字符,并对判断结果进行统计;

如果目标字符串中超过预定数量的元素被判断为异常元素,且各异常元素在目标字符串中的位置符合预设的关系,则判断目标字符串是可疑字符串,否则判断目标字符串是安全字符串;所述异常元素为不属于标准字符集内字符的元素。

字符串读写请求具体包括字符串读取请求和字符串写入请求,其中字符串读取请求是要从本地读取特定的字符串并发送到指定的网络地址,例如post指令;字符串写入请求是要将特定的字符串写入到本地,例如get指令。无论是字符串读取请求和字符串写入请求,本发明方法都只是对相应的字符串进行处理,不涉及对字符串读取请求或字符串写入请求本身的改进。

计算机系统的字符集包括ascii、eascii、gb2312、gbk、unicode和big5等。在绝大多数开发环境中,只使用到其中一部分字符集,一般使用ascii字符集。本发明方法中的标准字符集指的是开发环境中使用到或进行了定义的字符集,例如ascii字符集,而本发明方法中的非标准字符集指的是标准字符集以外的字符集,即未使用到或者没有定义的字符集。非标准字符集中的字符在开发环境中将成为乱码,甚至会影响程序的运行。在正常开发条件下,程序员进行编程时或计算机程序运行时产生的字符串一般只涉及标准字符集,只有少数必要的情景下才需要用到非标准字符集,因此当目标字符串中的元素为异常元素(即元素属于非标准字符集),并且异常元素的数量和位置满足一定关系时,可以认为目标字符串是不安全的,即可疑的。

判断目标字符串可疑的具体标准可以是:当目标字符串中异常元素的总数超过预设标准时判断可疑;也可以是当目标字符串中如果存在连续多个异常元素,且连续多个异常元素的总数超过预设标准时判断可疑。

如果不足以判断目标字符串可疑,那么就判断目标字符串是安全字符串。

当判断目标字符串是安全字符串时,作为第一种优选的实施方式,可以直接执行相应操作以响应字符串读写请求。具体为,根据字符串读取请求,读取目标字符串并发送到相应网络地址;或者根据字符串写入请求,将获取到的目标字符串写入到服务器中。

当判断目标字符串是安全字符串时,作为第二种优选的实施方式,执行以下步骤:

加载目标字符串中各异常元素所属的非标准字符集;

根据非标准字符集与标准字符集之间预设的映射关系,将目标字符串中各异常元素替换为标准字符集中相应的字符;

执行相应操作以响应字符串读写请求。

在上述第二种优选的实施方式中,执行相应操作以响应字符串读写请求前,首先对目标字符串中的异常元素进行更正操作。这一更正操作的原理基础为:根据判断目标字符串安全或可疑的标准,当目标字符串被判断为安全时,表明目标字符串中所包含的异常元素较少,即异常元素不影响目标字符串的表达,属于程序员的输入差错或者计算机程序识别差错。例如,ascii字符集中的英文字母“a”容易被错写为eascii字符集中的希腊字母“α”,ascii字符集中的英文字母“b”容易被错写为eascii字符集中的希腊字母“β”。如果在开发环境中ascii字符集为标准字符集、eascii字符集为非标准字符集,那么可以预先建立eascii字符集与ascii字符集之间的映射关系,将eascii字符集中的希腊字母“α”映射到ascii字符集中的英文字母“a”,将eascii字符集中的希腊字母“β”映射到ascii字符集中的英文字母“b”,从而实现自动纠错。

进一步作为优选的实施方式,在上述第一种和第二种优选的实施方式中,所述执行相应操作以响应字符串读写请求这一步骤,具体包括:

检测目标字符串的类型;

当判断目标字符串属于常量时,根据字符串读写请求对目标字符串进行读取或写入;

当判断目标字符串属于变量时,根据当前赋值条件对目标字符串中的各元素进行赋值,根据赋值后的目标字符串生成内容相同的字符串常量,根据字符串读写请求对字符串常量进行读取或写入。

在所述执行相应操作以响应字符串读写请求这一步骤中,如果目标字符串本身属于常量,则表明目标字符串的内容是不可更改的,可以直接根据字符串读写请求对目标字符串进行读取或写入。如果目标字符串属于变量,则根据该目标字符串相应的赋值条件,在当前参数下对目标字符串中的各元素进行赋值,从而确定目标字符串的具体内容,然后对目标字符串进行复制操作,从而得到内容完全相同的字符串常量,相当于将赋值后目标字符串的内容固定下来,然后根据字符串读写请求对字符串常量进行读取或写入。通过上述对目标字符串的操作,可以确定目标字符串的内容,避免其内容被篡改,进一步确保信息安全。

当判断目标字符串是可疑字符串时,作为第一种优选的实施方式,可以直接拒绝响应字符串读写请求。进一步地,在拒绝响应字符串读写请求后,还将字符串读写请求的来源标记为可疑,当这一来源以后再发送字符串读写请求或者其他请求时,可以快速识别出来,并进行特殊处理,避免网络系统受到恶意操作者的破坏。

当判断目标字符串是可疑字符串时,作为第二种优选的实施方式,执行以下步骤:

将目标字符串中异常元素全部删除;

执行相应操作以响应字符串读写请求。

在上述第二种优选的实施方式中,将将目标字符串中异常元素全部删除,保留目标字符串中的其他元素,可以去除异常元素带来的影响,然后根据字符串读写请求,对删除异常元素之后的目标字符串进行读取或写入。通过上述操作,可以避免异常元素的影响,同时不妨碍对字符串读写请求的响应,减少因目标字符串中携带异常元素而对整个计算机系统或网络系统带来的冲击。

本发明还包括针对被请求字符串的鉴定系统,包括:

字符串加载模块,用于根据字符串读写请求,加载目标字符串;

字符串处理模块,用于将目标字符串中的各元素提取出来,分别判断各元素是否属于标准字符集内的字符,并对判断结果进行统计;

字符串判断模块,用于如果目标字符串中超过预定数量的元素被判断为异常元素,且各异常元素在目标字符串中的位置符合预设的关系,则判断目标字符串是可疑字符串,否则判断目标字符串是安全字符串;所述异常元素为不属于标准字符集内字符的元素。

本发明系统中的各模块可以是计算机程序模块,也可以是具有相应功能的硬件设备。

本发明还包括针对被请求字符串的鉴定装置,所述装置包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行本发明方法。

本发明装置可以使用个人计算机实现。

本发明还包括存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行本发明方法。

本发明存储介质的硬件部分可以是机械硬盘、固态硬盘或者u盘等,根据本发明方法进行编程后,将所得的计算机程序代码写入机械硬盘等硬件中便能得到本发明存储介质。

综上,本发明的有益效果是:

在接收到字符串读写请求并明确相应的目标字符串时,对目标字符串进行检查,可以快速识别目标字符串中存在的异常字符并进行处理,避免系统因无法正确识别和处理异常字符而发生不良后果;

无需使用杀毒程序对所有字符串进行扫描,提高工作效率,避免过多占用网络资源;

可以对目标字符串中存在的异常元素进行自动修复或删除等处理,避免因存在异常元素而对整个计算机系统或网络系统带来冲击。

以上是对本发明的较佳实施进行了具体说明,但对本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1