CN108197471B - 一种恶意软件检测方法及装置 - Google Patents

一种恶意软件检测方法及装置 Download PDF

Info

Publication number
CN108197471B
CN108197471B CN201711374957.2A CN201711374957A CN108197471B CN 108197471 B CN108197471 B CN 108197471B CN 201711374957 A CN201711374957 A CN 201711374957A CN 108197471 B CN108197471 B CN 108197471B
Authority
CN
China
Prior art keywords
behavior
probability
software
preset
malware
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.)
Active
Application number
CN201711374957.2A
Other languages
English (en)
Other versions
CN108197471A (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.)
Nsfocus Technologies Inc
Nsfocus Technologies Group Co Ltd
Original Assignee
NSFOCUS Information Technology Co Ltd
Nsfocus Technologies Inc
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 NSFOCUS Information Technology Co Ltd, Nsfocus Technologies Inc filed Critical NSFOCUS Information Technology Co Ltd
Priority to CN201711374957.2A priority Critical patent/CN108197471B/zh
Publication of CN108197471A publication Critical patent/CN108197471A/zh
Application granted granted Critical
Publication of CN108197471B publication Critical patent/CN108197471B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种恶意软件检测方法及装置,所述方法包括:根据预设的每项行为,将模拟运行待检测的软件时存在的预设的行为作为目标行为;根据预先确定的预设的每项行为对应恶意软件的概率,确定软件存在的目标行为的目标概率,根据软件存在的目标行为的目标概率及预设的复合概率公式,确定软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;判断复合概率是否大于预设的概率阈值;如果是,确定软件为恶意软件。由于在本发明实施例中,保证了预设的每项行为对应恶意软件的概率的准确性,进而提高了恶意软件检测的准确性。

Description

一种恶意软件检测方法及装置
技术领域
本发明涉及信息安全技术领域,尤其涉及一种恶意软件检测方法及装置。
背景技术
随着计算机技术和网络技术的快速发展,信息安全变得愈发重要,信息安全也成为一个备受关注的研究领域。面对层出不穷的安全问题和爆炸式增长的恶意软件及其变种,需要不断完善和提高检测技术,做到对恶意软件及时准确的检测。
恶意软件是一段程序,由攻击者通过系统安全漏洞或其它方法植入被攻击者的设备中,使得被攻击者的设备按照攻击者的意愿执行任务,任何能对信息安全造成威胁的程序都可以归属于恶意软件。常见的恶意软件有:漏洞攻击程序、计算机病毒、蠕虫、恶意移动脚本、后门、木马、间谍软件等,当然还包括以上类型恶意软件组合成的恶意软件。
现有技术中,通常是将待检测的软件在沙箱中模拟运行,通过识别待检测的软件在运行中存在的行为,并根据预先针对每项行为设置的权重值,将该软件在运行中存在的行为对应的权重值进行累加,确定该软件对应的威胁分数,如果威胁分数大于设定阈值,则确定该软件为恶意软件。然而这种方法,是人为依靠经验进行权重值的设置,设置的权重值的准确性难以保证,很容易造成误判,恶意软件检测的精度不高。
发明内容
本发明提供一种恶意软件检测方法及装置,用以解决现有技术中存在对恶意软件检测精度不高的问题。
本发明公开了一种恶意软件检测方法,所述方法包括:
根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;
根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;
判断所述复合概率是否大于预设的概率阈值;
如果是,确定所述软件为恶意软件。
进一步地,针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率,确定该行为对应恶意软件的概率包括:
针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
进一步地,确定该行为对应恶意软件的概率之后,所述方法还包括:
根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
进一步地,所述根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为包括:
根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;
判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;
如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
进一步地,所述根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率包括:
根据P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率、P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率、N为目标行为的数量。
本发明公开了一种恶意软件检测装置,所述装置包括:
第一确定模块,用于根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;
第二确定模块,用于根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;
判断模块,用于判断所述复合概率是否大于预设的概率阈值,如果判断结果为是,触发第三确定模块;
第三确定模块,用于确定所述软件为恶意软件。
进一步地,所述装置还包括:
第四确定模块,用于针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
进一步地,所述装置还包括:
更新模块,用于确定该行为对应恶意软件的概率之后,根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
进一步地,所述第一确定模块,具体用于根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
进一步地,所述第二确定模块,具体用于根据P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率、P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率、N为目标行为的数量。
本发明公开了一种恶意软件检测方法及装置,所述方法包括:根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;判断所述复合概率是否大于预设的概率阈值;如果是,确定所述软件为恶意软件。由于在本发明实施例中,根据软件模拟运行时存在的目标行为、及预先确定的预设的每项行为对应恶意软件的概率、及预设的复合概率公式,确定软件的复合概率,并且预设的每项行为对应恶意软件的概率,是根据第一数量的恶意软件在模拟运行时存在该行为的第一概率,以及第二数量的非恶意软件在模拟运行时存在该行为的第二概率确定的,避免了人为针对预设的每项行为,进行对应恶意软件的概率的设置,保证了预设的每项行为对应恶意软件的概率的准确性,进而保证了确定的软件的复合概率的准确性,提高了恶意软件检测的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种恶意软件检测过程示意图;
图2为本发明实施例3提供的一种行为树示意图;
图3为本发明实施例6提供的一种恶意软件检测装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
图1为本发明实施例提供的一种恶意软件检测过程示意图,该过程包括:
S101:根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为。
本发明实施例提供的恶意软件检测方法应用于电子设备,该电子设备可以是手机、平板电脑、个人电脑(PC)、服务器等设备。
行为是指程序的外部表现或动作,例如:扫描磁盘C、访问注册表A等,在电子设备中预先保存有行为的集合,该行为的集合中保存有预设的每项行为。具体的,针对待检测的软件,电子设备在沙箱或沙盒中模拟运行待检测的软件,并根据行为集合中保存的预设的每项行为,识别待检测的软件模拟运行时是否存在预设的每项行为,并将待检测的软件模拟运行时存在的预设的行为作为目标行为。
例如:行为集合中保存的预设的行为包括:扫描磁盘C、扫描磁盘D、访问注册表A、访问注册表B,识别待检测的软件模拟运行时存在扫描磁盘C和访问注册表A,将扫描磁盘C作为目标行为、将访问注册表A作为目标行为。
S202:根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率。
在本发明实施例中,针对预设的每项行为,预先模拟运行恶意软件和非恶意软件,确定恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率,并根据第一概率和第二概率,确定模拟运行恶意软件和非恶意软件,出现该行为时对应的恶意软件的概率,并将模拟运行恶意软件和非恶意软件,出现该行为时对应的恶意软件的概率,作为该行为对应恶意软件的概率。
具体的,电子设备根据预先确定的预设的每项行为对应恶意软件的概率,及待检测的软件存在的每项目标行为,确定待检测的软件存在的每项目标行为对应的目标概率,并根据每项目标行为对应的目标概率及预设的复合概率公式,确定软件的复合概率。其中预设的复合概率公式可以为求均值公式等。
S103:判断所述复合概率是否大于预设的概率阈值,如果是,进行S104,如果否,进行S105。
S104:确定所述软件为恶意软件。
S105:确定所述软件为非恶意软件。
具体的,判断待检测的软件的复合概率是否大于预设的概率阈值,如果是,则确定待检测的软件为恶意软件,否则,确定待检测的软件为非恶意软件。
另外,为了满足用户对信息安全的不同需求,电子设备中还提供有供用户进行概率阈值调整的页面,用户可以在该页面根据需求的信息安全等级,对概率阈值进行调整,如果用户需求的信息安全等级较高,可以将概率阈值调低,如果用户需求的信息安全等级较低,可以将概率阈值调高。
由于在本发明实施例中,根据软件模拟运行时存在的目标行为、及预先确定的预设的每项行为对应恶意软件的概率、及预设的复合概率公式,确定软件的复合概率,并且预设的每项行为对应恶意软件的概率,是根据第一数量的恶意软件在模拟运行时存在该行为的第一概率,以及第二数量的非恶意软件在模拟运行时存在该行为的第二概率确定的,避免了人为针对预设的每项行为,进行对应恶意软件的概率的设置,保证了预设的每项行为对应恶意软件的概率的准确性,进而保证了确定的软件的复合概率的准确性,提高了恶意软件检测的准确性。
实施例2:
为了保证对恶意软件检测的准确性,在上述各实施例的基础上,在本发明实施例中,针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率,确定该行为对应恶意软件的概率包括:
针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
在电子设备中,预先保存了包含了大量恶意软件的恶意软件集合,和包含了大量非恶意软件的非恶意软件集合。针对预设的每项行为,电子设备在模拟运行恶意软件集合中每个恶意软件时,统计恶意软件集合中存在该行为的恶意软件的第一数量(S1)、及恶意软件集合中恶意软件总数量(Q1),并将恶意软件集合中存在该行为的恶意软件的第一数量,与恶意软件集合中恶意软件总数量的第一比值,确定为恶意软件中出现该行为的第一概率(P1),即P1=S1/Q1;此外,电子设备在模拟运行非恶意软件集合中每个非恶意软件时,统计非恶意软件集合中存在该行为的非恶意软件的第二数量(S2),及非恶意软件集合中非恶意软件的总数量(Q2),并将非恶意软件集合中存在该行为的非恶意软件的第二数量,与非恶意软件集合中非恶意软件的总数量的第二比值,确定为非恶意软件中出现该行为的第二概率(P2),即P2=S2/Q2。
确定预设的每项行为对应的第一概率和第二概率后,针对每项行为,根据该行为的第一概率和第二概率的和确定该行为的第三概率,并根据第一概率与第三概率的比值,确定该行为对应恶意软件的概率(P),即P=P1/(P1+P2)。
另外,在确定预设的行为对应的恶意软件的概率时,当恶意软件集合中存在该行为的恶意软件的第一数量较小时,如果非恶意软件集合中存在该行为的非恶意软件的第二数量为零或者远小于第一数量,根据公式P1=S1/Q1,可知恶意软件中出现该行为的第一概率是一个较小的值,该行为在恶意软件中是个小概率事件,根据公式P2=S2/Q2,可知非恶意软件中出现该行为的第二概率为0或者是一个很小的值,该行为在非恶意软件中同样是个小概率事件,但此时因为P2为0或者是一个很小的值,根据公式P=P1/(P1+P2),可知,确定出的该行为对应恶意软件的概率很大,因此为了防止小概率事件影响恶意软件检测的准确性,提高恶意软件检测的准确性,当模拟运行时恶意软件集合中存在预设的任一行为的恶意软件的数量小于设定阈值时,可以重新调整恶意软件集合中的恶意软件,或者在预设的每项行为中删除该行为。
实施例3:
为了进一步提高恶意软件的检测的准确性,在上述各实施例的基础上,在本发明实施例中,确定该行为对应恶意软件的概率之后,所述方法还包括:
根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
具体的,因不同的预设的行为对信息安全造成的威胁程度不同,在本发明实施例中针对每个预设的行为预设有对应的概率修正值,在确定每项行为对应恶意软件的概率后,根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
较佳的,在确定每项行为对应的概率修正值时,可以将预设的每项行为按照类型进行分类,构建行为树,并为行为树中每个控制节点设置一个变量X,其中针对不同控制节点设置的变量X可以相同也可以不同,在确定预设的行为对应的概率修正值时,根据该预设的行为对应的行为节点回溯到根节点时经过的每个控制节点对应的变量X的和,确定该预设的行为对应的概率修正值。
例如:
按照类型对预设的每项行为进行分类:
K1={访问注册表行为}
K11={访问注册表A类}
K111={访问注册表A}
K111={访问注册表B}
K12={访问注册表B类}
……
K2={访问网络的行为}
K21={扫描内网IP的行为}
K22={大量访问某IP的行为}
……
K3={扫描磁盘的行为}
K31={扫描磁C盘的行为}
K32={扫描其他磁盘的行为}
……
根据按照类型分类后的每项行为,建立的行为树示意图如图2所示,其中图2所示的行为树仅为建立的行为树的一部分,用以进行说明。例如:预设的行为为访问注册表A,该行为对应的行为节点为K111,行为节点K111回溯到根节点K需经过的控制节点为K11和K1,其中针对控制节点K11设置变量的X的值为0.03、针对控制节点K1设置变量的X的值为0.02,则确定访问注册表A对应的概率修正值为0.05。在本发明实施例中,根据按照类型分类后的每项行为,建立的行为树的过程是现有技术,不再进行赘述。
实施例4:
为了提高检测的准确性,在上述各实施例的基础上,在本发明实施例中,所述根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为包括:
根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;
判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;
如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
在本发明实施例中,在预设的行为中,预先选定对应恶意软件的概率小于设定的概率阈值的行为作为白行为,其中设定的概率阈值可以为2%、5%等,为了防止待检测的软件中存在白行为的数量较多时,导致待检测的软件的复合概率降低,影响恶意软件检测的精度,电子设备根据预设的每项行为,识别模拟运行待检测的软件时,待检测的软件存在的预设的行为的第三数量,及待检测的软件存在的预设的行为中预设的白行为的第四数量;并判断第四数量与第三数量的比值是否大于设定的比例阈值、及第三数量是否大于预设的数量阈值;如果至少一项为否,则说明模拟运行待检测的软件时存在的白行为的数量较小、或者存在预设的行为中白行为所占的比重较小,不会影响待检测的软件的复合概率的准确性,将待检测的软件存在的预设的行为作为目标行为;否则,则说明模拟运行待检测的软件时存在的白行为的数量较多、且存在预设的行为中白行为所占的比重较大,会影响待检测的软件的复合概率的准确性,根据预设的比例系数及所述第三数量,确定第五数量,在待检测的软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为。
实施例5:
为了准确的确定软件的复合概率,在上述各实施例的基础上,在本发明实施例中,所述根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率包括:
根据P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率、P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率、N为目标行为的数量。
具体的,确定软件目标行为对应的目标概率后,将软件中存在的每项目标行为对应的目标概率分别代入P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)]中的P1、P2…PN中,确定软件的复合概率P(A|t1、t2…tn),其中N为目标行为的数量。
实施例6:
图3为本发明实施例提供的一种恶意软件检测装置结构示意图,该装置包括:
第一确定模块31,用于根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;
第二确定模块32,用于根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;
判断模块33,用于判断所述复合概率是否大于预设的概率阈值,如果判断结果为是,触发第三确定模块;
第三确定模块34,用于确定所述软件为恶意软件。
所述装置还包括:
第四确定模块35,用于针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
所述装置还包括:
更新模块36,用于确定该行为对应恶意软件的概率之后,根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
所述第一确定模块31,具体用于根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
所述第二确定模块32,具体用于根据P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率、P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率、N为目标行为的数量。
本发明公开了一种恶意软件检测方法及装置,所述方法包括:根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;判断所述复合概率是否大于预设的概率阈值;如果是,确定所述软件为恶意软件。由于在本发明实施例中,根据软件模拟运行时存在的目标行为、及预先确定的预设的每项行为对应恶意软件的概率、及预设的复合概率公式,确定软件的复合概率,并且预设的每项行为对应恶意软件的概率,是根据第一数量的恶意软件在模拟运行时存在该行为的第一概率,以及第二数量的非恶意软件在模拟运行时存在该行为的第二概率确定的,避免了人为针对预设的每项行为,进行对应恶意软件的概率的设置,保证了预设的每项行为对应恶意软件的概率的准确性,进而保证了确定的软件的复合概率的准确性,提高了恶意软件检测的准确性。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列行为步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种恶意软件检测方法,其特征在于,所述方法包括:
根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;
根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;
判断所述复合概率是否大于预设的概率阈值;
如果是,确定所述软件为恶意软件;
其中,针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率,确定该行为对应恶意软件的概率包括:
针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
2.如权利要求1所述的方法,其特征在于,确定该行为对应恶意软件的概率之后,所述方法还包括:
根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
3.如权利要求1所述的方法,其特征在于,所述根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为包括:
根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;
判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;
如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
4.如权利要求1所述的方法,其特征在于,所述根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率包括:根据P(A|t1、t2...tn)=(P1*P2*...PN)/[P1*P2*...PN+(1-P1)*(1-P2)*...(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率,P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率,N为目标行为的数量。
5.一种恶意软件检测装置,其特征在于,所述装置包括:
第一确定模块,用于根据预设的每项行为,将模拟运行待检测的软件时所述软件存在的预设的行为作为目标行为;
第二确定模块,用于根据预先确定的预设的每项行为对应恶意软件的概率,确定所述软件存在的目标行为的目标概率,并根据所述软件存在的目标行为的目标概率及预设的复合概率公式,确定所述软件的复合概率,其中针对预设的每项行为,根据恶意软件在模拟运行时存在该行为的第一概率,以及非恶意软件在模拟运行时存在该行为的第二概率确定该行为对应恶意软件的概率;
判断模块,用于判断所述复合概率是否大于预设的概率阈值,如果判断结果为是,触发第三确定模块;
第三确定模块,用于确定所述软件为恶意软件;
其中,所述装置还包括:
第四确定模块,用于针对预设的每项行为,根据所述第一概率与所述第二概率的和确定第三概率,并根据所述第一概率与所述第三概率的比值,确定该行为对应恶意软件的概率,其中所述第一概率为在模拟运行时,恶意软件集合中存在该行为的恶意软件的第一数量,与所述恶意软件集合中恶意软件总数量的第一比值;所述第二概率为在模拟运行时,非恶意软件集合中存在该行为的非恶意软件的第二数量,与所述非恶意软件集合中非恶意软件总数量的第二比值。
6.如权利要求5所述的装置,其特征在于,所述装置还包括:
更新模块,用于确定该行为对应恶意软件的概率之后,根据该行为对应恶意软件的概率与针对该行为预设的概率修正值的和,对该行为对应恶意软件的概率进行更新。
7.如权利要求5所述的装置,其特征在于,所述第一确定模块,具体用于根据预设的每项行为,识别模拟运行待检测的软件时所述软件存在的预设的行为的第三数量,及所述软件存在的预设的行为中预设的白行为的第四数量;判断所述第四数量与所述第三数量的比值是否大于设定的比例阈值、及所述第三数量是否大于预设的数量阈值;如果至少一项为否,将所述软件存在的预设的行为作为目标行为,否则,根据预设的比例系数及所述第三数量,确定第五数量,在所述软件存在的预设的行为中删除第五数量的白行为,将删除第五数量的白行为后剩余的行为作为目标行为,其中所述比例系数小于所述比例阈值。
8.如权利要求5所述的装置,其特征在于,所述第二确定模块,具体用于根据P(A|t1、t2…tn)=(P1*P2*…PN)/[P1*P2*...PN+(1-P1)*(1-P2)*…(1-PN)],确定所述软件的复合概率,其中P(A|t1、t2…tn)为复合概率,P1、P2…PN为软件中存在的每项目标行为分别对应的目标概率,N为目标行为的数量。
CN201711374957.2A 2017-12-19 2017-12-19 一种恶意软件检测方法及装置 Active CN108197471B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711374957.2A CN108197471B (zh) 2017-12-19 2017-12-19 一种恶意软件检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711374957.2A CN108197471B (zh) 2017-12-19 2017-12-19 一种恶意软件检测方法及装置

Publications (2)

Publication Number Publication Date
CN108197471A CN108197471A (zh) 2018-06-22
CN108197471B true CN108197471B (zh) 2020-07-10

Family

ID=62576911

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711374957.2A Active CN108197471B (zh) 2017-12-19 2017-12-19 一种恶意软件检测方法及装置

Country Status (1)

Country Link
CN (1) CN108197471B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI674514B (zh) * 2018-10-19 2019-10-11 財團法人資訊工業策進會 惡意軟體辨識裝置及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681331B1 (en) * 1999-05-11 2004-01-20 Cylant, Inc. Dynamic software system intrusion detection
CN102955912A (zh) * 2011-08-23 2013-03-06 腾讯科技(深圳)有限公司 一种程序恶意属性判别方法和服务器
CN104834857A (zh) * 2015-03-27 2015-08-12 清华大学深圳研究生院 批量安卓恶意软件检测方法及装置
CN106709332A (zh) * 2016-12-13 2017-05-24 江苏通付盾科技有限公司 应用检测的方法及装置
CN106778268A (zh) * 2016-11-28 2017-05-31 广东省信息安全测评中心 恶意代码检测方法与系统
CN106803037A (zh) * 2016-11-28 2017-06-06 全球能源互联网研究院 一种软件安全防护方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8806647B1 (en) * 2011-04-25 2014-08-12 Twitter, Inc. Behavioral scanning of mobile applications
US8806646B1 (en) * 2011-04-27 2014-08-12 Twitter, Inc. Detecting malware in mobile sites
CN106599688B (zh) * 2016-12-08 2019-07-12 西安电子科技大学 一种基于应用类别的安卓恶意软件检测方法
CN106911675B (zh) * 2017-02-09 2019-02-26 中国移动通信集团设计院有限公司 一种手机恶意软件预警方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681331B1 (en) * 1999-05-11 2004-01-20 Cylant, Inc. Dynamic software system intrusion detection
CN102955912A (zh) * 2011-08-23 2013-03-06 腾讯科技(深圳)有限公司 一种程序恶意属性判别方法和服务器
CN104834857A (zh) * 2015-03-27 2015-08-12 清华大学深圳研究生院 批量安卓恶意软件检测方法及装置
CN106778268A (zh) * 2016-11-28 2017-05-31 广东省信息安全测评中心 恶意代码检测方法与系统
CN106803037A (zh) * 2016-11-28 2017-06-06 全球能源互联网研究院 一种软件安全防护方法及装置
CN106709332A (zh) * 2016-12-13 2017-05-24 江苏通付盾科技有限公司 应用检测的方法及装置

Also Published As

Publication number Publication date
CN108197471A (zh) 2018-06-22

Similar Documents

Publication Publication Date Title
US10706151B2 (en) Systems and methods for tracking malicious behavior across multiple software entities
US8650637B2 (en) Network security risk assessment
RU2514140C1 (ru) Система и способ увеличения качества обнаружений вредоносных объектов с использованием правил и приоритетов
Singhal et al. Malware detection module using machine learning algorithms to assist in centralized security in enterprise networks
US11882134B2 (en) Stateful rule generation for behavior based threat detection
CN107992751B (zh) 一种基于分支行为模型的实时威胁检测方法
US20170061126A1 (en) Process Launch, Monitoring and Execution Control
KR101899589B1 (ko) 안전 소프트웨어 인증 시스템 및 방법
EP3053087A1 (en) Complex scoring for malware detection
CN110545280B (zh) 一种基于威胁检测准确度的量化评估方法
CN110837644B (zh) 一种系统渗透测试方法、装置及终端设备
CN106326737A (zh) 用于检测可在虚拟堆栈机上执行的有害文件的系统和方法
CN112995236B (zh) 一种物联网设备安全管控方法、装置和系统
Vidal et al. Online masquerade detection resistant to mimicry
JP7019533B2 (ja) 攻撃検知装置、攻撃検知システム、攻撃検知方法および攻撃検知プログラム
CN108197471B (zh) 一种恶意软件检测方法及装置
Muthumanickam et al. Optimization of rootkit revealing system resources–A game theoretic approach
US11263307B2 (en) Systems and methods for detecting and mitigating code injection attacks
US20220138311A1 (en) Systems and methods for detecting and mitigating code injection attacks
CN112235312B (zh) 一种安全事件的可信度确定方法、装置及电子设备
CN114640484A (zh) 网络安全对抗方法、装置和电子设备
Prabhavathi et al. Malware Prediction Using XGBOOST and CATBOOST
Bilar et al. Using a novel behavioral stimuli-response framework to defend against adversarial cyberspace participants
US11245703B2 (en) Security tool for considering multiple security contexts
KR20110032449A (ko) 행위기반 탐지 장치 및 방법

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
CP01 Change in the name or title of a patent holder

Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee after: NSFOCUS Technologies Group Co.,Ltd.

Patentee after: NSFOCUS TECHNOLOGIES Inc.

Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Patentee before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd.

Patentee before: NSFOCUS TECHNOLOGIES Inc.

CP01 Change in the name or title of a patent holder