CN104346568A - 识别恶意应用程序的方法、装置及移动设备 - Google Patents

识别恶意应用程序的方法、装置及移动设备 Download PDF

Info

Publication number
CN104346568A
CN104346568A CN201310320466.5A CN201310320466A CN104346568A CN 104346568 A CN104346568 A CN 104346568A CN 201310320466 A CN201310320466 A CN 201310320466A CN 104346568 A CN104346568 A CN 104346568A
Authority
CN
China
Prior art keywords
file
application program
installation
application
installation file
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
Application number
CN201310320466.5A
Other languages
English (en)
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.)
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Shell Internet Beijing Security Technology Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Kingsoft Internet Science and Technology Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Shell Internet Beijing Security Technology Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Kingsoft Internet Science and Technology 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 Beijing Kingsoft Internet Security Software Co Ltd, Conew Network Technology Beijing Co Ltd, Shell Internet Beijing Security Technology Co Ltd, Zhuhai Juntian Electronic Technology Co Ltd, Beijing Kingsoft Internet Science and Technology Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201310320466.5A priority Critical patent/CN104346568A/zh
Publication of CN104346568A publication Critical patent/CN104346568A/zh
Pending legal-status Critical Current

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本实施例提供的识别恶意应用程序的方法、装置及移动设备,可以检测应用程序的安装文件中是否存在具有相同文件名的文件,当存在时则确定该应用程序为恶意应用程序。因此,本发明很好的防止了他人通过放置与正常文件同名的恶意文件来窃取用户数据等给用户人身财产安全带来威胁的情况。本发明很好的识别了恶意应用程序,提高了移动设备使用的安全性,保护了用户的人身财产安全。

Description

识别恶意应用程序的方法、装置及移动设备
技术领域
本发明涉及互联网安全技术领域,特别是涉及一种识别恶意应用程序的方法、装置及移动设备。
背景技术
随着科技的发展,智能电子设备的使用也越来越普及,智能电子设备中各种功能的软件也越来越多。
但恶意软件的出现给用户带来了极大困扰,恶意软件可以窃取用户的信息,给用户的人身财产安全带来巨大损害。由于恶意软件背后的不法分子可通过互联网进行信息窃取,隐蔽性较强,因此,及时识别恶意软件在当今环境下显得尤为重要。
因此,如何更好的识别出恶意软件,提高智能电子设备使用的安全性,是一个需要解决的问题。
发明内容
本发明实施例的目的在于提供一种识别恶意应用程序的方法、装置及移动设备,以实现更好的识别恶意应用程序,提高移动设备使用的安全性的目的。
为达到上述目的,本发明实施例公开了一种识别恶意应用程序的方法,应用于移动设备中,所述方法包括:
检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,所述安装文件中包括至少两个文件;
如果确定所述安装文件中存在具有相同文件名的文件,确定所述第一应用程序为恶意应用程序。
优选的,所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
或者,
当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
或者,
当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
优选的,在所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件后,所述方法还包括:
如果确定所述安装文件中不存在具有相同文件名的文件,确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同;
如果相同,则确定所述第一应用程序为安全应用程序,否则,确定所述第一应用程序为恶意应用程序。
优选的,在所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件前,所述方法还包括:
确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同;
如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同时,确定所述第一应用程序为恶意应用程序;
所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名相同时,检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
优选的,在确定所述第一应用程序为恶意应用程序后,所述方法还包括如下处理中的一种或几种:
输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止所述第一应用程序运行;
删除所述第一应用程序的安装文件。
优选的,所述第一应用程序为安卓Android***应用程序;
所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件。
本发明还提供了一种识别恶意应用程序的装置,应用于移动设备中,所述装置包括:文件检测单元和第一识别单元,
所述文件检测单元,用于检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元,所述安装文件中包括至少两个文件;
所述第一识别单元,用于确定所述第一应用程序为恶意应用程序。
优选的,所述文件检测单元包括:第一检测子单元、第二检测子单元或第三检测子单元,
所述第一检测子单元,用于当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
所述第二检测子单元,用于当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
所述第三检测子单元,用于当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
优选的,所述装置还包括:第一签名检测单元和第二识别单元,
所述第一签名检测单元,用于如果所述文件检测单元确定所述安装文件中不存在具有相同文件名的文件,确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果所述第一应用程序的数字签名与预设的安全应用程序的数字签名相同,则触发所述第二识别单元,否则触发所述第一识别单元;
所述第二识别单元,用于确定所述第一应用程序为安全应用程序。
优选的,所述装置还包括:第二签名检测单元,
所述第二签名检测单元,用于确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同,则触发所述第一识别单元,否则触发所述文件检测单元。
优选的,所述装置还包括如下四个单元中的一个或几个:
输出单元,用于在确定所述第一应用程序为恶意应用程序后,输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
禁止安装单元,用于在确定所述第一应用程序为恶意应用程序后,在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止运行单元,用于在确定所述第一应用程序为恶意应用程序后,禁止所述第一应用程序运行;
删除单元,用于在确定所述第一应用程序为恶意应用程序后,删除所述第一应用程序的安装文件。
优选的,所述第一应用程序为安卓Android***应用程序;
所述文件检测单元包括:执行文件检测子单元,用于检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元,所述安装文件中包括至少两个文件。
本发明还提供了一种移动设备,包括上述识别恶意应用程序的装置中的任一个。
本实施例提供的识别恶意应用程序的方法、装置及移动设备,可以检测应用程序的安装文件中是否存在具有相同文件名的文件,当存在时则确定该应用程序为恶意应用程序。因此,本发明很好的防止了他人通过放置与正常文件同名的恶意文件来窃取用户数据等给用户人身财产安全带来威胁的情况。本发明很好的识别了恶意应用程序,提高了移动设备使用的安全性,保护了用户的人身财产安全。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种识别恶意应用程序的方法的流程图;
图2为本发明实施例提供的另一种识别恶意应用程序的方法的流程图;
图3为本发明实施例提供的另一种识别恶意应用程序的方法的流程图;
图4为本发明实施例提供的另一种识别恶意应用程序的方法的流程图;
图5为本发明实施例提供的一种识别恶意应用程序的装置的结构示意图;
图6为本发明实施例提供的另一种识别恶意应用程序的装置的结构示意图;
图7为本发明实施例提供的另一种识别恶意应用程序的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的实施例优选适用于移动设备,例如,IOS操作***(IOS是由苹果公司开发的手持设备操作***)的移动设备、安卓操作***(Android***是一种基于Linux的自由及开放源代码的操作***)的移动设备,Windows Phone操作***(Windows Phone是由微软开发的手持设备操作***)的移动设备,当然也适用于个人计算机以及其他智能移动设备,本发明对此不作限定。
本发明所称移动设备,可以为手机、平板电脑、笔记本电脑、个人数字助理等。
如图1所示,本发明实施例提供的一种识别恶意应用程序的方法,应用于移动设备中,当然也可应用于其他网络设备,例如个人计算机PC等,本发明对此不做限定,该方法可以包括:
S100、检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果是,则执行步骤S200;
其中,安装文件中包括至少两个文件。
通常来讲,一个应用程序的安装文件中是不会存在相同文件名的文件的,但是随着计算机和互联网技术的快速发展,黑客或病毒制造者有可能利用***漏洞或其他手段,在安装文件中放置与正常文件相同文件名的恶意文件,使得该应用程序安装或运行时运行这个恶意文件,从而对安装或运行该应用程序的设备发起攻击、植入恶意代码、窃取用户隐私数据等。
为了避免这种情况的发生,本实施例提供的识别恶意应用程序的方法,对应用程序的安装文件进行检测,从而确定安装文件中是否具有相同文件名的文件,即确定出这个安装文件是否被放置了与正常文件相同文件名的恶意文件。
其中,步骤S100可以包括:
当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
其中,应用程序提供方可以是其他用户的移动设备,也可以是应用程序服务器,或者提供第三方应用的服务器等。所述移动设备可以从应用程序服务器或者提供第三方应用的服务器下载第一应用程序,也可以从其他用户通过网络或者蓝牙等方式接收第一应用程序。
其中,步骤S100可以包括:
当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
其中,步骤S100可以包括:
当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
也就是说,本发明实施例提供的方法,可分别在接收到应用程序安装文件后、应用程序安装前、用户发出检测指令后进行检测。可以理解的是,在接收到应用程序安装文件后即进行检测可以使检测更加及时,但应用程序安装前进行检测同样可以保证移动设备的安全,并且能够减小检测次数,减少对移动设备的占用。在用户发出检测指令后进行检测可以使得用户对检测时机进行控制,更加灵活方便,可操控性更强。
在实际应用中,在步骤S100中,可以首先获得应用程序的安装文件,如从服务器中下载,或由其他电子设备传输。当然,步骤S100也可以直接对本地已存在的应用程序的安装文件进行检测,这样就不需要首先获得应用程序的安装文件。
具体的,在步骤S100中,为了确定出安装文件中是否存在具有相同文件名的文件,可以首先获得应用程序安装文件中文件的文件名,如获得安装文件下所有文件的文件名,然后检测这些文件名中是否有相同的文件名存在。当然,也可以只获得部分文件名并进行检测,在确定获得的这部分文件名中存在相同文件名时,就可以确定安装文件中存在具有相同文件名的文件,而不再需要对剩余文件名进行检测,缩小了检测范围,缩短了检测时间。当然,还可以首先获得安装文件中一个文件的文件名,然后检测安装文件中其他文件的文件名是否与该文件的文件名相同,如果否,则获得安装文件中另一个文件的文件名,检测安装文件中其他文件的文件名是否与该文件的文件名相同,以此类推。可以理解的是,本发明对S100步骤中如何确定出安装文件中是否存在具有相同文件名的文件不做限定,本领域技术人员可以根据本领域的公知常识和常用技术手段任意选择。
具体的,在本发明的另一个实施例中:
所述第一应用程序可以为安卓Android***应用程序;
步骤S100可以包括:
检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件。
S200、确定所述第一应用程序为恶意应用程序。
进一步的,为了提高恶意应用程序的识别准确性,本发明实施例中,可以结合签名验证来对安装文件进行识别。在确定安装文件中不存在具有相同文件名的文件时,可以进一步进行数字签名的验证或结束本发明的执行。当然,也可以首先进行数字签名的验证,然后进行同名文件的检测。
进一步的,在步骤S200后,所述方法还可包括如下处理中的一种或几种:
输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止所述第一应用程序运行;
删除所述第一应用程序的安装文件。
本发明实施例提供的一种识别恶意应用程序的方法,可以检测应用程序的安装文件中是否存在具有相同文件名的文件,当存在时则确定该应用程序为恶意应用程序。因此,本发明很好的防止了他人通过放置与正常文件同名的恶意文件来窃取用户数据等给用户人身财产安全带来威胁的情况。本发明很好的识别了恶意应用程序,提高了移动设备使用的安全性,保护了用户的人身财产安全。
如图2所示,本发明实施例提供的另一种识别恶意软件的方法,可以包括:
S100、检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果是,则执行步骤S200,否则执行步骤S300;
其中,安装文件中包括至少两个文件。
S200、确定所述第一应用程序为恶意应用程序。
步骤S100和步骤S200已在前述实施例中进行了说明,不再赘述。
S300、确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果相同,执行步骤S400,否则执行步骤S200;
数字签名是只有信息发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。使用数字签名可以方便的对文件进行安全验证。本步骤中,如何进行签名验证可以参考现有技术,这里不再赘述了。
S400、确定所述第一应用程序为安全应用程序;
在确定为安全应用程序后,可以根据用户指令对第一应用程序进行处理,如进行安装,也可以将第一应用程序为安全应用程序的告知信息输出以提示用户,也可以为第一应用程序设置一安全标志,以标识其为安全应用程序。可以进行的处理有多种,本发明在此不做限定。
本发明可以仅检测安装文件中是否存在具有相同文件名的文件(以下使用“同名验证”代指),也可以既进行同名验证又进行第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同的验证(以下使用“签名验证”代指)。在既进行同名验证又进行签名验证的方案中,图2所示实施例提供的方法首先进行同名验证,然后进行签名验证,可以提高移动设备的安全性。当同名验证不通过(也即存在具有相同文件名的文件)时,可以不再进行签名验证,就可以直接确定第一应用程序为恶意应用程序。而当第一应用程序的同名验证通过时(也即不存在具有相同文件名的文件),可以再进行签名验证。当签名验证不通过(也即第一应用程序的数字签名不与预设的安全应用程序的数字签名相同)时,确定第一应用程序为恶意应用程序。当第一应用程序的签名验证通过时(也即第一应用程序的数字签名与预设的安全应用程序的数字签名相同),确定第一应用程序为安全应用程序。这样,就不再对存在同名文件的应用程序进行数字签名的验证,减少了数字签名验证的次数和对移动设备的占用。当然,在本发明其他实施例中,还可以首先进行签名验证,然后再进行同名验证,如图3所示实施例。图3所示方案下,当签名验证不通过时,可以不再进行同名验证,就可以直接确定第一应用程序为恶意应用程序。而当第一应用程序的签名验证通过时,可以再进行同名验证,同名验证通过,确定第一应用程序为安全应用程序;同名验证不通过,确定第一应用程序为恶意应用程序。
如图3所示,在本发明实施例提供的另一种识别恶意应用程序的方法,可以包括:
S001、确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同,执行步骤S200,如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名相同,执行步骤S100;
S100、检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果是,则执行步骤S200,否则执行步骤S002;
其中,安装文件中包括至少两个文件。
S002、确定所述第一应用程序为安全应用程序。
S200、确定所述第一应用程序为恶意应用程序。
步骤S100和步骤S200的具体执行过程请参见图1所示实施例部分。
图3所示实施例首先进行签名认证,在认证通过后进行同名验证,当同名验证通过后,则可以确定应用程序为安全应用程序。如果签名认证、同名验证中有任何一种验证未通过,则确定应用程序为恶意应用程序。因此,本发明可以仅对已通过签名认证的应用程序的安装文件进行同名验证。也即:图1所示步骤S100可以包括:检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,所述安装文件中包括至少两个文件,所述第一应用程序的数字签名与预设的安全应用程序的数字签名相同。
当然,对于图1、图2和图3所示实施例而言,在确定所述第一应用程序为恶意应用程序后,还可以包括如下处理中的一种或几种:
输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止所述第一应用程序运行;
删除所述第一应用程序的安装文件。
如图4所示,实际应用中的其中一种方案可以包括:
S110、接收用户指示安装第一应用程序的安装指令;
S120、检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的可执行文件,如果是,则执行步骤S200,否则执行步骤S300;
其中,安装文件中包括至少两个可执行文件。
S300、确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果相同,执行步骤S400,否则执行步骤S200;
S400、确定所述第一应用程序为安全应用程序;
S410、响应所述安装指令,对所述第一应用程序进行安装;
S200、确定所述第一应用程序为恶意应用程序。
S510、禁止所述第一应用程序的安装;
S520、输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息。
本实施例可以一方面禁止恶意应用程序的安装,一方面告知用户所要安装的应用程序为恶意应用程序,也可以给出用户选项,使用户删除该应用程序或者将确定为恶意应用程序的这个结果上报给服务器或分享给其他用户。
安卓Android是一种基于Linux的自由及开放源代码的操作***,目前在移动设备,如智能手机和平板电脑上得到了非常广泛的应用。发明人研究发现,安卓***存在***安全漏洞,即安卓***允许同一文件夹下出现同样文件名的文件。Android***应用程序的安装文件APK(AndroidPackage)实际上是一个Zip(压缩文件后缀)包,这种Zip格式允许一个Zip包文件包含具有相同文件名的文件。
根据安卓***现有的签名验证机制,如果碰到了相同文件名的文件,只会验证第二个文件二忽略第一个文件。在进行签名验证时,为安卓应用程序安装文件APK中的所有文件都给予编号,然后通过文件名来提取文件进行认证,这时,如果存在具有相同文件名的两个文件,由于编号靠后的文件覆盖了编号靠前的文件,因此安卓***会对编号靠后的文件进行验证。当验证通过后进行执行时,安卓***却会按照编号对编号靠前的文件进行执行。在这种情况下,如果有人在应用程序中设置了恶意文件,该恶意文件与一正常文件同名,那么在验证时就有可能验证该正常文件,致使该恶意文件所在的应用程序通过验证,但在执行时,就有可能执行该恶意文件,进而给用户带来损失。可以理解的是,当某应用程序的安装文件中存在了恶意文件,该应用程序也就成为了恶意应用程序。进一步,发明人发现几乎所有的恶意文件都以可执行文件classes.dex的形式存在,即病毒作者或黑客在安装文件中放入了与正常可执行文件classes.dex相同文件名的恶意dex文件。也就是说,病毒作者或黑客将一个APK包中放入两个classes.dex文件。第一个classes.dex是被病毒作者篡改过的恶意dex文件;第二个classes.dex是原来这个APK中的classes.dex文件。那么在签名验证时,就会验证原来的classes.dex,因此在不修改签名的情况下篡改后的恶意应用就能过通过验证;而执行时,却执行了被篡改过的第一个classes.dex。
因此,本发明实施例提供的识别恶意应用程序的方法,针对安卓***应用程序,可以仅对可执行文件进行检测。
基于此,本发明实施例提供的另一种识别恶意应用程序的方法,应用于安装有安卓***的移动设备中,该方法可以包括:
检测第一应用程序的APK文件以确定APK文件中是否存在两个classes.dex文件,该APK中包括至少两个文件;
如果确定该APK中存在两个classes.dex文件,确定第一应用程序为恶意应用程序。
当然,在某些情况下,如有人通过修改后缀等方式对文件格式进行伪装时,可以对所有文件进行检测。
具体的,当用户通过手机或者PC下载或者接收到安卓android应用的安装文件时,或者在用户点击安装本地存储的某android应用的安装文件,对该应用的apk文件进行检测。如果apk中有两个同名文件,即两个classes.dex文件,则判断该手机应用为恶意应用,进一步的可以禁止该应用运行,同时可以提示用户已经禁止运行,或者进一步提示用户进行上报或者删除,例如,告诉用户这个apk文件中被植入了恶意的可执行文件,或者,直接告知用户这个apk文件为恶意文件,不要继续安装。当然,为了进一步保证该应用的安全性,签名验证和上述同名文件验证的方法可以结合使用。
本发明对同名文件进行检测的方法很好的解决了安卓***的上述漏洞,提高了***安全性。
与上面本发明提供的方法实施例相对应,本发明还提供了一种识别恶意应用程序的装置。
如图5所示,本发明实施例提供的一种识别恶意应用程序的装置,应用于移动设备中,该装置可以包括:文件检测单元100和第一识别单元200,
文件检测单元100,用于检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元200,所述安装文件中包括至少两个文件;
其中,文件检测单元100可以包括:第一检测子单元、第二检测子单元或第三检测子单元,
第一检测子单元,用于当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
第二检测子单元,用于当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
第三检测子单元,用于当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
也就是说,以上三种不同的情况下,本发明实施例提供的方法,可分别在接收到应用程序安装文件后、应用程序安装前、用户发出检测指令后进行检测。可以理解的是,在接收到应用程序安装文件后即进行检测可以使检测更加及时,但应用程序安装前进行检测同样可以保证移动设备的安全,并且相对于前种情况能够减小检测次数,减少对移动设备的占用。在用户发出检测指令后进行检测可以使得用户对检测时机进行控制,更加灵活方便,可操控性更强。
其中,第一应用程序可以为安卓Android***应用程序;
文件检测单元可以包括:执行文件检测子单元,用于检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元200。
第一识别单元200,用于确定所述第一应用程序为恶意应用程序。
在确定安装文件中不存在具有相同文件名的文件时,可以进一步进行数字签名的验证或结束本发明的执行。当然,也可以首先进行数字签名的验证,然后进行同名文件的检测。
本发明实施例提供的一种识别恶意应用程序的装置,可以检测应用程序的安装文件中是否存在具有相同文件名的文件,当存在时则确定该应用程序为恶意应用程序。因此,本发明很好的防止了他人通过放置与正常文件同名的恶意文件来窃取用户数据等给用户人身财产安全带来威胁的情况。本发明很好的识别了恶意应用程序,提高了移动设备使用的安全性,保护了用户的人身财产安全。
如图6所示,本发明实施例提供的另一种识别恶意应用程序的装置,可以包括:文件检测单元100、第一识别单元200、第一签名检测单元300和第二识别单元400,
文件检测单元100,用于检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果是,触发第一识别单元200,否则触发第一签名检测单元300;
其中,安装文件中包括至少两个文件。
第一识别单元200,用于确定所述第一应用程序为恶意应用程序。
第一签名检测单元300,用于确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果所述第一应用程序的数字签名与预设的安全应用程序的数字签名相同,则触发所述第二识别单元400,否则触发第一识别单元200;
第二识别单元400,用于确定所述第一应用程序为安全应用程序。
在确定为安全应用程序后,可以根据用户指令对第一应用程序进行处理,如进行安装,也可以将第一应用程序为安全应用程序的告知信息输出以提示用户,也可以为第一应用程序设置一安全标志,以标识其为安全应用程序。可以进行的处理有多种,本发明在此不做限定。
如图7所示,本发明实施例提供的另一种识别恶意应用程序的装置,可以包括:文件检测单元100、第一识别单元200和第二签名检测单元001,
第二签名检测单元001,用于确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同,则触发第一识别单元200,否则触发文件检测单元100;
文件检测单元100,用于检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果确定所述安装文件中存在具有相同文件名的文件,触发第一识别单元200。
其中,安装文件中包括至少两个文件。
优选的,在本发明其他实施例中,还可以包括第三识别单元,用于在确定所述安装文件中不存在具有相同文件名的文件时第三识别单元002,用于,确定所述第一应用程序为安全应用程序。当然,也可以不包括第三识别单元,也即也可以不确定第一应用程序为安全应用程序,继续进行其他验证,如将第一应用程序上传到服务器,由服务器进行验证,或使用杀毒软件进行检测等。
第一识别单元200,用于确定所述第一应用程序为恶意应用程序。
对于图5、图6和图7所示实施例而言,在本发明其他实施例提供的识别恶意应用程序的装置中,还可以包括如下四个单元中的一个或几个:
输出单元,用于在确定所述第一应用程序为恶意应用程序后,输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
禁止安装单元,用于在确定所述第一应用程序为恶意应用程序后,在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止运行单元,用于在确定所述第一应用程序为恶意应用程序后,禁止所述第一应用程序运行;
删除单元,用于在确定所述第一应用程序为恶意应用程序后,删除所述第一应用程序的安装文件。
本发明还提供了一种移动设备,可以包括上述实施例提供的识别恶意应用程序的装置中的任一个。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (13)

1.一种识别恶意应用程序的方法,其特征在于,应用于移动设备中,所述方法包括:
检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,所述安装文件中包括至少两个文件;
如果确定所述安装文件中存在具有相同文件名的文件,确定所述第一应用程序为恶意应用程序。
2.根据权利要求1所述的方法,其特征在于,所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
或者,
当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
或者,
当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
3.根据权利要求1或2所述的方法,其特征在于,在所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件后,所述方法还包括:
如果确定所述安装文件中不存在具有相同文件名的文件,确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同;
如果相同,则确定所述第一应用程序为安全应用程序,否则,确定所述第一应用程序为恶意应用程序。
4.根据权利要求1或2所述的方法,其特征在于,在所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件前,所述方法还包括:
确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同;
如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同时,确定所述第一应用程序为恶意应用程序;
所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名相同时,检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
5.根据权利要求1至4任一项所述的方法,其特征在于,在确定所述第一应用程序为恶意应用程序后,所述方法还包括如下处理中的一种或几种:
输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止所述第一应用程序运行;
删除所述第一应用程序的安装文件。
6.根据权利要求1至5任一项所述的方法,其特征在于,
所述第一应用程序为安卓Android***应用程序;
所述检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件包括:
检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件。
7.一种识别恶意应用程序的装置,其特征在于,应用于移动设备中,所述装置包括:文件检测单元和第一识别单元,
所述文件检测单元,用于检测第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元,所述安装文件中包括至少两个文件;
所述第一识别单元,用于确定所述第一应用程序为恶意应用程序。
8.根据权利要求7所述的装置,其特征在于,所述文件检测单元包括:第一检测子单元、第二检测子单元或第三检测子单元,
所述第一检测子单元,用于当确定所述移动设备接收到应用程序提供方发送的第一应用程序的安装文件时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
所述第二检测子单元,用于当确定所述移动设备接收到用户指示安装第一应用程序的安装指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件;
所述第三检测子单元,用于当接收到所述移动设备的用户下发的检测指令时,检测所述第一应用程序的安装文件以确定所述安装文件中是否存在具有相同文件名的文件。
9.根据权利要求7或8所述的装置,其特征在于,所述装置还包括:第一签名检测单元和第二识别单元,
所述第一签名检测单元,用于如果所述文件检测单元确定所述安装文件中不存在具有相同文件名的文件,确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果所述第一应用程序的数字签名与预设的安全应用程序的数字签名相同,则触发所述第二识别单元,否则触发所述第一识别单元;
所述第二识别单元,用于确定所述第一应用程序为安全应用程序。
10.根据权利要求7或8所述的装置,其特征在于,所述装置还包括:第二签名检测单元,
所述第二签名检测单元,用于确定所述第一应用程序的数字签名是否与预设的安全应用程序的数字签名相同,如果确定所述第一应用程序的数字签名与所述预设的安全应用程序的数字签名不同,则触发所述第一识别单元,否则触发所述文件检测单元。
11.根据权利要求7至10任一项所述的装置,其特征在于,所述装置还包括如下四个单元中的一个或几个:
输出单元,用于在确定所述第一应用程序为恶意应用程序后,输出告知所述移动设备的用户所述第一应用程序为恶意应用程序的提示信息;
禁止安装单元,用于在确定所述第一应用程序为恶意应用程序后,在所述第一应用程序安装时,禁止所述第一应用程序的安装;
禁止运行单元,用于在确定所述第一应用程序为恶意应用程序后,禁止所述第一应用程序运行;
删除单元,用于在确定所述第一应用程序为恶意应用程序后,删除所述第一应用程序的安装文件。
12.根据权利要求7至11任一项所述的装置,其特征在于,
所述第一应用程序为安卓Android***应用程序;
所述文件检测单元包括:执行文件检测子单元,用于检测所述第一应用程序的安装文件,以确定所述安装文件中是否存在两个相同文件名的可执行文件,如果确定所述安装文件中存在具有相同文件名的文件,则触发所述第一识别单元,所述安装文件中包括至少两个文件。
13.一种移动设备,其特征在于,包括权利要求7至12中的任一个所述的识别恶意应用程序的装置。
CN201310320466.5A 2013-07-26 2013-07-26 识别恶意应用程序的方法、装置及移动设备 Pending CN104346568A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310320466.5A CN104346568A (zh) 2013-07-26 2013-07-26 识别恶意应用程序的方法、装置及移动设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310320466.5A CN104346568A (zh) 2013-07-26 2013-07-26 识别恶意应用程序的方法、装置及移动设备

Publications (1)

Publication Number Publication Date
CN104346568A true CN104346568A (zh) 2015-02-11

Family

ID=52502149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310320466.5A Pending CN104346568A (zh) 2013-07-26 2013-07-26 识别恶意应用程序的方法、装置及移动设备

Country Status (1)

Country Link
CN (1) CN104346568A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028729A1 (zh) * 2015-08-19 2017-02-23 北京金山安全软件有限公司 确定应用程序是否为正版应用程序的方法、装置及电子设备
CN106686456A (zh) * 2016-12-30 2017-05-17 深圳Tcl数字技术有限公司 电视应用的检测方法及装置
CN106803039A (zh) * 2016-12-30 2017-06-06 北京神州绿盟信息安全科技股份有限公司 一种恶意文件的同源判定方法及装置
CN109190373A (zh) * 2018-07-11 2019-01-11 广州优视网络科技有限公司 应用检测方法、装置、计算机存储介质和计算机设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102708320A (zh) * 2012-05-04 2012-10-03 奇智软件(北京)有限公司 一种病毒apk的识别方法及装置
CN102768717A (zh) * 2012-06-29 2012-11-07 腾讯科技(深圳)有限公司 恶意文件检测的方法及装置
CN102779257A (zh) * 2012-06-28 2012-11-14 奇智软件(北京)有限公司 一种Android应用程序的安全检测方法及***
CN103093148A (zh) * 2012-12-28 2013-05-08 广东欧珀移动通信有限公司 一种恶意广告的检测方法、***及设备
WO2013089340A1 (ko) * 2011-12-16 2013-06-20 주식회사 안랩 어플리케이션의 유사성 검출 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013089340A1 (ko) * 2011-12-16 2013-06-20 주식회사 안랩 어플리케이션의 유사성 검출 장치 및 방법
CN102708320A (zh) * 2012-05-04 2012-10-03 奇智软件(北京)有限公司 一种病毒apk的识别方法及装置
CN102779257A (zh) * 2012-06-28 2012-11-14 奇智软件(北京)有限公司 一种Android应用程序的安全检测方法及***
CN102768717A (zh) * 2012-06-29 2012-11-07 腾讯科技(深圳)有限公司 恶意文件检测的方法及装置
CN103093148A (zh) * 2012-12-28 2013-05-08 广东欧珀移动通信有限公司 一种恶意广告的检测方法、***及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
国家信息安全漏洞共享平台: "关于Android***存在签名验证绕过高危漏洞的情况通报", 《"国家信息安全漏洞共享平台"网站,HTTP://WWW.CNVD.ORG.CN/WEBINFO/SHOW/3255》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028729A1 (zh) * 2015-08-19 2017-02-23 北京金山安全软件有限公司 确定应用程序是否为正版应用程序的方法、装置及电子设备
CN106686456A (zh) * 2016-12-30 2017-05-17 深圳Tcl数字技术有限公司 电视应用的检测方法及装置
CN106803039A (zh) * 2016-12-30 2017-06-06 北京神州绿盟信息安全科技股份有限公司 一种恶意文件的同源判定方法及装置
CN106803039B (zh) * 2016-12-30 2019-09-17 北京神州绿盟信息安全科技股份有限公司 一种恶意文件的同源判定方法及装置
CN109190373A (zh) * 2018-07-11 2019-01-11 广州优视网络科技有限公司 应用检测方法、装置、计算机存储介质和计算机设备

Similar Documents

Publication Publication Date Title
US10873589B2 (en) Real-time prevention of malicious content via dynamic analysis
CN104756076B (zh) 配置文件更新器
CN109558734B (zh) 一种堆栈安全性的检测方法及装置、移动设备
CN106845223B (zh) 用于检测恶意代码的方法和装置
CN103632096A (zh) 一种对设备进行安全检测方法和装置
CN102254113A (zh) 一种检测和拦截移动终端恶意代码的方法及***
CN103281325A (zh) 基于云安全的文件处理方法及装置
CN108763951B (zh) 一种数据的保护方法及装置
KR20120105759A (ko) 악성 코드 시각화 장치와 악성 코드 탐지 장치 및 방법
CN104346568A (zh) 识别恶意应用程序的方法、装置及移动设备
CN112231702B (zh) 应用保护方法、装置、设备及介质
CN104751049A (zh) 一种应用程序安装方法及移动终端
JP6000465B2 (ja) プロセス検査装置、プロセス検査プログラムおよびプロセス検査方法
CN109344611A (zh) 应用的访问控制方法、终端设备及介质
CN103793649A (zh) 通过云安全扫描文件的方法和装置
Malhotra et al. A survey on various malware detection techniques on mobile platform
CN112115473A (zh) 一种用于Java开源组件安全检测的方法
CN104199704A (zh) 一种应用程序安装包清除方法及装置
CN103034810B (zh) 一种检测方法、装置及电子设备
CN105975302A (zh) 一种应用安装方法及终端
CN105718793A (zh) 基于修改沙箱环境防止恶意代码识别沙箱的方法及***
CN102982279B (zh) 计算机辅助设计病毒感染防止***和方法
CN106407815A (zh) 漏洞检测方法及装置
Wang et al. Droidcontext: identifying malicious mobile privacy leak using context
CN102982280B (zh) 阻止计算机辅助设计cad病毒感染的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20150211

RJ01 Rejection of invention patent application after publication