CN116107580A - 一种程序内部运行逻辑信息获取方法、装置及电子设备 - Google Patents
一种程序内部运行逻辑信息获取方法、装置及电子设备 Download PDFInfo
- Publication number
- CN116107580A CN116107580A CN202211743572.XA CN202211743572A CN116107580A CN 116107580 A CN116107580 A CN 116107580A CN 202211743572 A CN202211743572 A CN 202211743572A CN 116107580 A CN116107580 A CN 116107580A
- Authority
- CN
- China
- Prior art keywords
- target program
- monitoring
- program
- running
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/37—Compiler construction; Parser generation
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开一种程序内部运行逻辑信息获取方法、装置及电子设备,其中,所述方法包括:监控目标程序运行过程中对.NET方法的调用行为;获取监控到的所述调用行为的相关信息;将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。本发明实施例提供的技术方案可以快速、准确地获知程序具体的运行逻辑,了解程序存在运行慢、易崩溃、资源占用多等问题的原因,同时还能为恶意行为检测时挂钩位置的定位提供帮助。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种程序内部运行逻辑信息获取方法、装置、电子设备及存储介质。
背景技术
随着编程语言的发展,微软在C和C++后衍生出一种安全的、稳定的、简单的、优雅的面向对象编程语言:C#。该种编程语言在继承C和C++强大功能的同时去掉了一些C和C++的复杂特性,例如没有宏以及不允许多重继承。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持,成为.NET开发的首选语言。
.NET是微软的新一代技术平台,是全新的基于互联网的跨语言软件开发平台,顺应了当今软件工业分布式计算、面向组件、企业级应用、软件服务化和以Web为中心等大趋势。.NET并非开发语言,但是在.NET开发平台上可以支持多门开发语言,如C#、C++、VisualBasic、Jscript等。
目前,越来越多的程序采用C#编写后,需要解析其内部的运行逻辑,从而了解程序存在运行慢、易崩溃、资源占用多等问题的原因,同时还能为恶意行为检测时挂钩位置的定位提供帮助。程序内部运行逻辑如何获知亟待解决。
发明内容
有鉴于此,本发明实施例提供一种程序内部运行逻辑信息获取方法、装置、电子设备及存储介质,以快速、准确地获知程序具体的运行逻辑。
第一方面,本发明实施例提供一种程序内部运行逻辑信息获取方法,包括:
监控目标程序运行过程中对.NET方法的调用行为;
获取监控到的所述调用行为的相关信息;
将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。
进一步的,监控目标程序运行过程中对.NET方法的调用行为,包括:
监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用。
进一步的,监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用,包括:
在运行目标程序的进程加载即时编译器引擎模块时,对即时编译器引擎模块中的编译方法函数进行挂钩;
基于所述挂钩,监控目标程序运行过程中对所述编译方法函数的使用。
进一步的,所述程序内部运行逻辑信息获取方法还包括:
在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。
进一步的,监控目标程序运行过程中对.NET方法的调用行为,包括:
在运行目标程序的进程加载设定模块后,对所述设定模块中预编译好的机器码进行.NET方法调用的特征搜索。
第二方面,本发明实施例提供一种程序内部运行逻辑信息获取装置,包括:
监控单元,用于监控目标程序运行过程中对.NET方法的调用行为;
获取单元,用于获取监控到的所述调用行为的相关信息;
生成单元,用于将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。
进一步的,所述监控单元包括:函数监控子单元,用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用。
进一步的,所述函数监控子单元用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用,包括:
在运行目标程序的进程加载即时编译器引擎模块时,对即时编译器引擎模块中的编译方法函数进行挂钩;
基于所述挂钩,监控目标程序运行过程中对所述编译方法函数的使用。
进一步的,所述监控单元还包括:监控触发子单元,用于在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。
进一步的,所述监控单元包括:特征搜索子单元,用于在运行目标程序的进程加载设定模块后,对所述设定模块中预编译好的机器码进行.NET方法调用的特征搜索。
第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述第一方面所述的程序内部运行逻辑信息获取方法。
第四方面,本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个中央处理器执行,以实现前述第一方面所述的程序内部运行逻辑信息获取方法。
本发明实施例提供的技术方案,能够在目标程序运行过程中实时监控程序对.NET方法的调用行为,进而跟踪该调用行为获取其相关信息,作为目标程序内部运行逻辑信息,快速且准确,能够为后续了解程序出现问题的原因、恶意行为检测提供有力的信息支撑。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种程序内部运行逻辑信息获取方法的流程图;
图2为本发明实施例提供的一种.NET源代码编译和运行过程示意图;
图3为本发明实施例提供的一种程序内部运行逻辑信息获取装置的结构示意图;
图4为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
首先,对本发明实施例中涉及的部分名词做简要阐述。
C#:是微软公司发布的一种由C和C++衍生出来的面向对象的、运行于.NETFramework和.NET Core(完全开源,跨平台)之上的高级程序设计语言;
hook:挂钩,通过修改程序代码从而达到改变程序执行流程,在程序执行过程中加入检测流程的方法;
JIT:Just-In-Time Compiler,即时编译器,一种可以把中间语言代码翻译为机器码而被处理器当作指令执行的程序;
Pre-JIT:JIT预处理,将部分常用中间语言代码提前转为机器码,以达到加速代码执行的目的;
IL Code:Intermediate LanguageCode,C#代码编译后的中间语言代码,在不同的机器上执行时通过JIT引擎翻译成对应的机器码;
.Net方法:Microsoft.NET Framework,由微软提供的.net库中的应用编程接口。
下面,详细介绍本发明的技术方案。
本发明实施例提供了一种程序内部运行逻辑信息获取方法,该方法可以由对应的程序内部运行逻辑信息获取装置执行,所述装置由软件和/或硬件实现,可被集成于具有操作系统和处理器的电子设备中。参见图1,该方法具体包括如下步骤101-103。
步骤101、监控目标程序运行过程中对.NET方法的调用行为。
本步骤101中,目标程序可以是基于.NET开发平台采用C#编写的计算机程序,其可以实现软件产品、工具或服务功能,例如Powershell。目标程序在运行过程中通常会调用.NET方法。而.NET源代码的编译和运行过程,参见图2,包括:编译阶段,此阶段对C#编写的.NET源代码进行编译,得到IL Code和元数据Metadata;运行阶段,此阶段通过JIT引擎对ILCode和Metadata进行解析生成对应的机器码。所以,目标程序在调用.NET方法时,需要依靠JIT引擎模块来执行,具体是使用JIT引擎模块中的编译方法函数compileMethod将中间语言代码转换成对应的机器码。因此,可在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。在监控到运行目标程序的进程加载的模块是JIT引擎模块时,则表明有.NET方法要调用,此时对JIT引擎模块中的编译方法函数进行hook,基于所述hook,监控目标程序运行过程中对所述编译方法函数的使用。
需要说明的是,以上仅是以hook技术为例,介绍如何实现监控目标程序运行过程中对JIT引擎模块中编译方法函数的使用,但并不表示必须要采用该此技术,凡是能够实现所述监控操作的技术手段均在本发明实施例的保护范围之内。当然,本领域人员应理解:.NET方法的执行需要依靠于除JIT引擎模块外的其它特定模块时,也可通过监控对所述其它特定模块的加载判断.NET方法的调用,本发明实施例对此不作具体限定。
步骤102、获取监控到的所述调用行为的相关信息。
其中,所述调用行为的相关信息,可包括如下信息:监控到的所调用的.NET方法的名称、实现.NET方法的机器码的存储位置、实现.NET方法的机器码的大小。示例性的,监控到使用JIT引擎模块中的函数compileMethod时,通过该函数的传入参数和输出结果,获取监控到的所述调用行为的相关信息,例如:通过函数compileMethod中的第一个参数ICorJitlnfo的虚表获取到CEEInfo,进而根据CEEInfo获取ICorMethodInfo Hack,通过调用ICorMethodInfo Hack中方法getMethodName时传入的第二个参数CORINFO METHOD INFO中的CORINFO METHOD HANDLE,获取当前调用的类名及.NET方法名。同时,通过函数compileMethod中的第四个参数nativeEntry可得到.NET方法最终生成的机器码的存储位置。再者,通过函数compileMethod中的第五个参数nativeSizeOfCode得到到.NET方法最终生成的机器码的大小。
步骤103、将所述调用行为的相关信息,作为目标程序内部运行逻辑信息。
获取到监控到的.NET方法调用行为的相关信息后,可直接将该信息作为目标程序内部运行逻辑信息存储起来,用于恶意行为检测时hook位置的定位。只有清楚地了解目标程序运行逻辑,才能更好地分析出在目标程序的哪些位置hook可用作判定恶意行为。
进一步的,考虑到在实际应用当中,为加快代码的执行速度,通常还会对.NET源代码进行Pre-JIT,将其中部分常用中间语言代码提前转为机器码,而后存储在设定模块,该部分预处理得到的机器码中也很有可能含有对.NET方法的调用。因此,在以上方案的基础上,本发明实施例提供的程序内部运行逻辑信息获取方法中,监控目标程序运行过程中对.NET方法的调用行为,还包括:在运行目标程序的进程加载设定模块后,对设定模块中预编译好的机器码进行.NET方法调用的特征搜索。其中,所述设定模块例如可以是:System.Management.Automation.ni.dll。.NET方法调用的特征可以由本领域技术人员预先确定,不同的.NET方法可对应不同的NET方法调用的特征,该特征应具备通配性,不会因设备发生变化或.NET版本不同而改变。如果在所加载的设定模块的预编译好的机器码中搜索出.NET方法调用的特征,则表明目标程序运行过程中调用了.NET方法,基于搜索结果获取该调用行为的相关信息,其中获取过程属于现有技术,在此不再赘述。
相应的,本发明实施例还提供了一种程序内部运行逻辑信息获取装置,该装置可以被集成于具有操作系统和处理器的电子设备中,用于执行本发明实施例所述的程序内部运行逻辑信息获取方法。参见图3,该装置具体包括以下单元:
监控单元301,用于监控目标程序运行过程中对.NET方法的调用行为;
获取单元302,用于获取监控到的所述调用行为的相关信息;
生成单元303,用于将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。
可选的,所述监控单元301包括:函数监控子单元3011,用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用。
示例性的,所述函数监控子单元3011用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用,包括:
在运行目标程序的进程加载即时编译器引擎模块时,对即时编译器引擎模块中的编译方法函数进行挂钩;
基于所述挂钩,监控目标程序运行过程中对所述编译方法函数的使用。
进一步的,所述监控单元301还包括:监控触发子单元3010,用于在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。
可选的,所述监控单元301包括:特征搜索子单元3012,用于在运行目标程序的进程加载设定模块后,对所述设定模块中预编译好的机器码进行.NET方法调用的特征搜索。
本实施例提供的程序内部运行逻辑信息获取装置与前述方法实施例属于同一发明构思,未在本实施例中描述的技术细节可参见前述方法实施例中的相关描述,在此不再赘述。
图4为本发明电子设备一个实施例的结构示意图,可以实现本发明图1所示实施例的流程,如图4所示,上述电子设备可以包括:壳体41、处理器42、存储器43、电路板44和电源电路45,其中,电路板44安置在壳体41围成的空间内部,处理器42和存储器43设置在电路板44上;电源电路45,用于为上述电子设备的各个电路或器件供电;存储器43用于存储可执行程序代码;处理器42通过读取存储器43中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的程序内部运行逻辑信息获取方法。
处理器42对上述步骤的具体执行过程以及处理器42通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1所示实施例的描述,在此不再赘述。
该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据处理功能的电子设备。
再者,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或多个程序,所述一个或者多个程序可被一个或者多个中央处理器执行,以实现前述实施例所述的程序内部运行逻辑信息获取方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种程序内部运行逻辑信息获取方法,其特征在于,所述方法包括:
监控目标程序运行过程中对.NET方法的调用行为;
获取监控到的所述调用行为的相关信息;
将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。
2.根据权利要求1所述的方法,其特征在于,监控目标程序运行过程中对.NET方法的调用行为,包括:
监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用。
3.根据权利要求2所述的方法,其特征在于,监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用,包括:
在运行目标程序的进程加载即时编译器引擎模块时,对即时编译器引擎模块中的编译方法函数进行挂钩;
基于所述挂钩,监控目标程序运行过程中对所述编译方法函数的使用。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。
5.根据权利要求1所述的方法,其特征在于,监控目标程序运行过程中对.NET方法的调用行为,包括:
在运行目标程序的进程加载设定模块后,对所述设定模块中预编译好的机器码进行.NET方法调用的特征搜索。
6.一种程序内部运行逻辑信息获取装置,其特征在于,所述装置包括:
监控单元,用于监控目标程序运行过程中对.NET方法的调用行为;
获取单元,用于获取监控到的所述调用行为的相关信息;
生成单元,用于将所述调用行为的相关信息,作为所述目标程序内部运行逻辑信息。
7.根据权利要求6所述的装置,其特征在于,所述监控单元包括:
函数监控子单元,用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用。
8.根据权利要求7所述的装置,其特征在于,所述函数监控子单元用于监控目标程序运行过程中对即时编译器引擎模块中的编译方法函数的使用,包括:
在运行目标程序的进程加载即时编译器引擎模块时,对即时编译器引擎模块中的编译方法函数进行挂钩;
基于所述挂钩,监控目标程序运行过程中对所述编译方法函数的使用。
9.根据权利要求8所述的装置,其特征在于,所述监控单元还包括:
监控触发子单元,用于在运行目标程序的进程启动时,触发对进程内的模块加载行为的监控。
10.根据权利要求6所述的装置,其特征在于,所述监控单元包括:
特征搜索子单元,用于在运行目标程序的进程加载设定模块后,对所述设定模块中预编译好的机器码进行.NET方法调用的特征搜索。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211743572.XA CN116107580A (zh) | 2022-12-30 | 2022-12-30 | 一种程序内部运行逻辑信息获取方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211743572.XA CN116107580A (zh) | 2022-12-30 | 2022-12-30 | 一种程序内部运行逻辑信息获取方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116107580A true CN116107580A (zh) | 2023-05-12 |
Family
ID=86259213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211743572.XA Pending CN116107580A (zh) | 2022-12-30 | 2022-12-30 | 一种程序内部运行逻辑信息获取方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116107580A (zh) |
-
2022
- 2022-12-30 CN CN202211743572.XA patent/CN116107580A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102741812B (zh) | 通过元数据抽取执行动态语言 | |
US9946537B2 (en) | Integrated development environment-based repository searching in a networked computing environment | |
EP3605324A1 (en) | Application development method and tool, device, and storage medium thereof | |
KR102415971B1 (ko) | 악성 모바일 앱 감지 장치 및 방법 | |
CN112052008B (zh) | 代码检查方法、装置、计算机设备及计算机可读存储介质 | |
CN106547527B (zh) | 一种JavaScript文件构建方法及装置 | |
US9632804B2 (en) | Method, apparatus, and communication system for implementing internet application | |
CN113961919A (zh) | 恶意软件检测方法和装置 | |
CN109284222B (zh) | 软件单元、数据处理系统中的项目测试方法、装置及设备 | |
CN110652728B (zh) | 一种游戏资源管理方法、装置、电子设备及存储介质 | |
CN116089542A (zh) | 基于jdbc的数据库适配方法以及装置 | |
EP3211526A1 (en) | Compilation cache with imports scanner | |
CN117806961A (zh) | 一种芯片测试程序生成方法、装置、电子设备及存储介质 | |
CN111488286A (zh) | 一种Android模块独立开发的方法及装置 | |
CN107526966B (zh) | 一种Android平台的复合污点传播追踪方法 | |
CN116107580A (zh) | 一种程序内部运行逻辑信息获取方法、装置及电子设备 | |
CN112148318B (zh) | 应用包发布方法、应用方法、装置、介质、服务器及设备 | |
CN113190434B (zh) | 一种测试用例生成方法、装置、存储介质及计算机设备 | |
CN108874462A (zh) | 一种浏览器行为获取方法、装置、存储介质及电子设备 | |
CN112199092A (zh) | 应用的开发方法、装置及电子设备 | |
WO2017028729A1 (zh) | 确定应用程序是否为正版应用程序的方法、装置及电子设备 | |
CN112162776B (zh) | 依赖关系获取方法及装置 | |
CN112817663B (zh) | 一种应用程序的seccomp规则获取方法和装置 | |
CN112612754A (zh) | 一种文件搜索方法、系统、装置及计算机存储介质 | |
CN115934511A (zh) | 功能块的测试方法和装置、组态设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |