CN104657258A - Method and device for injecting Java bit codes into target process - Google Patents

Method and device for injecting Java bit codes into target process Download PDF

Info

Publication number
CN104657258A
CN104657258A CN201310591379.3A CN201310591379A CN104657258A CN 104657258 A CN104657258 A CN 104657258A CN 201310591379 A CN201310591379 A CN 201310591379A CN 104657258 A CN104657258 A CN 104657258A
Authority
CN
China
Prior art keywords
target process
function
java bytecode
virtual machine
scale
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.)
Granted
Application number
CN201310591379.3A
Other languages
Chinese (zh)
Other versions
CN104657258B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310591379.3A priority Critical patent/CN104657258B/en
Priority to PCT/CN2014/091287 priority patent/WO2015074526A1/en
Publication of CN104657258A publication Critical patent/CN104657258A/en
Application granted granted Critical
Publication of CN104657258B publication Critical patent/CN104657258B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Abstract

The invention relates to a method and a device for injecting Java bit codes into a target process. In one embodiment, the method includes the steps: calling a register for modifying the target process by a host operating system to load a binary shared library including a function automatically started along with loading; loading a file including the Java bit codes in a specified path to a virtual machine by the automatically started function in the binary shared library, and calling an entry function in the Java bit codes. The Java bit codes depending on the virtual machine and running in a class library on the virtual machine can be injected into the target process, and functions of the target process are improved.

Description

A kind of method and device injecting Java bytecode in target process
Technical field
The present invention relates to computer processes implantttion technique, particularly relate to a kind of method injecting Java bytecode in target process.
Background technology
Implantttion technique in computer programming refers to a binary file, and so file on such as linux and the dll file on windows, be injected in target process, to realize the expansion to target process function.On the other hand, along with the development of computer technology, virtual machine technique is widely used.But the bytecode depending on virtual machine operation is needed for those, adopt above-mentioned method to be injected in target process with regard to being difficult to.
Summary of the invention
In view of this, be necessary to provide a kind of in target process, inject Java bytecode method and device, Java bytecode can be injected in the middle of target process by it.
In target process, inject a method for Java bytecode, described target process operates on a host operating system, and described host operating system also runs virtual machine, and described method comprises:
The system call provided by described host operating system revises the register of described target process to load a scale-of-two shared library, comprises with loading the function be automatically started in described scale-of-two shared library; And
By automatically actuated function in described scale-of-two shared library by the files loading comprising Java bytecode of specified path in described virtual machine, and call the entrance function in described Java bytecode.
In target process, inject a device for Java bytecode, described target process operates on a host operating system, and described host operating system also runs virtual machine, and described device comprises:
Local injection module, the system call for being provided by described host operating system revises the register of described target process to load a scale-of-two shared library; And
Java bytecode load-on module, it loads with described scale-of-two shared library and called, for by the files loading comprising Java bytecode of specified path in described virtual machine, and call the entrance function in described Java bytecode.
According to above-mentioned method and device, can realize in target process, inject the Java bytecode depending on virtual machine and run class libraries on a virtual machine, improve the function of target process.
For above and other object of the present invention, feature and advantage can be become apparent, preferred embodiment cited below particularly, and coordinate institute's accompanying drawings, be described in detail below.
Accompanying drawing explanation
Fig. 1 is the structured flowchart that an operation has the computing machine of virtual machine.
The method flow diagram injecting Java bytecode in target process that Fig. 2 provides for the first embodiment.
Fig. 3 is the structured flowchart of Android device.
The method flow diagram injecting Java bytecode in target process that Fig. 4 provides for the second embodiment.
The apparatus structure block diagram injecting Java bytecode in target process that Fig. 5 provides for the 3rd embodiment.
The apparatus structure block diagram injecting Java bytecode in target process that Fig. 6 provides for the 4th embodiment.
Embodiment
For further setting forth the present invention for the technological means that realizes predetermined goal of the invention and take and effect, below in conjunction with accompanying drawing and preferred embodiment, to according to the specific embodiment of the present invention, structure, feature and effect thereof, be described in detail as follows.
Fig. 1 is the structured flowchart that an operation has the computing machine of virtual machine.Be appreciated that computing machine herein comprises the various calculating and setting with storer, processor architecture such as PC, server, smart mobile phone, panel computer.As shown in Figure 1, computing machine 100 comprises: storer 102, processor 104 and other hardware 106.Be appreciated that the structure shown in Fig. 1 is only signal, it does not cause restriction to the structure of computing machine 100.Such as, computing machine 100 also can comprise than assembly more or less shown in Fig. 1, or has the configuration different from shown in Fig. 1.
Storer 102 can be used for storing software program and module, and processor 104 by running the software program and module that are stored in storer 102, thus performs the application of various function and data processing.Storer 102 can comprise high speed random access memory, also can comprise nonvolatile memory, as one or more magnetic storage device, flash memory or other non-volatile solid state memories.In some instances, storer 102 can comprise the storer relative to the long-range setting of processor 104 further, and these remote memories can be connected to Hole Detection server 100 by network.The example of above-mentioned network includes but not limited to internet, intranet, LAN (Local Area Network), mobile radio communication and combination thereof.
Other hardware 106 such as can comprise display, keyboard, network interface card, voicefrequency circuit etc., and it is generally used for provides I/O or the function with other devices exchange data.
Above-mentioned software program and module such as can comprise: operating system nucleus 122, JVM124, java class storehouse 126 and java application 128.Operating system nucleus 122 directly controls various hardware, and it is concrete, such as, grasp content or linux kernel for can be Windows.JVM124 operates on system kernel 122, and it is in fact a computing machine fabricating out, is realized by the various computer function of analogue simulation on operating system nucleus 122.JVM124 generally comprises a set of byte code instruction collection, one group of register, stack, a garbage reclamation heap and a storage means territory.JVM124 shields the information relevant to specific operating system platform, and the object code (bytecode) java applet only need being generated run on a java virtual machine, just can not run in kinds of platform, with not adding amendment.JVM124, when performing bytecode, in fact finally or the machine instruction that bytecode is construed on platform specific performs.Java class storehouse 126 is that can provide various interface in java class storehouse 126, to provide different functions, these interfaces can be employed program layer and quote in order to the conveniently class library provided of programming.Java application 128 is application programs with various function of the various Interface realizations based on java class storehouse.
Further, above-mentioned software program and module also can comprise: local scale-of-two shared library 130 and Java local interface (Java Native Interface, JNI) 132.Local scale-of-two shared library 130 such as can be the .dll file under Windows system and the .so file under linux system.JNI132 is used for providing a standard interface between different JVM realizes, thus makes Java application can use local scale-of-two shared library 130, has expanded the function of original JVM124.
First embodiment
The present embodiment provides a kind of method injecting Java bytecode in target process, consults Fig. 2, and above-mentioned method comprises the following steps:
Step S101, the system call provided by host operating system revise the register of described target process to load a scale-of-two shared library.
In computer systems, which, two kinds of patterns that program code runs, one is user model, and one is kernel mode.The application program of application layer is run in the user mode, and device driver and file system operate in kernel mode.The program run in the user mode is subject to strict management, can not destroy system-level application.And the program run in kernel mode can have access right completely to computer.System call is exactly run code in kernel mode for the code run in the user mode to provide service.
For linux system, its system call is realized by int80h, distinguishes entrance function with system call.The basic process that operating system realizes system call is: application call built-in function (API); System call number stored in EAX, then makes system enter kernel state by interrupt call by API; Interrupt processing function in kernel, according to system call number, calls corresponding kernel function (system call); System call completes corresponding function, by rreturn value stored in EAX, turns back to interrupt processing function; Interrupt processing function turns back in API; EAX is returned to application program by API.
The process of application call system call is: the numbering of system call stored in EAX; Function parameter stored in other general-purpose register; Trigger No. 0x80 interruption (int0x80).
Particularly, in linux system, the register of ptrace function modifying target process can be passed through, to call dlopen function.And dlopen function is used to loading scale-of-two shared library.In other operating systems, concrete order may be different, but its principle and process are similar.
Described scale-of-two shared library such as can be the scale-of-two shared library 130 shown in Fig. 1, comprises automatically actuated function in it.In an example, above-mentioned automatic startup is realized by global variable.Such as, in c/c++ language, when certain scale-of-two shared library (dynamic link library) is loaded by dlopen, global variable will be automatically initiated, at this moment function call during any one initialization as entrance function, just can complete event in need at this entrance function.
Step S102, the files loading comprising Java bytecode of specified path in virtual machine, and is called the entrance function in described Java bytecode by described scale-of-two shared library.
As mentioned above, after scale-of-two shared library is loaded, in it, automatically actuated function is activated, and namely performs step S102 after startup, by the files loading comprising Java bytecode of specified path in virtual machine, and call the entrance function comprised in the Java bytecode of loading by JNI132.Thus the instruction in Java bytecode is performed, the instruction in these Java bytecode can use the various interfaces in java class storehouse, thus realizes the various functions based on java class storehouse, namely performs step S103.
According to the method for the present embodiment, can realize in target process, inject the Java bytecode depending on virtual machine and run class libraries on a virtual machine, improve the function of target process.
Second embodiment
The present embodiment provides a kind of method injecting Java bytecode in target process, and it is similar to the method for the first embodiment, and its difference is, the method for the present embodiment is applied on the equipment of operation Android (Android) operating system.
Consult Fig. 3, it is the configuration diagram of an Android device.As shown in Figure 3, Android device 200 comprises: storer 102, processor 104 and other hardware 106, similar shown in its to Fig. 1, can join with foregoing description in the lump.
Software program in the storer 102 of Fig. 3 and module such as can comprise: linux kernel 222, Delvik virtual machine 224, Android framework 226 and Android application program 228.Linux kernel 122 directly controls various hardware.Delvik virtual machine (Delvik Virtual Machine, DVM) 224 operates on system kernel 222.JVM124 is a kind of stack machine, and DVM224 is then register machine.
Android framework 226 is that can provide various interface in it, call management interface, positional interface, installation kit management interface etc., to provide different functions, these interfaces can be employed program layer and quote in order to the conveniently class library provided of programming.Android application program 228 is application programs with various function of the various Interface realizations based on Android class libraries.
Further, above-mentioned software program and module also can comprise: local scale-of-two shared library 130 and Java local interface (Java Native Interface, JNI) 132.Local scale-of-two shared library 130 such as can be the .so file under linux system.JNI132 is used for providing a standard interface between different JVM realizes, thus makes Java application can use local scale-of-two shared library 130, has expanded the function of original DVM224.
Consult Fig. 4, the method for the present embodiment comprises the following steps:
Step S201, the register of the system call modifying target process provided by linux system is to load a scale-of-two shared library.
Such as, by the register of ptrace function modifying target process, to call dlopen function.And load scale-of-two shared library by dlopen function.
Automatically actuated function can be comprised in the scale-of-two shared library be loaded.In an example, above-mentioned automatic startup is realized by global variable.Such as, in c/c++ language, when certain scale-of-two shared library (dynamic link library) is loaded by dlopen, global variable will be automatically initiated, at this moment function call during any one initialization can as entrance function, just can complete event in need at this entrance function, such as, perform step S202.
Step S202, the files loading comprising Java bytecode of specified path in DVM224, and is called the entrance function in described Java bytecode by JNI132 by described scale-of-two shared library.
As mentioned above, after scale-of-two shared library is loaded, in it, automatically actuated function is activated, and namely performs step S202 after startup, by the .dex files loading of specified path in DVM224, and calls the entrance function in the .dex file of loading by JNI132.Thus the instruction in .dex file is performed, the various interfaces that the instruction of these .dex files can use Android framework 226 to provide, thus realize the various functions based on Android framework 226, namely perform step S103.Above-mentioned .dex file is a kind of compressed format aiming at Delvik virtual machine design, is applicable to internal memory and the limited system of processor speed.
According to the method that the present embodiment provides, the code relying on Android framework interface and perform can be injected in target process.Thus the various functions of android system can be realized in target process, therefore extend the function of target process greatly.
3rd embodiment
The present embodiment provides a kind of device injecting Java bytecode in target process, and consult Fig. 5, it comprises: local injection module 31 and Java bytecode load-on module 32.
Local injection module 31, for the register of system call modifying target process that provided by host operating system to load a scale-of-two shared library.
Java bytecode load-on module 32 is stored in described scale-of-two shared library, and its loading along with scale-of-two shared library is performed automatically.Java bytecode load-on module 32 for by the files loading comprising Java bytecode of specified path in virtual machine, and described in calling, comprise the entrance function in the file of Java bytecode.Concrete logical code is comprised, to realize concrete function in Java bytecode.
About other details of the device of the present embodiment, also the first embodiment can be consulted further.
According to the method for the present embodiment, can realize in target process, inject the Java bytecode depending on virtual machine and run class libraries on a virtual machine, improve the function of target process.
4th embodiment
The present embodiment provides a kind of device injecting Java bytecode in target process, and consult Fig. 6, it comprises: local injection module 41 and dex file load module 42.
Local injection module 41 for the register of system call modifying target process that provided by linux system to load a scale-of-two shared library.Such as, by the register of ptrace function modifying target process, to call dlopen function.And load scale-of-two shared library by dlopen function.
Dex file load module 42 is stored in described scale-of-two shared library, and its loading along with scale-of-two shared library is performed automatically.By the .dex files loading of specified path in DVM224, and call the entrance function in the .dex file of loading by JNI132.Thus the instruction in .dex file is performed, the various interfaces that the instruction of these .dex files can use Android framework 226 to provide, thus realize the various functions based on Android framework 226.
About other details of the device of the present embodiment, also the second embodiment can be consulted further.
According to the method that the present embodiment provides, the code relying on Android framework interface and perform can be injected in target process.Thus the various functions of android system can be realized in target process, therefore extend the function of target process greatly.
In addition, the embodiment of the present invention also provides a kind of computer-readable recording medium, is stored with computer executable instructions, and above-mentioned computer-readable recording medium is such as nonvolatile memory such as CD, hard disk or flash memory.Above-mentioned computer executable instructions completes above-mentioned in target process, inject Java bytecode method and device for allowing computing machine or similar arithmetic unit.
The above, it is only preferred embodiment of the present invention, not any pro forma restriction is done to the present invention, although the present invention discloses as above with preferred embodiment, but and be not used to limit the present invention, any those skilled in the art, do not departing within the scope of technical solution of the present invention, make a little change when the technology contents of above-mentioned announcement can be utilized or be modified to the Equivalent embodiments of equivalent variations, in every case be do not depart from technical solution of the present invention content, according to any brief introduction amendment that technical spirit of the present invention is done above embodiment, equivalent variations and modification, all still belong in the scope of technical solution of the present invention.

Claims (10)

1. in target process, inject a method for Java bytecode, described target process operates on a host operating system, and described host operating system also runs virtual machine, and it is characterized in that, described method comprises:
The system call provided by described host operating system revises the register of described target process to load a scale-of-two shared library, comprises with loading the function be automatically started in described scale-of-two shared library; And
By automatically actuated function in described scale-of-two shared library by the files loading comprising Java bytecode of specified path in described virtual machine, and call the entrance function in described Java bytecode.
2. in target process, inject the method for Java bytecode as claimed in claim 1, it is characterized in that, described host operating system is Linux; The register that described target process is revised in the system call provided by described host operating system comprises to load a scale-of-two shared library:
Revised the register of described target process by ptrace function to call dlopen function, and load described scale-of-two shared library by described dlopen function.
3. in target process, inject the method for Java bytecode as claimed in claim 2, it is characterized in that, described virtual machine is Delvik virtual machine; By automatically actuated function in described scale-of-two shared library, the files loading comprising Java bytecode of specified path is comprised to described virtual machine: by the .dex files loading of specified path in described Delvik virtual machine.
4. in target process, inject the method for Java bytecode as claimed in claim 1, it is characterized in that, also comprise after the described scale-of-two shared library of loading: carry out initialization operation to this scale-of-two shared library, described is invoked function in described initialization operation process with loading the function be automatically started.
5. in target process, inject the method for Java bytecode as claimed in claim 1, it is characterized in that, the entrance function called in described Java bytecode comprises: call described entrance function by Java local interface.
6. in target process, inject a device for Java bytecode, described target process operates on a host operating system, and described host operating system also runs virtual machine, and it is characterized in that, described device comprises:
Local injection module, the system call for being provided by described host operating system revises the register of described target process to load a scale-of-two shared library; And
Java bytecode load-on module, it loads with described scale-of-two shared library and called, for by the files loading comprising Java bytecode of specified path in described virtual machine, and call the entrance function in described Java bytecode.
7. in target process, inject the device of Java bytecode as claimed in claim 6, it is characterized in that, described host operating system is Linux;
Described local injection module is used for revising the register of described target process to call dlopen function by ptrace function, and loads described scale-of-two shared library by described dlopen function.
8. in target process, inject the device of Java bytecode as claimed in claim 7, it is characterized in that, described virtual machine is Delvik virtual machine; Described Java bytecode load-on module is used for: by the .dex files loading of specified path in described Delvik virtual machine.
9. in target process, inject the device of Java bytecode as claimed in claim 6, it is characterized in that, described local injection module also for: carry out initialization operation to this scale-of-two shared library, described is invoked function in described initialization operation process with loading the function that is automatically started.
10. in target process, inject the device of Java bytecode as claimed in claim 6, it is characterized in that, described Java bytecode load-on module is used for calling described entrance function by Java local interface.
CN201310591379.3A 2013-11-21 2013-11-21 A kind of method and device from Java bytecode to target process that injecting Active CN104657258B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310591379.3A CN104657258B (en) 2013-11-21 2013-11-21 A kind of method and device from Java bytecode to target process that injecting
PCT/CN2014/091287 WO2015074526A1 (en) 2013-11-21 2014-11-17 Method and apparatus for injecting java by tecode into target process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310591379.3A CN104657258B (en) 2013-11-21 2013-11-21 A kind of method and device from Java bytecode to target process that injecting

Publications (2)

Publication Number Publication Date
CN104657258A true CN104657258A (en) 2015-05-27
CN104657258B CN104657258B (en) 2018-10-30

Family

ID=53178932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310591379.3A Active CN104657258B (en) 2013-11-21 2013-11-21 A kind of method and device from Java bytecode to target process that injecting

Country Status (2)

Country Link
CN (1) CN104657258B (en)
WO (1) WO2015074526A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106909498A (en) * 2015-12-22 2017-06-30 阿里巴巴集团控股有限公司 A kind of java applet injects the method and system of failure
CN110032394A (en) * 2019-04-12 2019-07-19 深圳市腾讯信息技术有限公司 A kind of analysis method, device and the storage medium of passive coding file
CN111736913A (en) * 2019-03-25 2020-10-02 华为技术有限公司 Class loading method and device
WO2023103868A1 (en) * 2021-12-10 2023-06-15 北京字节跳动网络技术有限公司 Method and apparatus for implementing dependency injection on basis of hilt, and device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109086200B (en) * 2018-07-13 2020-04-14 南京大学 Effective test framework based on android virtual machine modification
CN111381978B (en) * 2018-12-29 2024-03-12 深圳Tcl数字技术有限公司 Method for accessing application program, storage medium and intelligent television
CN110457345B (en) * 2019-07-05 2023-11-03 平安证券股份有限公司 Database reading method, device and computer readable storage medium
CN113448690B (en) * 2021-08-27 2022-02-01 阿里云计算有限公司 Monitoring method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288962A1 (en) * 2007-05-15 2008-11-20 Bernd Greifeneder Method and System for Dynamic Remote injection of In-process Agents into Virtual Machine based Applications
US20090049429A1 (en) * 2007-08-14 2009-02-19 Bernd Greifeneder Method and System for Tracing Individual Transactions at the Granularity Level of Method Calls Throughout Distributed Heterogeneous Applications Without Source Code Modifications
CN101984409A (en) * 2010-11-10 2011-03-09 南京南瑞继保电气有限公司 Method for injecting test codes for Linux system
CN102736905A (en) * 2011-04-12 2012-10-17 深圳市金蝶中间件有限公司 Method for dynamically replacing field in classes

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7757215B1 (en) * 2006-04-11 2010-07-13 Oracle America, Inc. Dynamic fault injection during code-testing using a dynamic tracing framework
US8095910B2 (en) * 2007-04-10 2012-01-10 Microsoft Corporation Interruptible client-side scripts
US8161470B2 (en) * 2007-08-31 2012-04-17 International Business Machines Corporation Systems, methods, and computer products for automated injection of java bytecode instructions for java load time optimization via runtime checking with upcasts
CN102855179A (en) * 2011-06-30 2013-01-02 国际商业机器公司 Program debugging method and system in virtual machine environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288962A1 (en) * 2007-05-15 2008-11-20 Bernd Greifeneder Method and System for Dynamic Remote injection of In-process Agents into Virtual Machine based Applications
US20090049429A1 (en) * 2007-08-14 2009-02-19 Bernd Greifeneder Method and System for Tracing Individual Transactions at the Granularity Level of Method Calls Throughout Distributed Heterogeneous Applications Without Source Code Modifications
CN101984409A (en) * 2010-11-10 2011-03-09 南京南瑞继保电气有限公司 Method for injecting test codes for Linux system
CN102736905A (en) * 2011-04-12 2012-10-17 深圳市金蝶中间件有限公司 Method for dynamically replacing field in classes

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李昊天: "应用服务器监控系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106909498A (en) * 2015-12-22 2017-06-30 阿里巴巴集团控股有限公司 A kind of java applet injects the method and system of failure
CN106909498B (en) * 2015-12-22 2020-12-22 创新先进技术有限公司 Method and system for injecting fault into Java program
CN111736913A (en) * 2019-03-25 2020-10-02 华为技术有限公司 Class loading method and device
CN111736913B (en) * 2019-03-25 2021-11-19 华为技术有限公司 Class loading method and device
US11755341B2 (en) 2019-03-25 2023-09-12 Huawei Technologies Co., Ltd. Class loading method and apparatus
CN110032394A (en) * 2019-04-12 2019-07-19 深圳市腾讯信息技术有限公司 A kind of analysis method, device and the storage medium of passive coding file
CN110032394B (en) * 2019-04-12 2022-05-31 深圳市腾讯信息技术有限公司 Analysis method and device for passive code file and storage medium
WO2023103868A1 (en) * 2021-12-10 2023-06-15 北京字节跳动网络技术有限公司 Method and apparatus for implementing dependency injection on basis of hilt, and device

Also Published As

Publication number Publication date
WO2015074526A1 (en) 2015-05-28
CN104657258B (en) 2018-10-30

Similar Documents

Publication Publication Date Title
CN104657258A (en) Method and device for injecting Java bit codes into target process
CN110059477B (en) Attack detection method and device
US20060064576A1 (en) Boot systems and methods
KR101854975B1 (en) Method and system for extending function of package file
CN102236621A (en) Computer interface information configuration system and method
US20190095181A1 (en) Easy-To-Use Type Of Compile-Time Dependency Injection Method And Device In The Java Platform
KR101059633B1 (en) Heap configuration for multitasking virtual machines
CN103440457B (en) Based on the binary program analytic system of process simulation
CN112015491B (en) Method, device and computer storage medium for realizing function jump
CN103631712B (en) A kind of medelling software critical behavior tracking based on memory management
EP3113019A1 (en) Policy-based compression of machine code generated by a virtual machine
CN109582542B (en) Method for dumping core of embedded system
CN112214266A (en) Android shelling method and device for deception call chain, storage medium and computer equipment
US6804681B2 (en) Identifying and tracking object references in a java programming environment
CN111385661B (en) Method, device, terminal and storage medium for voice control of full screen playing
CN111625225A (en) Program specified data output method and device
KR101250892B1 (en) Operating system fast run command
US9448782B1 (en) Reducing a size of an application package
CN104778087A (en) Information processing method and information processing device
CN110633210B (en) File execution method and device, storage medium and electronic equipment
CN114936368A (en) Java memory Trojan detection method, terminal device and storage medium
CN114253587A (en) Application program updating method and device, electronic equipment and readable storage medium
US20040015873A1 (en) Identifying references to objects during bytecode verification
KR102310766B1 (en) Application Integrity Checking Method
CN116932044A (en) Instruction translation method and related equipment thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant