CN104424435A - 一种获取病毒特征码的方法及装置 - Google Patents

一种获取病毒特征码的方法及装置 Download PDF

Info

Publication number
CN104424435A
CN104424435A CN201310369733.8A CN201310369733A CN104424435A CN 104424435 A CN104424435 A CN 104424435A CN 201310369733 A CN201310369733 A CN 201310369733A CN 104424435 A CN104424435 A CN 104424435A
Authority
CN
China
Prior art keywords
virus
virus signature
signature
viral
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
CN201310369733.8A
Other languages
English (en)
Other versions
CN104424435B (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
Tencent Cloud Computing Beijing 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 CN201310369733.8A priority Critical patent/CN104424435B/zh
Priority to TW103123647A priority patent/TW201508536A/zh
Priority to PCT/CN2014/083944 priority patent/WO2015024457A1/en
Priority to US14/602,818 priority patent/US9633205B2/en
Publication of CN104424435A publication Critical patent/CN104424435A/zh
Priority to US15/426,769 priority patent/US10055584B2/en
Application granted granted Critical
Publication of CN104424435B publication Critical patent/CN104424435B/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
    • G06F21/564Static detection by virus signature recognition
    • 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/561Virus type analysis
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Complex Calculations (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)

Abstract

本发明公开了一种获取病毒特征码的方法及装置,属于计算机安全领域。所述方法包括:获取病毒样本集合中的每个病毒样本包括的字符串;根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵;根据信息熵从所述侯选病毒特征码中选择病毒特征码。所述装置包括:获取模块,第一选择模块,计算模块和第二选择模块。本发明能够及时分析出最新的病毒特征码,并且能够保证得到的病毒特征码为最优的特征码,覆盖病毒变种的能力较强。

Description

一种获取病毒特征码的方法及装置
技术领域
本发明涉及计算机安全领域,特别涉及一种获取病毒特征码的方法及装置。
背景技术
随着计算机技术的发展,计算机病毒也在不断发展。病毒对计算机的危害是不容小觑的,可能会造成计算机瘫痪,这就需要安装杀毒软件来制止病毒对计算机的侵害。杀毒软件需要根据病毒的特征码来检验计算机文件是否感染病毒。
其中,杀毒软件中包括病毒的特征码是由技术人员采用人工方式对大量的病毒样本进行分析得到的。然而,采用人工方式分析得到病毒特征码的工作量较大,耗费的时间较长,所以不能及时分析出最新的病毒的特征码,以致杀毒软件在一段时间内不能检测出最新出现的病毒。另外,人工方式分析病毒的特征码需要依赖技术人员的经验,不能保证得到的病毒的特征码为最优的特征码,导致覆盖病毒变种的能力较差。
发明内容
为了及时分析出最新的病毒的特征码以及提高覆盖病毒变种的能力,本发明提供了一种获取病毒特征码的方法及装置。所述技术方案如下:
一种获取病毒特征码的方法,所述方法包括:
获取病毒样本集合中的每个病毒样本包括的字符串;
根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵;
根据信息熵从所述侯选病毒特征码中选择病毒特征码。
一种获取病毒特征码的装置,所述装置包括:
获取模块,用于获取病毒样本集合中的每个病毒样本包括的字符串;
第一选择模块,用于根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
计算模块,用于根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵;
第二选择模块,用于根据信息熵从所述侯选病毒特征码中选择病毒特征码。
在本发明实施例中,根据每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;根据包括侯选病毒特征码的病毒样本数目和包括侯选病毒特征码的非病毒样本数目,计算侯选病毒特征码的信息熵;根据信息熵从侯选病毒特征码中选择病毒特征码。由于获取病毒特征码的过程是自动的,所以耗费时间较短,能够及时分析出最新的病毒特征码。由于根据信息熵对从病毒样本中获取的字符串进行二次筛选,能够保证得到的病毒特征码为最优的特征码,覆盖病毒变种的能力较强。
附图说明
图1是本发明实施例1提供的一种获取病毒特征码的方法流程图;
图2是本发明实施例2提供的一种获取病毒特征码的方法流程图;
图3是本发明实施例3提供的一种获取病毒特征码的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参见图1,本发明实施例提供了一种获取病毒特征码的方法,包括:
步骤101:获取病毒样本集合中的每个病毒样本包括的字符串;
步骤102:根据每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
步骤103:根据包括侯选病毒特征码的病毒样本数目和包括侯选病毒特征码的非病毒样本数目,计算侯选病毒特征码的信息熵;
步骤104:根据信息熵从侯选病毒特征码中选择病毒特征码。
在本发明实施例中,根据每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;根据包括侯选病毒特征码的病毒样本数目和包括侯选病毒特征码的非病毒样本数目,计算侯选病毒特征码的信息熵;根据信息熵从侯选病毒特征码中选择病毒特征码。由于获取病毒特征码的过程是自动的,所以耗费时间较短,能够及时分析出最新的病毒特征码。由于根据信息熵对从病毒样本中获取的字符串进行二次筛选,能够保证得到的病毒特征码为最优的特征码,覆盖病毒变种的能力较强。
实施例2
参见图2,在实施例1所示的方法基础之上,本发明实施例提供了一种获取病毒特征码的方法,包括:
步骤201:获取病毒样本集合中的每个病毒样本包括的字符串;
其中,病毒样本集合包括多个病毒样本,每个病毒样本为一个程序文件,每个程序文件中包括的多行代码,每行代码由一个或多个字符串组成。
具体地,对于病毒样本集合中包括的任一个病毒样本,对该病毒样本包括的每行代码进行字符串分割,得到该病毒样本包括的字符串;对于病毒样本集合中的其他每个病毒样本按上述操作得到其他每个病毒样本包括的字符串。
步骤202:获取每个字符串在非病毒样本集合中出现的第一频率;
其中,非病毒样本集合包括多个非病毒样本,每个非病毒样本为一个程序文件,每个程序文件中包括的多行代码,每行代码由一个或多个字符串组成。
具体地,对于任一个字符串,从非病毒样本集合中获取包括该字符串的非病毒样本,统计获取的非病毒样本,得到包括该字符串的非病毒样本数目,根据包括该字符串的非病毒样本数目计算出该字符串在非病毒样本集合中出现的第一频率。对于其他的每个字符串,按上述操作计算出其他每个字符串在非病毒样本集合中出现的第一频率。
优选的,根据包括该字符串的非病毒样本数目计算出该字符串在非病毒样本集合中出现的第一频率的操作,可以为:
计算包括该字符串的非病毒样本数目与非病毒样本集合中包括的非病毒样本总数目之间的比值,将计算的比值作为该字符串在非病毒样本集合中出现的第一频率。
例如,假设假设病毒样本集合A中包含100个病毒样本,非病毒样本集合B中包含100000个非病毒样本,“sendChargeSMS”为病毒样本集合中的病毒样本包括的一个字符串。从非病毒样本集合中获取到1个包括字符串“sendChargeSMS”的非病毒样本,所以统计出包括字符串“sendChargeSMS”的非病毒样本数目为1,计算包括字符串“sendChargeSMS”的非病毒样本数目1与非病毒样本集合中包括的非病毒样本总数目100000之间的比值为0.001%,将计算的比值0.001%确定为字符串“sendChargeSMS”在非病毒样本集合中出现的第一频率。
步骤203:获取每个字符串在病毒样本集合中出现的第二频率;
具体地,对于任一个字符串,从病毒样本集合中获取包括该字符串的病毒样本,统计获取的病毒样本,得到包括该字符串的病毒样本数目,根据包括该字符串的病毒样本数目计算出该字符串在病毒样本集合中出现的第二频率。对于其他的每个字符串,按上述操作计算出其他每个字符串在病毒样本集合中出现的第二频率。
优选的,根据包括该字符串的病毒样本数目计算出该字符串在病毒样本集合中出现的第二频率的操作,可以为:
计算包括该字符串的病毒样本数目与病毒样本集合中包括的病毒样本总数目之间的比值,将计算的比值作为该字符串在病毒样本集合中出现的第二频率。
例如,从病毒样本集合中获取到100个包括字符串“sendChargeSMS”的病毒样本,所以统计出包括字符串“sendChargeSMS”的病毒样本数目为100,计算包括字符串“sendChargeSMS”的病毒样本数目100与非病毒样本集合中包括的非病毒样本总数目100之间的比值为100%,将计算的比值100%确定为字符串“sendChargeSMS”在病毒样本集合中出现的第二频率。
步骤204:根据获取的每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
具体地,从获取的字符串中,选择第一频率未超过预设第一频率阈值且第二频率超过预设第二频率阈值的字符串;将选择的字符串确定为侯选病毒特征码。
例如,假设,预设第一频率阈值为50%,预设第二频率阈值为50%。字符串“sendChargeSMS”的第一频率0.001%未超过预设第一频率阈值50%,同时,字符串“sendChargeSMS”的第二频率100%超过预设第二频率阈值50%。因此,将该字符串确定为候选病毒特征码。
步骤205:根据包括侯选病毒特征码的病毒样本数目和包括侯选病毒特征码的非病毒样本数目,计算侯选病毒特征码的信息熵;
具体地,对于任一个侯选病毒特征码,根据包括该侯选病毒特征码的病毒样本数目,计算出不包括该侯选病毒特征码的病毒样本数目;根据包括该侯选病毒特征码的非病毒样本数目,计算出不包括该侯选病毒特征码的非病毒样本数目;根据包括该侯选病毒特征码的病毒样本数目、不包括该侯选病毒特征码的病毒样本数目、包括该侯选病毒特征码的非病毒样本数目和不包括该侯选病毒特征码的非病毒样本数目,计算该侯选病毒特征码的信息熵。对于其他每个侯选病毒特征码,按上述操作计算其他每个侯选病毒特征码的信息熵。
其中,侯选病毒特征码的信息熵用于衡量该病毒特征码区分一程序文件是病毒,还是非病毒的能力。
其中,计算该侯选病毒特征码的信息熵的操作,可以为:
根据包括该侯选病毒特征码的病毒样本数目、不包括该侯选病毒特征码的病毒样本数目、包括该侯选病毒特征码的非病毒样本数目和不包括该侯选病毒特征码的非病毒样本数目,按如下的公式(1)计算该侯选病毒特征码的信息熵;
H = S 1 S ( S 11 S 1 log S 1 S 11 + S 12 S 1 log S 1 S 12 ) + S 2 S ( S 21 S 2 log S 2 S 21 + S 22 S 2 log S 2 S 22 ) . . . . . . ( 1 ) ;
其中,在公式(1)中,H为该侯选病毒特征码的信息熵,S为病毒样本集合中的病毒样本数目与非病毒样本集合中的非病毒样本数目之和,S1为病毒样本集合中的病毒样本数目,S11为包括该侯选病毒特征码的病毒样本数目,S12为不包括该侯选病毒特征码的病毒样本数目;S2为非病毒样本集合中的非病毒样本数目,S21为包括该侯选病毒特征码的非病毒样本数目,S22为不包括该侯选病毒特征码的非病毒样本数目。
例如,根据包括候选病毒特征码“sendChargeSMS”的非病毒样本数目1,计算不包括字符串“sendChargeSMS”的非病毒样本数目为99999;根据包括字符串“sendChargeSMS”的病毒样本数目为100,计算不包括字符串“sendChargeSMS”的病毒样本数目为0。
根据包括该侯选病毒特征码的病毒样本数目、不包括该侯选病毒特征码的病毒样本数目、包括该侯选病毒特征码的非病毒样本数目和不包括该侯选病毒特征码的非病毒样本数目,计算该侯选病毒特征码的信息熵为
H = 100 100100 ( 100 100 log 100 100 + 0 100 log 100 0 ) + 100000 100100 ( 1 100000 log 100000 1 + 99999 100000 log 100000 99999 )
= 0.000054
步骤206:根据信息熵从侯选病毒特征码中选择病毒特征码;
具体地,选择信息熵未超过预设信息熵阈值的侯选病毒特征码,将选择的侯选病毒特征码确定为病毒特征码;或者,
选择信息熵最小的预设个数个侯选病毒特征码,将选择的侯选病毒特征码确定为病毒特征码。
例如,假设预设信息熵阈值为0.0008,候选病毒特征码“sendChargeSMS”的信息熵0.000054小于预设信息熵阈值0.0008,所以选择候选病毒特征码“sendChargeSMS”为病毒特征码。
在本发明实施例中,根据每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;根据包括侯选病毒特征码的病毒样本数目和包括侯选病毒特征码的非病毒样本数目,计算侯选病毒特征码的信息熵;根据信息熵从侯选病毒特征码中选择病毒特征码。由于获取病毒特征码的过程是自动的,所以耗费时间较短,能够及时分析出最新的病毒特征码。由于对从病毒样本中获取的字符串进行二次筛选,能够保证得到的病毒特征码为最优的特征码,覆盖病毒变种的能力较强。
实施例3
参见图3,本发明提供了一种获取病毒特征码的装置,包括:
获取模块301,用于获取病毒样本集合中的每个病毒样本包括的字符串;
第一选择模块302,用于根据每个字符串在非病毒样本集合中出现的第一频率和在病毒样本集合中出现的第二频率,选择该字符串作为侯选病毒特征码;
计算模块303,用于根据包括该侯选病毒特征码的病毒样本数目和包括该侯选病毒特征码的非病毒样本数目,计算该侯选病毒特征码的信息熵;
第二选择模块304,用于根据信息熵从该侯选病毒特征码中选择病毒特征码。
其中,第一选择模块302包括:
第一选择单元,用于选择第一频率未超过预设第一频率阈值且第二频率超过预设第二频率阈值字符串;
确定单元,用于将选择的字符串确定为侯选病毒特征码。
其中,第一选择模块302还包括:
第一获取单元,用于获取包括每个字符串的非病毒样本数目,根据包括所述每个字符串的非病毒样本数目分别计算出每个字符串在非病毒样本集合中出现的第一频率。
进一步地,第一选择模块302还包括:
第二获取单元,用于获取包括每个字符串的病毒样本数目,根据包括所述每个字符串的病毒样本数目分别计算出每个字符串在病毒样本集合中出现的第二频率。
其中,计算模块303包括:
第一计算单元,用于根据包括确定的侯选病毒特征码的病毒样本数目,计算出不包括该侯选病毒特征码的病毒样本数目;
第二计算单元,用于根据包括确定的侯选病毒特征码的非病毒样本数目,计算出不包括该侯选病毒特征码的非病毒样本数目;
第三计算单元,用于根据包括确定的侯选病毒特征码的病毒样本数目、不包括该侯选病毒特征码的病毒样本数目、包括该侯选病毒特征码的非病毒样本数目和不包括该侯选病毒特征码的非病毒样本数目,计算该侯选病毒特征码的信息熵。
其中,第三计算单元,用于根据包括确定的侯选病毒特征码的病毒样本数目、不包括该侯选病毒特征码的病毒样本数目、包括该侯选病毒特征码的非病毒样本数目和不包括该侯选病毒特征码的非病毒样本数目,按如下的公式(1)计算该侯选病毒特征码的信息熵;
H = S 1 S ( S 11 S 1 log S 1 S 11 + S 12 S 1 log S 1 S 12 ) + S 2 S ( S 21 S 2 log S 2 S 21 + S 22 S 2 log S 2 S 22 ) . . . . . . ( 1 ) ;
其中,在公式(1)中,H为该侯选病毒特征码的信息熵,S为病毒样本集合中的病毒样本数目与非病毒样本集合中的非病毒样本数目之和,S1为病毒样本集合中的病毒样本数目,S11为包括该侯选病毒特征码的病毒样本数目,S12为不包括该侯选病毒特征码的病毒样本数目;
S2为非病毒样本集合中的非病毒样本数目,S21为包括该侯选病毒特征码的非病毒样本数目,S22为不包括该侯选病毒特征码的非病毒样本数目。
其中,第二选择模块304包括:
第二选择单元,用于选择信息熵未超过预设信息熵阈值的侯选病毒特征码,将该选择的侯选病毒特征码确定为病毒特征码;或者,
第三选择单元,用于选择信息熵最小的预设个数个侯选病毒特征码,将该选择的侯选病毒特征码确定为病毒特征码。
需要说明的是:上述实施例提供的一种获取病毒特征码的装置在获取病毒特征码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供获取病毒特征码的装置与获取病毒特征码的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种获取病毒特征码的方法,其特征在于,所述方法包括:
获取病毒样本集合中的每个病毒样本包括的字符串;
根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵;
根据信息熵从所述侯选病毒特征码中选择病毒特征码。
2.如权利要求1所述的方法,其特征在于,所述根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码,包括:
选择第一频率未超过预设第一频率阈值且第二频率超过预设第二频率阈值字符串;
将所述选择的字符串确定为侯选病毒特征码。
3.如权利要求1或2所述的方法,其特征在于,所述选择字符串作为侯选病毒特征码之前,还包括:
获取包括每个字符串的非病毒样本数目,根据包括所述每个字符串的非病毒样本数目分别计算出所述每个字符串在非病毒样本集合中出现的第一频率。
4.如权利要求1或2所述的方法,其特征在于,所述选择字符串作为侯选病毒特征码之前,还包括:
获取包括每个字符串的病毒样本数目,根据包括所述每个字符串的病毒样本数目分别计算出所述每个字符串在病毒样本集合中出现的第二频率。
5.如权利要求1所述的方法,其特征在于,所述根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵,包括:
根据包括所述侯选病毒特征码的病毒样本数目,计算出不包括所述侯选病毒特征码的病毒样本数目;
根据包括所述侯选病毒特征码的非病毒样本数目,计算出不包括所述侯选病毒特征码的非病毒样本数目;
根据包括所述侯选病毒特征码的病毒样本数目、不包括所述侯选病毒特征码的病毒样本数目、包括所述侯选病毒特征码的非病毒样本数目和不包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵。
6.如权利要求5所述的方法,其特征在于,所述计算所述侯选病毒特征码的信息熵,包括:
根据包括所述侯选病毒特征码的病毒样本数目、不包括所述侯选病毒特征码的病毒样本数目、包括所述侯选病毒特征码的非病毒样本数目和不包括所述侯选病毒特征码的非病毒样本数目,按如下的公式(1)计算所述侯选病毒特征码的信息熵;
H = S 1 S ( S 11 S 1 log S 1 S 11 + S 12 S 1 log S 1 S 12 ) + S 2 S ( S 21 S 2 log S 2 S 21 + S 22 S 2 log S 2 S 22 ) . . . . . . ( 1 ) ;
其中,在公式(1)中,H为所述侯选病毒特征码的信息熵,S为病毒样本集合中的病毒样本数目与非病毒样本集合中的非病毒样本数目之和,S1为病毒样本集合中的病毒样本数目,S11为包括所述侯选病毒特征码的病毒样本数目,S12为不包括所述侯选病毒特征码的病毒样本数目;
S2为非病毒样本集合中的非病毒样本数目,S21为包括所述侯选病毒特征码的非病毒样本数目,S22为不包括所述侯选病毒特征码的非病毒样本数目。
7.如权利要求1所述的方法,其特征在于,所述根据信息熵从所述侯选病毒特征码中选择病毒特征码,包括:
选择信息熵未超过预设信息熵阈值的侯选病毒特征码,将所述选择的侯选病毒特征码确定为病毒特征码;或者,
选择信息熵最小的预设个数个侯选病毒特征码,将所述选择的侯选病毒特征码确定为病毒特征码。
8.一种获取病毒特征码的装置,其特征在于,所述装置包括:
获取模块,用于获取病毒样本集合中的每个病毒样本包括的字符串;
第一选择模块,用于根据每个字符串在非病毒样本集合中出现的第一频率和在所述病毒样本集合中出现的第二频率,选择字符串作为侯选病毒特征码;
计算模块,用于根据包括所述侯选病毒特征码的病毒样本数目和包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵;
第二选择模块,用于根据信息熵从所述侯选病毒特征码中选择病毒特征码。
9.如权利要求8所述的装置,其特征在于,所述第一选择模块包括:
第一选择单元,用于选择第一频率未超过预设第一频率阈值且第二频率超过预设第二频率阈值字符串;
确定单元,用于将所述选择的字符串确定为侯选病毒特征码。
10.如权利要求8或9所述的装置,其特征在于,所述第一选择模块还包括:
第一获取单元,用于获取包括每个字符串的非病毒样本数目,根据包括所述每个字符串的非病毒样本数目分别计算出所述每个字符串在非病毒样本集合中出现的第一频率。
11.如权利要求8或9所述的装置,其特征在于,所述第一选择模块还包括:
第二获取单元,用于获取包括每个字符串的病毒样本数目,根据包括所述每个字符串的病毒样本数目分别计算出所述每个字符串在病毒样本集合中出现的第二频率。
12.如权利要求8所述的装置,其特征在于,所述计算模块包括:
第一计算单元,用于根据包括所述侯选病毒特征码的病毒样本数目,计算出不包括所述侯选病毒特征码的病毒样本数目;
第二计算单元,用于根据包括所述侯选病毒特征码的非病毒样本数目,计算出不包括所述侯选病毒特征码的非病毒样本数目;
第三计算单元,用于根据包括所述侯选病毒特征码的病毒样本数目、不包括所述侯选病毒特征码的病毒样本数目、包括所述侯选病毒特征码的非病毒样本数目和不包括所述侯选病毒特征码的非病毒样本数目,计算所述侯选病毒特征码的信息熵。
13.如权利要求12所述的装置,其特征在于,
所述第三计算单元,用于根据包括所述侯选病毒特征码的病毒样本数目、不包括所述侯选病毒特征码的病毒样本数目、包括所述侯选病毒特征码的非病毒样本数目和不包括所述侯选病毒特征码的非病毒样本数目,按如下的公式(1)计算所述侯选病毒特征码的信息熵;
H = S 1 S ( S 11 S 1 log S 1 S 11 + S 12 S 1 log S 1 S 12 ) + S 2 S ( S 21 S 2 log S 2 S 21 + S 22 S 2 log S 2 S 22 ) . . . . . . ( 1 ) ;
其中,在公式(1)中,H为所述侯选病毒特征码的信息熵,S为病毒样本集合中的病毒样本数目与非病毒样本集合中的非病毒样本数目之和,S1为病毒样本集合中的病毒样本数目,S11为包括所述侯选病毒特征码的病毒样本数目,S12为不包括所述侯选病毒特征码的病毒样本数目;
S2为非病毒样本集合中的非病毒样本数目,S21为包括所述侯选病毒特征码的非病毒样本数目,S22为不包括所述侯选病毒特征码的非病毒样本数目。
14.如权利要求8所述的装置,其特征在于,所述第二选择模块包括:
第二选择单元,用于选择信息熵未超过预设信息熵阈值的侯选病毒特征码,将所述选择的侯选病毒特征码确定为病毒特征码;或者,
第三选择单元,用于选择信息熵最小的预设个数个侯选病毒特征码,将所述选择的侯选病毒特征码确定为病毒特征码。
CN201310369733.8A 2013-08-22 2013-08-22 一种获取病毒特征码的方法及装置 Active CN104424435B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201310369733.8A CN104424435B (zh) 2013-08-22 2013-08-22 一种获取病毒特征码的方法及装置
TW103123647A TW201508536A (zh) 2013-08-22 2014-07-09 獲取病毒特徵碼的方法及裝置與機器可讀取儲存介質
PCT/CN2014/083944 WO2015024457A1 (en) 2013-08-22 2014-08-08 Method and device for obtaining virus signatures cross-reference to related applications
US14/602,818 US9633205B2 (en) 2013-08-22 2015-01-22 Method and device for obtaining virus signatures
US15/426,769 US10055584B2 (en) 2013-08-22 2017-02-07 Method and device for obtaining virus signatures

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310369733.8A CN104424435B (zh) 2013-08-22 2013-08-22 一种获取病毒特征码的方法及装置

Publications (2)

Publication Number Publication Date
CN104424435A true CN104424435A (zh) 2015-03-18
CN104424435B CN104424435B (zh) 2018-12-04

Family

ID=52483064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310369733.8A Active CN104424435B (zh) 2013-08-22 2013-08-22 一种获取病毒特征码的方法及装置

Country Status (4)

Country Link
US (2) US9633205B2 (zh)
CN (1) CN104424435B (zh)
TW (1) TW201508536A (zh)
WO (1) WO2015024457A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334776A (zh) * 2017-01-19 2018-07-27 中国移动通信有限公司研究院 一种变形恶意代码的检测方法及装置
CN111310179A (zh) * 2020-01-22 2020-06-19 腾讯科技(深圳)有限公司 计算机病毒变种的分析方法、装置和计算机设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11050629B2 (en) * 2016-11-03 2021-06-29 Palo Alto Networks, Inc. Fingerprint determination for network mapping
US11195914B2 (en) 2019-07-26 2021-12-07 Applied Materials, Inc. Transistor and method for forming a transistor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102346829A (zh) * 2011-09-22 2012-02-08 重庆大学 基于集成分类的病毒检测方法
CN102708313A (zh) * 2012-03-08 2012-10-03 珠海市君天电子科技有限公司 针对大文件的病毒检测系统及方法
CN102779249A (zh) * 2012-06-28 2012-11-14 奇智软件(北京)有限公司 恶意程序检测方法及扫描引擎

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2501771B2 (ja) * 1993-01-19 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 不所望のソフトウェア・エンティティの複数の有効なシグネチャを得る方法及び装置
US8312546B2 (en) * 2007-04-23 2012-11-13 Mcafee, Inc. Systems, apparatus, and methods for detecting malware
JP2010073020A (ja) * 2008-09-19 2010-04-02 Iwate Univ コンピュータウィルス検出装置、処理方法、及びプログラム。
JP5033270B2 (ja) * 2010-11-10 2012-09-26 パナソニック株式会社 非接触ポジションセンシング装置及び非接触ポジションセンシング方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102346829A (zh) * 2011-09-22 2012-02-08 重庆大学 基于集成分类的病毒检测方法
CN102708313A (zh) * 2012-03-08 2012-10-03 珠海市君天电子科技有限公司 针对大文件的病毒检测系统及方法
CN102779249A (zh) * 2012-06-28 2012-11-14 奇智软件(北京)有限公司 恶意程序检测方法及扫描引擎

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334776A (zh) * 2017-01-19 2018-07-27 中国移动通信有限公司研究院 一种变形恶意代码的检测方法及装置
CN111310179A (zh) * 2020-01-22 2020-06-19 腾讯科技(深圳)有限公司 计算机病毒变种的分析方法、装置和计算机设备

Also Published As

Publication number Publication date
US10055584B2 (en) 2018-08-21
US9633205B2 (en) 2017-04-25
CN104424435B (zh) 2018-12-04
TW201508536A (zh) 2015-03-01
US20170147818A1 (en) 2017-05-25
US20150135323A1 (en) 2015-05-14
WO2015024457A1 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
CN107943954B (zh) 网页敏感信息的检测方法、装置及电子设备
US8473789B2 (en) Memory leak monitoring system and associated methods
CN109582833B (zh) 异常文本检测方法及装置
CN101833631B (zh) 一种结合指针分析的软件安全漏洞动态检测方法
CN104424435A (zh) 一种获取病毒特征码的方法及装置
CN104978526A (zh) 病毒特征的提取方法及装置
EP2795525A1 (en) Augmenting system restore with malware detection
CN110197072B (zh) 软件安全漏洞的发掘方法及系统、存储介质和计算机设备
CN110086811A (zh) 一种恶意脚本检测方法及相关装置
CN101719204B (zh) 基于中间指令动态插装的Heapspray型网页木马的检测方法
Polakis et al. Powerslave: Analyzing the energy consumption of mobile antivirus software
JP6505533B2 (ja) 悪質なコードの検出
US9996447B2 (en) Automated identification of redundant method calls
CN105975599B (zh) 一种监测网站的页面埋点的方法和装置
CN107844702B (zh) 基于云防护环境下网站木马后门检测方法及装置
CN109766028B (zh) 一种红外触摸屏触控分管系统和方法
CN109344025B (zh) Cpu性能自监控方法及服务器
CN106375351A (zh) 一种异常域名检测的方法及装置
CN108167105B (zh) 一种水力机组振动事故停机保护方法及装置
CN102063485A (zh) 一种在线分析网络流中短文本信息聚类的方法
WO2012017423A3 (en) Method and apparatus for aggregating document information
KR20180035835A (ko) 확률적 프로세서 모니터링
CN114780013B (zh) 触屏操作的识别方法、装置、终端设备及介质
CN102982292B (zh) 获取可信文件数字签名的方法和装置及系统
CN106548067B (zh) 用于转发访问请求的方法和装置

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
TR01 Transfer of patent right

Effective date of registration: 20230713

Address after: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors

Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd.

Address before: 2, 518000, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right