CN103369555A - 一种用于检测手机病毒的方法和装置 - Google Patents
一种用于检测手机病毒的方法和装置 Download PDFInfo
- Publication number
- CN103369555A CN103369555A CN2012100970102A CN201210097010A CN103369555A CN 103369555 A CN103369555 A CN 103369555A CN 2012100970102 A CN2012100970102 A CN 2012100970102A CN 201210097010 A CN201210097010 A CN 201210097010A CN 103369555 A CN103369555 A CN 103369555A
- Authority
- CN
- China
- Prior art keywords
- virus document
- file
- executable file
- virus
- similarity degree
- 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
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及一种用于检测手机病毒的方法和装置,其中,该装置包括:计算模块,用于计算待检测的可执行文件的文件内容与至少一个病毒文件中的每个病毒文件的文件内容的相似程度值,其中,所述至少一个病毒文件各自包含不同的已知手机病毒;检测模块,用于当所述可执行文件的文件内容与所述多个病毒文件中的选定病毒文件的文件内容的相似程度值大于指定阈值时,检测所述可执行文件在执行时出现的危险行为,其中,所述可执行文件的文件内容与所述选定病毒文件的文件内容的相似程度值最大;以及,确定模块,用于根据所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定所述可执行文件是否包含已知手机病毒的变形病毒。利用该方法和装置,不需要病毒的特征码就能检测出已知手机病毒的变形病毒。
Description
技术领域
本发明涉及一种用于检测手机病毒的方法和装置。
背景技术
随着移动终端的广泛应用,出现了针对移动终端的病毒。通常将这种病毒称作手机病毒。
目前,已经出现了许多针对手机病毒的杀毒软件,其通常根据手机病毒的特征码来检测手机病毒,以保护移动终端免受手机病毒侵害。
为此,恶意攻击者想出各种方法来改进手机病毒,以避免手机病毒被杀毒软件检测。其中一种方法是对已知手机病毒作轻微修改,改变手机病毒的特征码,从而生成一种新手机病毒。这种新手机病毒被称作已知手机病毒的变形病毒。
由于在已知手机病毒的变形病毒被发现之前,杀毒软件不知道已知手机病毒的变形病毒的特征码,因此,目前这些依靠病毒的特征码来杀毒的软件并不能检测出已知手机病毒的变形病毒。
发明内容
考虑到现有技术的上述问题,本发明的实施例提供一种用于检测手机病毒的方法和装置,其不需要病毒的特征码就可以检测已知手机病毒的变形病毒。
按照本发明实施例的一种用于检测手机病毒的方法,包括步骤:计算待检测的可执行文件的文件内容与至少一个病毒文件中的每个病毒文件的文件内容的相似程度值,其中,所述至少一个病毒文件各自包含不同的已知手机病毒;当所述可执行文件的文件内容与所述多个病毒文件中的选定病毒文件的文件内容的相似程度值大于指定阈值时,检测所述可执行文件在执行时出现的危险行为,其中,所述可执行文件的文件内容与所述选定病毒文件的文件内容的相似程度值最大;以及,根据所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定所述可执行文件是否包含已知手机病毒的变形病毒。
其中,所述计算步骤可以进一步包括:根据所述可执行文件和所述每个病毒文件中的多个指定位置的数据块,来计算所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
其中,所述计算步骤可以包括:从所述可执行文件中的所述多个指定位置提取多个数据块;获取所述每个病毒文件的数据块集,其中,所述每个病毒文件的数据块集包括从该病毒文件中的所述多个指定位置获取的多个数据块;计算所述可执行文件与所述每个病毒文件的多个相似程度子值,其中,与所述每个病毒文件的多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件中的相同位置获取的一个数据块两者的相同字节数与从该病毒文件中的该相同位置获取的该数据块的总字节数的比值来确定;以及,计算所述可执行文件与所述每个病毒文件的多个相似程度子值的加权求和之值,作为所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
其中,所述计算步骤还可以包括:在计算所述多个相似程度子值之前,去除所述提取的多个数据块中的无意义字节。
其中,所述确定步骤可以包括:计算所述检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为两者的相同行为数与所述选定病毒文件所包含的已知手机病毒的危险行为的总行为数的比值;判断所计算的比值是否大于预定阈值;以及,当判断结果为肯定时,判定所述可执行文件包含已知手机病毒的变形病毒。
其中,所述可执行文件和所述多个病毒文件可以具有相同的文件类型。
其中,所述方法还包括步骤:从所提取的多个数据块中获取用于表征所述变形病毒的家族特征的数据块或者用于表征所述变形病毒的家族特征和唯一特征的数据块。
按照本发明实施例的一种用于检测手机病毒的装置,包括:计算模块,用于计算待检测的可执行文件与至少一个病毒文件中的每个病毒文件的相似程度值,其中,所述至少一个病毒文件各自包含不同的已知手机病毒;检测模块,用于当所述可执行文件的文件内容与所述至少一个病毒文件中的选定病毒文件的文件内容的相似程度值大于指定阈值时,检测所述可执行文件在执行时出现的危险行为,其中,所述可执行文件的文件内容与所述选定病毒文件的文件内容的相似程度值最大;以及,确定模块,用于根据所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定所述可执行文件是否包含已知手机病毒的变形病毒。
其中,所述计算模块可以进一步用于:根据所述可执行文件和所述每个病毒文件中的多个指定位置的数据块,来计算所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
其中,所述计算模块可以包括:提取模块,用于从所述可执行文件的所述多个指定位置提取多个数据块;获取模块,用于获取所述每个病毒文件的数据块集,其中,所述每个病毒文件的数据块集包括从该病毒文件中的所述多个指定位置获取的多个数据块;获得模块,用于计算所述可执行文件与所述每个病毒文件的多个相似程度子值,其中,与所述每个病毒文件的多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件中的相同位置获取的一个数据块两者的相同字节数与从该病毒文件中的该相同位置获取的该数据块的总字节数的比值来确定;以及,取得模块,用于计算所述可执行文件与所述每个病毒文件的多个相似程度子值的加权求和之值,作为所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
其中,所述计算模块还可以包括:去除模块,用于在计算所述多个相似程度子值之前,去除所述提取的多个数据块中的无意义字节。
其中,所述确定模块可以包括:求值模块,用于计算所述检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为两者的相同行为数与所述选定病毒文件所包含的已知手机病毒的危险行为的总行为数的比值;判断模块,用于判断所计算的比值是否大于预定阈值;以及,判定模块,用于当判断结果为肯定时,判定所述可执行文件包含已知手机病毒的变形病毒。
其中,所述可执行文件和所述多个病毒文件可以具有相同的文件类型。
其中,所述装置还可以包括:特征获取模块,用于从所提取的多个数据块中获取用于表征所述变形病毒的家族特征的数据块或者用于表征所述变形病毒的家族特征和唯一特征的数据块。
从上面的描述可见,本发明的实施例根据已知手机病毒和及其变形病毒的危险行为相似性以及包含已知手机病毒的病毒文件的文件内容和包含已知手机病毒的变形病毒的病毒文件的文件内容的相似性来检测已知手机病毒的变形病毒,从而不需要病毒的特征码就能检测出已知手机病毒的变形病毒。
附图说明
本发明的其它特点、特征、优点和益处通过以下结合附图的详细描述将变得更加显而易见。其中:
图1示出了按照本发明一个实施例的用于检测手机病毒的方法的流程图;
图2示出了按照本发明一个实施例的获取用于表征变形病毒的特征的数据块的方法流程图;
图3示出了按照本发明一个实施例的用于检测手机病毒的装置的示意图;以及
图4示出了按照本发明一个实施例的用于检测手机病毒的设备的示意图。
具体实施方式
发明人研究发现,已知手机病毒及其变形病毒两者的危险行为非常相似,包含已知手机病毒的病毒文件和包含已知手机病毒的变形病毒的病毒文件两者在文件内容方面也非常相似。
基于以上发现,本发明实施例提供一种用于检测手机病毒的技术方案,其首先计算待检测的可执行文件的文件内容与至少一个各自包含不同的已知手机病毒的病毒文件的每个病毒文件的文件内容的相似程度值;然后,当该可执行文件与该至少一个病毒文件中的选定病毒文件的相似程度值大于指定阈值时,执行该可执行文件以获取所述可执行文件在执行时出现的可危险行为,其中,该可执行文件的文件内容与该选定病毒文件的文件内容的相似程度值最大;最后,根据所获取的危险行为和该选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定该可执行文件是否包含已知手机病毒的变形病毒。从而,不需要病毒的特征码就能检测出已知手机病毒的变形病毒。
下面,将结合附图详细描述本发明的各个实施例。
现在参见图1,其示出了按照本发明一个实施例的用于检测手机病毒的方法的流程图。本领域技术人员应当理解,本实施例所公开的方法既可以在移动终端或其它任意终端上执行,也可以在移动网络的网络侧中的任一网络物理实体(例如网关、路由器、安全监测设备等)执行。
如图1所示,在步骤S100,获取待检测的可执行文件D。
这里,可执行文件既D可以是在移动终端和其他设备之间传输的文件,其既可以从移动终端或其它任意终端中获取,也可以从移动网络的网络侧获取,例如从通用分组无线服务技术(GPRS)网络的Gn接口中获取。
可执行文件D可以是适用于各个移动终端的操作系统的可执行文件,例如可以是适用于塞班(Symbian)操作系统的SIS/SISX文件、适用于安卓(Android)操作系统的APK文件、适用于Windows Mobile操作系统的CAB文件、适用于Windows Phone 7操作系统的XAP文件、适用于苹果操作系统(iPhone)的OSX文件等。
在步骤S104,根据已知手机病毒的特征码,扫描可执行文件D以确定可执行文件D中是否包含已知手机病毒。
在步骤S108,如果步骤S104的扫描结果为肯定,即可执行文件D中包含已知手机病毒,则确定可执行文件D是病毒文件,然后流程结束。
在步骤S112,如果步骤S104的扫描结果为否定,即可执行文件D中未包含已知的手机病毒,则检测可执行文件D的文件类型。即检测可执行文件D是SIS/SISX文件、APK文件、CAB文件、XAP文件还是OSX文件等。
在步骤S116,根据对于具有所检测的文件类型的可执行文件预先设定的多个用于提取数据块的指定位置,从可执行文件D中提取多个数据块。其中,从可执行文件D的所述多个指定位置中的每个指定位置提取一个数据块。例如,假设可执行文件D是SIS/SISX文件,并且对于SIS/SISX文件预先设定了三个用于提取数据块的指定位置,那么根据本步骤,从可执行文件D的这三个指定位置分别提取一个数据块,从而得到三个数据块。其中,该多个指定位置是统计得到的具有所检测的文件类型的包含已知手机病毒的病毒文件和具有所检测的文件类型的包含已知手机病毒的变形病毒的病毒文件在文件内容上比较相似的位置。
这里,用于提取数据块的指定位置可以是文件中的指定字段。例如,SIS/SISX文件包括文件头(File Header)和文件内容(SISContents)两个部分,文件头(File Header)包括UID1、UID2、UID3和UID Checksum四个字段。文件内容(SISContents)包括文件控制器(SISController)、文件信息(SISInfo)、文件标记(SISLogo)和文件描述(SISFileDescription)四个部分。文件控制器(SISController)、文件信息(SISInfo)、文件标记(SISLogo)和文件描述(SISFileDescription)这四个部分各自又包括多个字段。这样,可以从SIS文件的文件头(File Header)、文件控制器(SISController)、文件信息(SISInfo)、文件标记(SISLogo)和文件描述(SISFileDescription)这五个部分中选取一些字段作为SIS/SISX文件用于提取数据块的指定位置。这些选取的字段例如可以包括文件控制器(SISController)这一部分中的证书链(SISSignatureCertificateChain)字段,其可以用于检测同一个证书签名的变形病毒。
在步骤S120,为了提高病毒检测的效率,减少病毒检测的计算量,可以去除所提取的可执行文件D的各个数据块中的无意义字节。
在步骤S124,从病毒样本库DB中检索其文件类型与可执行文件D的文件类型相同的各个病毒文件V的数据块集。其中,病毒样本库DB包括若干个病毒样本集,每一个病毒样本集包括属于其中一种文件类型的若干病毒文件的数据块集,这里每一个病毒文件都是可执行文件且包含其中一种已知手机病毒。每一个病毒文件的数据块集包括从该病毒文件的多个位置提取的多个数据块。从病毒文件中提取数据块的位置是预先设定的,并且属于同一文件类型的文件提取数据块的位置是相同的。这里,每一个病毒文件的数据块集中的各个数据块中的无意义字节已经被去除。
在步骤S128,利用可执行文件D的已经去除了无意义字节的多个数据块和所检索的各个病毒文件V的数据块集,计算可执行文件D与各个病毒文件V中的每一个病毒文件Vi的多个相似程度子值。其中,可执行文件D与病毒文件Vi的多个相似程度子值分别等于从可执行文件D中提取的一个数据块Si和病毒文件Vi的数据块集中的一个数据块Ti两者的相同字节数与数据块Ti的总字节数的比值,其中数据块Si在可执行文件D中的位置与数据块Ti在病毒文件Vi中的位置相同。
例如,假设可执行文件D的多个数据块包括S1、S2和S3,其分别从可执行文件D的三个不同指定位置W1、W2和W3提取,以及病毒文件Vi的数据块集包括T1、T2和T3,其分别从病毒文件Vi的三个不同指定位置W1、W2和W3提取,则计算可执行文件D与病毒文件Vi的三个相似程度子值P1、P2和P3,其中,相似程度子值P1等于数据块S1和T1两者的相同字节数与数据块T1的总字节数的比值,相似程度子值P2等于数据块S2和T2两者的相同字节数与数据块T2的总字节数的比值,以及,相似程度子值P3等于数据块S3和T3两者的相同字节数与数据块T3的总字节数的比值。以数据块S1和T1为例,假设数据块T1从左至右包括五个字节(以十六进制数表示):4F、54、E1、6F和A8,而数据块S1从左至右包括五个字节(以十六进制数表示):4F、DA、E1、4E和A8。显然,从左至右,数据块T1和S1的第一个字节相同(都是4F),数据块T1和S1的第二个字节不相同(分别是54和DA),数据块T1和S1的第三个字节相同(都是E1),数据块T1和S1的第四个字节不相同(分别是6F和4E),以及,数据块T1和S1的第五个字节相同(都是A8)。从而,数据块T1和S1两者的相同字节数是3。由于数据块T1的总字节数是5,因此,数据块S1和T1两者的相同字节数与数据块T1的总字节数的比值等于3/5=0.6。
在具体实施时,对于从可执行文件D中和病毒文件Vi中的一个或多个指定位置提取出的数据块,可以先对其中的字节进行解码,然后再对解码后的字节进行比较。例如,当从可执行文件D中和病毒文件Vi中的一个指定位置提取出的数据块中包含ASCII编码的字符时,可以先对其进行ASCII编码的解码,再对解码后的字符进行比较。
在步骤S132,通过对所计算的可执行文件D与各个病毒文件V中的每一个病毒文件Vi的多个相似程度子值分别加权求和,计算可执行文件D的文件内容与各个病毒文件V中的每一个病毒文件Vi的文件内容的相似程度值。以上面提到的可执行文件D与病毒文件Vi的三个相似程度子值P1、P2和P3为例,按照如下计算可执行文件D的文件内容与病毒文件Vi的文件内容的相似程度值P:P=P1*a+P2*b+P3*c。其中,a、b和c是加权系数,其大小可以根据实际需要确定。
在步骤S136,从所计算的相似程度值中,选出最大相似程度值。为了便于以下描述,假设可执行文件D的文件内容与各个病毒文件V中的病毒文件Vk的文件内容的相似程度值是最大的相似程度值。
在步骤S140,判断可执行文件D的文件内容与病毒文件Vk的文件内容的相似程度值是否大于指定阈值。如果可执行文件D的文件内容与病毒文件Vk的文件内容的相似程度值未大于指定阈值,则表明可执行文件D未包含已知手机病毒的变形病毒。如果可执行文件D的文件内容与病毒文件Vk的文件内容的相似程度值大于指定阈值,则表明可执行文件D可能包含已知手机病毒的变形病毒。
在步骤S144,如果步骤S140的判断结果为否定,即可执行文件D的文件内容与病毒文件Vk的文件内容的相似程度值未大于指定阈值,则确定可执行文件D未包含已知手机病毒的变形病毒,流程结束。
在步骤S148,如果步骤S140的判断结果为肯定,即可执行文件D的文件内容与病毒文件Vk的文件内容的相似程度值大于指定阈值,则通过在模拟器中执行可执行文件D,以检测可执行文件D在执行时出现的危险行为。这里,危险行为是指可能对用户造成损害的行为,例如包括但不限于:未经用户许可访问恶意网站、未经用户许可修改或删除注册表中的内容、未经用户许可利用短消息或彩信向其它终端发送消息等。
在步骤S152,计算可执行文件D的危险行为和病毒文件Vk所包含的已知手机病毒的危险行为两者的相同行为数与病毒文件Vk所包含的已知手机病毒的危险行为的总行为数的比值。这里,危险行为例如包括但不限于:未经用户许可访问恶意网站、未经用户许可利用短消息或彩信向其它终端发送消息等。
在步骤S156,判断所计算的比值是否大于预定阈值。
在步骤S160,如果步骤S156的判断结果为否定,即所计算的比值未大于预定阈值,则确定可执行文件D未包含已知手机病毒的变形病毒,流程结束。
在步骤S164,如果步骤S156的判断结果为肯定,即所计算的比值大于预定阈值,则确定可执行文件D包含已知手机病毒的变形病毒,流程结束。
在确定可执行文件D包含已知手机病毒的变形病毒之后,还可以从可执行文件D中获取用于表征该变形病毒的特征的数据块。
参见图2,其示出了按照本发明一个实施例的获取用于表征变形病毒的特征的数据块的方法流程图。
如图2所示,在步骤S200,从病毒特征库DQ中检索出用于表征病毒文件Vk所包含的已知手机病毒Vkv的特征的数据块,其是从病毒样本库DB中检索出的病毒文件Vk的数据块集中的至少一个数据块。
在步骤S204,检查所提取的可执行文件D的多个数据块中是否存在第一特定数据块PT1,其中,该第一特定数据块PT1所包含的字节与用于表征已知手机病毒Vkv的特征的数据块中的对应数据块VVi所包含的字节相同,其中,该对应数据块VVi在病毒文件Vk中的位置与该第一特定数据块PT1在可执行文件D中的位置相同。
在步骤S208,如果步骤S204的检查结果表明存在该第一特定数据块PT1,则把该第一特定数据块PT1作为用于表征该变形病毒的家族特征的数据块。
在步骤S212,如果步骤S204的检查结果表明不存在该第一特定数据块PT1,则从所提取的可执行文件D的多个数据块中检索出第一特殊数据块TS1,其中,该第一特殊数据块TS1所包含的字节与病毒文件Vk的数据块集中的对应数据块Vkk所包含的字节相同,其中,该对应数据块Vkk在病毒文件Vk中的位置与该第一特殊数据块TS1在可执行文件D中的位置相同。
在步骤S216,检测所检索的第一特殊数据块TS1中是否存在第二特定数据块PT2,其中,该第二特定数据块PT2所包含的字节与病毒样本库DB所保存的除了病毒文件Vk之外的其他任意病毒文件的数据块集中的对应数据块XSJ所包含的字节不相同,其中,该第二特定数据块PT2在可执行文件D中的位置与该对应数据块XSJ在该其他任意病毒文件中的位置相同。
如果步骤S216的检测结果表明不存在该第二特定数据块PT2,则流程结束。
在步骤S220,如果步骤S216的检测结果表明存在该第二特定数据块PT2,则把该第二特定数据块PT2作为用于表征该变形病毒的家族特征的数据块。
在步骤S224,从所提取的可执行文件D的多个数据块中检索第二特殊数据块TS2,该第二特殊数据块TS2所包含的字节与病毒文件Vk的数据块集中的对应数据块DY所包含的字节不相同,其中,该对应数据块DY在病毒文件Vk中的位置与该第二特殊数据块TS2在可执行文件D中的位置相同。
在步骤S228,从所检索的第二特殊数据块TS2中检测第三特定数据块PT3,其中,该第三特定数据块PT3所包含的字节与病毒样本库DB所保存的除了病毒文件Vk之外的其他任意病毒文件的数据块集中的对应数据块DYSJ所包含的字节不相同,其中,该第三特定数据块PT3在可执行文件D中的位置与该对应数据块DYSJ在该其他任意病毒文件中的位置相同。
在步骤S232,把所检测的第三特定数据块PT3作为用于表征该变形病毒的唯一特征的数据块。
本领域技术人员应当理解,虽然在上面的实施例中,如步骤S152-S164所示出的,通过可执行文件D在执行时出现的危险行为和病毒文件Vk所包含的已知手机病毒的危险行为两者的相同行为数与病毒文件Vk所包含的已知手机病毒的危险行为的总行为数的比值是否大于预定阈值来确定可执行文件D的危险行为和病毒文件Vk所包含的已知手机病毒的危险行为是否相似,然而,本发明并不局限于此。在本发明的其它一些实施例中,例如也可以通过可执行文件D的危险行为与病毒文件Vk所包含的已知手机病毒的危险行为两者的相同行为数是否达到预先指定的阈值,来确定可执行文件D在执行时出现的危险行为和病毒文件Vk所包含的已知手机病毒的危险行为是否相似。即,如果可执行文件D的危险行为与病毒文件Vk所包含的已知手机病毒的危险行为两者的相同行为数达到预先指定的阈值,则确定可执行文件D的危险行为和病毒文件Vk所包含的已知手机病毒的危险行为相似,否则确定不相似。
此外,本领域技术人员应当理解,虽然在上面的实施例中,如步骤S120-S124所示出的,可执行文件D的各个数据块和各个病毒文件的数据块集中的各个数据块都被去除无意义字节,然而,本发明并不局限于此。在本发明的其它一些实施例中,可执行文件D的各个数据块和各个病毒文件的数据块集中的各个数据块中的无意义字节也可以不去除。
此外,本领域技术人员应当理解,虽然在上面的实施例中,计算可执行文件D与病毒文件Vi的多个相似程度子值的加权求和之值,作为可执行文件D的文件内容与病毒文件Vi的文件内容的相似程度值。然而,本发明并不局限于此。在本发明的其它一些实施例中,也可以计算可执行文件D与病毒文件Vi的多个相似程度子值中达到预定程度阈值的相似程度子值的数量,作为可执行文件D的文件内容与病毒文件Vi的文件内容的相似程度值。例如,假设可执行文件D与病毒文件Vi的多个相似程度子值是50%、20%、38%、69%、89%、96%,预定程度阈值是49%,则该六个相似程度子值中达到预定程度阈值49%的相似程度子值的数量是4个,从而可执行文件D的文件内容与病毒文件Vi的文件内容的相似程度值是4个。
此外,本领域技术人员应当理解,虽然在上面的实施例中,利用可执行文件D中和病毒文件中的指定位置的数据块,来计算可执行文件D的文件内容与病毒文件的文件内容的相似程度值,然而,本发明并不局限于此。在本发明的其它一些实施例中,例如也可以利用可执行文件D中和病毒文件中的所有位置的数据块,来计算可执行文件D的文件内容与病毒文件的文件内容的相似程度值。例如,假设可执行文件D和病毒文件都是由十个数据块依次排列组成,从而,在本发明的实施例中,既可以仅利用可执行文件D中和病毒文件中指定位置的数据块(例如第一、三、五、七个数据块)来计算可执行文件D的文件内容与病毒文件的文件内容的相似程度值,也可以利用可执行文件D中和病毒文件中的所有十个数据块来计算可执行文件D的文件内容与病毒文件的文件内容的相似程度值。
此外,本领域技术人员应当理解,虽然在上面的实施例中,如步骤S104所示出的,需要扫描可执行文件D以确定可执行文件D中是否包含已知手机病毒。然而,本发明并不局限于此。在本发明的其它一些实施例中,例如也可以不包括扫描可执行文件D以确定可执行文件D中是否包含已知手机病毒这个步骤。
现在参见图3,其示出了按照本发明一个实施例的用于检测手机病毒的装置的示意图。本领域技术人员应当理解,图3所示的用于检测手机病毒的装置可以利用软件、硬件或软硬件结合的方式来实现,并且可以安装在移动终端中或网络侧的任意物理实体中。
如图3所示,装置20可以包括计算模块210、检测模块220和确定模块230。其中,计算模块210用于计算待检测的可执行文件F的文件内容与至少一个病毒文件H中的每个病毒文件Hi的相似程度值,其中,该至少一个病毒文件H各自包含不同的已知手机病毒。检测模块220用于当可执行文件F的文件内容与该至少一个病毒文件H中的选定病毒文件Hk的文件内容的相似程度值大于指定阈值时,检测可执行文件F在执行时出现的危险行为,其中,可执行文件F的文件内容与选定病毒文件Hk的文件内容的相似程度值最大。确定模块230用于根据所检测的可执行文件F在执行时出现的危险行为和选定病毒文件Hk所包含的已知手机病毒的危险行为的相似程度,确定可执行文件F是否包含已知手机病毒的变形病毒。
此外,计算模块210可以进一步用于根据可执行文件F中和每个病毒文件Hi中的多个指定位置的数据块,计算可执行文件F的文件内容与每个病毒文件Hi的文件内容的相似程度值。
此外,计算模块210可以包括提取模块212、获取模块214、获得模块216和取得模块218。其中,提取模块212用于从可执行文件F的多个指定位置提取多个数据块。获取模块214用于获取每个病毒文件Hi的数据块集,其中,每个病毒文件Hi的数据块集包括从该病毒文件Hi的该多个指定位置取得的多个数据块。获得模块216用于计算可执行文件H与每个病毒文件Hi的多个相似程度子值,其中,与每个病毒文件Hi的该多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件Hi中的相同位置获取的一个数据块两者的相同字节数与从该病毒文件Hi中的该相同位置获取的该数据块的总字节数的比值来确定。取得模块218用于计算可执行文件F与每个病毒文件Hi的多个相似程度子值的加权求和之值,作为可执行文件F的文件内容与每个病毒文件Hi的文件内容的相似程度值。
此外,计算模块210还可以包括去除模块219,用于在计算该多个相似程度子值之前,去除所提取的可执行文件F的多个数据块中的无意义字节。
此外,确定模块230可以包括求值模块232、判断模块234和判定模块236。其中,求值模块232用于计算所检测的可执行文件F在执行时出现的危险行为和该选定病毒文件Hk所包含的已知手机病毒的危险行为两者的相同行为数与该选定病毒文件Hk所包含的已知手机病毒的危险行为的总行为数的比值。判断模块234用于判断所计算的比值是否大于预定阈值。判定模块236用于当判断结果为肯定时,判定可执行文件F包含已知手机病毒的变形病毒。
此外,可执行文件F和该至少一个病毒文件H可以具有相同的文件类型。
此外,装置20还可以包括特征获取模块240,用于从所提取的可执行文件F的多个数据块中,获取用于表征可执行文件F所包含的已知手机病毒的变形病毒的家族特征的数据块或者用于表征可执行文件F所包含的已知手机病毒的变形病毒的家族特征和唯一特征的数据块。
现在参见图4,其示出了按照本发明一个实施例的用于检测手机病毒的设备的示意图。本领域技术人员应当理解,图4所示的用于检测手机病毒的设备可以是移动终端或网络侧的任意物理实体。
如图4所示,用于检测手机病毒的设备30可以包括存储器310和处理器320。其中,存储器310可以用于存储可执行指令。处理器320可以用于根据存储器310所存储的可执行指令,执行以下步骤:计算待检测的可执行文件F的文件内容与至少一个病毒文件H中的每个病毒文件Hi的文件内容的相似程度值,其中,该至少一个病毒文件H各自包含不同的已知手机病毒;当可执行文件F的文件内容与该至少一个病毒文件H中的选定病毒文件Hk的文件内容的相似程度值大于指定阈值时,检测可执行文件F在执行时出现的危险行为,其中,可执行文件F的文件内容与选定病毒文件Hk的文件内容的相似程度值最大;以及,根据所检测的可执行文件F的危险行为和选定病毒文件Hk所包含的已知手机病毒的危险行为的相似程度,确定可执行文件F是否包含已知手机病毒的变形病毒。
此外,前述计算步骤可以进一步用于:根据可执行文件F和每个病毒文件Hi中的多个指定位置的数据块,计算可执行文件F的文件内容与每个病毒文件Hi的相似程度值。
此外,前述计算步骤可以包括:从可执行文件F的多个指定位置提取多个数据块;获取每个病毒文件Hi的数据块集,其中,每个病毒文件Hi的数据块集包括从该病毒文件Hi的该多个指定位置取得的多个数据块;计算可执行文件H与每个病毒文件Hi的多个相似程度子值,其中,与每个病毒文件Hi的该多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件Hi中的相同位置获取的一个数据块两者的相同字节数与该病毒文件Hi中的该相同位置获取的该数据块的总字节数的比值来确定;以及,计算可执行文件F与每个病毒文件Hi的多个相似程度子值的加权求和之值,作为可执行文件F的文件内容与每个病毒文件Hi的文件内容的相似程度值。此外,处理器320还可以用于根据存储器310所存储的可执行指令,执行以下步骤:在计算该多个相似程度子值之前,去除所提取的可执行文件F的多个数据块中的无意义字节。
此外,前述确定步骤可以包括:计算所检测的可执行文件F的危险行为和该选定病毒文件Hk所包含的已知手机病毒的危险行为两者的相同行为数与该选定病毒文件Hk所包含的已知手机病毒的危险行为的总行为数的比值;判断所计算的比值是否大于预定阈值;以及,当判断结果为肯定时,判定可执行文件F包含已知手机病毒的变形病毒。
此外,可执行文件F和该多个病毒文件H可以具有相同的文件类型。
此外,处理器320还可以用于根据存储器310所存储的可执行指令,执行以下步骤:从所提取的可执行文件F的多个数据块中,获取用于表征可执行文件F所包含的已知手机病毒的变形病毒的家族特征的数据块或用于表征可执行文件F所包含的已知手机病毒的变形病毒的家族特征和唯一特征的数据块。
本发明的实施例还提供一种机器可读介质,其上存储有可执行指令,当该可执行指令被执行时,使得机器执行前述处理器320所执行的步骤。
上文通过附图和实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,本领域技术人员从中推导出来的其他方案也在本发明的保护范围之内。因此,本发明的保护范围应当由所附的权利要求书来定义。
Claims (16)
1.一种用于检测手机病毒的方法,包括步骤:
计算待检测的可执行文件的文件内容与至少一个病毒文件中的每个病毒文件的文件内容的相似程度值,其中,所述至少一个病毒文件各自包含不同的已知手机病毒;
当所述可执行文件的文件内容与所述至少一个病毒文件中的选定病毒文件的文件内容的相似程度值大于指定阈值时,检测所述可执行文件在执行时出现的危险行为,其中,所述可执行文件的文件内容与所述选定病毒文件的文件内容的相似程度值最大;以及
根据所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定所述可执行文件是否包含已知手机病毒的变形病毒。
2.如权利要求1所述的方法,其中,所述计算步骤进一步包括:
根据所述可执行文件和所述每个病毒文件中的多个指定位置的数据块,来计算所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
3.如权利要求2所述的方法,其中,所述计算步骤包括:
从所述可执行文件中的所述多个指定位置提取多个数据块;
获取所述每个病毒文件的数据块集,其中,所述每个病毒文件的数据块集包括从该病毒文件中的所述多个指定位置获取的多个数据块;
计算所述可执行文件与所述每个病毒文件的多个相似程度子值,其中,与所述每个病毒文件的多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件中的相同位置获取的一个数据块两者的相同字节数与从该病毒文件中的该相同位置获取的该数据块的总字节数的比值来确定;以及
计算所述可执行文件与所述每个病毒文件的多个相似程度子值的加权求和之值,作为所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
4.如权利要求3所述的方法,其中,所述计算步骤还包括:
在计算所述多个相似程度子值之前,去除所提取的多个数据块中的无意义字节。
5.如权利要求1所述的方法,其中,所述确定步骤包括:
计算所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为两者的相同行为数与所述选定病毒文件所包含的已知手机病毒的危险行为的总行为数的比值;
判断所计算的比值是否大于预定阈值;以及
当判断结果为肯定时,判定所述可执行文件包含已知手机病毒的变形病毒。
6.如权利要求1、2或3所述的方法,其中,所述可执行文件和所述多个病毒文件具有相同的文件类型。
7.如权利要求3所述的方法,其中,所述方法还包括步骤:
从所提取的多个数据块中获取用于表征所述变形病毒的家族特征的数据块或者用于表征所述变形病毒的家族特征和唯一特征的数据块。
8.一种用于检测手机病毒的装置,包括:
计算模块,用于计算待检测的可执行文件的文件内容与至少一个病毒文件中的每个病毒文件的文件内容的相似程度值,其中,所述至少一个病毒文件各自包含不同的已知手机病毒;
检测模块,用于当所述可执行文件的文件内容与所述至少一个病毒文件中的选定病毒文件的文件内容的相似程度值大于指定阈值时,检测所述可执行文件在执行时出现的危险行为,其中,所述可执行文件的文件内容与所述选定病毒文件的文件内容的相似程度值最大;以及
确定模块,用于根据所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为的相似程度,确定所述可执行文件是否包含已知手机病毒的变形病毒。
9.如权利要求8所述的装置,其中,所述计算模块进一步用于:
根据所述可执行文件和所述每个病毒文件中的多个指定位置的数据块,来计算所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
10.如权利要求9所述的装置,其中,所述计算模块包括:
提取模块,用于从所述可执行文件的所述多个指定位置提取多个数据块;
获取模块,用于获取所述每个病毒文件的数据块集,其中,所述每个病毒文件的数据块集包括从该病毒文件中的所述多个指定位置获取的多个数据块;
获得模块,用于计算所述可执行文件与所述每个病毒文件的多个相似程度子值,其中,与所述每个病毒文件的多个相似程度子值分别根据所提取的多个数据块中的一个数据块和从该病毒文件中的相同位置获取的一个数据块两者的相同字节数与从该病毒文件中的该相同位置获取的该数据块的总字节数的比值来确定;以及
取得模块,用于计算所述可执行文件与所述每个病毒文件的多个相似程度子值的加权求和之值,作为所述可执行文件的文件内容与所述每个病毒文件的文件内容的相似程度值。
11.如权利要求10所述的装置,其中,所述计算模块还包括:
去除模块,用于在计算所述多个相似程度子值之前,去除所提取的多个数据块中的无意义字节。
12.如权利要求8所述的装置,其中,所述确定模块包括:
求值模块,用于计算所检测的危险行为和所述选定病毒文件所包含的已知手机病毒的危险行为两者的相同行为数与所述选定病毒文件所包含的已知手机病毒的危险行为的总行为数的比值;
判断模块,用于判断所计算的比值是否大于预定阈值;以及
判定模块,用于当判断结果为肯定时,判定所述可执行文件包含已知手机病毒的变形病毒。
13.如权利要求8、9或10所述的装置,其中,所述可执行文件和所述多个病毒文件具有相同的文件类型。
14.如权利要求10所述的装置,其中,还包括:
特征获取模块,用于从所提取的多个数据块中获取用于表征所述变形病毒的家族特征的数据块或者用于表征所述变形病毒的家族特征和唯一特征的数据块。
15.一种用于检测手机病毒的设备,包括:
存储器,用于存储可执行指令;以及
处理器,用于根据所存储的可执行指令,执行如权利要求1-7中的任意一个权利要求所包括的步骤。
16.一种机器可读介质,其上存储有可执行指令,当所述可执行指令被执行时,使得机器执行权利要求1-7中的任意一个权利要求所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210097010.2A CN103369555B (zh) | 2012-04-01 | 2012-04-01 | 一种用于检测手机病毒的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210097010.2A CN103369555B (zh) | 2012-04-01 | 2012-04-01 | 一种用于检测手机病毒的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103369555A true CN103369555A (zh) | 2013-10-23 |
CN103369555B CN103369555B (zh) | 2017-03-01 |
Family
ID=49369866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210097010.2A Expired - Fee Related CN103369555B (zh) | 2012-04-01 | 2012-04-01 | 一种用于检测手机病毒的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103369555B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678692A (zh) * | 2013-12-26 | 2014-03-26 | 北京奇虎科技有限公司 | 一种下载文件的安全扫描方法及装置 |
CN103927486A (zh) * | 2014-05-06 | 2014-07-16 | 珠海市君天电子科技有限公司 | 一种黑特征库中失效特征的确定方法及系统 |
CN110086811A (zh) * | 2019-04-29 | 2019-08-02 | 深信服科技股份有限公司 | 一种恶意脚本检测方法及相关装置 |
US10860720B2 (en) | 2017-05-23 | 2020-12-08 | Malwarebytes Inc. | Static anomaly-based detection of malware files |
US10992703B2 (en) | 2019-03-04 | 2021-04-27 | Malwarebytes Inc. | Facet whitelisting in anomaly detection |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737722A (zh) * | 2005-08-03 | 2006-02-22 | 珠海金山软件股份有限公司 | 一种检测和防御计算机恶意程序的系统和方法 |
CN101162485A (zh) * | 2006-10-11 | 2008-04-16 | 飞塔信息科技(北京)有限公司 | 一种计算机恶意代码处理方法和系统 |
CN101714147A (zh) * | 2008-10-06 | 2010-05-26 | 易搜比控股公司 | 相同或相似文件的过滤方法 |
WO2011136809A1 (en) * | 2010-04-30 | 2011-11-03 | Hewlett-Packard Development Company, L.P. | Preprocessor for file updating |
-
2012
- 2012-04-01 CN CN201210097010.2A patent/CN103369555B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1737722A (zh) * | 2005-08-03 | 2006-02-22 | 珠海金山软件股份有限公司 | 一种检测和防御计算机恶意程序的系统和方法 |
CN101162485A (zh) * | 2006-10-11 | 2008-04-16 | 飞塔信息科技(北京)有限公司 | 一种计算机恶意代码处理方法和系统 |
CN101714147A (zh) * | 2008-10-06 | 2010-05-26 | 易搜比控股公司 | 相同或相似文件的过滤方法 |
WO2011136809A1 (en) * | 2010-04-30 | 2011-11-03 | Hewlett-Packard Development Company, L.P. | Preprocessor for file updating |
Non-Patent Citations (1)
Title |
---|
李剑: "恶意软件行为分析及变种检测技术研究", 《信息科技辑》, 30 March 2012 (2012-03-30), pages 6 - 7 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678692A (zh) * | 2013-12-26 | 2014-03-26 | 北京奇虎科技有限公司 | 一种下载文件的安全扫描方法及装置 |
CN103927486A (zh) * | 2014-05-06 | 2014-07-16 | 珠海市君天电子科技有限公司 | 一种黑特征库中失效特征的确定方法及系统 |
CN103927486B (zh) * | 2014-05-06 | 2018-03-06 | 珠海市君天电子科技有限公司 | 一种黑特征库中失效特征的确定方法及系统 |
US10860720B2 (en) | 2017-05-23 | 2020-12-08 | Malwarebytes Inc. | Static anomaly-based detection of malware files |
US10992703B2 (en) | 2019-03-04 | 2021-04-27 | Malwarebytes Inc. | Facet whitelisting in anomaly detection |
CN110086811A (zh) * | 2019-04-29 | 2019-08-02 | 深信服科技股份有限公司 | 一种恶意脚本检测方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103369555B (zh) | 2017-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101083311B1 (ko) | 악성 스크립트 분석 시스템 및 그를 이용한 악성 스크립트 분석 방법 | |
US20230224232A1 (en) | System and method for extracting identifiers from traffic of an unknown protocol | |
US9860278B2 (en) | Log analyzing device, information processing method, and program | |
CN101593253B (zh) | 一种恶意程序判断方法及装置 | |
WO2015120752A1 (zh) | 网络威胁处理方法及设备 | |
CN103067364B (zh) | 病毒检测方法及设备 | |
US20130312081A1 (en) | Malicious code blocking system | |
CN104346569B (zh) | 移动终端中恶意广告的识别方法、装置和移动终端 | |
CN110650117B (zh) | 跨站攻击防护方法、装置、设备及存储介质 | |
CN107979581B (zh) | 僵尸特征的检测方法和装置 | |
CN103369555A (zh) | 一种用于检测手机病毒的方法和装置 | |
CN103401845B (zh) | 一种网址安全性的检测方法、装置 | |
CN107995179B (zh) | 一种未知威胁感知方法、装置、设备及系统 | |
Agrawal et al. | A survey on android malware and their detection techniques | |
CN106790299B (zh) | 一种在无线接入点ap上应用的无线攻击防御方法和装置 | |
CN104580133A (zh) | 恶意程序防护方法与系统及其过滤表格更新方法 | |
WO2013091534A1 (zh) | 一种木马检测的方法及装置 | |
CN109600362A (zh) | 基于识别模型的僵尸主机识别方法、识别设备及介质 | |
CN105447388A (zh) | 一种基于权重的安卓恶意代码检测系统及方法 | |
CN105407096A (zh) | 基于流管理的报文数据检测方法 | |
CN102111400B (zh) | 一种木马检测方法、装置及系统 | |
CN110865982A (zh) | 一种数据匹配方法、装置、电子设备及存储介质 | |
CN114006746A (zh) | 一种攻击检测方法、装置、设备及存储介质 | |
KR20130093841A (ko) | 관계형 공격 패턴을 이용하는 침입 차단 시스템 및 방법 | |
KR101473652B1 (ko) | 악성 메시지 검사 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170301 Termination date: 20190401 |
|
CF01 | Termination of patent right due to non-payment of annual fee |