CN111191197A - 保护移动端应用和移动端应用的运行方法和装置 - Google Patents

保护移动端应用和移动端应用的运行方法和装置 Download PDF

Info

Publication number
CN111191197A
CN111191197A CN201911415313.2A CN201911415313A CN111191197A CN 111191197 A CN111191197 A CN 111191197A CN 201911415313 A CN201911415313 A CN 201911415313A CN 111191197 A CN111191197 A CN 111191197A
Authority
CN
China
Prior art keywords
application
component
original application
original
name
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
CN201911415313.2A
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.)
Uusafe Co ltd
Original Assignee
Uusafe 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 Uusafe Co ltd filed Critical Uusafe Co ltd
Priority to CN201911415313.2A priority Critical patent/CN111191197A/zh
Publication of CN111191197A publication Critical patent/CN111191197A/zh
Pending legal-status Critical Current

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本公开提供一种保护移动端应用及移动端应用的运行方法和装置。保护移动端应用的方法包括:将原应用中的组件的名称修改为按照组件的类别进行标识;将修改前的组件的名称和修改后的组件名称保存到映射文件中;将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。移动端应用的运行方法包括:当保护应用启动时,加载引擎库,初始化引擎;检测原应用是否已经解密导出并优化;当原应用已经解密导出并优化时,将原应用动态加载到内存;将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;引擎检测进程内组件的行为,并进行组件还原。原应用便于在运行时快速进行索引还原。

Description

保护移动端应用和移动端应用的运行方法和装置
技术领域
本发明属于数据安全技术领域,具体涉及一种保护移动端应用的方法和装置、以及移动端应用的运行方法和装置。
背景技术
随着智能手机的迅速普及,应用程序迎来了迅速发展。与此同时,安卓(Android)平台下应用程序的也面临者越来越多的安全问题。但是,现有技术只是通过代码混淆,第三方加固等方法来保护应用,能在一定程度上加强软件安全性,无法完全确保应用不被逆向,知识产权不被侵犯。因此,对应用程序进行保护也是一种迫切的需求。
发明内容
针对现有技术存在的缺陷,本发明提出一种保护移动端应用的方法和装置、以及移动端应用的运行方法和装置,完全解决应用被逆向的问题。
本发明采用的技术方案如下:
一方面,本发明提供一种保护移动端应用的方法。所述保护移动端应用的方法包括:将原应用中的组件的名称修改为按照组件的类别进行标识;将修改前的组件的名称和修改后的组件名称保存到映射文件中;将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
可选地,对于所述保护移动端应用的方法,将原应用中的组件的名称修改为按照组件的类别进行标识包括:解析原应用,获取节点应用信息;根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。
可选地,对于所述保护移动端应用的方法,所修改的组件包括Activity、Service、Provider和Receiver中至少一个组件。
另一方面,本发明提供一种保护移动端应用的装置。所述保护移动端应用的装置包括:组件修改单元,用于将原应用中的组件的名称修改为按照组件的类别进行标识;存储映射单元,用于将修改前的组件的名称和修改后的组件名称保存到映射文件中;打包单元,用于将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
可选地,所述保护移动端应用的装置还包括解析单元,用于解析原应用,获取节点应用信息;组件修改单元进一步用于根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。
又一方面,本发明提供一种移动端应用的运行方法。所述移动端应用的运行方法包括:当保护应用启动时,加载引擎库,初始化引擎;检测原应用是否已经解密导出并优化;当原应用已经解密导出并优化时,将原应用动态加载到内存;将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;引擎检测进程内组件的行为,并进行组件还原。
可选地,对于所述的移动端应用运行的方法,引擎检测进程内组件的行为,并进行组件还原,包括:引擎检测进程内服务的应用程序编程接口Application ProgrammingInterfaceAPI和组件的行为,并进行服务代理和组件还原。
再一方面,本发明提供一种移动端应用的运行装置。所述移动端应用的运行装置包括:引擎初始化单元,用于在保护应用启动时,加载引擎库,初始化引擎;检测单元,用于检测原应用是否已经解密导出并优化;应用加载单元,用于当原应用已经解密导出并优化时,将原应用动态加载到内存;上下文传递单元,用于将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;组件还原单元,用于使引擎检测进程内组件的行为,并进行组件还原。
还有一方面,本发明提供一种计算设备。所述计算设备包括:一个或多个处理器,以及与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述方法。
再有一方面,本发明提供一种机器可读存储介质。所述机器可读存储介质存储有可执行指令,所述指令当被执行时使得所述机器执行上述方法。
本公开实施例提供的保护移动端应用的方法和装置、以及移动端应用的运行方法和装置具有以下优点:
本公开实施例的保护移动端应用的方法和装置、以及移动端应用的运行方法和装置基于原始应用、模板应用和引擎模块,构建一个新的应用。针对原始应用,新应用将原始应用的组件信息进行隐藏,隐藏的规则为保持组件的个数和类型等基本信息,对组件的名称按类别进行标识,便于在运行时快速进行索引还原,完全解决了应用被逆向的问题。
附图说明
图1为本发明一个实施例提供的保护移动端应用的方法的流程图;
图2为本发明另一个实施例提供的保护移动端应用的装置的结构示意图;
图3为本发明再一个实施例提供的移动端应用的运行方法的流程图;
图4为本发明又一个实施例提供的移动端应用的运行装置的结构示意图;
图5示出了根据本公开的实施例的保护移动端应用和/或实现移动端应用运行的计算设备的结构框图。
具体实施方式
为了使本发明所解决的技术问题、技术方案以及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
为了完全解决应用被逆向的问题,本发明提出了一套应用加密方案。基于原始应用、模板应用和引擎模块,构建一个新的应用。针对原始应用,新应用将原始应用的组件信息进行隐藏,隐藏的规则为保持组件的个数和类型等基本信息,对组件的名称按类别进行标识,便于在运行时快速进行索引还原。新应用中没有任何原应用的信息,进行反编译时只有模板应用的信息、隐藏后的组件信息以及加密后的原始应用,无法获得原始应用的任何信息。这样就达到了保护应用的目的。
图1为本发明一个实施例提供的保护移动端应用的方法的流程图。
如图1所示,在步骤S110,将原应用中的组件的名称修改为按照组件的类别进行标识。步骤S110的具体过程可以包括:解析原应用,获取节点应用信息;根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。其中,所修改的组件包括Activity、Service、Provider和Receiver中至少一个组件。
在步骤S120,将修改前的组件的名称和修改后的组件名称保存到映射文件中。
在步骤S130,将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
下面,通过一个具体例子对保护移动端应用的方法进一步说明。
步骤一,创建模板应用:mini.apk,mini应用是一个空应用,只具有正常应用的内容结构。
步骤二,解析原始应用安装包,获取原始应用包名oriPkgName,根据乱序编码将oriPkgName转换为newPkgName;创建临时目录,备份原始应用安装包,解压原始应用安装包到apk目录;解压mini.apk到mini目录,获取mini.apk的Theme对应的MiniThemeID和MiniIconID。
步骤三,读取原始应用安装包的resources.arsc。获取应用资源ResXmlGen,加载到ResourceLoader中。
步骤四,新建AXMLDoc解析原始应用的AndroidManifest.xml,获取StringBlock、ResBloock和BXMLTree。
步骤五,通过ResBlock和StringBlock修改节点应用(application)中ApplicationName为com.mini.WrapperAplication;新建meta-data节点,将原应用的ApplicationName保存到meta-data节点,在WrapperAplication启动时通过meta-data获取原应用的ApplicationName,将原应用的Application加载起来;替换package为步骤2生成的newPkgName:完成新应用的包名替换,这样就完成了应用包名的保护;
步骤六,获取节点application中processName的资源id,通过ResourceLoader获取此id对应的字符串,用此字符串替换此id:这样就完成了processName的替换,保持和原始应用processName一致。
步骤七,获取节点application信息,进行组件修改。步骤七进一步包括如下步骤:
步骤七-1,修改组件Activity:依次修改name为newPkgName.A01、newPkgName.A02、newPkgName.A03.....newPkgName.A100,同时保存原始name和转换后的新的name到文件manifest.udb,完成组件Activity的保护:应用加载后通过newPkgName.A01.....newPkgName.A100映射为原始Activity的name,完成Activity的还原;
新应用中无法加载原应用的资源,包括Theme,Drawable,String。这些资源需要替换为Mini.apk的资源。将Theme的id替换为步骤二生成的MiniThemeID,icon的id替换为步骤二生成的MiniIconID,通过ResourceLoader获取taskAfinity、ScreenOrientation、ProcessName的id对应的资源值,再用ResBlock和StringBlock将这些id替换为对应的资源值;
步骤七-2,修改组件Service:依次修改name为newPkgName.S01、newPkgName.S02、newPkgName.S03.....newPkgName.S100;
同时保存原始name和转换后的新的name到文件manifest.udb:应用加载后通过newPkgName.S01.....newPkgName.S100映射为原始Service的name,完成Service的还原;
步骤七-3,修改组件Provider:依次修改name为newPkgName.P01、newPkgName.P02、newPkgName.P03.....newPkgName.P100;
同时保存原始name和转换后的新的name到文件manifest.udb:应用加载后通过newPkgName.P01...newPkgName.P100映射为原始Service的name,完成Provider的还原;
步骤七-4,修改组件Receiver:依次修改name为newPkgName.R01、newPkgName.R02、newPkgName.R03.....newPkgName.R100;
同时保存原始name和转换后的新的name到映射文件manifest.udb:应用加载后通过newPkgName.R01...newPkgName.R100映射为原始Receiver的name,完成Receiver的还原。
步骤八,将manifest.udb加密,原始应用加密为plugin.udb,在mini目录下创建assert目录,将引擎库lib.zip(用于组件还原,服务代理)、manifest.udb和plugin.udb放入assert目录下;在mini目录加入加载引擎的class.dex
步骤九,对mini目录进行打包生成新应用new.apk。
图2为本发明另一个实施例提供的保护移动端应用的装置的结构示意图。如图2所示,该实施例的保护移动端应用的装置200包括组件修改单元210、存储映射单元220和打包单元230。
组件修改单元210用于将原应用中的组件的名称修改为按照组件的类别进行标识。
存储映射单元220用于将修改前的组件的名称和修改后的组件名称保存到映射文件中。
打包单元230用于将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
该实施例的保护移动端应用的装置还可以包括解析单元,用于解析原应用,获取节点应用信息。组件修改单元进一步用于根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。
图3为本发明再一个实施例提供的移动端应用的运行方法的流程图。
如图3所示,在步骤S310,当保护应用启动时,加载引擎库,初始化引擎,确保后续的进程可以运行在一个隔离的环境。
在步骤S320,检测原应用是否已经解密导出并优化。如果原应用已经解密导出并优化,则流程进行到步骤S330,否则流程进行到步骤S360。在步骤S360,将原应用进行解密导出并且将DEX优化。
在步骤S330,将原应用动态加载到内存。
在步骤S340,将保护应用的上下文传递给已加载的原应用。至此保护应用脱壳完成,原应用正常启动,后续进程行为全部交给原应用。
在步骤S350,引擎实时检测进程内组件的行为,并进行组件还原。作为一种可选实时方式,引擎实时检测进程内服务API和组件的行为并进行处理识别,实现服务代理和组件还原。
图4为本发明又一个实施例提供的移动端应用的运行装置的结构示意图。如图4所示,该实施例的移动端应用的运行装置400包括引擎初始化单元410、检测单元420、应用加载单元430、上下文传递单元440、以及组件还原单元450。
引擎初始化单元410用于在保护应用启动时,加载引擎库,初始化引擎。
检测单元420用于检测原应用是否已经解密导出并优化。
应用加载单元430用于当原应用已经解密导出并优化时,将原应用动态加载到内存。
上下文传递单元440用于将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用。
组件还原单元450用于使引擎检测进程内组件的行为,并进行组件还原。
图5示出了根据本公开的实施例的保护移动端应用和/或实现移动端应用运行的计算设备的结构框图。
如图5所示,计算设备500可以包括至少一个处理器510、存储器520、内存530、通信接口540以及内部总线550,该至少一个处理器510执行在计算机可读存储介质(即,存储器520)中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器520中存储有计算机可执行指令,其当执行时使得至少一个处理器510:将原应用中的组件的名称修改为按照组件的类别进行标识;将修改前的组件的名称和修改后的组件名称保存到映射文件中;将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。而且/或者,当保护应用启动时,加载引擎库,初始化引擎;检测原应用是否已经解密导出并优化;当原应用已经解密导出并优化时,将原应用动态加载到内存;将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;引擎检测进程内组件的行为,并进行组件还原。
应该理解的是,在存储器520中存储的计算机可执行指令当执行时使得至少一个处理器510进行本公开的各个实施例中以上结合图1-图2描述的各种操作和功能和/或以上结合图3-图4描述的各种操作和功能。
在本公开中,计算设备500可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种例如非暂时性机器可读介质的程序产品。非暂时性机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本公开的各个实施例中以上结合图1-图2描述的各种操作和功能和/或以上结合图3-图4描述的各种操作和功能。
具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。

Claims (10)

1.一种保护移动端应用的方法,其特征在于,包括:
将原应用中的组件的名称修改为按照组件的类别进行标识;
将修改前的组件的名称和修改后的组件名称保存到映射文件中;
将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
2.根据权利要求1所述的保护移动端应用的方法,其特征在于,将原应用中的组件的名称修改为按照组件的类别进行标识包括:
解析原应用,获取节点应用信息;
根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。
3.根据权利要求2所述的保护移动端应用的方法,其特征在于,所修改的组件包括Activity、Service、Provider和Receiver中至少一个组件。
4.一种保护移动端应用的装置,其特征在于,包括:
组件修改单元,用于将原应用中的组件的名称修改为按照组件的类别进行标识;
存储映射单元,用于将修改前的组件的名称和修改后的组件名称保存到映射文件中;
打包单元,用于将引擎库、加密后的映射文件和加密后的原应用放入模板应用中,打包生成保护应用。
5.根据权利要求4所述的保护移动端应用的装置,其特征在于,还包括解析单元,用于解析原应用,获取节点应用信息;
组件修改单元进一步用于根据获取的节点应用信息,将待保护应用中的组件的名称修改为按照组件的类别进行标识。
6.一种移动端应用的运行方法,其特征在于,包括:
当保护应用启动时,加载引擎库,初始化引擎;
检测原应用是否已经解密导出并优化;
当原应用已经解密导出并优化时,将原应用动态加载到内存;
将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;
引擎检测进程内组件的行为,并进行组件还原。
7.根据权利要求6所述的移动端应用运行的方法,其特征在于,引擎检测进程内组件的行为,并进行组件还原,包括:
引擎检测进程内服务的应用程序编程接口Application Programming InterfaceAPI和组件的行为,并进行服务代理和组件还原。
8.一种移动端应用的运行装置,其特征在于,包括:
引擎初始化单元,用于在保护应用启动时,加载引擎库,初始化引擎;
检测单元,用于检测原应用是否已经解密导出并优化;
应用加载单元,用于当原应用已经解密导出并优化时,将原应用动态加载到内存;
上下文传递单元,用于将保护应用的上下文传递给已加载的原应用,以使原应用正常启动,后续进程行为全部交给原应用;
组件还原单元,用于使引擎检测进程内组件的行为,并进行组件还原。
9.一种计算设备,其特征在于,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1到3中任一项所述的方法和/或如权利要求6或7所述的方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到3中任一项所述的方法和/或如权利要求6或7所述的方法。
CN201911415313.2A 2019-12-31 2019-12-31 保护移动端应用和移动端应用的运行方法和装置 Pending CN111191197A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911415313.2A CN111191197A (zh) 2019-12-31 2019-12-31 保护移动端应用和移动端应用的运行方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911415313.2A CN111191197A (zh) 2019-12-31 2019-12-31 保护移动端应用和移动端应用的运行方法和装置

Publications (1)

Publication Number Publication Date
CN111191197A true CN111191197A (zh) 2020-05-22

Family

ID=70707968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911415313.2A Pending CN111191197A (zh) 2019-12-31 2019-12-31 保护移动端应用和移动端应用的运行方法和装置

Country Status (1)

Country Link
CN (1) CN111191197A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105205358A (zh) * 2015-09-21 2015-12-30 中科信息安全共性技术国家工程研究中心有限公司 一种识别Android APP加固的方法及检测方法
CN105205359A (zh) * 2015-10-12 2015-12-30 厦门飞信网络科技有限公司 一种JavaScript代码保护方法及装置
CN106203007A (zh) * 2015-05-08 2016-12-07 腾讯科技(深圳)有限公司 一种代码处理方法、装置及计算设备
CN106295255A (zh) * 2015-05-27 2017-01-04 腾讯科技(深圳)有限公司 应用程序的加固方法和装置
CN109522719A (zh) * 2018-11-29 2019-03-26 北京梆梆安全科技有限公司 应用安装包的加固检测方法、装置及移动终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106203007A (zh) * 2015-05-08 2016-12-07 腾讯科技(深圳)有限公司 一种代码处理方法、装置及计算设备
CN106295255A (zh) * 2015-05-27 2017-01-04 腾讯科技(深圳)有限公司 应用程序的加固方法和装置
CN105205358A (zh) * 2015-09-21 2015-12-30 中科信息安全共性技术国家工程研究中心有限公司 一种识别Android APP加固的方法及检测方法
CN105205359A (zh) * 2015-10-12 2015-12-30 厦门飞信网络科技有限公司 一种JavaScript代码保护方法及装置
CN109522719A (zh) * 2018-11-29 2019-03-26 北京梆梆安全科技有限公司 应用安装包的加固检测方法、装置及移动终端

Similar Documents

Publication Publication Date Title
CN111356985B (zh) 用于阻止恶意应用程序利用应用程序服务的系统和方法
US8726392B1 (en) Systems and methods for combining static and dynamic code analysis
CN106133741B (zh) 用于响应于检测可疑行为来扫描打包程序的系统和方法
US8756432B1 (en) Systems and methods for detecting malicious digitally-signed applications
US8479291B1 (en) Systems and methods for identifying polymorphic malware
JP6166839B2 (ja) 実行時のアプリケーションメソッドを置き換えるためのシステム及び方法
US10402563B2 (en) Automated classification of exploits based on runtime environmental features
US9852294B1 (en) Systems and methods for detecting suspicious applications based on how entry-point functions are triggered
CN106295255B (zh) 应用程序的加固方法和装置
US20160275019A1 (en) Method and apparatus for protecting dynamic libraries
CN112231702B (zh) 应用保护方法、装置、设备及介质
CN107077540B (zh) 用于提供基于云的应用安全服务的方法和系统
US20140281499A1 (en) Method and system for enabling communications between unrelated applications
CN109117201B (zh) 一种程序退出的方法及相关设备
CN109241707A (zh) 应用程序的混淆方法、装置和服务器
US10678917B1 (en) Systems and methods for evaluating unfamiliar executables
CN112069499A (zh) 一种检测方法、装置、存储介质及电子设备
US9659156B1 (en) Systems and methods for protecting virtual machine program code
CN112035803B (zh) 一种基于Windows平台软件的保护方法及装置
Hu et al. Robust app clone detection based on similarity of ui structure
CN111212418A (zh) 移动端应用安全下载装置和方法
CN111191197A (zh) 保护移动端应用和移动端应用的运行方法和装置
US11921874B2 (en) Method and system for protecting file using class distribution and sequential memory loading
CN111125793B (zh) 一种访问控制中客体内存可信验证方法及系统
US20210350006A1 (en) Systems and methods for identifying software vulnerabilities in embedded device firmware

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200522

RJ01 Rejection of invention patent application after publication