CN112948819B - 应用文件脱壳方法和装置、计算机可读存储介质 - Google Patents

应用文件脱壳方法和装置、计算机可读存储介质 Download PDF

Info

Publication number
CN112948819B
CN112948819B CN201911256304.3A CN201911256304A CN112948819B CN 112948819 B CN112948819 B CN 112948819B CN 201911256304 A CN201911256304 A CN 201911256304A CN 112948819 B CN112948819 B CN 112948819B
Authority
CN
China
Prior art keywords
file
apk
dex
application
system function
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
CN201911256304.3A
Other languages
English (en)
Other versions
CN112948819A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201911256304.3A priority Critical patent/CN112948819B/zh
Publication of CN112948819A publication Critical patent/CN112948819A/zh
Application granted granted Critical
Publication of CN112948819B publication Critical patent/CN112948819B/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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种应用文件脱壳方法和装置、计算机可读存储介质。该应用文件脱壳方法包括:判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式;在APK文件采用ART加固方式的情况下,获取系统函数;根据系统函数获取APK文件的基址和文件大小;根据APK文件的基址参数和文件大小,导出dex文件;修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳。本公开提供了一种专门针对ART虚拟机的脱壳方案,效率更高。

Description

应用文件脱壳方法和装置、计算机可读存储介质
技术领域
本公开涉及移动应用安全领域,特别涉及一种应用文件脱壳方法和装置、计算机可读存储介质。
背景技术
随着APK(Android application package,Android应用程序包)加固技术的高速发展,现有技术对APK的安全保护越来越好,但是这也给恶意APK躲避安全检测带来了可乘之机。恶意APK一旦采用了加固技术,会使得对恶意APK的检测难度加大甚至无法检测。
另外,对于一般的APK文件,对其进行脱壳则可以检测出很多由于加固而隐藏掉的风险,例如编码不规范、硬编码问题等。并且脱壳后的APK可以获得其更多和更准确的信息,包括但不限于IP(Internet Protocol,网际互连协议)、Email(Electronic Mail,电子邮件)、URL(uniform resource locator;统一资源定位系统)、手机号等信息,方便对APK进行溯源或分析。
发明内容
发明人通过研究发现:从安卓4.4引入ART虚拟机并从安卓5.0开始完全代替Dalvik虚拟机之后,对APK的加固方法也在与时俱进,然而相关技术的大部分脱壳方法针对的都是Dalvik虚拟机,对ART虚拟机的脱壳方法却较少。
即便目前有相关技术针对ART虚拟机的脱壳方法,但其实现也较为困难且较难做到完全的自动化处理,很大程度上依赖人工操作。
鉴于以上技术问题中的至少一项,本公开提供了一种应用文件脱壳方法和装置、计算机可读存储介质,可以专门针对ART虚拟机的脱壳方案,效率更高。
根据本公开的一个方面,提供一种应用文件脱壳方法,包括:
判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式;
在APK文件采用ART加固方式的情况下,获取系统函数;
根据系统函数获取APK文件的基址和文件大小;
根据APK文件的基址参数和文件大小,导出dex文件;
修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳。
在本公开的一些实施例中,所述应用文件脱壳方法还包括:
判断dex文件是否需要进行修复;
在dex文件需要进行修复的情况下,对dex文件进行修复,之后执行修改应用清单函数入口并重新打包APK文件的步骤;
在dex文件不需要进行修复的情况下,执行修改应用清单函数入口并重新打包APK文件的步骤。
在本公开的一些实施例中,所述对dex文件进行修复包括:
删除包含加固信息的dex文件;
将dex文件修改为smali文件;
按照文件从大到小修改文件名。
在本公开的一些实施例中,所述判断dex文件是否需要进行修复包括:
获取dex文件的魔数;
根据dex文件的魔数判断dex文件是否为正常dex文件;
在dex文件为正常dex文件的情况下,判定dex文件不需要进行修复;
在dex文件不是正常dex文件的情况下,则判定需要对dex文件进行修复。
在本公开的一些实施例中,在系统函数为第一系统函数的情况下,所述根据系统函数获取APK文件的基址参数和文件大小包括:
从第一系统函数中直接获取APK文件的基址参数;
通过执行加固的APK加载进内存执行,其中,壳程序会对加固程序解密,并产生dex文件来执行;
读取dex文件header中的大小。
在本公开的一些实施例中,在系统函数为第二系统函数的情况下,所述根据系统函数获取APK文件的基址参数和文件大小包括:
从第二系统函数中直接获取APK文件的基址参数和文件大小。
在本公开的一些实施例中,所述应用文件脱壳方法还包括:
在APK文件未采用ART加固方式的情况下,判断APK文件是否为未加固;
在APK文件采用了其他加固方式的情况下,判断APK文件是否采用了伪加密方式;
在APK文件未采用伪加密方式的情况下,则执行获取系统函数的步骤。
根据本公开的另一方面,提供一种应用文件脱壳装置,包括:
加固方式判断模块,用于判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式;
系统函数获取模块,用于在APK文件采用ART加固方式的情况下,获取系统函数;
参数获取模块,用于根据系统函数获取APK文件的基址参数和文件大小;
文件导出模块,用于根据APK文件的基址参数和文件大小,导出dex文件;
脱壳模块,用于修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳。
在本公开的一些实施例中,所述应用文件脱壳装置用于执行实现如上述任一实施例所述的应用文件脱壳方法的操作。
根据本公开的另一方面,提供一种应用文件脱壳装置,包括:
存储器,用于存储指令。
处理器,用于执行所述指令,使得所述装置执行实现如上述任一实施例所述的应用文件脱壳方法的操作。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的应用文件脱壳方法。
本公开提供了一种专门针对ART虚拟机的脱壳方案,效率更高。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开应用文件脱壳方法一些实施例的示意图。
图2为本公开应用文件脱壳方法另一些实施例的示意图。
图3为本公开应用文件脱壳装置一些实施例的示意图。
图4为本公开应用文件脱壳装置另一些实施例的示意图。
图5为本公开应用文件脱壳装置又一些实施例的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本公开应用文件脱壳方法一些实施例的示意图。优选的,本实施例可由本公开应用文件脱壳装置执行。该方法包括以下步骤:
步骤101,判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式。
步骤102,在APK文件采用ART加固方式的情况下,获取系统函数。
步骤103,根据系统函数获取APK文件的基址和文件大小。
步骤104,根据APK文件的基址参数和文件大小,导出dex文件。
步骤105,修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳。
基于本公开上述实施例提供的应用文件脱壳方法,提供了一种专门针对ART虚拟机的脱壳方案,效率更高;本公开上述实施例便于自动化执行;本公开上述实施例可以免Root执行;本公开上述实施例在真机和模拟器均可执行。
图2为本公开应用文件脱壳方法另一些实施例的示意图。优选的,本实施例可由本公开应用文件脱壳装置执行。该方法包括以下步骤:
步骤201,通过脚本识别加固厂商和版本,判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式。在APK文件采用ART加固方式的情况下,执行步骤202;否则,执行步骤213。
步骤202,获取系统函数。在系统函数为第一系统函数的情况下,执行步骤204;否则,在系统函数为第二系统函数的情况下,执行步骤203。
在本公开的一些实施例中,步骤202可以包括:获取系统函数所在文件libart.so,并在真机或模拟器执行该应用,利用hook技术(钩子函数)得到程序传递的参数,根据此参数判断调用的系统函数为第一系统函数还是第二系统函数。
在本公开的一些实施例中,第一系统函数可以为const DexFile*DexFile::OpenMemory(const std::string&location,uint32_tlocation_checksum,MemMap*mem_map,std::string*error_msg)【记为A】。
在本公开的一些实施例中,第二系统函数可以为const DexFile*DexFile::OpenMemory(const byte*base,size_t size,conststd::string&location,uint32_tlocation_checksum,MemMap*mem_map,std::string*error_msg)【记为B】。
步骤203,从第二系统函数中直接获取APK文件的基址参数base和文件大小size。
步骤204,从第一系统函数中直接获取APK文件的基址参数location;之后执行步骤208。
步骤205,通过执行加固的APK,将加固的APK加载进内存执行。
步骤206,壳程序会对加固程序解密,并产生dex文件来执行。
在本公开的一些实施例中,步骤206可以包括:壳程序会对加固程序解密同时执行dexfile::dexfile()构造函数(此为通用脱壳点),并产生dex文件。
步骤207,读取dex文件header中的大小。
在本公开的一些实施例中,步骤206可以包括:在步骤206的脱壳点获得dex文件header中的大小。
步骤208,根据APK文件的基址参数和文件大小,从内存中采用dump方式导出dex文件。
步骤209,判断dex文件是否需要进行修复。在需要进行修复的情况下,执行步骤210;否则,在不需要进行修复的情况下,执行步骤211。
在本公开的一些实施例中,步骤209可以包括:获取dex文件的魔数;根据dex文件的魔数判断dex文件是否为正常dex文件;在dex文件为正常dex文件的情况下,则判定dex文件不需要进行修复;在dex文件不是正常dex文件的情况下,则判定需要对dex文件进行修复。
步骤210,对dex文件进行修复。
在本公开的一些实施例中,步骤210可以包括:对获得的dex文件进行扫描,删去内含加固厂商类名的dex文件再通过backsmali转为smali文件,并按照smali、smali_classes2、smali_classes3等的方式按照文件从大到小修改文件名。
步骤211,修改应用清单函数(AndroidManifest.xml函数)的入口。
步骤212,重新打包APK文件,对APK文件重新签名,以完成脱壳;之后结束。
步骤213,通过反编译判断APK文件是否为未加固。在APK文件为未加固的情况下,则结束;否则,在APK文件为其他加固方式的情况下,执行步骤214。
步骤214,判断APK文件是否采用了伪加密方式。在APK文件未采用伪加密方式的情况下,则执行步骤202;否则,在APK文件采用伪加密方式的情况下,执行步骤215。
在本公开的一些实施例中,步骤214可以包括:检查APK文件二进制序列,寻找504B 01 02后的第五个字节是否为01;若是,则APK文件为伪加密;否则,APK文件不是伪加密。
步骤215,修改安装包指定位置二进制标志位;之后结束。
在本公开的一些实施例中,步骤215可以包括:将50 4B 01 02后的第五个字节由01更改至00,以实现对伪加密的解密。
本公开上述实施例的应用文件脱壳方法,是一种专门针对ART虚拟机的脱壳方案,效率更高;本公开上述实施例便于自动化执行;本公开上述实施例可以免Root执行;本公开上述实施例在真机和模拟器均可执行。
本公开上述实施例可以实现完全的自动化处理,不需要依赖人工操作。
图3为本公开应用文件脱壳装置一些实施例的示意图。如图3所示,本公开应用文件脱壳装置可以包括加固方式判断模块31、系统函数获取模块32、参数获取模块33、文件导出模块34和脱壳模块35,其中:
加固方式判断模块31,用于判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式。
在本公开的一些实施例中,加固方式判断模块31还可以用于在APK文件未采用ART加固方式的情况下,判断APK文件是否为未加固;在APK文件采用了其他加固方式的情况下,判断APK文件是否采用了伪加密方式;在APK文件未采用伪加密方式的情况下,则执行获取系统函数的操作。
在本公开的一些实施例中,加固方式判断模块31还可以用于在APK文件采用伪加密方式的情况下,修改安装包指定位置二进制标志位。
系统函数获取模块32,用于在APK文件采用ART加固方式的情况下,获取系统函数。
参数获取模块33,用于根据系统函数获取APK文件的基址参数和文件大小。
在本公开的一些实施例中,在系统函数为第一系统函数的情况下,参数获取模块33可以用于从第一系统函数中直接获取APK文件的基址参数;通过执行加固的APK加载进内存执行,其中,壳程序会对加固程序解密,并产生dex文件来执行;读取dex文件header中的大小。
在本公开的另一些实施例中,在系统函数为第二系统函数的情况下,参数获取模块33可以用于从第二系统函数中直接获取APK文件的基址参数和文件大小。
文件导出模块34,用于根据APK文件的基址参数和文件大小,导出dex文件。
脱壳模块35,用于修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳。
在本公开的一些实施例中,所述应用文件脱壳用于执行实现如上述任一实施例(例如图1或图2实施例)所述的应用文件脱壳方法的操作。
图4为本公开应用文件脱壳装置另一些实施例的示意图。与图3实施例相比,本公开应用文件脱壳装置还可以包括修复模块36,其中,其中:
修复模块36,用于判断dex文件是否需要进行修复;在dex文件需要进行修复的情况下,对dex文件进行修复,之后指示脱壳模块35执行修改应用清单函数入口并重新打包APK文件的操作;在dex文件不需要进行修复的情况下,指示脱壳模块35执行修改应用清单函数入口并重新打包APK文件的操作。
在本公开的一些实施例中,在对dex文件进行修复的情况下,修复模块36可以用于删除包含加固信息的dex文件;将dex文件修改为smali文件;按照文件从大到小修改文件名。
在本公开的一些实施例中,在判断dex文件是否需要进行修复的情况下,修复模块36可以用于获取dex文件的魔数;根据dex文件的魔数判断dex文件是否为正常dex文件;在dex文件为正常dex文件的情况下,判定dex文件不需要进行修复;在dex文件不是正常dex文件的情况下,则判定需要对dex文件进行修复。
基于本公开上述实施例提供的应用文件脱壳装置,提供了一种专门针对ART虚拟机的脱壳方案,效率更高;本公开上述实施例便于自动化执行;本公开上述实施例可以免Root执行;本公开上述实施例在真机和模拟器均可执行。
图5为本公开应用文件脱壳装置又一些实施例的示意图。如图5所示,本公开应用文件脱壳装置可以包括存储器51和处理器52,其中:
存储器51,用于存储指令。
处理器52,用于执行所述指令,使得所述装置执行实现如上述任一实施例(例如图1或图2实施例)所述的应用文件脱壳方法的操作。
本公开上述实施例可以实现完全的自动化处理,不需要依赖人工操作。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例(例如图1或图2实施例)所述的应用文件脱壳方法。
基于本公开上述实施例提供的计算机可读存储介质,可以专门针对ART虚拟机进行脱壳方案,效率更高;本公开上述实施例便于自动化执行;本公开上述实施例可以免Root执行;本公开上述实施例在真机和模拟器均可执行。
在上面所描述的应用文件脱壳装置可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。

Claims (9)

1.一种应用文件脱壳方法,其特征在于,包括:
判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式;
在APK文件采用ART加固方式的情况下,获取系统函数;
根据系统函数获取APK文件的基址和文件大小;
根据APK文件的基址参数和文件大小,导出dex文件;
修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳;
在APK文件未采用ART加固方式的情况下,判断APK文件是否为未加固;
在APK文件采用了其他加固方式的情况下,判断APK文件是否采用了伪加密方式;
在APK文件未采用伪加密方式的情况下,则执行获取系统函数、根据系统函数获取APK文件的基址和文件大小、根据APK文件的基址参数和文件大小导出dex文件、修改应用清单函数入口并重新打包APK文件并对APK文件重新签名以完成脱壳的步骤;
在APK文件采用伪加密方式的情况下,修改安装包指定位置二进制标志位。
2.根据权利要求1所述的应用文件脱壳方法,其特征在于,还包括:
判断dex文件是否需要进行修复;
在dex文件需要进行修复的情况下,对dex文件进行修复,之后执行修改应用清单函数入口并重新打包APK文件的步骤;
在dex文件不需要进行修复的情况下,执行修改应用清单函数入口并重新打包APK文件的步骤。
3.根据权利要求2所述的应用文件脱壳方法,其特征在于,所述对dex文件进行修复包括:
删除包含加固信息的dex文件;
将dex文件修改为smali文件;
按照文件从大到小修改文件名。
4.根据权利要求2所述的应用文件脱壳方法,其特征在于,所述判断dex文件是否需要进行修复包括:
获取dex文件的魔数;
根据dex文件的魔数判断dex文件是否为正常dex文件;
在dex文件为正常dex文件的情况下,判定dex文件不需要进行修复;
在dex文件不是正常dex文件的情况下,则判定需要对dex文件进行修复。
5.根据权利要求1-4中任一项所述的应用文件脱壳方法,其特征在于,在系统函数为第一系统函数的情况下,所述根据系统函数获取APK文件的基址参数和文件大小包括:
从第一系统函数中直接获取APK文件的基址参数;
通过执行加固的APK加载进内存执行,其中,壳程序会对加固程序解密,并产生dex文件来执行;
读取dex文件header中的大小。
6.根据权利要求1-4中任一项所述的应用文件脱壳方法,其特征在于,在系统函数为第二系统函数的情况下,所述根据系统函数获取APK文件的基址参数和文件大小包括:
从第二系统函数中直接获取APK文件的基址参数和文件大小。
7.一种应用文件脱壳装置,其特征在于,包括:
加固方式判断模块,用于判断安卓应用程序包APK文件是否采用了安卓运行模式ART加固方式;
系统函数获取模块,用于在APK文件采用ART加固方式的情况下,获取系统函数;
参数获取模块,用于根据系统函数获取APK文件的基址参数和文件大小;
文件导出模块,用于根据APK文件的基址参数和文件大小,导出dex文件;
脱壳模块,用于修改应用清单函数入口并重新打包APK文件,对APK文件重新签名,以完成脱壳;
其中,所述应用文件脱壳装置用于执行实现如权利要求1-6中任一项所述的应用文件脱壳方法的操作。
8.一种应用文件脱壳装置,其特征在于,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述装置执行实现如权利要求1-6中任一项所述的应用文件脱壳方法的操作。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-6中任一项所述的应用文件脱壳方法。
CN201911256304.3A 2019-12-10 2019-12-10 应用文件脱壳方法和装置、计算机可读存储介质 Active CN112948819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911256304.3A CN112948819B (zh) 2019-12-10 2019-12-10 应用文件脱壳方法和装置、计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911256304.3A CN112948819B (zh) 2019-12-10 2019-12-10 应用文件脱壳方法和装置、计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112948819A CN112948819A (zh) 2021-06-11
CN112948819B true CN112948819B (zh) 2024-01-26

Family

ID=76225549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911256304.3A Active CN112948819B (zh) 2019-12-10 2019-12-10 应用文件脱壳方法和装置、计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112948819B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113641426A (zh) * 2021-08-31 2021-11-12 福建省天奕网络科技有限公司 一种安卓端基于源码修改的脱壳查找与实现方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105930692A (zh) * 2016-04-20 2016-09-07 北京鼎源科技有限公司 一种Android应用程序的动态脱壳方法
CN106022130A (zh) * 2016-05-20 2016-10-12 中国科学院信息工程研究所 加固应用程序的脱壳方法及装置
WO2016188134A1 (zh) * 2015-05-22 2016-12-01 中兴通讯股份有限公司 一种实现应用加固的方法及装置
CN108154011A (zh) * 2018-01-12 2018-06-12 广州汇智通信技术有限公司 基于art模式的脱壳方法、系统、设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620990B2 (en) * 2004-01-30 2009-11-17 Microsoft Corporation System and method for unpacking packed executables for malware evaluation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016188134A1 (zh) * 2015-05-22 2016-12-01 中兴通讯股份有限公司 一种实现应用加固的方法及装置
CN105930692A (zh) * 2016-04-20 2016-09-07 北京鼎源科技有限公司 一种Android应用程序的动态脱壳方法
CN106022130A (zh) * 2016-05-20 2016-10-12 中国科学院信息工程研究所 加固应用程序的脱壳方法及装置
CN108154011A (zh) * 2018-01-12 2018-06-12 广州汇智通信技术有限公司 基于art模式的脱壳方法、系统、设备及可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ART虚拟机中的Dex文件脱壳技术;蒋忠庆等;《计算机应用》;第第37卷卷(第第11期期);第3294-3298, 3334页 *

Also Published As

Publication number Publication date
CN112948819A (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
EP3528149B1 (en) Software repackaging prevention method and device
CN105159707B (zh) 一种安全的金融终端的固件烧写方法及金融终端
US10586026B2 (en) Simple obfuscation of text data in binary files
CN104317599B (zh) 检测安装包是否被二次打包的方法和装置
CN106055341A (zh) 应用程序安装包的校验方法及装置
CN104331662A (zh) Android恶意应用检测方法及装置
FR2977694A1 (fr) Microprocesseur protege contre un debordement de pile
CN108229112A (zh) 一种保护应用程序、应用程序的运行方法以及装置
CN107273723B (zh) 一种基于so文件加壳的Android平台应用软件保护方法
CN108197476B (zh) 一种智能终端设备的漏洞检测方法及装置
WO2015192637A1 (zh) 软件安装包的加固保护方法和装置
CN109933350B (zh) 在应用中嵌入代码的方法、装置及电子设备
CN112948819B (zh) 应用文件脱壳方法和装置、计算机可读存储介质
CN108319473A (zh) 终端系统启动方法和装置
CN106960138B (zh) 虚拟机指令的校验方法及装置、系统
CN104915594A (zh) 应用程序运行方法及装置
CN107908964B (zh) 一种针对Android平台Unity3D游戏中加壳文件的安全检测方法及装置
CN110147653A (zh) 应用程序安全加固方法及装置
CN108108617B (zh) 基于静态指令流跟踪的导入表修复方法及装置
CN110609703B (zh) 性能检测工具实现方法、装置、可读存储介质及终端设备
EP3182286B1 (fr) Procede de verification de fonctionnalites d'un logiciel destine a etre embarque dans un composant cryptographique, systeme
CN111221721A (zh) 一种单元测试案例自动化录制和执行方法及装置
CN106709287B (zh) 应用脱壳的方法及装置
CN107168875B (zh) 一种基于安卓应用多入口特性的Activity构件泄露检测方法
CN108664796B (zh) 一种so文件保护方法及装置

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