CN108667912A - 一种云资源分配方法及装置 - Google Patents
一种云资源分配方法及装置 Download PDFInfo
- Publication number
- CN108667912A CN108667912A CN201810366582.3A CN201810366582A CN108667912A CN 108667912 A CN108667912 A CN 108667912A CN 201810366582 A CN201810366582 A CN 201810366582A CN 108667912 A CN108667912 A CN 108667912A
- Authority
- CN
- China
- Prior art keywords
- data
- target
- target program
- value
- program
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种基于云资源分配方法及装置,方法包括:在对目标程序进行云模糊测试的过程中提取目标数据;对目标数据进行预处理,获得预处理数据;基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线;基于曲线和目标程序的模糊测试价值,确定目标程序的价值的大小;基于目标程序的价值的大小为目标程序分配云资源。本申请提供的云资源分配方法及装置可实现云资源的合理分配,从而提高漏洞的挖掘效率。
Description
技术领域
本发明涉及计算机安全技术领域,尤其涉及一种基于云资源分配方法及装置。
背景技术
随着计算机技术更加深入生活与工作,计算机安全问题也受到广泛关注。近些年来的攻击手段不断演化,从最初的栈溢出、堆溢出发展到现在的绕过地址随机化、绕过堆栈不可执行等等,最终达到控制用户机器,获取重要信息的目的,严重危害了用户的人身财产安全。软件设计以及技术上的漏洞为许多违法犯罪行为提供了途径,二进制漏洞则为当前最常见的漏洞。因此,对于二进制漏洞的挖掘测试具有十分重要的现实意义。
模糊测试是一种用于识别软件的程序错误以及漏洞的方法。模糊测试将随机的坏数据插入程序,观察程序能否容忍杂乱输入,从而进一步定位软件中缺陷的位置。模糊测试产生杂乱数据攻击程序,所以采用模糊测试攻击应用程序可发现其他采用逻辑思维来测试很难发现的安全漏洞。目前,模糊测试正向着云端迈进,相较于传统模糊测试方式,云端的模糊测试使得模糊测试速度加快也更加灵活。而提高漏洞的挖掘效率,合理的分配云资源成为漏洞挖掘的重要问题。
发明内容
有鉴于此,本发明提供了一种云资源的分配方法,用以实现云资源的合理分配,从而提高漏洞的挖掘效率,其技术方案如下:
一种云资源分配方法,包括:
在对目标程序进行云模糊测试的过程中提取目标数据;
对所述目标数据进行预处理,获得预处理数据;
基于所述预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线;
基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小;
基于所述目标程序的价值的大小为所述目标程序分配云资源。
其中,所述在对目标程序进行云模糊测试的过程中提取目标数据,包括:
基于用户需求对所述目标程序进行编译;
在对所述目标程序进行编译的过程中进行插桩;
对插桩后的目标程序进行云模糊测试;
在所述云模糊测试的过程中提取所述目标数据。
其中,所述预先建立所述曲线拟合模型的过程包括:
获取大量训练样本,所述训练样本为与样本程序对应的预处理数据,该预处理数据为在对所述样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到;
以预设判别标准为训练依据,用所述训练样本训练BP神经网络,获得所述曲线拟合模型。
其中,所述对所述目标数据进行预处理,获得预处理数据,包括:
对所述目标数据进行最大最小归一化处理,获得首次归一化数据;
若所述首次归一化数据满足预设条件,则将所述首次归一化数据作为所述预处理数据;
若所述首次归一化数据不满足所述预设条件,则进一步对所述首次归一化数据进行基于标准差的二次归一化处理,获得二次归一化数据,将所述二次归一化数据作为所述预处理数据。
其中,所述基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小,包括:
确定所述曲线的变化率,并基于目标参数确定所述目标程序的模糊测试价值,其中,所述目标参数与所述目标数据有关;
通过所述曲线的变化率和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小。
其中,所述基于所述目标程序的价值的大小,为所述目标程序分配云资源,包括:
根据所述目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值;
基于所述单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略,并基于所述资源分配策略为所述目标程序分配云资源。
一种云资源分配装置,包括:数据提取模块、数据预处理模块、曲线确定模块、价值确定模块和资源分配模块;
所述数据提取模块,用于在对目标程序进行模糊测试的过程中提取目标数据;
所述数据预处理模块,用于对所述目标数据进行预处理,获得预处理数据;
所述曲线确定模块,用于基于所述预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线;
所述价值评估模块,用于基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小;
所述资源分配模块,用于基于所述目标程序的价值的大小为所述目标程序分配云资源。
其中,所述云资源分配装置还包括:曲线拟合模型建立模块;
所述曲线拟合模型建立模块,用于获取大量训练样本,以预设判别标准为训练依据,用所述训练样本训练BP神经网络,获得所述曲线拟合模型,所述训练样本为与样本程序对应的预处理数据,该预处理数据为在对所述样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到。
其中,所述价值评估模块包括:变化率确定子模块和价值评估子模块;
所述变化率确定子模块,用于确定所述曲线的变化率,并基于目标参数确定所述目标程序的模糊测试价值,其中,所述目标参数与所述目标数据有关;
所述价值评估子模块,用于通过所述曲线的变化率和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小。
其中,所述资源分配模块包括:计算子模块、资源分配策略确定子模块和资源分配子模块;
所述计算子模块,用于根据所述目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值;
所述资源分配策略确定子模块,用于基于所述单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略;
所述资源分配子模块,用于基于所述资源分配策略为所述目标程序分配云资源。
上述技术方案具有如下有益效果:
本发明提供的云资源分配方法及装置,可在对目标程序进行云模糊测试的过程中提取目标数据,然后对目标数据进行预处理,获得预处理数据,接着基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线,基于曲线和目标程序的模糊测试价值,确定目标程序的价值的大小,最后基于目标程序的价值的大小为目标程序分配资源。本发明提供的云资源分配方法及装置能够基于云模糊测试价值评估实现云资源的合理分配,从而提高漏洞的挖掘效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的云资源分配方法的流程示意图;
图2为本发明实施例提供的云资源分配方法中,在对目标程序进行模糊测试的过程中提取目标数据的实现过程的流程示意图;
图3为本发明实施例提供的云资源分配方法中,对目标数据进行预处理的流程示意图;
图4为本发明实施例提供的云资源分配装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了实现云资源合理有效的分配,从而提高漏洞的挖掘效率,本发明实施例提供了一种云资源分配方法,请参阅图1,示出了该云资源分配方法的流程示意图,该方法可以包括:
步骤S101:在对目标程序进行云模糊测试的过程中提取目标数据。
在进行模糊测试的同时,可通过键盘人工控制,也可通过设定等间隔时间对异常崩溃unique_crash、执行路径edge、时间等数据进行提取。
本步骤的具体实现过程可参见后续实施例的说明。
步骤S102:对目标数据进行预处理,获得预处理数据。
由于提取的目标数据需要输入到后续的曲线拟合模型中,为了使曲线拟合模型能够基于输入数据进行精确的曲线拟合,本实施例对提取的目标数据进行预处理,以优化曲线拟合模型的输入数据,从而使得曲线拟合模型能够输出较精确的曲线。
步骤S103:基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线。
BP(Back Propagation)神经网络由多个BP神经元组成,是一种信号前向传播,误差反向传播的多层前馈型神经网络,该网络本身拥有进行自身修改的自由度,能自适应地收敛于最优状态,具有良好的非线性拟合能力和精确的数据归纳能力。有鉴于此,本实施例基于BP神经网络建立曲线拟合模型。
具体地,预先建立曲线拟合模型的过程可以包括:获取大量训练样本,训练样本为与样本程序对应的预处理数据,该预处理数据为在对样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到;以预设判别标准为训练依据,用训练样本训练BP神经网络,获得曲线拟合模型。
其中,预设判别标准可以但不限定为收敛速度、网络稳定性、训练耗时和/或均方误差。
在一种可能的实现方式中,可以收敛速度、网络稳定性为判别标准,运用共轭梯度算法和拟牛顿算法进行训练算法的优化,以训练耗时和均方误差为判别标准对神经网络的结构进行优化。具体地,可首先运用共轭梯度算法进行参数学习,判断收敛速度和网络稳定性是否达到预设要求,如果否,则进一步运用拟牛顿算法进行参数学习,直至收敛速度和网络稳定性达到预设要求。
在现代科学技术应用中,复杂系统多呈现对象多元化、时间实时化、对象复杂化、样式多样化等特点,基于神经网络的曲线拟合模型具有更好的整体效果反应,利用已知训练集以及机器学习方法实现对复杂系统建模,因此模型更加趋近于实际情况。神经网络应用于数据拟合,目的在于提高拟合精度,在已有数据集的拟合训练的基础上,进行数据处理和算法优化研究,并依据均方误差(mean-square error,MSE)为拟合精度参考用作对训练算法进行评估与优化,所以具有高预测精度和黑盒内强泛化能力。
步骤S104:基于代码覆盖率随时间变化的曲线和目标程序的模糊测试价值,确定目标程序的价值的大小。
具体的,确定代码覆盖率随时间变化的曲线的变化率,并基于目标参数确定目标程序的模糊测试价值,其中,目标参数与目标数据有关;通过代码覆盖率随时间变化的曲线的变化率和目标程序的模糊测试价值,确定目标程序的价值的大小。
假设在模糊测试过程中,每一个异常崩溃unique crash能够以p的概率被分析为漏洞,而每一个执行路径edge以q的概率能够在模糊测试的过程中触发异常崩溃uniquecrash,那么VOVs和执行路径edge的数量e的关系为:
VOVs=epqv (1)
其中,VOVs指通过模糊测试发现漏洞的价值之和,单个漏洞的价值使用v表示,那么n个漏洞的VOVs为:
执行路径edge的数量e的变化和时间t的关系:
e=θ(t) (3)
VOVs和时间t的关系为:
VOVs=pqvθ(t)=ω(t) (4)
则目标程序的模糊测试价值V为:
在控制单位计算资源的情形下,p、q、均可以通过观测或计算得出,V是随时间变化的数值,与p、q直接相关,与代码覆盖率、目标程序的执行速率、执行路径edge发现速率等参数间接相关。
步骤S105:基于目标程序的价值的大小为目标程序分配资源。
具体的,根据目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值;基于单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略,并基于资源分配策略为目标程序分配云资源。
其中,目标影响因素可以包括目标程序的普及度、使用频率、用户好评度等中的一个或多个。
在概率论及统计学中,马尔可夫决策过程(Markov Decision Processes,MDP)是基于马尔可夫过程理论的随机动态系统的决策过程。不同于一般马尔可夫过程,MDP考虑了当前时刻的动作,即系统的下个状态不仅与当前的状态有关,也与当前采取的动作有关,在经由动态规划和强化学习以寻求解决最佳化问题上有较好的效能。马尔可夫决策过程是指决策者周期地或连续地观察具有马尔可夫性的随机动态系统,序贯地作出决策。即根据每个时刻观察到的状态,从可用的行动集合中选用一个行动作出决策,系统下一步的状态是随机的,并且其状态转移概率具有马尔可夫性。决策者根据新观察到的状态,再作新的决策,依此反复地进行。
在本实施例中,马尔科夫决策过程涉及状态集、动作集、状态转移概率、状态转移奖励和衰减因子。其中,状态集用于存放不同资源分配下的所有收益状态;动作集用于存放资源调整的所有可能;状态转移概率是基于模糊测试价值,并由主观因素引导确定的动作导向;状态转移奖励是状态转移后模糊测试价值变化;衰减因子是由主观确定的用来平衡当前奖励和远期奖励的重要性,避免计算结果无穷。
本发明实施例提供的云资源分配方法,可在对目标程序进行云模糊测试的过程中提取目标数据,然后对目标数据进行预处理,获得预处理数据,接着基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线,基于曲线的变化率和目标程序的模糊测试价值,确定目标程序的价值的大小,最后基于目标程序的价值的大小为目标程序分配资源。本发明实施例提供的云资源分配方法能够基于云模糊测试价值评估实现云资源的合理分配,从而提高漏洞的挖掘效率。
请参阅图2,示出了上述实施例提供的方法中,在对目标程序进行云模糊测试的过程中提取目标数据的实现过程的流程示意图,可以包括
步骤S201:基于用户需求对目标程序进行编译。
需要说明的是,由于有些程序是二进制开源源代码,有些程序是可执行的程序,对于用户而言,有时需要对程序的一部分进行测试,有时需要对程序的全部进行测试,如果只对程序的部分进行测试,则只需要对部分程序进行编译,如果需要对全部程序进行测试,则需要对全部程序进行编译,即,程序的编译基于用户需求进行。
步骤S202:在对目标程序进行编译的过程中进行插桩。
在对目标程序进行编译的过程中进行插桩至少包括两种可能的实现方式,其一,在Linux系统下对二进制程序进行动态插桩,具体的,Linux下利用QEMU的用户模式模拟模式帮助建立独立特征,并允许调用者获得黑盒、闭源的二进制程序的插桩输出;其二,在Windows系统下对二进制程序进行指令插桩,具体地,Windows下通过dynamorio,操控程序的运行代码,即模拟运行一个程序,并对运行代码进行命令插桩。
步骤S203:对插桩后的目标程序进行云模糊测试。
在一种可能的实现方式中,可通过AFL对插桩程序进行云模糊测试。
步骤S204:在云模糊测试的过程中提取目标数据。
在获得目标数据后,为了提高后续曲线拟合的精确度,需要对目标数据进行预处理,请参阅图3,示出了对目标数据进行预处理的流程示意图,预处理过程可以包括:
步骤S301:对目标数据进行最大最小归一化处理,获得首次归一化数据。
需要说明的是,对目标数据进行最大最小归一化处理,即对目标数据进行线性归一化处理,使归一化处理后的数据位于一个范围区域内,使得目标数据中各个变量之间具有相同的地位,从而避免经过后续神经网络tansig传输函数误差震荡问题。
步骤S302:判断首次归一化数据是否满足预设条件。
具体地,判断首次归一化数据是否满足预设条件的过程可以包括:判断基于首次归一化数据确定的代码覆盖率的均方误差是否在预设范围内,若该均方误差在预设范围内,则确定首次归一化数据满足预设条件;反之,若该均方误差不在预设范围内,则确定首次归一化数据不满足预设条件。
步骤S303a:若首次归一化数据满足预设条件,则将首次归一化数据作为预处理数据。
步骤S303b:若首次归一化数据不满足预设条件,则进一步对首次归一化数据进行基于标准差的二次归一化处理,获得二次归一化数据,将二次归一化数据作为预处理数据。
与上述方法相对应,本发明实施例还提供了一种云资源分配装置,请参阅图4,示出了该装置的结构示意图,可以包括:数据提取模块401、数据预处理模块402、曲线确定模块403、价值确定模块404和资源分配模块405。
数据提取模块401,用于在对目标程序进行云模糊测试的过程中提取目标数据。
数据预处理模块402,用于对所述目标数据进行预处理,获得预处理数据。
曲线确定模块403,用于基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线。
价值评估模块404,用于基于曲线和目标程序的模糊测试价值,确定目标程序的价值的大小。
资源分配模块405,用于基于目标程序的价值的大小为目标程序分配云资源。
本发明实施例提供的云资源分配装置,可在对目标程序进行云模糊测试的过程中提取目标数据,然后对目标数据进行预处理,获得预处理数据,接着基于预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线,基于曲线和目标程序的模糊测试价值,确定目标程序的价值的大小,最后基于目标程序的价值的大小为目标程序分配资源。本发明实施例提供的云资源分配装置能够基于云模糊测试价值评估实现云资源的合理分配,从而提高漏洞的挖掘效率。
上述实施例提供的云资源分配装置中,数据提取模块401可以包括:编译子模块、插桩子模块、模糊测试子模块和数据提取子模块。
编译子模块,用于基于用户需求对目标程序进行编译。
插桩子模块,用于在对目标程序进行编译的过程中进行插桩。
模糊测试子模块,用于对插桩后的目标程序进行云模糊测试。
数据提取子模块,用于在云模糊测试的过程中提取目标数据。
上述实施例提供的云资源分配装置还可以包括:曲线拟合模型建立模块。
曲线拟合模型建立模块,用于获取大量训练样本,以预设判别标准为训练依据,用所述训练样本训练BP神经网络,获得所述曲线拟合模型,所述训练样本为与样本程序对应的预处理数据,该预处理数据为在对所述样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到。
上述实施例提供的云资源分配装置中,价值评估模块404包括:变化率确定子模块和价值评估子模块。
变化率确定子模块,用于确定曲线的变化率,并基于目标参数确定所述目标程序的模糊测试价值,目标参数与目标数据有关。
价值评估子模块,用于通过所述曲线的变化率和所述目标程序的模糊测试价值,确定目标程序的价值的大小。
上述实施例提供的云资源分配装置中,资源分配模块包括:计算子模块、资源分配策略确定子模块和资源分配子模块。
计算子模块,用于根据目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值。
资源分配策略确定子模块,用于基于单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略。
资源分配子模块,用于基于资源分配策略为所述目标程序分配云资源。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和设备,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种云资源分配方法,其特征在于,包括:
在对目标程序进行云模糊测试的过程中提取目标数据;
对所述目标数据进行预处理,获得预处理数据;
基于所述预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线;
基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小;
基于所述目标程序的价值的大小为所述目标程序分配云资源。
2.根据权利要求1所述的云资源分配方法,其特征在于,所述在对目标程序进行云模糊测试的过程中提取目标数据,包括:
基于用户需求对所述目标程序进行编译;
在对所述目标程序进行编译的过程中进行插桩;
对插桩后的目标程序进行云模糊测试;
在所述云模糊测试的过程中提取所述目标数据。
3.根据权利要求1所述的云资源分配方法,其特征在于,所述预先建立所述曲线拟合模型的过程包括:
获取大量训练样本,所述训练样本为与样本程序对应的预处理数据,该预处理数据为在对所述样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到;
以预设判别标准为训练依据,用所述训练样本训练BP神经网络,获得所述曲线拟合模型。
4.根据权利要求1所述的云资源分配方法,其特征在于,所述对所述目标数据进行预处理,获得预处理数据,包括:
对所述目标数据进行最大最小归一化处理,获得首次归一化数据;
若所述首次归一化数据满足预设条件,则将所述首次归一化数据作为所述预处理数据;
若所述首次归一化数据不满足所述预设条件,则进一步对所述首次归一化数据进行基于标准差的二次归一化处理,获得二次归一化数据,将所述二次归一化数据作为所述预处理数据。
5.根据权利要求1所述的云资源分配方法,其特征在于,所述基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小,包括:
确定所述曲线的变化率,并基于目标参数确定所述目标程序的模糊测试价值,其中,所述目标参数与所述目标数据有关;
通过所述曲线的变化率和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小。
6.根据权利要求1所述的云资源分配方法,其特征在于,所述基于所述目标程序的价值的大小,为所述目标程序分配云资源,包括:
根据所述目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值;
基于所述单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略,并基于所述资源分配策略为所述目标程序分配云资源。
7.一种云资源分配装置,其特征在于,包括:数据提取模块、数据预处理模块、曲线确定模块、价值确定模块和资源分配模块;
所述数据提取模块,用于在对目标程序进行模糊测试的过程中提取目标数据;
所述数据预处理模块,用于对所述目标数据进行预处理,获得预处理数据;
所述曲线确定模块,用于基于所述预处理数据和预先建立的曲线拟合模型,确定代码覆盖率随时间变化的曲线;
所述价值评估模块,用于基于所述曲线和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小;
所述资源分配模块,用于基于所述目标程序的价值的大小为所述目标程序分配云资源。
8.根据权利要求7所述的云资源分配装置,其特征在于,所述装置还包括:曲线拟合模型建立模块;
所述曲线拟合模型建立模块,用于获取大量训练样本,以预设判别标准为训练依据,用所述训练样本训练BP神经网络,获得所述曲线拟合模型,所述训练样本为与样本程序对应的预处理数据,该预处理数据为在对所述样本程序进行模糊测试的过程中提取数据,并对提取的数据进行预处理得到。
9.根据权利要求7所述的云资源分配装置,其特征在于,所述价值评估模块包括:变化率确定子模块和价值评估子模块;
所述变化率确定子模块,用于确定所述曲线的变化率,并基于目标参数确定所述目标程序的模糊测试价值,其中,所述目标参数与所述目标数据有关;
所述价值评估子模块,用于通过所述曲线的变化率和所述目标程序的模糊测试价值,确定所述目标程序的价值的大小。
10.根据权利要求7所述的云资源分配装置,其特征在于,所述资源分配模块包括:计算子模块、资源分配策略确定子模块和资源分配子模块;
所述计算子模块,用于根据所述目标程序的价值的大小、目标影响因素和模糊测试价值积累模型,计算单位计算资源所能获取的漏洞价值;
所述资源分配策略确定子模块,用于基于所述单位计算资源所能获取的漏洞价值,通过马尔科夫决策过程确定资源分配策略;
所述资源分配子模块,用于基于所述资源分配策略为所述目标程序分配云资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810366582.3A CN108667912B (zh) | 2018-04-23 | 2018-04-23 | 一种云资源分配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810366582.3A CN108667912B (zh) | 2018-04-23 | 2018-04-23 | 一种云资源分配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108667912A true CN108667912A (zh) | 2018-10-16 |
CN108667912B CN108667912B (zh) | 2021-03-23 |
Family
ID=63780250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810366582.3A Active CN108667912B (zh) | 2018-04-23 | 2018-04-23 | 一种云资源分配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108667912B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416608A (zh) * | 2021-01-22 | 2021-02-26 | 鹏城实验室 | 面向云平台性能评估的资源分配方法、装置及存储介质 |
CN113722230A (zh) * | 2021-09-07 | 2021-11-30 | 中国科学院软件研究所 | 针对模糊测试工具漏洞挖掘能力的集成化评估方法及装置 |
CN113836009A (zh) * | 2021-09-14 | 2021-12-24 | 广东新安怀科技发展有限公司 | 一种基于强化学习的智能合约模糊测试方法及系统 |
CN115442262A (zh) * | 2022-08-01 | 2022-12-06 | 阿里巴巴(中国)有限公司 | 一种资源评估方法、装置、电子设备及存储介质 |
CN116980202A (zh) * | 2023-07-27 | 2023-10-31 | 广州尚全信息技术有限公司 | 一种网络安全运维监控方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301813A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Testing Software Applications with Schema-based Fuzzing |
CN101425035A (zh) * | 2007-11-01 | 2009-05-06 | 韩国电子通信研究院 | 用于检查软件的漏洞的设备和方法 |
US20130205397A1 (en) * | 2012-02-07 | 2013-08-08 | Microsoft Corporation | Adaptive fuzzing system for web services |
CN104219211A (zh) * | 2013-06-03 | 2014-12-17 | 中国移动通信集团公司 | 一种云计算网络中网络安全的检测方法及装置 |
CN104268161A (zh) * | 2014-09-05 | 2015-01-07 | 四川和芯微电子股份有限公司 | Usb芯片验证结果的分析处理系统 |
CN105512562A (zh) * | 2015-12-01 | 2016-04-20 | 珠海市君天电子科技有限公司 | 一种漏洞挖掘方法、装置及电子设备 |
CN106155901A (zh) * | 2015-04-21 | 2016-11-23 | 中国科学院信息工程研究所 | 黑盒与白盒相结合的执行反馈驱动的并行模糊测试方法 |
CN106657096A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇虎科技有限公司 | Web漏洞检测方法、装置及系统 |
-
2018
- 2018-04-23 CN CN201810366582.3A patent/CN108667912B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301813A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Testing Software Applications with Schema-based Fuzzing |
CN101425035A (zh) * | 2007-11-01 | 2009-05-06 | 韩国电子通信研究院 | 用于检查软件的漏洞的设备和方法 |
US20130205397A1 (en) * | 2012-02-07 | 2013-08-08 | Microsoft Corporation | Adaptive fuzzing system for web services |
CN104219211A (zh) * | 2013-06-03 | 2014-12-17 | 中国移动通信集团公司 | 一种云计算网络中网络安全的检测方法及装置 |
CN104268161A (zh) * | 2014-09-05 | 2015-01-07 | 四川和芯微电子股份有限公司 | Usb芯片验证结果的分析处理系统 |
CN106155901A (zh) * | 2015-04-21 | 2016-11-23 | 中国科学院信息工程研究所 | 黑盒与白盒相结合的执行反馈驱动的并行模糊测试方法 |
CN105512562A (zh) * | 2015-12-01 | 2016-04-20 | 珠海市君天电子科技有限公司 | 一种漏洞挖掘方法、装置及电子设备 |
CN106657096A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇虎科技有限公司 | Web漏洞检测方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
BI MINGGUANG, ET. AL.: "Detection of software vulnerabilities based on fuzzing", 《INTERNATIONAL CONFERENCE ON CYBERSPACE TECHNOLOGY (CCT2013)》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416608A (zh) * | 2021-01-22 | 2021-02-26 | 鹏城实验室 | 面向云平台性能评估的资源分配方法、装置及存储介质 |
CN113722230A (zh) * | 2021-09-07 | 2021-11-30 | 中国科学院软件研究所 | 针对模糊测试工具漏洞挖掘能力的集成化评估方法及装置 |
CN113722230B (zh) * | 2021-09-07 | 2023-06-16 | 中国科学院软件研究所 | 针对模糊测试工具漏洞挖掘能力的集成化评估方法及装置 |
CN113836009A (zh) * | 2021-09-14 | 2021-12-24 | 广东新安怀科技发展有限公司 | 一种基于强化学习的智能合约模糊测试方法及系统 |
CN113836009B (zh) * | 2021-09-14 | 2024-06-21 | 广东新安怀科技发展有限公司 | 一种基于强化学习的智能合约模糊测试方法及系统 |
CN115442262A (zh) * | 2022-08-01 | 2022-12-06 | 阿里巴巴(中国)有限公司 | 一种资源评估方法、装置、电子设备及存储介质 |
CN115442262B (zh) * | 2022-08-01 | 2024-02-06 | 阿里巴巴(中国)有限公司 | 一种资源评估方法、装置、电子设备及存储介质 |
CN116980202A (zh) * | 2023-07-27 | 2023-10-31 | 广州尚全信息技术有限公司 | 一种网络安全运维监控方法及系统 |
CN116980202B (zh) * | 2023-07-27 | 2023-12-26 | 广州尚全信息技术有限公司 | 一种网络安全运维监控方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108667912B (zh) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108667912A (zh) | 一种云资源分配方法及装置 | |
CN109948669A (zh) | 一种异常数据检测方法及装置 | |
CN108875963A (zh) | 机器学习模型的优化方法、装置、终端设备和存储介质 | |
CN107862173A (zh) | 一种先导化合物虚拟筛选方法和装置 | |
CN105929690B (zh) | 一种基于分解多目标进化算法的柔性车间鲁棒调度方法 | |
Yao et al. | Improved support vector machine regression in multi-step-ahead prediction for rock displacement surrounding a tunnel | |
CN110659825A (zh) | 银行网点多学习器的现钞需求量预测方法和装置 | |
CN108510213A (zh) | 将任务依次分配至任务组的方法、装置、设备及介质 | |
CN110348508A (zh) | 检验异常值的数据核验方法及其系统、电子设备 | |
CN109690571A (zh) | 基于学习的组标记系统和方法 | |
Peres da Silva et al. | TUGDA: task uncertainty guided domain adaptation for robust generalization of cancer drug response prediction from in vitro to in vivo settings | |
CN108304975A (zh) | 一种数据预测系统及方法 | |
CN109063483A (zh) | 一种基于路径追踪的漏洞检测方法及系统 | |
Li et al. | A fast density peak clustering based particle swarm optimizer for dynamic optimization | |
CN106656675A (zh) | 一种传输节点集群的检测方法和装置 | |
CN109039797A (zh) | 基于强化学习的大流检测方法 | |
CN110209548A (zh) | 服务控制方法、系统、电子设备及计算机可读存储介质 | |
CN105589896B (zh) | 数据挖掘方法及装置 | |
Lanzarini et al. | A new binary pso with velocity control | |
CN105468726B (zh) | 基于本地计算和分布式计算的数据计算方法及系统 | |
CN104572482B (zh) | 一种过程变量的存储方法及装置 | |
CN108776817A (zh) | 恐怖袭击事件的类型预测方法及系统 | |
Yang et al. | A hybrid gene selection and classification approach for microarray data based on clustering and PSO | |
CN109685458A (zh) | 一种用于环境监测仪器的质量控制方法和装置 | |
CN110162666A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |