CN115600199A - 安全评估的方法、装置、电子设备及计算机可读存储介质 - Google Patents
安全评估的方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115600199A CN115600199A CN202211194253.8A CN202211194253A CN115600199A CN 115600199 A CN115600199 A CN 115600199A CN 202211194253 A CN202211194253 A CN 202211194253A CN 115600199 A CN115600199 A CN 115600199A
- Authority
- CN
- China
- Prior art keywords
- component
- vulnerability
- code
- score
- abnormal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请属于计算机技术领域,公开了安全评估的方法、装置、电子设备及计算机可读存储介质,该方法包括,提取待评估的代码数据的目标依赖组件集合;从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;依赖组件为代码数据运行依赖的第三方的组件;基于漏洞组件,进行评估,获得漏洞组件评分;基于漏洞组件评分,获得安全评估结果。这样,通过组件匹配的方式,识别漏洞组件,并根据漏洞组件进行安全评估,提高了安全评估的效率以及准确率。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及安全评估的方法、装置、电子设备及计算机可读存储介质。
背景技术
随着互联网技术的发展,系统的代码数据的安全性也越来越重要。代码数据中包含研发人员编写的项目代码以及项目代码运行的依赖组件。依赖组件是第三方已经开发好的代码的函数库,项目代码在运行的过程中,可以直接调用第三方的组件执行相应的操作,以提高开发效率。
现有技术下,通常对代码数据中的项目代码以及依赖文件中的代码进行全面扫描,以检测项目代码以及依赖文中是否存在漏洞等。
但是,采用这种方式,需要对代码数据中的每一行代码均进行扫描以及检测,代码安全评估的效率较低。
发明内容
本申请实施例的目的在于提供安全评估的方法、装置、电子设备及计算机可读存储介质,用以在进行代码安全评估时,提高安全评估效率。
一方面,提供一种安全评估的方法,包括:
提取待评估的代码数据的目标依赖组件集合;
从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;依赖组件为代码数据运行依赖的第三方的组件;
基于漏洞组件,进行评估,获得漏洞组件评分;
基于漏洞组件评分,获得安全评估结果。
在上述实现过程中,通过组件匹配的方式,识别漏洞组件,并根据漏洞组件进行安全评估,提高了安全评估的效率以及准确率。
一种实施方式中,提取待评估的代码数据的目标依赖组件集合,包括:
获取代码数据关联存储的第一依赖组件集合;
对代码数据进行组件识别,获得识别出的第二依赖组件集合;
将第一依赖组件集合和第二依赖组件集合进行合并,获得目标依赖组件集合。
在上述实现过程中,通过不同方式获得依赖组件,提高了依赖组件提取的准确率。
一种实施方式中,基于漏洞组件,进行评估,获得漏洞组件评分,包括:
获取依赖组件总数,以及依赖组件权重;
获取漏洞组件的漏洞组件数量;
基于漏洞组件数量、依赖组件总数,以及依赖组件权重,获得漏洞组件评分,漏洞组件评分与漏洞组件数量以及依赖组件权重呈正相关,并与依赖组件总数呈负相关。
在上述实现过程中,根据依赖组件的比重以及权重,确定漏洞组件评分,提高了评分的准确度。
一种实施方式中,基于漏洞组件评分,获得安全评估结果,包括:
对代码数据中的项目代码进行安全评估,获得漏洞代码评分,项目代码为代码数据中除依赖组件之外的代码;
基于漏洞组件评分以及漏洞代码评分,获得安全评估结果。
在上述实现过程中,结合项目代码和依赖组件进行安全评估,提高了评估的覆盖面和精确度。
一种实施方式中,对代码数据中的项目代码进行安全评估,获得漏洞代码评分,包括:
对项目代码进行扫描,获得异常代码信息,异常代码信息包括异常代码函数以及异常代码特征;
基于异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分;
采用正则表达式,提取项目代码中的目标类型信息;
根据目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分;
采用测试程序,对项目代码进行编译测试,获得异常测试结果;
基于异常测试结果,以及异常测试权重,获得异常测试评分;
基于异常代码评分、目标信息评分以及异常测试评分,获得漏洞代码评分。
在上述实现过程中,采用不同维度进行安全评估,提高了评估准确度。
一方面,提供一种安全评估的装置,包括:
获取单元,用于提取待评估的代码数据的目标依赖组件集合;
筛选单元,用于从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;依赖组件为代码数据运行依赖的第三方的组件;
评估单元,用于基于漏洞组件,进行评估,获得漏洞组件评分;
获得单元,用于基于漏洞组件评分,获得安全评估结果。
一种实施方式中,获取单元用于:
获取代码数据关联存储的第一依赖组件集合;
对代码数据进行组件识别,获得识别出的第二依赖组件集合;
将第一依赖组件集合和第二依赖组件集合进行合并,获得目标依赖组件集合。
一种实施方式中,评估单元用于:
获取依赖组件总数,以及依赖组件权重;
获取漏洞组件的漏洞组件数量;
基于漏洞组件数量、依赖组件总数,以及依赖组件权重,获得漏洞组件评分,漏洞组件评分与漏洞组件数量以及依赖组件权重呈正相关,并与依赖组件总数呈负相关。
一种实施方式中,获得单元用于:
对代码数据中的项目代码进行安全评估,获得漏洞代码评分,项目代码为代码数据中除依赖组件之外的代码;
基于漏洞组件评分以及漏洞代码评分,获得安全评估结果。
一种实施方式中,获得单元用于:
对项目代码进行扫描,获得异常代码信息,异常代码信息包括异常代码函数以及异常代码特征;
基于异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分;
采用正则表达式,提取项目代码中的目标类型信息;
根据目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分;
采用测试程序,对项目代码进行编译测试,获得异常测试结果;
基于异常测试结果,以及异常测试权重,获得异常测试评分;
基于异常代码评分、目标信息评分以及异常测试评分,获得漏洞代码评分。
一方面,提供了一种电子设备,包括处理器以及存储器,存储器存储有计算机可读取指令,当计算机可读取指令由处理器执行时,运行如上述任一种安全评估的各种可选实现方式中提供的方法的步骤。
一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时运行如上述任一种安全评估的各种可选实现方式中提供的方法的步骤。
一方面,提供了一种计算机程序产品,计算机程序产品在计算机上运行时,使得计算机执行如上述任一种安全评估的各种可选实现方式中提供的方法的步骤。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种安全评估的方法的流程图;
图2为本申请实施例提供的一种安全评估的方法的详细流程图;
图3为本申请实施例提供的一种安全评估的装置的结构框图;
图4为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。
终端设备:可以是移动终端、固定终端或便携式终端,例如移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统设备、个人导航设备、个人数字助理、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,终端设备能够支持任意类型的针对用户的接口(例如可穿戴设备)等。
服务器:可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务以及大数据和人工智能平台等基础云计算服务的云服务器。
为了进行代码安全评估时,提高安全评估效率,本申请实施例提供了安全评估的方法、装置、电子设备及计算机可读存储介质。
参阅图1所示,为本申请实施例提供的一种安全评估的方法的流程图,应用于电子设备,电子设备可以为服务器,也可以为终端设备。该方法的具体实施流程如下:
步骤100:提取待评估的代码数据的目标依赖组件集合。
步骤101:从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件。依赖组件为代码数据运行依赖的第三方的组件。
步骤102:基于漏洞组件,进行评估,获得漏洞组件评分。
步骤103:基于漏洞组件评分,获得安全评估结果。
一种实施方式中,执行步骤100时,可以采用以下步骤:
S1001:获取代码数据关联存储的第一依赖组件集合。
需要说明的是,第一依赖组件集合是预先针对代码数据进行设置的。
S1002:对代码数据进行组件识别,获得识别出的第二依赖组件集合。
具体的,根据项目结构,扫描代码数据需要依赖的第三方的组件,获得第二依赖组件集合。
其中,第一依赖组件集合和第二依赖组件集合均为依赖组件的集合。
例如,依赖组件可以为:java的pom.xml、build.gradle,php的compose.json文件。
S1003:将第一依赖组件集合和第二依赖组件集合进行合并,获得目标依赖组件集合。
这是由于在研发过程中(代码编写过程中)通常会有用于存储依赖组件的文件,但是,为避免遗漏,因此,将预先关联存储的第一依赖组件集合和代码数据扫描获得的第二依赖组件集合进行合并即组件去重,以保证组件唯一性。
一种实施方式中,执行步骤101时,可以采用以下步骤:
S1011:获取漏洞组件库。
其中,漏洞组件库为收集的已公开的存在漏洞的不安全的依赖组件的集合。
S1012:将目标依赖组件集合中包含的依赖组件,与漏洞组件库中的依赖组件进行分别匹配(如,组件标识匹配或者组件版本比对等),获得匹配的漏洞组件。
一种实施方式中,执行步骤102时,可以采用以下步骤:
获取依赖组件总数,以及依赖组件权重;获取漏洞组件的漏洞组件数量;基于漏洞组件数量、依赖组件总数,以及依赖组件权重,获得漏洞组件评分,漏洞组件评分与漏洞组件数量以及依赖组件权重呈正相关,并与依赖组件总数呈负相关。
其中,依赖组件权重是根据漏洞危险等级确定的。
一种实施方式中,执行步骤103时,可以采用以下步骤:
S1031:对代码数据中的项目代码进行安全评估,获得漏洞代码评分,项目代码为代码数据中除依赖组件之外的代码;S1032:基于漏洞组件评分以及漏洞代码评分,获得安全评估结果。
一种实施方式中,执行S1031时,可以采用以下步骤:
S1031-1:对项目代码进行扫描,获得异常代码信息,异常代码信息包括异常代码函数以及异常代码特征;基于异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分。
具体的,对代码数据进行扫描,在扫描过程中,根据依赖组件目录以及依赖组件文件,对代码数据中的依赖组件目录和依赖组件文件中的依赖组件进行扫描,从而仅扫描项目代码,获得项目代码中的异常代码函数以及异常代码特征,并记录相应的异常代码信息位置。
其中,异常代码信息权重是根据漏洞危险等级确定的。
S1031-2:采用正则表达式,提取项目代码中的目标类型信息;根据目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分。
一种实施方式中,预先按照业务需求,配置正则表达式,并按照代码数据的系统结构,根据正则表达式,对代码文件进行信息提取,获得代码文件中的目标类型信息,获得目标类型信息的数量。进一步的,还可以标记非代码文件,并根据非代码文件的数量,对目标类型信息的数量进行更新。
其中,目标类型信息可以为内网地址、账号密码以及测试数据等敏感信息。目标数量阈值(如,200)可以根据实际应用场景进行设置,在此不作限制。目标信息权重是根据漏洞危险等级确定的。
需要说明的是,代码文件以及非代码文件均不包含依赖文件,非代码文件包括指定特殊文件,非代码文件可以为压缩包、开放源代码的版本控制系统(Subversion,svn)文件,以及隐藏文件(DS_Store)等。
S1031-3:对项目代码进行编译测试,获得异常测试结果;基于异常测试结果,以及异常测试权重,获得异常测试评分。
具体的,采用测试程序(如,静态应用程序安全测试代码)进行异常测试,获得异常测试结果(如,测试评分),并基于异常测试结果,以及异常测试权重的乘积,获得异常测试评分。
作为一个示例,测试程序可以为fortify程序。
其中,异常测试权重是根据漏洞危险等级确定的。
进一步的,获得检测出的漏洞函数(即异常)的位置以及名称。
S1031-4:基于异常代码评分、目标信息评分以及异常测试评分,获得漏洞代码评分。
具体的,基于异常代码评分、目标信息评分以及异常测试评分中的至少一个,获得漏洞代码评分。
需要说明的是,本申请实施例中,对S1031-1、S1031-2以及S1031-3的执行顺序不做限定,可以先后执行,也可以并行执行。
一种实施方式中,执行S1032时,可以采用以下步骤:
基于漏洞代码评分以及漏洞代码评分的和,获得安全评估结果。
进一步的,对检测出的漏洞组件、异常代码信息、目标类型信息以及异常测试结果进行去重。
进一步的,输出安全评估结果,还可以输出漏洞相关信息,即去重后的检测出的漏洞组件、异常代码信息、目标类型信息以及异常测试结果的详细信息,如,对应的文件名、函数名、代码行数以及漏洞类型等。
参阅图2所示,为一种安全评估的方法的详细实施流程图。结合图2对图1中的安全评估的方法进行举例说明,该方法的具体实施流程如下:
步骤200:系统初始化以及数据库更新。
一种实施方式中,系统启动,系统开启所有检测所需要的环境部署,且对不同的检测工具以及相关服务做检测,确保可以完成各项任务检测,以及,更新数据库中的漏洞信息。
一种实施方式中,数据库包括漏洞组件库,以及漏洞名称和等级等信息。
步骤201:获取待评估的代码数据,分别执行步骤202-步骤205。
一种实施方式中,用户登陆系统,根据项目需要创建任务,上传项目需要的基本数据项(即代码数据)。
步骤202:将漏洞组件库中的各依赖组件与代码数据中的依赖组件进行匹配,获得匹配的漏洞组件,并根据漏洞组件获得漏洞组件评分,执行步骤206。
步骤203:从代码数据中的项目代码中提取异常代码信息,并基于异常代码信息,获得异常代码评分,执行步骤206。
具体的,异常代码函数即为会造成危险的函数,异常代码即为会造成危险的代码。
进一步的,为提高异常代码信息识别的准确度,还可以通过人工对检测出的异常代码信息进行再次筛选。
步骤204:采用正则表达式,提取项目代码中的目标类型信息,并根据目标类型信息,获得目标信息评分,执行步骤206。
进一步的,还可以记录以及输出目标类型信息中包含的目标类型文件(如,敏感文件)的访问路径。
步骤205:采用测试程序,获得异常测试结果,并根据异常测试结果,获得异常测试评分。
一种实施方式中,通过测试程序对项目代码进行编译执行,并其执行过程中,进行测试,获得异常测试结果,以及根据漏洞危害以及漏洞利用难度设置异常测试权重,并根据异常测试结果,以及异常测试权重,获得异常测试评分。
进一步的,为提高异常测试结果的准确度,还可以通过人工对异常测试结果进行再次确认以及校对。
步骤206:根据漏洞代码评分、异常代码评分、目标信息评分以及异常测试评分,获得安全评估结果。
进一步的,还可以输出安全评估结果以及漏洞相关信息。
具体的,步骤200-步骤206的具体步骤参见上述步骤100-步骤103,在此不做赘述。
本申请实施例中,可以将漏洞组件库中与代码数据的依赖文件进行一一比对(如,名称或者版本)等,即可筛选出漏洞组件,不需要对代码数据中的每一行代码均进行扫描,避免了依赖组件扫描造成的耗时过长以及评估准确率低的问题,提高了安全评估效率,再者,还可以针对项目代码扫描目标类型信息(如,特殊文件),不需要针对依赖文件扫描目标类型文件,提高了效率,以及扫描目标类型信息还可以对漏洞信息扫描进行补充,提高了安全评估的覆盖面,以及,根据漏洞危险等级等信息(即对代码安全产生影响的因素),设置各权重,并基于权重,对多个维度的扫描结果,进行加权求和,获得安全评估结果,分析人员可以获得直观的代码安全的综合评价,为其分析以及评估代码系统提供了极大的便利减少了分析人员的分析消耗以及出错率。
基于同一发明构思,本申请实施例中还提供了一种安全评估的装置,由于上述装置及设备解决问题的原理与一种安全评估的方法相似,因此,上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图3所示,其为本申请实施例提供的一种安全评估的装置的结构示意图,包括:
获取单元301,用于提取待评估的代码数据的目标依赖组件集合;
筛选单元302,用于从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;依赖组件为代码数据运行依赖的第三方的组件;
评估单元303,用于基于漏洞组件,进行评估,获得漏洞组件评分;
获得单元304,用于基于漏洞组件评分,获得安全评估结果。
一种实施方式中,获取单元301用于:
获取代码数据关联存储的第一依赖组件集合;
对代码数据进行组件识别,获得识别出的第二依赖组件集合;
将第一依赖组件集合和第二依赖组件集合进行合并,获得目标依赖组件集合。
一种实施方式中,评估单元303用于:
获取依赖组件总数,以及依赖组件权重;
获取漏洞组件的漏洞组件数量;
基于漏洞组件数量、依赖组件总数,以及依赖组件权重,获得漏洞组件评分,漏洞组件评分与漏洞组件数量以及依赖组件权重呈正相关,并与依赖组件总数呈负相关。
一种实施方式中,获得单元304用于:
对代码数据中的项目代码进行安全评估,获得漏洞代码评分,项目代码为代码数据中除依赖组件之外的代码;
基于漏洞组件评分以及漏洞代码评分,获得安全评估结果。
一种实施方式中,获得单元304用于:
对项目代码进行扫描,获得异常代码信息,异常代码信息包括异常代码函数以及异常代码特征;
基于异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分;
采用正则表达式,提取项目代码中的目标类型信息;
根据目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分;
采用测试程序,对项目代码进行编译测试,获得异常测试结果;
基于异常测试结果,以及异常测试权重,获得异常测试评分;
基于异常代码评分、目标信息评分以及异常测试评分,获得漏洞代码评分。
本申请实施例提供的安全评估的方法、装置、电子设备及计算机可读存储介质中,提取待评估的代码数据的目标依赖组件集合;从目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;依赖组件为代码数据运行依赖的第三方的组件;基于漏洞组件,进行评估,获得漏洞组件评分;基于漏洞组件评分,获得安全评估结果。这样,通过组件匹配的方式,识别漏洞组件,并根据漏洞组件进行安全评估,提高了安全评估的效率以及准确率。
图4示出了一种电子设备4000的结构示意图。参阅图4所示,电子设备4000包括:处理器4010以及存储器4020,可选的,还可以包括电源4030、显示单元4040、输入单元4050。
处理器4010是电子设备4000的控制中心,利用各种接口和线路连接各个部件,通过运行或执行存储在存储器4020内的软件程序和/或数据,执行电子设备4000的各种功能,从而对电子设备4000进行整体监控。
本申请实施例中,处理器4010调用存储器4020中存储的计算机程序时执行上述实施例中的各个步骤。
可选的,处理器4010可包括一个或多个处理单元;优选的,处理器4010可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器4010中。在一些实施例中,处理器、存储器、可以在单一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
存储器4020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、各种应用等;存储数据区可存储根据电子设备4000的使用所创建的数据等。此外,存储器4020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。
电子设备4000还包括给各个部件供电的电源4030(比如电池),电源可以通过电源管理系统与处理器4010逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
显示单元4040可用于显示由用户输入的信息或提供给用户的信息以及电子设备4000的各种菜单等,本发明实施例中主要用于显示电子设备4000中各应用的显示界面以及显示界面中显示的文本、图片等对象。显示单元4040可以包括显示面板4041。显示面板4041可以采用液晶显示屏(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置。
输入单元4050可用于接收用户输入的数字或字符等信息。输入单元4050可包括触控面板4051以及其他输入设备4052。其中,触控面板4051,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触摸笔等任何适合的物体或附件在触控面板4051上或在触控面板4051附近的操作)。
具体的,触控面板4051可以检测用户的触摸操作,并检测触摸操作带来的信号,将这些信号转换成触点坐标,发送给处理器4010,并接收处理器4010发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板4051。其他输入设备4052可以包括但不限于物理键盘、功能键(比如音量控制按键、开关机按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
当然,触控面板4051可覆盖显示面板4041,当触控面板4051检测到在其上或附近的触摸操作后,传送给处理器4010以确定触摸事件的类型,随后处理器4010根据触摸事件的类型在显示面板4041上提供相应的视觉输出。虽然在图4中,触控面板4051与显示面板4041是作为两个独立的部件来实现电子设备4000的输入和输出功能,但是在某些实施例中,可以将触控面板4051与显示面板4041集成而实现电子设备4000的输入和输出功能。
电子设备4000还可包括一个或多个传感器,例如压力传感器、重力加速度传感器、接近光传感器等。当然,根据具体应用中的需要,上述电子设备4000还可以包括摄像头等其它部件,由于这些部件不是本申请实施例中重点使用的部件,因此,在图4中没有示出,且不再详述。
本领域技术人员可以理解,图4仅仅是电子设备的举例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
本申请实施例中,一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得通信设备可以执行上述实施例中的各个步骤。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种安全评估的方法,其特征在于,包括:
提取待评估的代码数据的目标依赖组件集合;
从所述目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;所述依赖组件为所述代码数据运行依赖的第三方的组件;
基于所述漏洞组件,进行评估,获得漏洞组件评分;
基于所述漏洞组件评分,获得安全评估结果。
2.如权利要求1所述的方法,其特征在于,所述提取待评估的代码数据的目标依赖组件集合,包括:
获取所述代码数据关联存储的第一依赖组件集合;
对所述代码数据进行组件识别,获得识别出的第二依赖组件集合;
将所述第一依赖组件集合和所述第二依赖组件集合进行合并,获得所述目标依赖组件集合。
3.如权利要求1所述的方法,其特征在于,所述基于所述漏洞组件,进行评估,获得漏洞组件评分,包括:
获取依赖组件总数,以及依赖组件权重;
获取所述漏洞组件的漏洞组件数量;
基于所述漏洞组件数量、所述依赖组件总数,以及所述依赖组件权重,获得漏洞组件评分,所述漏洞组件评分与所述漏洞组件数量以及依赖组件权重呈正相关,并与所述依赖组件总数呈负相关。
4.如权利要求1-3任一项所述的方法,其特征在于,所述基于所述漏洞组件评分,获得安全评估结果,包括:
对所述代码数据中的项目代码进行安全评估,获得漏洞代码评分,所述项目代码为所述代码数据中除依赖组件之外的代码;
基于所述漏洞组件评分以及所述漏洞代码评分,获得所述安全评估结果。
5.如权利要求4所述的方法,其特征在于,所述对所述代码数据中的项目代码进行安全评估,获得漏洞代码评分,包括:
对所述项目代码进行扫描,获得异常代码信息,所述异常代码信息包括异常代码函数以及异常代码特征;
基于所述异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分;
采用正则表达式,提取项目代码中的目标类型信息;
根据所述目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分;
采用测试程序,对所述项目代码进行编译测试,获得异常测试结果;
基于所述异常测试结果,以及异常测试权重,获得异常测试评分;
基于所述异常代码评分、所述目标信息评分以及所述异常测试评分,获得所述漏洞代码评分。
6.一种安全评估的装置,其特征在于,包括:
获取单元,用于提取待评估的代码数据的目标依赖组件集合;
筛选单元,用于从所述目标依赖组件集合中包含的依赖组件中,筛选出被漏洞组件库包含的漏洞组件;所述依赖组件为所述代码数据运行依赖的第三方的组件;
评估单元,用于基于所述漏洞组件,进行评估,获得漏洞组件评分;
获得单元,用于基于所述漏洞组件评分,获得安全评估结果。
7.如权利要求6所述的装置,其特征在于,所述获取单元用于:
获取所述代码数据关联存储的第一依赖组件集合;
对所述代码数据进行组件识别,获得识别出的第二依赖组件集合;
将所述第一依赖组件集合和所述第二依赖组件集合进行合并,获得所述目标依赖组件集合。
8.如权利要求7所述的装置,其特征在于,所述评估单元用于:
获取依赖组件总数,以及依赖组件权重;
获取所述漏洞组件的漏洞组件数量;
基于所述漏洞组件数量、所述依赖组件总数,以及所述依赖组件权重,获得漏洞组件评分,所述漏洞组件评分与所述漏洞组件数量以及依赖组件权重呈正相关,并与所述依赖组件总数呈负相关。
9.如权利要求6-8任一项所述的装置,其特征在于,所述获得单元用于:
对所述代码数据中的项目代码进行安全评估,获得漏洞代码评分,所述项目代码为所述代码数据中除依赖组件之外的代码;
基于所述漏洞组件评分以及所述漏洞代码评分,获得所述安全评估结果。
10.如权利要求9所述的装置,其特征在于,所述获得单元用于:
对所述项目代码进行扫描,获得异常代码信息,所述异常代码信息包括异常代码函数以及异常代码特征;
基于所述异常代码信息的数量、异常数量阈值以及异常代码信息权重,获得异常代码评分;
采用正则表达式,提取项目代码中的目标类型信息;
根据所述目标类型信息的数量、目标数量阈值以及目标信息权重,获得目标信息评分;
采用测试程序,对所述项目代码进行编译测试,获得异常测试结果;
基于所述异常测试结果,以及异常测试权重,获得异常测试评分;
基于所述异常代码评分、所述目标信息评分以及所述异常测试评分,获得所述漏洞代码评分。
11.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如权利要求1-5任一所述方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-5任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211194253.8A CN115600199A (zh) | 2022-09-28 | 2022-09-28 | 安全评估的方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211194253.8A CN115600199A (zh) | 2022-09-28 | 2022-09-28 | 安全评估的方法、装置、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115600199A true CN115600199A (zh) | 2023-01-13 |
Family
ID=84844765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211194253.8A Pending CN115600199A (zh) | 2022-09-28 | 2022-09-28 | 安全评估的方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115600199A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483733A (zh) * | 2023-06-12 | 2023-07-25 | 数据堂(北京)科技股份有限公司 | 多维度人工智能产品评测方法及装置 |
-
2022
- 2022-09-28 CN CN202211194253.8A patent/CN115600199A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483733A (zh) * | 2023-06-12 | 2023-07-25 | 数据堂(北京)科技股份有限公司 | 多维度人工智能产品评测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lin et al. | Automated forensic analysis of mobile applications on Android devices | |
US10534861B2 (en) | Automated term extraction | |
CN108431768B (zh) | 应用特征的受控部署 | |
US11036479B2 (en) | Devices, systems, and methods of program identification, isolation, and profile attachment | |
CN112491602A (zh) | 行为数据的监控方法、装置、计算机设备及介质 | |
CN110244963B (zh) | 数据更新方法、装置及终端设备 | |
CN115150261B (zh) | 告警分析的方法、装置、电子设备及存储介质 | |
CN104268473A (zh) | 应用程序检测方法和装置 | |
CN111654495B (zh) | 用于确定流量产生来源的方法、装置、设备及存储介质 | |
CN115600199A (zh) | 安全评估的方法、装置、电子设备及计算机可读存储介质 | |
CN115576600A (zh) | 基于代码变更的差异处理方法、装置、终端及存储介质 | |
CN108304697B (zh) | 检测app二次打包的方法、装置及移动终端 | |
CN113609479A (zh) | 一种文件检测的方法、装置、电子设备及可读存储介质 | |
CN104239112A (zh) | 一种设备驱动程序安装方法及装置 | |
CN111753330A (zh) | 数据泄露主体的确定方法、装置、设备和可读存储介质 | |
WO2023138923A1 (en) | Failure prediction using informational logs and golden signals | |
CN113656044B (zh) | 安卓安装包压缩方法、装置、计算机设备及存储介质 | |
CN113922998A (zh) | 一种漏洞风险评估方法、装置、电子设备及可读存储介质 | |
CN108874462A (zh) | 一种浏览器行为获取方法、装置、存储介质及电子设备 | |
CN114943978A (zh) | 一种表格重建的方法及电子设备 | |
CN113900956A (zh) | 测试用例的生成方法、装置、计算机设备及存储介质 | |
CN108875363B (zh) | 一种加速虚拟执行的方法、装置、电子设备及存储介质 | |
CN113110976A (zh) | 一种异常分析的方法、装置、电子设备及可读存储介质 | |
CN114969759B (zh) | 工业机器人系统的资产安全评估方法、装置、终端及介质 | |
CN113705722B (zh) | 一种操作系统版本识别的方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |