CN104239791A - Android系统的反病毒系统、方法及运行有该系统的设备 - Google Patents
Android系统的反病毒系统、方法及运行有该系统的设备 Download PDFInfo
- Publication number
- CN104239791A CN104239791A CN201310242442.2A CN201310242442A CN104239791A CN 104239791 A CN104239791 A CN 104239791A CN 201310242442 A CN201310242442 A CN 201310242442A CN 104239791 A CN104239791 A CN 104239791A
- Authority
- CN
- China
- Prior art keywords
- malicious act
- program
- data
- android system
- virus
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Abstract
本发明公开了一种Android系统的反病毒系统,其包括:一监视器,其在Android系统虚拟机层收集程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据后发送出去;一反病毒引擎,其与所述监视器连接;一恶意行为特征库,其与反病毒引擎连接,所述恶意行为特征库内存储有若干策略,所述各策略均包括恶意行为特征数据;所述反病毒引擎接收监视器发送的可用数据,将其与恶意行为特征库内的恶意行为特征数据进行比对,以判断该程序是否做出了恶意行为。相应地,本发明还公开了搭载有该反病毒系统的设备和反病毒方法。本发明公开的技术方案采用了动态反病毒技术,其能为Android系统提供安全保护。
Description
技术领域
本发明涉及一种反病毒系统及方法,尤其涉及一种基于Android系统的反病毒系统及方法。
背景技术
目前大多数的反病毒系统都是基于签名识别的,这样的反病毒系统依赖于检测静态特征值或动态函数调用特征来进行对病毒和恶意软件的检测。举例来说,静态特征值可以是程序中的一段特定代码;动态函数调用特征可以是一组特定顺序的API调用。
现有的反病毒系统的实现主要包括基于签名和基于启发式这两种。这两种实现方法通过不同的方式来检测病毒和恶意软件:对于基于签名的反病毒方法来说,其是通过扫描每一个目标文件来寻找和已知病毒匹配的字节流来进行病毒检测;对于基于启发式的反病毒方法来说,其是扫描每一个文件匹配已知的典型操作特征,并累加分数来进行病毒评估。
相比较上述两种反病毒方法,基于程序执行过程监控的反病毒方法更精确,但由于程序执行过程监控反病毒技术需要对程序的执行进行有效的监视分析,在Android系统中实现起来有一定困难。近年来Android系统上出现了很多的反病毒系统,但所有的这些系统都没有使用细粒度动态程序执行过程监控反病毒技术。
发明内容
本发明的目的之一是提供一种Android系统的反病毒系统,其可以监控程序的动态信息,通过分析对比这些动态信息来监测病毒,实现对Android系统的精确安全保护。
本发明的另一目的是提供一种运行有Android系统的反病毒系统的设备,该设备可免受病毒的侵害。
本发明的又一目的是提供一种Android系统的反病毒方法,该方法可以实现对Android系统的精确安全保护。
为了实现上述目的,本发明提出了一种Android系统的反病毒系统,其包括:
一监视器,其在Android系统虚拟机层收集程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据后发送出去;
一反病毒引擎,其与所述监视器连接;
一恶意行为特征库,其与反病毒引擎连接,所述恶意行为特征库内存储有若干策略,所述各策略均包括恶意行为特征数据;
所述反病毒引擎接收监视器发送的可用数据,将其与恶意行为特征库内的恶意行为特征数据进行比对,以判断该程序是否做出了恶意行为。
本技术方案中的恶意行为特征数据与可用数据属于同一类数据,其均表征程序的运行状态。另外需要说明的是,在本技术方案中,可以是一个可用数据对应表示一种程序运行状态,也可以是多个可用数据的组合对应表示一种程序运行状态。因此,在判断程序做出了恶意行为时,可以是一个可用数据与恶意行为特征数据相符,也可以是多个可用数据的组合与恶意行为特征数据相符。
进一步地,上述Android系统的反病毒系统中涉及的策略还包括与恶意行为特征数据对应匹配的操作应对数据,所述反病毒引擎在判断程序做出了恶意行为时,根据该操作应对数据对恶意行为做出应对。也就是说,对于一个策略来说,其既包括与可用数据进行比对的恶意行为特征数据,还包括针对该种恶意行为的操作应对数据,从而使得反病毒引擎可以根据该操作应对数据做出应对。
更进一步地,所述操作应对数据包括:表征记录恶意行为的数据、表征拒绝恶意行为的数据、表征返回虚假信息的数据的至少其中之一,从而使得反病毒引擎根据这些数据可以分别对应地做出记录恶意行为、拒绝恶意行为和返回虚假信息的应对。
进一步地,上述Android系统的反病毒系统中的监视器包括:
具有监控功能的Dalvik虚拟机解释器模块,其执行程序且监控收集程序执行时的动态原始数据;
处理模块,其将动态原始数据翻译为表示程序运行状态的可用数据。
在该技术方案中,具有监控功能的虚拟机解释器模块替代了现有Android系统中的Dalvik虚拟机解释器,其兼容了现有的Dalvik指令集,在具有现有Android系统中Dalvik虚拟机解释器的功能的基础上,还能够监控获取程序执行时的各种动态原始数据,例如程序所属类信息、程序执行的方法信息、程序执行的指令信息等,然后由处理模块分析各个动态原始数据之间的关联,对动态原始数据代表的程序运行状态进行还原,即将动态原始数据翻译为表示程序运行状态的可用数据。
上述具有监控功能的虚拟机解释器模块的监控功能可以通过功能函数实现,功能函数分布在程序执行的各个环节,从初始化到结束运行,从而实现动态原始数据的监控和收集。
上述处理模块可以执行处理函数,从而对动态原始数据翻译为表示程序运行状态的可用数据。
进一步地,在上述Android系统的反病毒系统中,所述可用数据以接口的方式被打包,由反病毒引擎调用。
根据本发明的另一目的,本发明还提供了一种设备,其上运行有上文所描述的Android系统的反病毒系统。
根据本发明的又一目的,本发明还提供了一种Android系统的反病毒方法,其包括步骤:
收集在Android系统中程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据;
将所述可用数据与恶意行为特征数据进行比对,若二者匹配则判断程序做出了恶意行为,若二者不匹配则判断程序未做出恶意行为。
进一步地,上述Android系统的反病毒方法还包括步骤:当判断为程序做出了恶意行为时,根据与恶意行为特征数据对应匹配的操作应对数据对程序的恶意行为做出应对。
更进一步地,所述应对包括:记录恶意行为、拒绝恶意行为以及返回虚假信息中的至少其中之一。
进一步地,在上述Android系统的反病毒方法中,所述动态原始数据包括:程序所属类信息、程序执行的方法信息、程序执行的指令信息的至少其中之一。
采用本发明所述的技术方案,用户可以根据自身需要对恶意行为特征库中的策略进行配置,例如可以添加对程序操作短信的行为进行监控的策略,对网络流量进行监控的策略,以及对一些私密数据的访问进行监控的策略。从而使得本技术方案所述的Android系统反病毒系统和方法具有很大的使用灵活性,使得其适用范围广。
另外,采用本发明所述的技术方案,只需更新恶意行为特征库即可完成反病毒系统的更新换代,而无需修改监视器和反病毒引擎,因此其使用非常简便,且利于其不断地更新升级。
附图说明
图1为本发明所述的Android系统的反病毒方法在一种实施方式下的流程框图。
图2为本发明所述的Android系统的反病毒系统在一种实施方式下的结构框图。
具体实施方式
下面将结合说明书附图和具体实施例来对本发明所述的技术方案做出进一步地详细说明,但是该说明并不构成对于本发明技术方案的不当限定。
图1显示了本发明所述的Android系统的反病毒方法在一种实施方式下的流程框图。
如图1所示,在本实施例中,Android系统的反病毒方法,其包括步骤:
(1)由监视器收集在Android系统中程序执行时的动态原始数据(例如程序所属类信息、程序执行的方法信息、程序执行的指令信息等),并将其翻译为表示程序运行状态的可用数据;
(2)由反病毒引擎将所述可用数据与恶意行为特征数据进行比对,判断若二者是否匹配相符:若判断为“否”则返回进行步骤(1),若判断为“是”则进行步骤(3);
(3)反病毒引擎根据与恶意行为特征数据对应匹配的操作应对数据对程序的恶意行为做出应对。
图2显示了本发明所述的Android系统的反病毒系统在一种实施方式下的结构框图。
如图2所示,在本实施例中,该Android系统的反病毒系统包括:运行于Android系统虚拟机层的监视器,其包括具有监控功能的虚拟机解释器模块和处理模块,其中具有监控功能的虚拟机解释器模块替代了现有Android系统中的虚拟机解释器,其在具有现有Android系统中Dalvik虚拟机解释器的功能的基础上,还监控获取程序执行时的各种动态原始数据,例如程序所属类信息、程序执行的方法信息、程序执行的指令信息等,然后由处理模块分析各个动态原始数据之间的关联,对动态原始数据代表的程序运行状态进行还原,即将动态原始数据翻译为表示程序运行状态的可用数据;运行于Dalvik虚拟机上层的反病毒引擎,其分别与监视器和恶意行为特征库连接,其中恶意行为特征库内存储有根据用户需要配置的多个策略,每个策略包括恶意行为特征数据和与恶意行为特征数据对应匹配的操作应对数据(例如表征记录恶意行为的数据、表征拒绝恶意行为的数据、表征返回虚假信息的数据等),反病毒引擎接收监视器发送的可用数据,将其与恶意行为特征库内的恶意行为特征数据进行比对,根据可用数据与恶意行为特征数据是否相符判断该程序是否做出了恶意行为,若程序做出了恶意行为,则反病毒引擎根据该操作应对数据对恶意行为做出应对(例如记录恶意行为、拒绝恶意行为和返回虚假信息等)。
在本技术方案中,恶意行为特征数据与可用数据属于同一类数据,其均表征程序的运行状态。一种程序运行状态可以由一个可用数据对应表示,也可以由多个可用数据的组合对应表示。因此,在判断程序做出了恶意行为时,可以是一个可用数据与恶意行为特征数据相符,也可以是多个可用数据的组合与恶意行为特征数据相符。
另外,上述实施例中描述的Dalvik虚拟机解释器模块的监控功能可以通过功能函数实现,功能函数分布在程序执行的各个环节,从初始化到结束运行,从而实现动态原始数据的监控和收集。监视器的处理模块也可以执行处理函数,从而对动态原始数据翻译为表示程序运行状态的可用数据。
要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
Claims (11)
1.一种Android系统的反病毒系统,其特征在于,包括:
一监视器,其在Android系统虚拟机层收集程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据后发送出去;
一反病毒引擎,其与所述监视器连接;
一恶意行为特征库,其与反病毒引擎连接,所述恶意行为特征库内存储有若干策略,所述各策略均包括恶意行为特征数据;其中
所述反病毒引擎接收监视器发送的可用数据,将其与恶意行为特征库内的恶意行为特征数据进行比对,以判断该程序是否做出了恶意行为。
2.如权利要求1所述的Android系统的反病毒系统,其特征在于,所述策略还包括与恶意行为特征数据对应匹配的操作应对数据,所述反病毒引擎在判断程序做出了恶意行为时,根据该操作应对数据对恶意行为做出应对。
3.如权利要求2所述的Android系统反病毒系统,其特征在于,所述操作应对数据包括:表征记录恶意行为的数据、表征拒绝恶意行为的数据、表征返回虚假信息的数据的至少其中之一。
4.如权利要求1所述的Android系统的反病毒系统,其特征在于,所述监视器包括:
具有监控功能的Dalvik虚拟机解释器模块,其执行程序且监控收集程序执行时的动态原始数据;
处理模块,其将动态原始数据翻译为表示程序运行状态的可用数据。
5.如权利要求1所述的Android系统的反病毒系统,其特征在于,所述可用数据以接口的方式被打包后发送出去。
6.如权利要求1所述的Android系统的反病毒系统,其特征在于,所述动态原始数据包括:程序所属类信息、程序执行的方法信息、程序执行的指令信息的至少其中之一。
7.一种设备,其上运行有如权利要求1-6中任意一项所述的Android系统的反病毒系统。
8.一种Android系统的反病毒方法,其特征在于,包括步骤:
收集在Android系统中程序执行时的动态原始数据,并将其翻译为表示程序运行状态的可用数据;
将所述可用数据与恶意行为特征数据进行比对,若二者匹配则判断程序做出了恶意行为,若二者不匹配则判断程序未做出恶意行为。
9.如权利要求8所述的Android系统的反病毒方法,其特征在于,还包括步骤:当判断为程序做出了恶意行为时,根据与恶意行为特征数据对应匹配的操作应对数据对程序的恶意行为做出应对。
10.如权利要求9所述的Android系统的反病毒方法,其特征在于,所述应对包括:记录恶意行为、拒绝恶意行为以及返回虚假信息中的至少其中之一。
11.如权利要求8所述的Android系统的反病毒方法,其特征在于,所述动态原始数据包括:程序所属类信息、程序执行的方法信息、程序执行的指令信息的至少其中之一。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310242442.2A CN104239791A (zh) | 2013-06-18 | 2013-06-18 | Android系统的反病毒系统、方法及运行有该系统的设备 |
PCT/CN2014/079596 WO2014201962A1 (zh) | 2013-06-18 | 2014-06-10 | Android系统的反病毒系统、方法及运行有该系统的设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310242442.2A CN104239791A (zh) | 2013-06-18 | 2013-06-18 | Android系统的反病毒系统、方法及运行有该系统的设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104239791A true CN104239791A (zh) | 2014-12-24 |
Family
ID=52103942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310242442.2A Pending CN104239791A (zh) | 2013-06-18 | 2013-06-18 | Android系统的反病毒系统、方法及运行有该系统的设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN104239791A (zh) |
WO (1) | WO2014201962A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791250A (zh) * | 2014-12-26 | 2016-07-20 | 北京奇虎科技有限公司 | 应用程序检测方法及装置 |
CN111863045A (zh) * | 2020-07-30 | 2020-10-30 | 上海势炎信息科技有限公司 | 一种电子取证设备硬盘盒 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107358102A (zh) * | 2017-07-14 | 2017-11-17 | 合肥执念网络科技有限公司 | 一种基于计算机的病毒查杀系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN301901321S (zh) * | 2011-11-23 | 2012-05-02 | 曾伯勋 | 插座 |
US20120222120A1 (en) * | 2011-02-24 | 2012-08-30 | Samsung Electronics Co. Ltd. | Malware detection method and mobile terminal realizing the same |
CN102789558A (zh) * | 2011-05-20 | 2012-11-21 | 北京网秦天下科技有限公司 | 分析移动设备中程序安装和程序运行的方法和系统 |
CN102810143A (zh) * | 2012-04-28 | 2012-12-05 | 天津大学 | 基于Android平台手机应用程序的安全检测系统及方法 |
CN103136471A (zh) * | 2011-11-25 | 2013-06-05 | 中国科学院软件研究所 | 一种恶意Android应用程序检测方法和系统 |
-
2013
- 2013-06-18 CN CN201310242442.2A patent/CN104239791A/zh active Pending
-
2014
- 2014-06-10 WO PCT/CN2014/079596 patent/WO2014201962A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120222120A1 (en) * | 2011-02-24 | 2012-08-30 | Samsung Electronics Co. Ltd. | Malware detection method and mobile terminal realizing the same |
CN102789558A (zh) * | 2011-05-20 | 2012-11-21 | 北京网秦天下科技有限公司 | 分析移动设备中程序安装和程序运行的方法和系统 |
CN301901321S (zh) * | 2011-11-23 | 2012-05-02 | 曾伯勋 | 插座 |
CN103136471A (zh) * | 2011-11-25 | 2013-06-05 | 中国科学院软件研究所 | 一种恶意Android应用程序检测方法和系统 |
CN102810143A (zh) * | 2012-04-28 | 2012-12-05 | 天津大学 | 基于Android平台手机应用程序的安全检测系统及方法 |
Non-Patent Citations (1)
Title |
---|
张岩: "基于Android手机系统的反病毒引擎设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105791250A (zh) * | 2014-12-26 | 2016-07-20 | 北京奇虎科技有限公司 | 应用程序检测方法及装置 |
CN105791250B (zh) * | 2014-12-26 | 2020-10-02 | 北京奇虎科技有限公司 | 应用程序检测方法及装置 |
CN111863045A (zh) * | 2020-07-30 | 2020-10-30 | 上海势炎信息科技有限公司 | 一种电子取证设备硬盘盒 |
Also Published As
Publication number | Publication date |
---|---|
WO2014201962A1 (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8978141B2 (en) | System and method for detecting malicious software using malware trigger scenarios | |
RU2698776C2 (ru) | Способ ведения базы данных и соответствующий сервер | |
US9230106B2 (en) | System and method for detecting malicious software using malware trigger scenarios in a modified computer environment | |
CN101924761B (zh) | 一种依据白名单进行恶意程序检测的方法 | |
KR101122650B1 (ko) | 정상 프로세스에 위장 삽입된 악성코드 탐지 장치, 시스템 및 방법 | |
CN101667230B (zh) | 一种监控脚本执行的方法和装置 | |
US8782615B2 (en) | System, method, and computer program product for simulating at least one of a virtual environment and a debugging environment to prevent unwanted code from executing | |
CN101924762A (zh) | 一种基于云安全的主动防御方法 | |
CN105103158A (zh) | 剖析代码执行 | |
US20150193624A1 (en) | Security protection system and method | |
KR20150134679A (ko) | 패치파일 분석시스템과 분석방법 | |
CN109413091A (zh) | 一种基于物联网终端的网络安全监控方法和装置 | |
CN104252594A (zh) | 病毒检测方法和装置 | |
Andriatsimandefitra et al. | Detection and identification of android malware based on information flow monitoring | |
CN104239791A (zh) | Android系统的反病毒系统、方法及运行有该系统的设备 | |
CN101599113A (zh) | 驱动型恶意软件防御方法和装置 | |
CN105791250B (zh) | 应用程序检测方法及装置 | |
CN109743339B (zh) | 电力厂站的网络安全监测方法和装置、计算机设备 | |
CN106682493B (zh) | 一种防止进程被恶意结束的方法、装置及电子设备 | |
CN104636661A (zh) | 一种分析Android应用程序的方法和系统 | |
CN113676486A (zh) | 边缘物联代理安全策略 | |
CN103095714A (zh) | 一种基于木马病毒种类分类建模的木马检测方法 | |
CN104732148A (zh) | 分布式查杀的方法及系统 | |
CN106899977B (zh) | 异常流量检验方法和装置 | |
KR101580624B1 (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20141224 |