程序文件检测方法、装置、电子设备及存储介质制造方法及图纸

技术编号:29330964 阅读:16 留言:0更新日期:2021-07-20 17:48
本申请公开了一种程序文件检测方法、装置、电子设备及存储介质,属于代码检测技术领域。所述方法由计算机设备执行,所述方法包括:获取待检测程序文件的文件内容,待检测程序文件是超级文本预处理语言PHP文件;获取目标关键字,目标关键字是PHP中目标函数的函数名;根据目标关键字,获取第一区域代码与第二区域代码,第一区域代码是文件内容中包含目标关键词的区域代码,第二区域代码是测试载荷代码中包含目标关键词的区域代码;根据第一区域代码与第二区域代码,检测待检测程序文件。本申请可以对利用目标关键词的不同类型的程序漏洞进行检测,从而提高了对待检测程序文件检测的灵活性。

【技术实现步骤摘要】
程序文件检测方法、装置、电子设备及存储介质
本申请实施例涉及代码检测
,特别涉及一种程序文件检测方法、装置、电子设备及存储介质。
技术介绍
随着科学技术的进步,人们在日常生活中使用计算机设备的频率越来越高,为防止计算机设备的程序文件包含有恶意程序而对计算机设备造成损失,这些程序文件的安全性一直备受人们关注。目前,超文本预处理语言(HypertextPreprocessor,PHP)已经成为互联网主要的开发语言之一。一般的计算机设备中会存在PHP文件,对于这些PHP文件进行程序漏洞检测的方式可以如下,计算机设备中可以设置有针对某个程序漏洞编写的一段检测代码,该检测代码在计算机设备中被包装为检测工具,从而实现在计算机设备中检测该程序漏洞。对于上述计算机设备中设置有针对性的检测工具的方案,其检测的程序漏洞的种类较为单一,导致进行程序漏洞检测时的灵活性低的问题。
技术实现思路
本申请实施例提供了一种程序文件检测方法、装置、电子设备及存储介质,可以避免在终端中设置针对性的检测工具,提高计算机设备对程序漏洞检测的灵活性。所述技术方案如下:一方面,本申请实施例提供了一种程序文件检测方法,所述方法由计算机设备执行,所述方法包括:获取待检测程序文件的文件内容,所述待检测程序文件是超级文本预处理语言PHP文件;获取目标关键字,所述目标关键字是PHP中目标函数的函数名;根据所述目标关键字,获取第一区域代码与第二区域代码,所述第一区域代码是所述文件内容中包含所述目标关键词的区域代码,所述第二区域代码是测试载荷代码中包含所述目标关键词的区域代码;根据所述第一区域代码与所述第二区域代码,检测所述待检测程序文件。另一方面,本申请实施例提供了一种程序文件检测装置,所述装置用于计算机设备中,所述装置包括:内容获取模块,用于获取待检测程序文件的文件内容,所述待检测程序文件是超级文本预处理语言PHP文件;关键字获取模块,用于获取目标关键字,所述目标关键字是PHP中目标函数的函数名;代码获取模块,用于根据所述目标关键字,获取第一区域代码与第二区域代码,所述第一区域代码是所述文件内容中包含所述目标关键词的区域代码,所述第二区域代码是测试载荷代码中包含所述目标关键词的区域代码;文件检测模块,用于根据所述第一区域代码与所述第二区域代码,检测所述待检测程序文件。另一方面,本申请实施例提供了一种电子设备,所述终端包含处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述一个方面所述的程序文件检测方法。另一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述一个方面的程序文件检测方法。本申请实施例提供的技术方案可以至少包含如下有益效果:通过计算机设备获取待检测程序文件的文件内容以及目标关键字,并根据目标关键字获取待检测程序文件的文件内容中包含该目标关键词的区域代码,以及根据该关键字获取测试载荷代码中包含该目标关键词的区域代码,通过获取到的待检测程序文件中的区域代码以及测试载荷代码中的区域代码检测待检测程序文件。当计算机设备需要对包含某个目标关键词的程序文件进行检测时,可以通过该目标关键词获取待检测程序文件中的区域代码以及测试载荷代码中的区域代码,进而对待检测程序文件进行检测,本申请可以对利用该目标关键词的不同类型的程序漏洞进行检测,从而提高了对待检测程序文件检测的灵活性。附图说明图1是本申请一示例性实施例提供的一种计算机设备的界面示意图;图2是本申请一示例性实施例提供的一种程序文件检测方法的方法流程图;图3是本申请一示例性实施例提供的一种程序文件检测方法的方法流程图;图4是本申请一示例性实施例涉及的一种第一界面的界面示意图;图5是本申请一示例性实施例涉及图4的一种第一界面的界面示意图;图6是本申请一示例性实施例涉及图4的另一种第一界面的界面示意图;图7是本申请一示例性实施例提供的程序文件检测装置的结构框图;图8是本申请一示例性实施例提供的一种服务器的结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请提供的方案,可以用于人们在日常生活中使用终端时,在终端中运行有应用程序的现实场景中,为了便于理解,下面首先对本申请实施例涉及的一些名词和应用场景进行简单介绍。漏洞:漏洞是在硬件、软件、协议的实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。其中,程序漏洞可以是指软件程序中程序代码的实现上存在的缺陷。序列化(Serialization):是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。之后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。反序列化:是序列化的逆过程。随着科学技术的发展,越来越多的计算机设备出现在人们的日常生活中,人们可以通过计算机设备进行工作、娱乐、学习等。计算机设备中信息的安全性备受人们关注。其中,计算机设备的不安全隐患大都是由计算机设备中各种各样的漏洞导致的,因此,对计算机设备中的漏洞检测是必不可少的。请参考图1,其示出了本申请一示例性实施例提供的一种计算机设备的界面示意图。如图1所示,其中包含了计算机设备110。可选的,计算机设备110可以是平板电脑、电子书阅读器、智能眼镜、智能手表、笔记本电脑、膝上型便携计算机和台式计算机等等。可选的,计算机设备110还可以是一台服务器,该服务器可以是一台服务器,或者由若干台服务器,或者是一个虚拟化平台,或者是一个云计算服务中心。可选的,计算机设备110中可以展示开发工具界面,程序开发人员可以在该界面中编写代码,创建一个对象。可选的,该对象可以是一段程序代码。并将创建的对象在计算机设备中序列化、执行等。或者,计算机设备也可以将自身中包含的程序代码直接执行。其中,计算机设备可以支持多种程序语言,比如,计算机设备可以支持Java语言、C语言、C++语言、PHP语言环境、本文档来自技高网...

【技术保护点】
1.一种程序文件检测方法,其特征在于,所述方法由计算机设备执行,所述方法包括:/n获取待检测程序文件的文件内容,所述待检测程序文件是超级文本预处理语言PHP文件;/n获取目标关键字,所述目标关键字是PHP中目标函数的函数名;/n根据所述目标关键字,获取第一区域代码与第二区域代码,所述第一区域代码是所述文件内容中包含所述目标关键词的区域代码,所述第二区域代码是测试载荷代码中包含所述目标关键词的区域代码;/n根据所述第一区域代码与所述第二区域代码,检测所述待检测程序文件。/n

【技术特征摘要】
1.一种程序文件检测方法,其特征在于,所述方法由计算机设备执行,所述方法包括:
获取待检测程序文件的文件内容,所述待检测程序文件是超级文本预处理语言PHP文件;
获取目标关键字,所述目标关键字是PHP中目标函数的函数名;
根据所述目标关键字,获取第一区域代码与第二区域代码,所述第一区域代码是所述文件内容中包含所述目标关键词的区域代码,所述第二区域代码是测试载荷代码中包含所述目标关键词的区域代码;
根据所述第一区域代码与所述第二区域代码,检测所述待检测程序文件。


2.根据权利要求1所述的方法,其特征在于,所述根据所述第一区域代码与所述第二区域代码,检测所述待检测程序文件,包括:
根据所述第一区域代码与所述第二区域代码,获取目标测试代码,所述目标测试代码是所述第一区域代码中包含的与所述第二区域代码不同的代码;
当获取到目标测试代码时,通过预设测试方式运行所述第一区域代码,获得检测结果。


3.根据权利要求2所述的方法,其特征在于,所述根据所述第一区域代码与所述第二区域代码,获取目标测试代码,包括:
检测所述第一区域代码与所述第二区域代码的语言逻辑,当所述第一区域代码与所述第二区域代码的语言逻辑不同时,获取所述目标测试代码;或者,
检测所述第一区域代码与所述第二区域代码的实现功能,当所述第一区域代码与所述第二区域代码的实现功能不同时,获取所述目标测试代码;或者,
检测所述第一区域代码与所述第二区域代码的语言逻辑,并检测所述第一区域代码与所述第二区域代码的实现功能,当所述第一区域代码与所述第二区域代码的语言逻辑不同,且所述第一区域代码与所述第二区域代码的实现功能不同时,获取所述目标测试代码。


4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述检测结果指示所述待检测程序文件未存在程序漏洞时,将所述第一区域代码添加至所述测试载荷代码中。


5.根据权利要求2所...

【专利技术属性】
技术研发人员:彭冬炜
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:广东;44

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

1