CN105740660B - 一种应用安全性的检测方法及装置 - Google Patents

一种应用安全性的检测方法及装置 Download PDF

Info

Publication number
CN105740660B
CN105740660B CN201610037294.4A CN201610037294A CN105740660B CN 105740660 B CN105740660 B CN 105740660B CN 201610037294 A CN201610037294 A CN 201610037294A CN 105740660 B CN105740660 B CN 105740660B
Authority
CN
China
Prior art keywords
application
identifier
executable file
code
algorithm
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
CN201610037294.4A
Other languages
English (en)
Other versions
CN105740660A (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.)
Alibaba China Co Ltd
Original Assignee
Guangzhou Youshi Network 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 Guangzhou Youshi Network Technology Co Ltd filed Critical Guangzhou Youshi Network Technology Co Ltd
Priority to CN201610037294.4A priority Critical patent/CN105740660B/zh
Publication of CN105740660A publication Critical patent/CN105740660A/zh
Application granted granted Critical
Publication of CN105740660B publication Critical patent/CN105740660B/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开一种应用安全性的检测方法及装置。该方法中,首先运行待检测的应用;然后通过第一算法计算所述可执行文件的第一标识,并在获取第一标识后,在可执行文件中添加代码;再次启动并运行所述应用,并通过第一算法计算添加代码后的可执行文件的第二标识;最后对比所述第一标识与第二标识,判断第一标识与第二标识是否相等,若所述第一标识与所述第二标识不相等,则确定应用存在被劫持的风险,若所述第一标识与第二标识相等,则说明应用对可执行文件进行了校验保护,从而确定应用不存在被劫持的风险。通过本申请公开的方案,能够检测应用的安全性,确定应用是否存在被劫持的风险,从而解决现有技术无法检测应用的安全性的问题。

Description

一种应用安全性的检测方法及装置
技术领域
本公开涉及终端技术领域,尤其涉及一种应用安全性的检测方法及装置。
背景技术
目前,随着终端技术的发展,多种应用被开发。例如,工程设计应用、文献检索应用、人事管理应用和财务管理应用等,对于一般用户而言,在日常生活中经常会用到各项娱乐类的应用来调剂生活。
另外,很多应用配置有相应的插件,所述插件是一种遵循一定规范的应用程序接口编写的程序,主要用于扩展应用的功能,其中,插件通常通过调用可执行文件实现相应功能。
发明人在本申请的研究过程中发现,应用在调用插件时,有时会被劫持。其中,被劫持指的是黑客篡改可执行文件,导致可执行文件的业务逻辑改变,进而黑客会获取该应用的用户信息,造成用户信息泄露,损害用户利益。但是,目前无法检测出应用是否存在被劫持的风险。
发明内容
本发明实施例提供了一种应用安全性的检测方法及装置,以一定程度上解决传统技术无法检测应用是否存在被劫持的风险的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
根据本公开实施例的第一方面,提供一种应用安全性的检测方法,包括:
运行待检测的应用;
通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码;
再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;
对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
优选的,还包括:
获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再执行所述运行待检测的应用的操作。
优选的,在所述运行待检测的应用之后,并在所述通过第一算法计算所述应用对应的可执行文件的第一标识之前,还包括:
检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
优选的,所述在所述可执行文件中添加代码,包括:
在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
优选的,若运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
根据本公开实施例的第二方面,提供一种应用安全性的检测装置,包括:
运行模块,用于运行待检测的应用;
第一计算模块,用于通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码;
第二计算模块,用于再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;
对比模块,用于对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
优选的,所述应用安全性的检测装置还包括:
判断模块,用于获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再触发所述运行模块执行所述运行待检测的应用的操作。
优选的,所述应用安全性的检测装置还包括:
检查模块,用于在所述运行待检测的应用之后,并在所述通过第一算法计算所述应用对应的可执行文件的第一标识之前,检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再触发所述第一计算模块执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
优选的,所述第一计算模块在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
优选的,若运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
本申请具有如下有益效果:
本申请公开一种应用安全性的检测方法及装置,该方法中,首先运行待检测的应用,应用在运行过程中,会加载并释放出可执行文件;然后通过第一算法计算所述可执行文件的第一标识,并在获取所述第一标识后,在所述可执行文件中添加代码;再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;最后对比所述第一标识与所述第二标识,判断所述第一标识与所述第二标识是否相等,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险,若所述第一标识与所述第二标识相等,则说明应用对可执行文件进行了校验保护,从而能够确定所述应用不存在被劫持的风险。
通过本申请公开的应用安全性的检测方法,能够检测应用的安全性,确定应用是否存在被劫持的风险,从而解决现有技术无法检测应用的安全性的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明公开的一种应用安全性的检测方法的工作流程示意图;
图2为本发明公开的又一种应用安全性的检测方法的工作流程示意图;
图3为本发明公开的又一种应用安全性的检测方法的工作流程示意图;
图4为本发明公开的一种应用安全性的检测装置的结构示意图;
图5为本发明公开的一种应用安全性的检测装置的结构示意图。
具体实施方式
本申请实施例提供一种应用安全性的检测方法及装置,以一定程度上解决传统技术无法检测应用是否存在被劫持的风险的问题。
为了使本领域的技术人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
本申请一示例性实施例中,公开一种应用安全性的检测方法。参见图1所示的工作流程示意图,所述应用安全性的检测方法包括以下步骤:
步骤S11、运行待检测的应用。
其中,应用在运行的过程中,会加载并释放出可执行文件。
步骤S12、通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码。
应用往往配置有相应的插件,用于扩展应用的功能,其中,该插件通过调用可执行文件实现该功能,而应用在运行的过程中,会加载并释放出该可执行文件,该可执行文件可称为所述应用对应的可执行文件。
另外,在计算第一标识时所采用的第一算法,可为多种类型的算法,例如,可采用MD5(Message Digest Algorithm 5,消息摘要算法第五版)算法等,本申请对此不做限定。
步骤S13、再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识。
在所述可执行文件中添加代码后,需要退出所述待检测的应用,然后再重新启动并运行所述应用。另外,在所述可执行文件中添加代码,会改变所述可执行文件的业务逻辑,这种情况下,通过所述第一算法,计算添加代码后的可执行文件的第二标识。
步骤S14、对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
另外,若所述第一标识与所述第二标识相等,则表明可执行文件在添加代码前和添加代码后的标识都是相等的,也就是说,应用对可执行文件进行了校验保护,从而能够确定所述应用不存在被劫持的风险,所述应用的安全性较高。
本申请的步骤S11至步骤S14公开一种应用安全性的检测方法,该方法中,首先运行待检测的应用,应用在运行过程中,会加载并释放出可执行文件;然后通过第一算法计算所述可执行文件的第一标识,并在获取所述第一标识后,在所述可执行文件中添加代码;再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;最后对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险,若所述第一标识与所述第二标识相等,则说明应用对可执行文件进行了校验保护,从而能够确定所述应用不存在被劫持的风险。
通过本申请公开的应用安全性的检测方法,能够检测应用的安全性,确定应用是否存在被劫持的风险,解决现有技术无法检测应用的安全性的问题。
进一步的,在本申请的第二实施例中,公开一种应用安全性检测方法,参见图2所示的工作流程示意图,该方法包括以下步骤:
步骤S21、获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,执行步骤S22的操作,若否,执行步骤S26的操作。
其中,通常利用工具对所述应用进行解包,和/或采用反编译代码的方式,获取所述应用的代码。例如,可以采用aapt(Android Asset Packaging Tool,安卓打包工具)等解包工具对应用进行解包。
在通过所述代码判断所述应用是否使用动态加载技术时,通常对获取到的所述应用的代码进行扫描,检查所述应用的代码中是否包含动态加载相关的函数,以及该函数被调用的情况,若所述应用的代码中存在动态加载相关的函数,且该函数被调用,则说明所述应用使用了动态加载技术。
其中,所述动态加载相关的函数包括多种,例如,可以包含但不限于DexClassloader函数。
步骤S22、运行待检测的应用。
步骤S23、通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码。
步骤S24、再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识。
步骤S25、对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
在上述方法中,步骤S22至步骤S25的实施过程与步骤S11至步骤S14的实施过程相同,具体实施过程可相互参照,此处不再赘述。
步骤S26、结束本次应用安全性的检测。
在第二实施例中,增加如下步骤:获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再执行所述运行待检测的应用的操作。
若应用需要通过插件扩展自身功能,则该应用需要具备动态加载功能,因此,在运行所述应用之前,可通过应用的代码判断应用是否使用动态加载技术。若根据应用的代码,确定应用使用动态加载技术,则说明该应用能够调用插件,则继续执行对该应用进行安全性的检测。
若根据应用的代码,确定应用未使用动态加载技术,则说明该应用不能调用插件,这种情况下,不存在可执行文件被篡改的可能性,因此,不再根据本申请公开的方法对应用的安全性进行检测。
进一步的,在本申请的第三实施例中,公开一种应用安全性检测方法,参见图3所示的工作流程示意图,该方法包括以下步骤:
步骤S31、运行待检测的应用。
其中,步骤S31的实施过程与步骤S11的实施过程相同,具体实施过程可相互参照,此处不再赘述。
步骤S32、检查所述应用对应的存储目录中是否存在所述应用对应的可执行文件,若是,执行步骤S33的操作,若否,执行步骤S36的操作。
应用在运行过程中,会加载并释放出可执行文件,这种情况下,在所述应用对应的存储目录中,会存在对应的可执行文件。其中,所述应用对应的存储目录包括安装在终端内的SD(Secure Digital Memory Card,安全数码卡)的目录,或终端的应用私有目录等。
步骤S33、若经过检查,确定存在所述应用对应的可执行文件,通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码。
步骤S34、再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识。
步骤S35、对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
在上述方法中,步骤S33至步骤S35的实施过程与步骤S12至步骤S14的实施过程相同,具体实施过程可相互参照,此处不再赘述。
步骤S36、结束本次应用安全性的检测。
在第三实施例中,在所述运行待检测的应用之后,并在所述通过第一算法计算所述应用对应的可执行文件的第一标识之前,本申请公开的应用安全性的检测方法添加如下步骤:
检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
若经过检查,确定应用对应的存储目录中存在可执行文件,则表明应用在运行过程中,会调用所述可执行文件,从而需要再执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作,以便实现对应用安全性的检测。
另外,若经过检查,确定应用对应的存储目录中不存在可执行文件,则说明该应用不会调用可执行文件,这种情况下,不存在可执行文件被篡改的可能性,因此,结束本次操作,不再进行对应用安全性的检测。
进一步的,在第三实施例中,还可以在步骤S31之前,获取所述应用的代码,并通过所述代码判断所述应用是否使用动态加载技术,若是,再执行步骤S31的操作,若否,执行步骤S36的操作。
另外,在步骤S12中,公开在所述可执行文件中添加代码的操作。其中,在所述可执行文件中添加代码,包括:在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
在所述可执行文件中添加代码,能够改变可执行文件的业务逻辑,以便后续计算改变业务逻辑之后的可执行文件的第二标识,并通过比对所述第二标识和第一标识,检测应用是否存在被劫持的风险。在实际应用中,可在所述可执行文件的前段、中间部分或末尾部分任选一个位置,添加所述代码。另外,为了提高应用安全性检测的可靠性,可在可执行文件的多个位置添加代码,例如,可在所述可执行文件的前段、中间部分和末尾部分均添加代码。
本申请公开的应用安全性检测方法能够应用于多种操作系统,以检测多种操作系统中安装的应用的安全性。其中,若运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
其中,dex文件为Android操作系统中的一种可执行文件。另外,odex文件为Android操作系统加载完dex文件后生成的缓存文件。在根据本申请公开的方法检测应用的安全性时,可采用dex文件作为可执行文件,或者,采用odex文件为可执行文件。
相应的,本申请的第二实施例公开一种应用安全性的检测装置。参见图4所示的结构示意图,本申请公开的应用安全性的检测装置包括:运行模块100、第一计算模块200、第二计算模块300和对比模块400。
其中,所述运行模块100,用于运行待检测的应用;其中,应用在运行的过程中,会加载并释放出可执行文件。
所述第一计算模块200,用于通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码;
所述第二计算模块300,用于再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;
所述对比模块400,用于对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
另外,若所述第一标识与所述第二标识相等,则表明可执行文件在添加代码前和添加代码后的标识都是相等的,也就是说,应用对可执行文件进行了校验保护,从而能够确定所述应用不存在被劫持的风险,所述应用的安全性较高。
其中,在计算第一标识和第二标识时采用的第一算法,可为多种类型的算法,例如,可采用MD5(Message Digest Algorithm 5,消息摘要算法第五版)算法等,本申请对此不做限定。
本申请的第二实施例公开一种应用安全性的检测装置,该装置中,由运行模块运行待检测的应用,其中,应用在运行过程中,会加载并释放出可执行文件;然后第一计算模块通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码,再由第二计算模块再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识,对比模块对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险,若所述第一标识与所述第二标识相等,则说明应用对可执行文件进行了校验保护,从而能够确定所述应用不存在被劫持的风险。
通过本申请公开的应用安全性的检测装置,能够检测应用的安全性,确定应用是否存在被劫持的风险,解决现有技术无法检测应用的安全性的问题。
进一步的,参见图5所示的结构示意图,本申请公开的所述应用安全性的检测装置还包括:
判断模块500,用于获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再触发所述运行模块100执行所述运行待检测的应用的操作。
其中,通常利用工具对所述应用进行解包,和/或采用反编译代码的方式,获取所述应用的代码。例如,可以采用aapt(Android Asset Packaging Tool,安卓打包工具)等解包工具对应用进行解包。
在通过所述代码判断所述应用是否使用动态加载技术时,通常对获取到的所述应用的代码进行扫描,检查所述应用的代码中是否包含动态加载相关的函数,以及该函数被调用的情况,若所述应用的代码中存在动态加载相关的函数,且该函数被调用,则说明所述应用使用了动态加载技术。
若根据应用的代码,确定应用使用动态加载技术,则说明该应用能够调用插件,则继续对应用的安全性进行检测。若根据应用的代码,确定应用未使用动态加载技术,则说明该应用不能调用插件,这种情况下,不存在可执行文件被篡改的可能性,因此,不再根据本申请公开的方法对应用的安全性进行检测。
进一步的,本申请公开的所述应用安全性的检测装置还包括:
检查模块600,用于在所述运行待检测的应用之后,并在所述通过第一算法计算所述应用对应的可执行文件的第一标识之前,检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再触发所述第一计算模块200执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
进一步的,所述第一计算模块200在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
进一步的,若运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
本申请公开的应用安全性检测方法能够应用于多种操作系统,以检测多种操作系统中安装的应用的安全性。其中,若运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
其中,dex文件为Android操作系统中的一种可执行文件。另外,odex文件为Android操作系统加载完dex文件后生成的缓存文件。在根据本申请公开的方法检测应用的安全性时,可采用dex文件作为可执行文件,或者,采用odex文件为可执行文件。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,缩写:RAM)、磁碟、光盘等,包括若干指令用以使得处理器执行本发明实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (10)

1.一种应用安全性的检测方法,其特征在于,包括:
运行待检测的应用;
通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码;
再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;
对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
2.根据权利要求1所述的应用安全性的检测方法,其特征在于,还包括:
获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再执行所述运行待检测的应用的操作。
3.根据权利要求1所述的应用安全性的检测方法,其特征在于,在所述运行待检测的应用之后,并在所述通过第一算法计算所述应用对应的可执行文件的第一标识之前,还包括:
检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
4.根据权利要求1所述的应用安全性的检测方法,其特征在于,所述在所述可执行文件中添加代码的步骤包括:
在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
5.根据权利要求1至4任一项所述的应用安全性的检测方法,其特征在于,
运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
6.一种应用安全性的检测装置,其特征在于,包括:
运行模块,用于运行待检测的应用;
第一计算模块,用于通过第一算法计算所述应用对应的可执行文件的第一标识,并在所述可执行文件中添加代码;
第二计算模块,用于再次启动并运行所述应用,并通过所述第一算法计算添加代码后的可执行文件的第二标识;
对比模块,用于对比所述第一标识与所述第二标识,若所述第一标识与所述第二标识不相等,则确定所述应用存在被劫持的风险。
7.根据权利要求6所述的应用安全性的检测装置,其特征在于,所述应用安全性的检测装置还包括:
判断模块,用于获取所述应用的代码,并通过所述应用的代码判断所述应用是否使用动态加载技术,若是,再触发所述运行模块执行所述运行待检测的应用的操作。
8.根据权利要求6所述的应用安全性的检测装置,其特征在于,所述应用安全性的检测装置还包括:
检查模块,用于在所述运行模块运行待检测的应用之后,并在所述第一计算模块通过第一算法计算所述应用对应的可执行文件的第一标识之前,检查所述应用对应的存储目录中是否存在所述可执行文件,若存在,再触发所述第一计算模块执行所述通过第一算法计算所述应用对应的可执行文件的第一标识的操作。
9.根据权利要求6所述的应用安全性的检测装置,其特征在于,
所述第一计算模块在所述可执行文件的前段、和/或中间部分、和/或末尾部分添加所述代码。
10.根据权利要求6至9任一项所述的应用安全性的检测装置,其特征在于,
运行所述应用的操作系统为Android操作系统,所述可执行文件为dex文件或odex文件。
CN201610037294.4A 2016-01-20 2016-01-20 一种应用安全性的检测方法及装置 Active CN105740660B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610037294.4A CN105740660B (zh) 2016-01-20 2016-01-20 一种应用安全性的检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610037294.4A CN105740660B (zh) 2016-01-20 2016-01-20 一种应用安全性的检测方法及装置

Publications (2)

Publication Number Publication Date
CN105740660A CN105740660A (zh) 2016-07-06
CN105740660B true CN105740660B (zh) 2019-02-15

Family

ID=56246274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610037294.4A Active CN105740660B (zh) 2016-01-20 2016-01-20 一种应用安全性的检测方法及装置

Country Status (1)

Country Link
CN (1) CN105740660B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222501B (zh) * 2019-05-31 2023-05-12 河南思维轨道交通技术研究院有限公司 一种运行时代码的检查方法、存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641569A (zh) * 2004-01-06 2005-07-20 英业达股份有限公司 Java小应用程序下插件功能的实现方法
CN101668283A (zh) * 2008-09-01 2010-03-10 沃勤网络科技(上海)有限公司 一种手机嵌入式系统中动态加载的方法
CN101706725A (zh) * 2009-11-20 2010-05-12 中兴通讯股份有限公司 一种可重定位程序的加载及调试方法及系统
CN102486735A (zh) * 2010-12-02 2012-06-06 腾讯科技(深圳)有限公司 一种手机软件动态加载方法及装置
CN102663281A (zh) * 2012-03-16 2012-09-12 成都市华为赛门铁克科技有限公司 检测恶意软件的方法和装置
CN104123481A (zh) * 2013-04-24 2014-10-29 贝壳网际(北京)安全技术有限公司 防止应用程序被篡改的方法及装置
CN104484585A (zh) * 2014-11-26 2015-04-01 北京奇虎科技有限公司 一种应用程序安装包的处理方法、装置及移动设备
CN104850775A (zh) * 2014-02-14 2015-08-19 北京奇虎科技有限公司 一种应用程序安全性的鉴定方法和装置
CN104932902A (zh) * 2015-07-09 2015-09-23 魅族科技(中国)有限公司 一种生成apk文件的方法及终端
CN104954353A (zh) * 2015-02-10 2015-09-30 腾讯科技(深圳)有限公司 Apk文件包的校验方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080134333A1 (en) * 2006-12-04 2008-06-05 Messagelabs Limited Detecting exploits in electronic objects

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641569A (zh) * 2004-01-06 2005-07-20 英业达股份有限公司 Java小应用程序下插件功能的实现方法
CN101668283A (zh) * 2008-09-01 2010-03-10 沃勤网络科技(上海)有限公司 一种手机嵌入式系统中动态加载的方法
CN101706725A (zh) * 2009-11-20 2010-05-12 中兴通讯股份有限公司 一种可重定位程序的加载及调试方法及系统
CN102486735A (zh) * 2010-12-02 2012-06-06 腾讯科技(深圳)有限公司 一种手机软件动态加载方法及装置
CN102663281A (zh) * 2012-03-16 2012-09-12 成都市华为赛门铁克科技有限公司 检测恶意软件的方法和装置
CN104123481A (zh) * 2013-04-24 2014-10-29 贝壳网际(北京)安全技术有限公司 防止应用程序被篡改的方法及装置
CN104850775A (zh) * 2014-02-14 2015-08-19 北京奇虎科技有限公司 一种应用程序安全性的鉴定方法和装置
CN104484585A (zh) * 2014-11-26 2015-04-01 北京奇虎科技有限公司 一种应用程序安装包的处理方法、装置及移动设备
CN104954353A (zh) * 2015-02-10 2015-09-30 腾讯科技(深圳)有限公司 Apk文件包的校验方法和装置
CN104932902A (zh) * 2015-07-09 2015-09-23 魅族科技(中国)有限公司 一种生成apk文件的方法及终端

Also Published As

Publication number Publication date
CN105740660A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
US20200304463A1 (en) Method, Apparatus, and System for Detecting Terminal Security Status
CN108960830B (zh) 智能合约的部署方法、装置、设备及存储介质
US9977897B2 (en) System and method for detecting stack pivot programming exploit
WO2017023773A1 (en) Systems and methods of protecting data from injected malware
KR20160055725A (ko) 가상 머신의 내부에서 실행하는 모바일 애플리케이션에 의해 네이티브 코드를 로딩, 링크, 및 실행하는 보안 정책
JP2017021776A (ja) モバイルデバイスでの悪質なファイルを検出するシステム及び方法
KR102153035B1 (ko) 악성 마이닝 동작 탐지 방법 및 그 시스템
US10198309B2 (en) Unexpected event detection during execution of an application
US10929537B2 (en) Systems and methods of protecting data from malware processes
TW201104489A (en) Method and system for cleaning malicious software and computer program product and storage medium
CN111901337A (zh) 文件上传方法、系统及存储介质
US9137333B1 (en) Method and system for adding plug-in functionality to virtualized applications
CN105260654A (zh) 一种软件系统自身完整性的验证方法
US20200218803A1 (en) Call stack acquisition device, call stack acquisition method, and call stack acquisition program
KR100954356B1 (ko) 코드 보호 기법을 고려한 악성 프로그램 감지 시스템 및 그방법
US9779239B2 (en) Detection of malicious software behavior using signature-based static analysis
CN105740660B (zh) 一种应用安全性的检测方法及装置
KR20130051225A (ko) 이기종 컴퓨팅 환경에서 보안 강화 방법 및 장치
WO2020233044A1 (zh) 一种插件校验方法、设备、服务器及计算机可读存储介质
KR101723623B1 (ko) 악성 코드 탐지 시스템 및 방법
CN108959915B (zh) 一种rootkit检测方法、装置及服务器
JP5712243B2 (ja) 監視処理方法、監視処理装置及び監視処理システム
EP3223185B1 (en) System and method dynamic code patching techniques from user-mode process address space
WO2022116587A1 (zh) Web端数据签名方法、装置及计算机设备
CN105631317B (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160902

Address after: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 15 layer self unit 02

Applicant after: GUANGZHOU YOUSHI NETWORK TECHNOLOGY CO., LTD.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 12 layer self unit 02

Applicant before: GUANGZHOU CAITONG NETWORK TECHNOLOGY CO., LTD.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200901

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 15 layer self unit 02

Patentee before: GUANGZHOU UC NETWORK TECHNOLOGY Co.,Ltd.