1.一种分布式病毒特征样本验证方法,其特征在于,包括:
测试节点向管理服务器获取测试任务,所述测试任务为主任务或子任务;
若管理服务器返回的测试任务为主任务,则根据所述主任务创建子任务,并将所述子任务发送至管理服务器;
若管理服务器返回的测试任务为子任务,则根据所述子任务下载测试包,所述测试包包括扫描引擎、病毒库、样本信息及对应的预期结果;根据所述样本信息获取特征样本;利用扫描引擎检测所述特征样本是否携带所述病毒库中的病毒特征,得到检测结果;判断所述检测结果与预期结果是否一致,并将判断结果发送至管理服务器。
2.根据权利要求1所述的方法,其特征在于,所述测试节点向管理服务器获取测试任务包括:
测试节点向管理服务器发送获取测试任务的请求;
管理服务器响应测试节点的请求,查询是否存在未执行的主任务,若是,则将所述主任务发送至测试节点,若否,则查询是否存在未执行的子任务,并将未执行的子任务发送至测试节点;
测试节点接收管理服务器发送的测试任务。
3.根据权利要求1所述的方法,其特征在于,在所述测试节点向管理服务器获取测试任务之前,还包括:根据存储于测试包存储服务器中的测试包,在管理服务器中创建主任务和与主任务对应的任务列表。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
管理服务器在接收到测试节点返回的子任务后,存储所述子任务,并将子任务信息添加到任务列表中;
管理服务器在接收到测试节点返回的判断结果之后,存储所述判断结果,并更新任务列表中对应子任务的执行状态,所述执行状态包括完成执行和执行失败。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:管理服务器监控所述任务列表,当主任务的所有子任务均更新为完成执行后,生成与所述主任务对应的测试报告;当监控到子任务的执行状态为执行失败时,将执行失败的子任务作为未执行的子任务,供测试节点重新获取。
6.根据权利要求3所述的方法,其特征在于,
所述根据所述子任务下载测试包包括:根据所述子任务从所述测试包存储服务器下载测试包;
所述根据所述样本信息获取特征样本包括:查询测试节点所在的测试机是否存储有与所述样本信息中的特征相匹配的特征样本,若是,则从所述测试机获取所述特征样本,若否,则根据所述特征样本信息中的地址从样本存储服务器中下载特征样本。
7.一种分布式病毒特征样本验证系统,其特征在于,包括管理服务器和至少一个测试机,所述测试机包括多个测试节点,
所述测试节点包括:
获取模块,用于向管理服务器获取测试任务,所述测试任务为主任务或子任务;
执行模块,用于在管理服务器返回的测试任务为主任务时,根据所述主任务创建一个或多个子任务,并将所述子任务发送至管理服务器,在管理服务器返回的测试任务为子任务时,根据所述子任务下载测试包,所述测试包包括扫描引擎、病毒库、样本信息及对应的预期结果;根据所述样本信息获取特征样本;利用扫描引擎检测所述特征样本是否携带所述病毒库中的病毒特征,得到检测结果;判断所述检测结果与预期结果是否一致,并将判断结果发送至管理服务器。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括:
测试包存储服务器,用于存储测试包;
样本存储服务器,用于存储特征样本。
9.根据权利要求8所述的系统,其特征在于,所述管理服务器包括:
任务创建模块,用于根据存储于测试包存储服务器中的测试包创建主任务和与主任务对应的任务列表;
查询模块,用于响应测试节点获取测试任务的请求,查询存储模块中是否存在未执行的主任务,若是,则将所述主任务发送至测试节点,若否,则查询存储模块中是否存在未执行的子任务,并将未执行的子任务发送至测试节点;
更新模块,用于在接收到测试节点返回的子任务后,将子任务信息添加到任务列表中,以及,在接收到测试节点返回的判断结果后,更新任务列表中对应子任务的执行状态,所述执行状态包括完成执行和执行失败;
任务监控模块,用于监控所述任务列表,当主任务的所有子任务均更新为完成执行后,生成与所述主任务对应的测试报告;当监控到子任务的执行状态为执行失败时,将执行失败的子任务作为未执行的子任务,供测试节点重新获取;
存储模块,用于存储任务创建模块创建的主任务和任务列表、执行模块返回的子任务和判断结果、任务监控模块生成的测试报告。
10.根据权利要求8所述的系统,其特征在于,所述执行模块包括:
获取单元,用于根据所述子任务从所述测试包存储服务器下载测试包,还用于根据所述测试包中的样本信息获取特征样本,包括:查询测试节点所在的测试机是否存储有与所述样本信息中的特征相匹配的特征样本,若是,则从所述测试机获取所述特征样本,若否,则根据所述特征样本信息中的地址从样本存储服务器中下载特征样本;
检测单元,用于利用扫描引擎检测所述特征样本是否携带所述病毒库中的病毒特征,得到检测结果;
判断单元,判断所述检测结果与预期结果是否一致,并将判断结果发送至管理服务器。