CN108470126A - 数据处理方法、装置及存储介质 - Google Patents

数据处理方法、装置及存储介质 Download PDF

Info

Publication number
CN108470126A
CN108470126A CN201810225384.5A CN201810225384A CN108470126A CN 108470126 A CN108470126 A CN 108470126A CN 201810225384 A CN201810225384 A CN 201810225384A CN 108470126 A CN108470126 A CN 108470126A
Authority
CN
China
Prior art keywords
mark
executable program
program file
random
character string
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
Application number
CN201810225384.5A
Other languages
English (en)
Other versions
CN108470126B (zh
Inventor
雷经纬
罗元海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810225384.5A priority Critical patent/CN108470126B/zh
Publication of CN108470126A publication Critical patent/CN108470126A/zh
Application granted granted Critical
Publication of CN108470126B publication Critical patent/CN108470126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

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)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种数据处理方法,所述方法包括:获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。本申请还公开了相应的装置及存储介质。

Description

数据处理方法、装置及存储介质
技术领域
本申请涉及互联网技术领域,尤其涉及一种数据处理方法、装置及存储介质。
背景技术
随着互联网技术的发展,恶意软件的种类越来越多,对恶意软件的检测也越来越难。恶意软件是指在计算机系统上执行恶意任务的病毒、蠕虫和特洛伊木马的程序,通过破坏软件进程来实施控制。例如,病毒作者通过框架等工具批量生成恶意安卓(android)应用家族,而为了躲避病毒扫描软件的检测,病毒作者会随机生成android应用程序文件的诸多属性,如包名(Package Name),软件名等。其中,在android系统中,android应用的包名是判断一个App的唯一标识,一个android应用必定有且仅有一个包名,它是一个字符串,由字母、数字等字符组成。
发明内容
本申请实例提供了一种数据处理方法,所述方法包括:获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
本申请实例还提供了一种数据处理方法,所述方法包括:获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;及将所述随机参数发送至所述客户端,以使所述客户端根据所述随机参数生成指示所述可执行程序文件是否为随机生成的指示信息,及根据所述指示信息确定所述可执行程序文件是否为病毒文件。
本申请实例还提供了一种数据处理方法,所述方法包括:发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,其中,所述标识是在所述可执行程序文件创建时生成的;从所述服务器接收所述随机参数;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
本申请实例还提供了一种数据处理方法,所述方法包括:获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;将所述指示信息发送至所述客户端,以使所述客户端根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
本申请实例还提供了一种数据处理方法,所述方法包括:发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,及当所述随机参数满足条件,生成指示所述可执行程序文件为随机生成的指示信息,其中,所述标识是在所述可执行程序文件创建时生成的;从所述服务器接收所述指示信息;根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
本申请实例还提供了一种数据处理装置,所述装置包括:获取模块,获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;确定模块,确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
本申请还提供了一种存储介质,存储有计算机可读指令,可以使至少一个处理器执行上述方法。
采用上述技术方案,可以准确的识别出所述可执行程序文件是否为随机生成,以及进一步确定所述可执行程序文件是否为病毒文件,有效地解决一些能够对抗检测的可执行程序文件的扫描检测的问题,从而为数据处理设备(如客户端或服务器)提供了新的应用功能,提高了该数据处理设备的安全性能。
附图说明
为了更清楚地说明本申请实例中的技术方案,下面将对实例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实例涉及的一种系统构架示意图;
图2为本申请一实例的方法流程图;
图3为本申请实例涉及的用户界面图;
图4为本申请另一实例涉及的方法流程图;
图5为本申请实例涉及的另一用户界面图;
图6为本申请一数据处理实例的消息交互图;
图7为本申请另一数据处理实例的消息交互图;
图8为本申请另一数据处理实例的消息交互图;
图9为本申请一实例的装置结构图;及
图10为本申请一实例的设备结构图。
具体实施方式
下面将结合本申请实例中的附图,对本申请实例中的技术方案进行清楚、完整地描述,显然,所描述的实例仅是本申请一部分实例,而不是全部的实例。基于本申请中的实例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实例,都属于本申请保护的范围。
本申请提出一种数据处理方法、装置及存储介质,可应用于图1所示的系统构架中。如图1所示,该系统构架包括:客户端101和服务器102,这些实体通过互联网103进行通信。其中,客户端101可以运行于手机、PAD(平板电脑)、膝上型便携计算机、台式计算机等终端上;服务器102可以为单个服务器,或由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
在一些实例中,所述方法可运行于客户端101或服务器102。客户端101或服务器102获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;及当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
图2显示了本申请实例提出的数据处理方法的流程。如图2所示,该方法应用于服务器102,包括如下步骤:
步骤201:获取待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成。
这里,所述方法的执行主体为服务器,所述可执行程序文件例如为应用程序文件,客户端在扫描到未知或可疑应用程序文件时,为了防止该应用程序文件对系统产生破坏(未知或可疑应用程序文件可能为病毒文件),将该应用程序文件的唯一标识发送至服务器,服务器对该标识进行检测,并将检测结果发送至客户端。
例如,如前所述,病毒作者批量生成随机安卓(android)应用家族,为了躲避病毒扫描软件的检测,病毒作者会随机生成android应用程序文件的诸多属性,如包名,软件名等。而一个android应用程序文件必定有且仅有一个包名,这里,所述标识可以为包名,以唯一识别所述可执行程序文件。
例如,如图3所示,终端下载应用程序文件完成后,如301所示,为了防止该应用程序文件对终端的系统进行破坏,客户端(如腾讯电脑管家app)将该应用程序文件的包名发送至服务器,服务器对所述包名进行检测。
步骤202:确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性。
在一些实例中,所述标识是一个字符串,所述确定所述标识的随机参数,包括:从所述标识中获取至少一个第一特征字符串,所述第一特征字符串为所述标识中相邻的两个字符;确定各第一特征字符串出现的概率;及根据各第一特征字符串出现的概率确定所述标识的随机参数。
在一些实例中,所述方法进一步包括:根据样本库中各样本的唯一标识,确定概率集合,其中,所述样本为非随机生成的可执行程序文件,所述概率集合中的任一元素为一个第二特征字符串出现的概率,所述第二特征字符串为所述样本的所述标识中相邻的两个字符;其中,所述确定各第一特征字符串出现的概率,包括:从所述概率集合中查找到各第一特征字符串出现的概率。
在一些实例中,所述根据样本库各样本的唯一标识确定概率集合,包括:获取所述样本库中各样本的所述标识中的各个第二特征字符串,形成第二特征字符串集合,每一个第二特征字符串包括在前的第一字符和在后的第二字符;针对所述第二特征字符串集合中任一个第二特征字符串,确定在所述第二特征字符串集合中,该第二特征字符串中所述第一字符后面出现该第二特征字符串中所述第二字符的概率,将确定的所述概率作为该第二特征字符串出现的概率;所述第二特征字符串集合中各个第二特征字符串出现的概率形成概率集合。
在一些实例中,所述随机参数可以为随机因子,所述根据各第一特征字符串出现的概率确定所述标识的随机参数,包括:根据如下公式(1)确定所述标识的随机因子,所述随机性和所述随机参数(或随机因子)正相关:
式中,Pi为第i个第一特征字符串出现的概率,Pr为所述标识的随机因子。
在一些实例中,所述随机参数可以为随机因子,所述根据各第一特征字符串出现的概率确定所述标识的随机性,包括:根据如下公式(2)确定所述标识的随机因子,所述随机性和所述随机参数负相关:
式中,Pi为第i个第一特征字符串出现的概率,Pr为所述标识的随机因子。
例如,所述标识为包名,所述样本库中各样本的标识(包名)例如可以为com.tencent.qq和com.sina.weibo等,所述待检测的可执行程序文件的标识(包名)为com.test.td,所述标识的随机因子的计算过程如下:
(1)根据安全样本库(安全样本为非随机生成的可执行程序文件)中各样本的唯一标识确定概率集合。这里,所述概率集合可以为概率矩阵,其中,所述概率矩阵为行数和列数相等的方阵。进一步的,所述概率矩阵可以为马尔科夫状态转移矩阵,所述马尔科夫状态转移矩阵为一个长宽相等的二维数组,矩阵中第m行n列的值表示字符集(这里,所述字符集包括构成所述样本库中各样本的所述标识的所有字符)中第m个字符转移到第n个字符的概率。这里,当然也可以根据恶意样本库(恶意样本为随机生成的可执行程序文件)中各样本的唯一标识确定概率矩阵,然而恶意样本库各样本的标识没有特定的规律,根据其确定的概率集合没有根据安全样本库各样本的标识确定的概率集合准确。
首先,确定构成所述样本库中各样本的所述标识的所有字符之间的顺序。服务器可以先将构成所述样本库中各样本的所述标识的所有字符中的英文字母和字符“.”之外的字符去掉,例如,把数字字符、下划线字符等去掉,然后确定所述英文字母和字符“.”的顺序。例如,所述英文字母和字符“.”的顺序可以按照26个英文字母的顺序及将字符“.”放在26个英文字母之前或之后确定。其次,计算第二特征字符串集合中的任一个第二特征字符串出现的概率:例如,根据所述第二特征字符串集合中所有的第二特征字符串,统计得到字母c后面出现字母o的次数为10次,字母c后面出现其他字符的次数为90次,从而特征字符串co的字符组合出现的概率(或称为字母c转移到字母o的概率)为最后,同理,可以得到字母c转移到其他字符的概率,且按照26个英文字母的顺序及字符“.”位于26个英文字母之后的顺序,可以得到概率矩阵第三行(字母c为上述确定顺序中的第3个)的元素。按照上述方法,可以统计得到其他字符之间转移的概率,从而最终得到一个27行27列的矩阵A27,27,矩阵中第i行j列的值表示第i个字符转移到第j个字符的概率(即第二特征字符串出现的概率),即马尔科夫状态转移矩阵。马尔科夫状态转移矩阵A27,27如下所示:
其中,N=27,1≤i≤27,1≤j≤27,i,j为自然数。
(2)计算待检测的应用程序文件的标识的随机因子。首先,获取待检测的可执行程序文件(例如为应用程序文件)的包名com.test.td中至少一个相邻的两个字符,即第一特征字符串,这里,获取包名com.test.td中所有的特征字符串,即co、om、m.、.t、te……td。
其次,从马尔科夫状态转移矩阵,也即矩阵A27,27,中查找到各第一特征字符串出现的概率。如前所述,马尔科夫状态转移矩阵中的任一元素为一个第二特征字符串出现的概率,当所述第一特征字符串与所述第二特征字符串相同时,即可得知所述第一特征字符串出现的概率,即为所述第二特征字符串出现的概率。其中,在上述查找过程中,可以根据上述确定的构成所述样本库中各样本的所述标识的所有字符之间的顺序,确定所述第一特征字符串各字符在所述顺序中的位置,从而在马尔科夫状态转移矩阵中迅速确定该第一特征字符串出现的概率。例如,对于特征字符串co,c是第3个字符,o是第15个字符,则矩阵A27,27中第3行第15列对应的元素a3,15即为特征字符串co出现的概率,假设为0.3。同理,可以得到其他特征字符串om、m.……td的概率,假设分别为0.1,0.5,0.6,……,0.4。
再次,定义根据所述各第一特征字符串出现的概率确定所述标识的随机因子的公式,例如如公式(1)、(2)所示。这里,随机因子的计算公式可以为其他计算公式,本申请对此不作限定。
最后,将各第一特征字符串出现的概率代入公式(1)或(2),得到该包名com.test.td的随机因子Pr,例如根据公式(1)计算得到Pr为0.3309。
步骤203:当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息。
在一些实例中,所述方法进一步包括:获取多个第一样本的标识,形成第一标识集合,其中,所述第一样本为非随机生成的可执行程序文件;获取多个第二样本的标识,形成第二标识集合,其中,所述第二样本为随机生成的可执行程序文件;针对所述第一标识集合和所述第二标识集合中任一标识,执行以下处理:获取该标识中至少一个第三特征字符串;从所述概率集合中查找到各第三特征字符串出现的概率;根据各第三特征字符串出现的概率确定该标识的随机参数;确定所述第一标识集合和所述第二标识集合中至少两个标识的随机参数的均值,其中,所述均值作为所述条件中的阈值。
具体的,所述条件可以通过第一标识集合和第二标识集合中各标识的随机参数确定,其中,所述第一标识集合和第二标识集合中各标识的随机参数的确定方法可以与上述确定所述待检测的可执行程序文件的标识的随机参数相同,这里不再赘述。所述随机性可以由随机参数表征,其中,所述随机参数可以为随机因子,所述随机因子可以通过上述公式(1)或公式(2)确定。在一些实例中,可以选取部分或全部的所述第一标识集合中各标识的随机因子,以及选取部分或全部的第二标识集合中各标识的随机因子,对上述随机因子取加权平均值,并将该加权平均值作为所述条件。在一些实例中,当所述随机因子通过上述公式(1)或(2)确定时,还可以分别获取所述第一标识集合中各标识随机因子的最小随机因子,以及所述第二标识集合中各标识随机因子的最大随机因子,对所述最小随机因子和所述最大随机因子取算术平均值,并将所述算术平均值作为条件中的阈值,所述条件为达到所述阈值或小于所述阈值(取决于所述随机性与随机参数正相关还是负相关)。条件还可以采用其他确定方法,本申请对此不作限定。
例如,预先获取多个第一样本(例如为安全样本)的标识,形成第一标识集合,分别通过上述公式(1)计算第一标识集合中各标识的随机因子,其中,最大的随机因子是0.4;预先获取多个第二样本(例如为恶意样本)的标识,形成第二标识集合,分别通过上述公式(1)计算第二标识集合各标识的随机因子,其中,最小的随机因子是0.1;将上述最大随机因子和最小随机因子的算术平均值作为条件中的阈值,即T=(0.1+0.4)/2=0.25。上述示例采用公式(1)对包名com.test.td计算得到其随机因子为0.3309,大于阈值0.25,因所述随机性与所述随机因子正相关,此时,所述条件为达到所述阈值(或均值),包名com.test.td的随机因子满足条件,从而认定包名com.test.td对应的应用程序文件为随机生成的,生成指示该应用程序文件为随机生成的指示信息。
例如,获取多个第一样本(例如为安全样本)的标识,形成第一标识集合,分别通过上述公式(2)计算第一标识集合中各标识的随机因子,其中,最大的随机因子是0.4;预先获取多个第二样本(例如为恶意样本)的标识,形成第二标识集合,分别通过上述公式(1)计算第二标识集合各标识的随机因子,其中,最小的随机因子是0.1;将上述最大随机因子和最小随机因子的算术平均值作为条件中的阈值,即T=(0.1+0.4)/2=0.25。采用公式(2)对包名com.abs.haha计算得到其随机因子为0.17,小于阈值0.25,因所述随机性与所述随机因子负相关,此时,所述条件为小于所述阈值(或均值),包名com.abs.haha的随机因子满足条件,从而认定包名com.abs.haha对应的应用程序文件为随机生成的。
步骤204:根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
在一些实例中,所述确定所述可执行程序文件是否为病毒文件,包括:获取所述可执行程序文件的预定时间内的用户访问量;当所述用户访问量大于预定阈值时,确定所述可执行程序文件不是病毒文件;当所述用户访问量小于预定阈值时,确定所述可执行程序文件的开发者;当所述可执行程序文件的开发者曾发布过病毒文件,确定所述可执行程序文件是病毒文件。
例如,如图4所示,图4示出了本申请实例确定所述可执行程序文件是否为病毒文件的过程,包括:
步骤401:获取待检测的可执行程序文件的包名,该步骤的具体实现可以详见步骤201,这里不再赘述。
步骤402:确定生成所述包名的随机因子,这里,随机因子表征所述随机性。该步骤的具体实现可以详见步骤202,这里不再赘述。
步骤403:判断所述随机因子(该随机因子为采用公式(1)计算得到)是否大于第一阈值,当所述随机因子大于第一阈值时,此时,确定所述待检测的可执行程序文件为随机生成的,执行步骤404;当所述随机因子小于第一阈值时,确定所述待检测的可执行程序文件不是随机生成的,执行步骤405,。
步骤404:判断所述可执行程序文件的预定时间内的用户访问量(例如周用户访问量)是否大于第二阈值,若是,则执行步骤408;若否,则执行步骤406。
步骤405:判断所述可执行程序文件的周用户访问量是否大于第三阈值,若是,则执行步骤408;若否,则执行步骤407。其中,所述第三阈值小于第二阈值。
步骤406:确定所述可执行程序文件的开发者是否曾发布过病毒文件,例如,可以查询所述可执行程序文件的开发者签名的名下是否有病毒文件,若是,则执行步骤409;若否,则执行步骤408。
步骤407:确定所述可执行程序文件的开发者是否曾发布过病毒文件,若是,则执行步骤409;若否,则执行步骤408。
步骤408:确定所述可执行程序文件不是病毒文件。
步骤409:确定所述可执行程序文件是病毒文件。
在一些实例中,所述获取待检测的可执行程序文件的标识,包括:接收客户端发送的所述可执行程序文件;所述方法进一步包括:将指示所述可执行程序文件是否为病毒文件的检测结果发送至所述客户端,以使所述客户端根据所述检测结果对所述可执行程序文件进行处理。
这里,该方法的执行主体为服务器,所述服务器从所述客户端接收其发送的待检测应用程序文件的唯一标识,当确定所述应用程序文件为病毒文件时,将指示所述应用程序文件为病毒文件的检测结果发送至所述客户端。
在一些实例中,所述方法还可以应用于客户端,所述获取待检测的可执行程序文件,包括:从本地获取所述可执行程序文件的所述标识。在一些实例中,客户端中的概率集合为从服务器下载的。
例如,所述客户端可以为腾讯电脑管家,如图5所示,响应于对控件501“全面体检”的操作,腾讯电脑管家对本地文件进行扫描,在扫描到未知或可疑可执行程序文件时,为了防止该可执行程序文件对系统产生破坏(未知或可疑应用程序文件可能为病毒文件),获取该可执行程序文件的唯一标识,对该标识进行检测,确定该可执行程序文件是否为病毒文件。
通过上述技术方案,可以准确的识别出所述可执行程序文件是否为随机生成,以及进一步确定所述可执行程序文件是否为病毒文件,有效解决了一些能够对抗检测的可执行程序文件的扫描检测的问题,从而为数据处理设备(如客户端或服务器)提供了新的应用功能,提高了该数据处理设备的安全性能。
以上实例中,本申请提供的方法可由客户端单机执行(客户端本地下载有概率矩阵),此方法还可由服务器执行,由客户端提供可执行程序文件的唯一标识给服务器,服务器返回检测结果给客户端。
本申请提供方法还可由客户端和服务器配合完成,以下有两种实现方式:
1、客户端提供可执行程序文件的唯一标识给服务器,服务器返回生成所述标识的随机参数,当所述随机参数满足条件时,客户端生成指示所述可执行程序文件为随机生成的指示信息;根据所述指示信息确定检测结果。
2、客户端提供可执行程序文件的唯一标识给服务器,服务器返回生成指示所述可执行程序文件为随机生成的指示信息,由客户端根据指示信息确定检测结果。
下面结合附图对这两种处理方式加以说明。
图6示出了本申请实例提出的一种数据处理方法的交互图,包括以下步骤:
步骤601:客户端将待检测的可执行程序文件的唯一标识发送至服务器,其中,所述标识是在所述可执行程序文件创建时生成的。
步骤602:服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性。
步骤603:服务器将所述随机参数发送至客户端。
步骤604:当所述随机参数满足条件时,客户端生成指示所述可执行程序文件为随机生成的指示信息。
步骤605:客户端根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
图7示出了本申请实例提出的一种数据处理方法的交互图,包括以下步骤:
步骤701:客户端将待检测的可执行程序文件的唯一标识发送至服务器,其中,所述标识是在所述可执行程序文件创建时生成的。
步骤702:服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性。
步骤703:当所述随机参数满足条件时,服务器生成指示所述可执行程序文件为随机生成的指示信息。
步骤704:将所述指示信息发送至客户端。
步骤705:客户端根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
上述图6~7中各个步骤的具体实现原理,前文已有描述,这里不再赘述。
图8示出了本申请提出的一种数据处理方法的交互图。该交互过程涉及客户端和服务器,其中,服务器包括训练模块、控制模块和计算模块,所述可执行程序文件例如为应用程序文件,所述标识例如为包名,所述随机性例如由随机因子表征,包括以下步骤:
步骤801:训练模块根据安全样本库中各样本的包名,确定马尔科夫状态转移矩阵,所述马尔科夫状态转移矩阵如式子(3)所示。
步骤802:计算模块确定随机因子计算公式,所述随机因子计算公式例如如公式(1)所示。
步骤803:客户端将待检测的应用程序文件的包名经服务器中的控制模块发送至服务器中的计算模块,以使计算模块确定所述包名的随机因子。例如,客户端可以为腾讯电脑管家应用(app),在检测到终端下载某一应用程序文件完成后,如图3所示,对该应用程序文件进行扫描,发现该应用程序文件为未知或可疑应用程序文件,可以将该应用程序文件的包名发送至其对应的服务器,以使服务器对该应用程序文件进行检测。
步骤804:计算模块获取待检测应用程序文件的包名中的至少一个特征字符串。
步骤805:计算模块在马尔科夫状态转移矩阵中查询所述各特征字符串出现的概率。
步骤806:计算模块根据上述各特征字符串出现的概率,使用上述随机因子计算公式计算(1)所述待检测应用程序文件的包名的随机因子。
步骤807:计算模块获取多个安全样本的包名,形成第一包名集合;及获取多个恶意样本的包名,第二包名集合,分别确定上述第一包名集合中和第二包名集合各包名的随机因子(确定过程跟步骤804-806中确定所述待检测应用程序文件的包名的随机因子的过程相同),分别对应为第一随机因子集合和第二随机因子集合,并根据上述第一随机因子集合和第二随机因子集合中的随机因子确定预定阈值。例如,计算模块分别确定上述第一随机因子集合和第二随机因子集合后,获取各第一随机因子集合中的最小随机因子和第二随机因子集合中的最大随机因子,并对所述最小随机因子和所述最大随机因子取算术平均值,将该算术平均值作为预定阈值。
步骤808:当所述随机因子大于预定阈值时,确定所述应用程序文件是随机生成的,生成指示所述应用程序文件是随机生成的指示信息。
步骤809:计算模块将所述指示信息经控制模块发送至所述客户端。
步骤810:客户端根据所述指示信息,确定所述应用程序文件是否为病毒文件。该确定过程可以采用如图4所示的方法流程。
基于上述实例提供的方法,本申请实例还提出了一种数据处理装置900。如图9所示,所述装置900包括:
获取模块901,获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的。
确定模块902,确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
在一些实例中,获取模块901和确定模块902可以位于客户端或服务器中。
在一些实例中,获取模块901和确定模块902可以位于服务器中,获取模块901获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;确定模块902确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;及将所述随机参数发送至所述客户端,以使所述客户端根据所述随机参数生成指示所述可执行程序文件是否为随机生成的指示信息,及根据所述指示信息确定所述可执行程序文件是否为病毒文件。
在一些实例中,获取模块901和确定模块902可以位于客户端中,获取模块901发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确
DF10-180050定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,其中,所述标识是在所述可执行程序文件创建时生成的;确定模块902从所述服务器接收所述随机参数;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
在一些实例中,获取模块901和确定模块902可以位于服务器中,获取模块901获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;确定模块902确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;将所述指示信息发送至所述客户端,以使所述客户端根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
在一些实例中,获取模块901和确定模块902可以位于客户端中,获取模块901发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,及当所述随机参数满足条件,生成指示所述可执行程序文件为随机生成的指示信息,其中,所述标识是在所述可执行程序文件创建时生成的;确定模块902从所述服务器接收所述指示信息;根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
图10示出了数据处理装置900所在的计算设备的组成结构图。如图10所示,该计算设备包括一个或者多个处理器(CPU)1002、存储器1004、用户接口1006,以及用于互联这些组件的通信总线1008。
用户接口1006包括一个或多个输出设备1012,其包括一个或多个扬声器和/或一个或多个可视化显示器。用户接口1010也包括一个或多个输入设备1014,其包括诸如,键盘,鼠标,声音命令输入单元或扩音器,触屏显示器,触敏输入板,姿势捕获摄像机或其他输入按钮或控件等。
存储器1004可以是高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储设备;或者非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备,或其他非易失性固态存储设备。
存储器1004存储处理器1002可执行的指令集,包括:
操作系统1016,包括用于处理各种基本系统服务和用于执行硬件相关任务的程序;
应用1018,包括用于数据处理的各种应用程序,这种应用程序能够实现上述各实例中的处理流程,比如可以包括图9所示的数据处理装置900中的各模块901-902。各模块901-902可以存储有机器可执行指令。处理器1002通过执行存储器1006中各模块901-902的机器可执行指令,进而能够实现上述各模块901-902的功能。
需要说明的是,上述各流程和各结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。各模块的划分仅仅是为了便于描述采用的功能上的划分,实际实现时,一个模块可以分由多个模块实现,多个模块的功能也可以由同一个模块实现,这些模块可以位于同一个设备中,也可以位于不同的设备中。
各实例中的硬件模块可以以硬件方式或硬件平台加软件的方式实现。上述软件包括机器可读指令,存储在非易失性存储介质中。因此,各实例也可以体现为软件产品。例如,对应上述数据处理方法和装置,本申请的实例还提供了一种计算机可读存储介质,其上存储有计算机指令,其中,所述计算机指令被处理器执行时实现上述数据处理方法的步骤。
各实例中,硬件可以由专门的硬件或执行机器可读指令的硬件实现。例如,硬件可以为专门设计的永久性电路或逻辑器件(如专用处理器,如FPGA或ASIC)用于完成特定的操作。硬件也可以包括由软件临时配置的可编程逻辑器件或电路(如包括通用处理器或其它可编程处理器)用于执行特定操作。
另外,本申请的每个实例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本申请。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和/或内存)中执行。因此,这样的存储介质也构成了本申请,本申请还提供了一种非易失性存储介质,其中存储有数据处理程序,这种数据处理程序可用于执行本申请上述方法实例中的任何一种实例。
图9中的模块对应的机器可读指令可以使计算机上操作的操作系统等来完成这里描述的部分或者全部操作。非易失性计算机可读存储介质可以是插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器。安装在扩展板或者扩展单元上的CPU等可以根据指令执行部分和全部实际操作。
另外,在本申请各个实例中的装置及各模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上装置或模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本申请的较佳实例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (15)

1.一种数据处理方法,其特征在于,所述方法包括:
获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;
确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;
当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及
根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
2.根据权利要求1所述的方法,其中,所述标识是一个字符串,所述确定所述标识的随机参数,包括:
从所述标识中获取至少一个第一特征字符串,所述第一特征字符串为所述标识中相邻的两个字符;
确定各第一特征字符串出现的概率;及
根据各第一特征字符串出现的概率确定所述标识的随机参数。
3.根据权利要求2所述的方法,进一步包括:
根据样本库中各样本的唯一标识,确定概率集合,其中,所述样本为非随机生成的可执行程序文件,所述概率集合中的任一元素为一个第二特征字符串出现的概率,所述第二特征字符串为所述样本的所述标识中相邻的两个字符;
其中,所述确定各第一特征字符串出现的概率,包括:
从所述概率集合中查找到各第一特征字符串出现的概率。
4.根据权利要求3所述的方法,其中,所述根据样本库中各样本的唯一标识确定概率集合,包括:
获取所述样本库中各样本的所述标识中的各个第二特征字符串,形成第二特征字符串集合,每一个第二特征字符串包括在前的第一字符和在后的第二字符;
针对所述第二特征字符串集合中任一个第二特征字符串,确定在所述第二特征字符串集合中,该第二特征字符串中所述第一字符后面出现该第二特征字符串中所述第二字符的概率,将确定的所述概率作为该第二特征字符串出现的概率;以及
所述第二特征字符串集合中各个第二特征字符串出现的概率形成所述概率集合。
5.根据权利要求3所述的方法,其中,所述方法进一步包括:
获取多个第一样本的标识,形成第一标识集合,其中,所述第一样本为非随机生成的可执行程序文件;
获取多个第二样本的标识,形成第二标识集合,其中,所述第二样本为随机生成的可执行程序文件;
针对所述第一标识集合和所述第二标识集合中任一标识,执行以下处理:
获取该标识中至少一个第三特征字符串;
从所述概率集合中查找到各第三特征字符串出现的概率;
根据各第三特征字符串出现的概率确定该标识的随机参数;
确定所述第一标识集合和所述第二标识集合中至少两个标识的随机参数的均值;
其中,所述均值作为所述条件中的阈值。
6.根据权利要求1所述的方法,其中,所述确定所述可执行程序文件是否为病毒文件,包括:
获取所述可执行程序文件在预定时间内的用户访问量;
当所述用户访问量大于预定阈值时,确定所述可执行程序文件不是病毒文件;
当所述用户访问量小于预定阈值时,确定所述可执行程序文件的开发者;
当所述可执行程序文件的开发者曾发布过病毒文件时,确定所述可执行程序文件是病毒文件。
7.根据权利要求1所述的方法,其中,所述获取待检测的可执行程序文件的标识,包括:接收客户端发送的所述可执行程序文件;
所述方法进一步包括:
将指示所述可执行程序文件是否为病毒文件的检测结果发送至所述客户端。
8.根据权利要求1所述的方法,其中,所述方法应用于客户端,所述获取待检测的可执行程序文件的唯一标识,包括:从本地获取所述可执行程序文件的所述标识。
9.根据权利要求3所述的方法,其中,所述方法应用于客户端,所述获取待检测的可执行程序文件的唯一标识,包括:从本地获取所述可执行程序文件的所述标识;
所述概率集合为从服务器下载的。
10.一种数据处理方法,其特征在于,所述方法包括:
获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;
确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;及将所述随机参数发送至所述客户端,以使所述客户端根据所述随机性生成指示所述可执行程序文件是否为随机生成的指示信息,及根据所述指示信息确定所述可执行程序文件是否为病毒文件。
11.一种数据处理方法,其特征在于,所述方法包括:
发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,其中,所述标识是在所述可执行程序文件创建时生成的;
从所述服务器接收所述随机参数;
当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;
根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
12.一种数据处理方法,其特征在于,所述方法包括:
获取客户端发送的待检测的可执行程序文件的唯一标识,其中,所述标识是在所述可执行程序文件创建时生成的;
确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;
当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;
将所述指示信息发送至所述客户端,以使所述客户端根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
13.一种数据处理方法,其特征在于,所述方法包括:
发送待检测的可执行程序文件的唯一标识至服务器,以使所述服务器确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性,及当所述随机参数满足条件,生成指示所述可执行程序文件为随机生成的指示信息,其中,所述标识是在所述可执行程序文件创建时生成的;
从所述服务器接收所述指示信息;
根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
14.一种数据处理装置,其特征在于,所述装置包括:
获取模块,获取待检测的可执行程序文件的唯一标识,所述标识是在所述可执行程序文件创建时生成的;
确定模块,确定所述标识的随机参数,所述随机参数表征生成所述标识的随机性;当所述随机参数满足条件时,生成指示所述可执行程序文件为随机生成的指示信息;及根据所述指示信息,确定所述可执行程序文件是否为病毒文件。
15.一种存储介质,存储有计算机可读指令,可以使至少一个处理器执行如权利要求1至13任一项所述的方法。
CN201810225384.5A 2018-03-19 2018-03-19 数据处理方法、装置及存储介质 Active CN108470126B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810225384.5A CN108470126B (zh) 2018-03-19 2018-03-19 数据处理方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810225384.5A CN108470126B (zh) 2018-03-19 2018-03-19 数据处理方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN108470126A true CN108470126A (zh) 2018-08-31
CN108470126B CN108470126B (zh) 2020-05-01

Family

ID=63265531

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810225384.5A Active CN108470126B (zh) 2018-03-19 2018-03-19 数据处理方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN108470126B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359274A (zh) * 2018-09-14 2019-02-19 阿里巴巴集团控股有限公司 一种对批量生成的字符串进行识别的方法、装置及设备
CN111625830A (zh) * 2019-02-27 2020-09-04 阿里巴巴集团控股有限公司 数据处理方法、数据展示方法、系统及设备
CN112989349A (zh) * 2021-04-19 2021-06-18 腾讯科技(深圳)有限公司 病毒检测方法、装置、设备及存储介质
CN113742727A (zh) * 2021-08-27 2021-12-03 恒安嘉新(北京)科技股份公司 程序识别模型训练和程序识别方法、装置、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030041221A1 (en) * 2001-08-23 2003-02-27 Yoshiyuki Okada Data protection method, data protection system, access apparatus, computer-readable recording medium on which access program is recorded and data recording apparatus
CN102822839A (zh) * 2009-12-31 2012-12-12 迈克菲股份有限公司 经由信誉系统的恶意软件检测
CN103679024A (zh) * 2013-11-19 2014-03-26 百度国际科技(深圳)有限公司 病毒的处理方法及设备
CN104657664A (zh) * 2013-11-19 2015-05-27 百度在线网络技术(北京)有限公司 病毒的处理方法及设备
US20150264025A1 (en) * 2014-03-17 2015-09-17 Microsoft Corporation Persistent bookmarklet authorization
US20170048271A1 (en) * 2014-02-06 2017-02-16 Dropbox, Inc. Random identifier generation for offline database
CN106897616A (zh) * 2015-12-17 2017-06-27 腾讯科技(深圳)有限公司 一种程序文件的处理方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030041221A1 (en) * 2001-08-23 2003-02-27 Yoshiyuki Okada Data protection method, data protection system, access apparatus, computer-readable recording medium on which access program is recorded and data recording apparatus
CN102822839A (zh) * 2009-12-31 2012-12-12 迈克菲股份有限公司 经由信誉系统的恶意软件检测
CN103679024A (zh) * 2013-11-19 2014-03-26 百度国际科技(深圳)有限公司 病毒的处理方法及设备
CN104657664A (zh) * 2013-11-19 2015-05-27 百度在线网络技术(北京)有限公司 病毒的处理方法及设备
US20170048271A1 (en) * 2014-02-06 2017-02-16 Dropbox, Inc. Random identifier generation for offline database
US20150264025A1 (en) * 2014-03-17 2015-09-17 Microsoft Corporation Persistent bookmarklet authorization
CN106897616A (zh) * 2015-12-17 2017-06-27 腾讯科技(深圳)有限公司 一种程序文件的处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨欢 等: "基于多类特征的Android应用恶意行为检测系统", 《计算机学报》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359274A (zh) * 2018-09-14 2019-02-19 阿里巴巴集团控股有限公司 一种对批量生成的字符串进行识别的方法、装置及设备
CN111625830A (zh) * 2019-02-27 2020-09-04 阿里巴巴集团控股有限公司 数据处理方法、数据展示方法、系统及设备
CN111625830B (zh) * 2019-02-27 2023-04-14 阿里巴巴集团控股有限公司 数据处理方法、数据展示方法、系统及设备
CN112989349A (zh) * 2021-04-19 2021-06-18 腾讯科技(深圳)有限公司 病毒检测方法、装置、设备及存储介质
CN112989349B (zh) * 2021-04-19 2021-08-13 腾讯科技(深圳)有限公司 病毒检测方法、装置、设备及存储介质
CN113742727A (zh) * 2021-08-27 2021-12-03 恒安嘉新(北京)科技股份公司 程序识别模型训练和程序识别方法、装置、设备及介质

Also Published As

Publication number Publication date
CN108470126B (zh) 2020-05-01

Similar Documents

Publication Publication Date Title
Tian et al. Needle in a haystack: Tracking down elite phishing domains in the wild
JP7018920B2 (ja) 機密情報処理方法、装置、及び、サーバ、ならびに、セキュリティ決定システム
US11671448B2 (en) Phishing detection using uniform resource locators
Chen et al. GUI-squatting attack: Automated generation of Android phishing apps
CN108470126A (zh) 数据处理方法、装置及存储介质
CN107003976A (zh) 基于可准许活动规则确定可准许活动
CN105205397B (zh) 恶意程序样本分类方法及装置
CN106874253A (zh) 识别敏感信息的方法及装置
US11361068B2 (en) Securing passwords by using dummy characters
US20210203690A1 (en) Phishing detection using certificates associated with uniform resource locators
US20090235178A1 (en) Method, system, and computer program for performing verification of a user
CN109492118A (zh) 一种数据检测方法及检测装置
CN106569860A (zh) 一种应用管理方法及终端
US20210203693A1 (en) Phishing detection based on modeling of web page content
US20170244741A1 (en) Malware Identification Using Qualitative Data
Gowtham et al. PhishTackle—a web services architecture for anti-phishing
CN109495513A (zh) 无监督的加密恶意流量检测方法、装置、设备及介质
US8910281B1 (en) Identifying malware sources using phishing kit templates
CN115001724B (zh) 网络威胁情报管理方法、装置、计算设备及计算机可读存储介质
US11470114B2 (en) Malware and phishing detection and mediation platform
JP7140268B2 (ja) 警告装置、制御方法、及びプログラム
CN109740344B (zh) 威胁情报模型建立方法、装置、电子设备及存储介质
WO2021133592A1 (en) Malware and phishing detection and mediation platform
Payal et al. JigCAPTCHA: An Advanced Image-Based CAPTCHA Integrated with Jigsaw Piece Puzzle using AJAX
Jayakanthan et al. Classification model to detect malicious URL via behaviour analysis

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