CN103324481A - Compiling method and compiling system for obfuscating codes by means of assembly - Google Patents

Compiling method and compiling system for obfuscating codes by means of assembly Download PDF

Info

Publication number
CN103324481A
CN103324481A CN2013102583255A CN201310258325A CN103324481A CN 103324481 A CN103324481 A CN 103324481A CN 2013102583255 A CN2013102583255 A CN 2013102583255A CN 201310258325 A CN201310258325 A CN 201310258325A CN 103324481 A CN103324481 A CN 103324481A
Authority
CN
China
Prior art keywords
code
assembly code
memory mapping
core function
assembly
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
CN2013102583255A
Other languages
Chinese (zh)
Other versions
CN103324481B (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.)
Xiamen Wangsu Co Ltd
Original Assignee
Wangsu Science and 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201310258325.5A priority Critical patent/CN103324481B/en
Publication of CN103324481A publication Critical patent/CN103324481A/en
Application granted granted Critical
Publication of CN103324481B publication Critical patent/CN103324481B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention discloses a compiling method and a compiling system for obfuscating codes by means of assembly. The technical scheme includes that the method comprises compiling a core function; disassembling the core function; creating an executable memory mapping region; copying assembly codes of the core function into the memory mapping region; executing the assembly codes in the memory mapping region to generate an obfuscated core function. The compiling method and the compiling system have the advantages that problems that system call cannot be hidden in an Android ARM [advanced RISC (reduced instruction set computer) machines] platform and can be easily cracked by competitors by the aid of a disassembly core technology are solved, and accordingly the cracked difficulty of software is improved.

Description

Compilation Method and system by the implementation by assembly Code obfuscation
Technical field
The present invention relates to the Android(Android) the NDK compiling of system under the ARM platform, relate in particular to the Compilation Method of calling details and the system that utilize assembly code to hide sensitivity function.
Background technology
Easily see think tank's industry statistics of database according to EnfoDesk, end 2012 the end of the year China Mobile Internet market scale reach 1500 hundred million, the mobile Internet user surpasses 500,000,000.Under the Market Competition of fierceness, enterprise uses the core technology of software encryption technique protection oneself to become particularly important.
The fundamental purpose of Code obfuscation is in order to protect source code, to utilize software encryption technique to encrypt executable program and dynamic base, stoping reverse engineering.Reverse engineering can be brought many problems, reveals such as intellecture property, and the exposure of program weakness is vulnerable etc.
Except Code obfuscation, software shelling is to use maximum encryption methods, and is wherein outstanding in the field UPX performance of increasing income.
Existing software enciphering method has following several defective:
1, existing software enciphering method is supportive bad to the Android platform, and software is without corresponding Android version.
2, software shelling can reduce the travelling speed of software, and easily causes program unstable.
3, software shelling can increase the size of executable file or library file, significantly increases memory requirements.
4, common Code obfuscation can't stop by dis-assembling and gets the system call function.
Summary of the invention
The object of the invention is to address the above problem, a kind of Compilation Method and system by the implementation by assembly Code obfuscation is provided, solved under the Android ARM platform and can't hide system call, by the dis-assembling core technology easily by the problem that cracks of competition head of the queue, thereby increase the difficulty that software is cracked.
Technical scheme of the present invention is: the present invention has disclosed a kind of Compilation Method by the implementation by assembly Code obfuscation, comprising:
Step 1: write core function;
Step 2: dis-assembling core function;
Step 3: establishment can be carried out memory mapping area;
Step 4: the assembly code that copies core function toward memory mapping area;
Step 5: carry out the assembly code of memory mapping area, generate the core function after obscuring.
According to an embodiment of the Compilation Method by the implementation by assembly Code obfuscation of the present invention, also comprise in the step 4 to the cryptographic operation of assembly code and to the decryption oprerations of assembly code.
According to an embodiment who passes through the Compilation Method of implementation by assembly Code obfuscation of the present invention, in step 1, adopt Android NDK code to write core function, extract the core and be written to independently in the core function, and system call or standard C storehouse are replaced with indirect call.
According to an embodiment who passes through the Compilation Method of implementation by assembly Code obfuscation of the present invention, in step 2, use debugging tool that the code disassembling of core function is become the ARM platform code.
According to an embodiment who passes through the Compilation Method of implementation by assembly Code obfuscation of the present invention, in step 3, use linux system call mmap to create memory mapping area, and the assembly instruction Code copying is arrived memory mapping area.
The present invention has also disclosed a kind of compiling system by the implementation by assembly Code obfuscation, comprising:
Function is write module, writes core function;
Function dis-assembling module, the dis-assembling core function;
The memory mapping area creation module, establishment can be carried out memory mapping area;
The assembly code replication module, past memory mapping area copies the assembly code of core function;
The core function generation module, the assembly code of execution memory mapping area generates the core function after obscuring.
According to an embodiment who passes through the compiling system of implementation by assembly Code obfuscation of the present invention, also comprise in the assembly code replication module:
Ciphering unit, the cryptographic operation of realization assembly code; And
Decryption unit, the decryption oprerations of the assembly code after realizing encrypting.
According to an embodiment who passes through the compiling system of implementation by assembly Code obfuscation of the present invention, the module of writing function adopts Android NDK code to write core function, extract the core and be written to independently in the core function, and system call or standard C storehouse are replaced with indirect call.
According to an embodiment who passes through the compiling system of implementation by assembly Code obfuscation of the present invention, function dis-assembling module uses debugging tool that the code disassembling of core function is become the ARM platform code.
According to an embodiment who passes through the compiling system of implementation by assembly Code obfuscation of the present invention, use linux system call mmap to create memory mapping area in the memory mapping area creation module, and the assembly instruction Code copying is arrived memory mapping area.
The present invention contrasts prior art following beneficial effect: the solution of the present invention is core code to be extracted write in the independent core function, and the function call in system call or standard C storehouse is rewritten into indirect call by directly calling, namely use the variable save function pointer, then call this function pointer.In addition, the present invention copies out analysis also by the dis-assembling core function with assembly code, and the assembly code that perhaps is encrypted after operating and will processing is kept at and can carries out in the memory mapping area.When needs are carried out core function, with the code deciphering that memory mapping area is preserved, then carry out, the code of memory mapping area can be wiped after complete.With respect to conventional art, the present invention can solve under the Android ARM platform can't hide system call so that the rival cracks the problem of core technology easily.Since when carrying out, program dynamically inserts code, before this can be first with the code encryption that inserts, and deciphering can empty internal storage data after carrying out, and reaches the purpose of covered code.And this process does not enlarge markedly internal memory, can not reduce running software speed yet and cause program unstable.
Description of drawings
Fig. 1 shows the process flow diagram of the first embodiment of the Compilation Method by the implementation by assembly Code obfuscation of the present invention.
Fig. 2 shows the process flow diagram of the second embodiment of the Compilation Method by the implementation by assembly Code obfuscation of the present invention.
Fig. 3 shows the schematic diagram of the first embodiment of the compiling system by the implementation by assembly Code obfuscation of the present invention.
Fig. 4 shows the schematic diagram of the second embodiment of the compiling system by the implementation by assembly Code obfuscation of the present invention.
Embodiment
The invention will be further described below in conjunction with drawings and Examples.
The first embodiment of the Compilation Method by the implementation by assembly Code obfuscation
Fig. 1 shows the flow process of the first embodiment of the Compilation Method by the implementation by assembly Code obfuscation of the present invention.See also Fig. 1, the below is the detailed description to the implementation step of the Code obfuscation Compilation Method of the present embodiment.
Step 11: write core function.
Can adopt in the present embodiment Android NDK code to write, extract the core and write on independently in the function, and indirect call is made in system call or standard C storehouse into.Code is schematically as follows:
Figure BDA00003409996300041
Step 12: dis-assembling core function.
Can use in the present embodiment GDB debugging acid or IDA Pro Advanced that the code disassembling of core function is become the ARM platform code, as follows.(gdb)x/20i?funcx
Figure BDA00003409996300051
Analyze above-mentioned assembly code:
1) in conjunction with C code assembly code<funcx+24 of funcx〉corresponding C code is callPrintf=﹠amp; Printf;
2)<funcx+28〉and<funcx+32〉can ignore, what out equals all do not do because preserve to load again;
3)<funcx+20〉and<funcx+40〉preserve respectively and loading parameters a (a=1);
4)<funcx+24〉and<funcx+36〉difference loading function pointer and first parameter.(we will revise be this value of two).
Step 13: establishment can be carried out memory mapping area.
Rewrite the assembly code of core function, use linux system to call mmap and create memory mapping area, and the assembly instruction Code copying is arrived memory mapping area, can carry out authority because in user's state space, only have memory mapping area could revise internal memory.
The assembly code of rewriting funcx is as follows:
Figure BDA00003409996300052
From above-mentioned code, can find out, with in the above-mentioned steps 12<funcx+24 and<funcx+36 instruction replaces to 8 instructions, data temporarily empty.With above-mentioned assembly instruction data unsigned char code[] preserve; Use linux system call mmap to create memory mapping area, and assembly instruction code is copied into memory mapping area, can carry out authority because in user's state space, only have memory mapping area could revise internal memory.
It is as follows that establishment can be carried out the code of memory mapping area:
Figure BDA00003409996300062
Figure BDA00003409996300071
Step 14: the assembly code that copies core function toward memory mapping area.
On-the-fly modify 8 instructions that step S13 reserves, a ldr instruction is replaced to a mov instruction and three orr instructions, realize that data write the operation of register, this process is as follows:
Figure BDA00003409996300072
Figure BDA00003409996300081
Code data before the mem memory field has copied are from side-play amount 24(0x18) to begin be exactly the start address of assembly instruction that need to revise.Assembly code under the grand corresponding A RM platform of MOV and ORR, the emit function has been realized the pointer of internal memory write operation and mobile next address.Write 8 instructions by the emit function, the meaning of these 8 instructions is that the address with the printf function writes the r3 register, and parameter f mt is write the r0 register.Before the register write operation, the data of printf function address and fmt parameter can be encrypted with various cryptographic algorithm, before calling the emit function, be decrypted again, can reach the effect that obfuscated codes is hidden some Key Functions.Even this part code out also is difficult to the concrete behavior of this function of location by dis-assembling, shown in as follows.
Figure BDA00003409996300082
Figure BDA00003409996300091
Step 15: carry out the assembly code of memory mapping area, generate the core function after obscuring.
The mem memory field is executable memory field, and the data in the internal memory are variants of funcx function, so the mem address is exactly the address of a function in fact, only need to simply call int (* func) ()=mem; Func () can carry out amended code.Carrying out the front difference according to platform of func (), some system may need _ _ clear_cache ((char*) mem, (char*) mem+sizeof (code)); Come flush buffers, because the existence of CPU cache, flush buffers may not cause instruction to make mistakes.
The second embodiment of the Compilation Method by the implementation by assembly Code obfuscation
Fig. 2 shows the flow process of the second embodiment of the Compilation Method by the implementation by assembly Code obfuscation of the present invention.See also Fig. 2, the below is the detailed description to the implementation step of the Code obfuscation Compilation Method of the present embodiment.
Step 21: write core function.
Can adopt in the present embodiment Android NDK code to write, extract the core and write on independently in the function, and indirect call is made in system call or standard C storehouse into.
Step 22: dis-assembling core function.
Can use in the present embodiment GDB debugging acid or IDA Pro Advanced that the code disassembling of core function is become the ARM platform code.
Step 23: establishment can be carried out memory mapping area.
Rewrite the assembly code of core function, use linux system to call mmap and create memory mapping area, and the assembly instruction Code copying is arrived memory mapping area, can carry out authority because in user's state space, only have memory mapping area could revise internal memory.
Step 24: the assembly code that copies core function toward memory mapping area.Before the register write operation, the data of printf function address and fmt parameter can be encrypted with various cryptographic algorithm.And before calling the emit function, be decrypted again, can reach the effect that obfuscated codes is hidden some Key Functions, even this part code out also is difficult to the concrete behavior of this function of location by dis-assembling.
Step 25: carry out the assembly code of memory mapping area, generate the core function after obscuring.
The first embodiment of the compiling system by the implementation by assembly Code obfuscation
Fig. 3 shows the structure of the first embodiment of the compiling system by the implementation by assembly Code obfuscation of the present invention.See also Fig. 3, the Code obfuscation compiling system of the present embodiment comprises: function is write module 11, function dis-assembling module 12, memory mapping area creation module 13, assembly code replication module 14, core function generation module 15.
Function is write module 11 and is write core function, can adopt in the present embodiment Android NDK code to write, and extract the core and write on independently in the function, and indirect call is made in system call or standard C storehouse into.
Function dis-assembling module 12 dis-assembling core function can use GDB debugging acid or IDA Pro Advanced that the code disassembling of core function is become the ARM platform code.
Memory mapping area creation module 13 creates can carry out memory mapping area.Memory mapping area creation module 13 is rewritten the assembly code of core function, use linux system to call mmap and create memory mapping area, and with the assembly instruction Code copying to memory mapping area can carry out authority because in user's state space, only have memory mapping area could revise internal memory
Assembly code replication module 14 copies the assembly code of core function toward memory mapping area.
Assembly code execution module 15 is carried out the assembly code of memory mapping area, generates the core function after obscuring.
The second embodiment of the compiling system by the implementation by assembly Code obfuscation
Fig. 4 shows the structure of the second embodiment of the compiling system by the implementation by assembly Code obfuscation of the present invention.See also Fig. 4, the Code obfuscation compiling system of the present embodiment comprises: function is write module 21, function dis-assembling module 22, memory mapping area creation module 23, assembly code replication module 24, core function generation module 25.
Function is write module 21 and is write core function, can adopt in the present embodiment Android NDK code to write, and extract the core and write on independently in the function, and indirect call is made in system call or standard C storehouse into.
Function dis-assembling module 22 dis-assembling core function can use GDB debugging acid or IDA Pro Advanced that the code disassembling of core function is become the ARM platform code.
Memory mapping area creation module 23 creates can carry out memory mapping area.Memory mapping area creation module 13 is rewritten the assembly code of core function, use linux system to call mmap and create memory mapping area, and with the assembly instruction Code copying to memory mapping area can carry out authority because in user's state space, only have memory mapping area could revise internal memory.
Assembly code replication module 24 copies the assembly code of core function toward memory mapping area.Also comprise ciphering unit 241 and decryption unit 242 in the assembly code replication module 24.Ciphering unit 241 is realized the cryptographic operation of assembly code.The decryption oprerations of the assembly code after decryption unit 242 realizes encrypting.
Assembly code execution module 25 is carried out the assembly code of memory mapping area, generates the core function after obscuring.
Above-described embodiment provides to those of ordinary skills and realizes and use of the present invention; those of ordinary skills can be in the situation that do not break away from invention thought of the present invention; above-described embodiment is made various modifications or variation; thereby protection scope of the present invention do not limit by above-described embodiment, and should be the maximum magnitude that meets the inventive features that claims mention.

Claims (10)

1. Compilation Method by the implementation by assembly Code obfuscation comprises:
Step 1: write core function;
Step 2: dis-assembling core function;
Step 3: establishment can be carried out memory mapping area;
Step 4: the assembly code that copies core function toward memory mapping area;
Step 5: carry out the assembly code of memory mapping area, generate the core function after obscuring.
2. the Compilation Method by the implementation by assembly Code obfuscation according to claim 1 is characterized in that, also comprises in the step 4 to the cryptographic operation of assembly code and to the decryption oprerations of assembly code.
3. the Compilation Method by the implementation by assembly Code obfuscation according to claim 1 and 2, it is characterized in that, in step 1, adopt Android NDK code to write core function, extract the core and be written to independently in the core function, and system call or standard C storehouse are replaced with indirect call.
4. the Compilation Method by the implementation by assembly Code obfuscation according to claim 3 is characterized in that, in step 2, uses debugging tool that the code disassembling of core function is become the ARM platform code.
5. the Compilation Method by the implementation by assembly Code obfuscation according to claim 4 is characterized in that, in step 3, uses linux system call mmap to create memory mapping area, and the assembly instruction Code copying is arrived memory mapping area.
6. compiling system by the implementation by assembly Code obfuscation comprises:
Function is write module, writes core function;
Function dis-assembling module, the dis-assembling core function;
The memory mapping area creation module, establishment can be carried out memory mapping area;
The assembly code replication module, past memory mapping area copies the assembly code of core function;
The core function generation module, the assembly code of execution memory mapping area generates the core function after obscuring.
7. the compiling system by the implementation by assembly Code obfuscation according to claim 6 is characterized in that, also comprises in the assembly code replication module:
Ciphering unit, the cryptographic operation of realization assembly code; And
Decryption unit, the decryption oprerations of the assembly code after realizing encrypting.
8. according to claim 6 or 7 described compiling systems by the implementation by assembly Code obfuscation, it is characterized in that, the module of writing function adopts Android NDK code to write core function, extract the core and be written to independently in the core function, and system call or standard C storehouse are replaced with indirect call.
9. the compiling system by the implementation by assembly Code obfuscation according to claim 8 is characterized in that, function dis-assembling module uses debugging tool that the code disassembling of core function is become the ARM platform code.
10. the compiling system by the implementation by assembly Code obfuscation according to claim 9 is characterized in that, uses linux system call mmap to create memory mapping area in the memory mapping area creation module, and the assembly instruction Code copying is arrived memory mapping area.
CN201310258325.5A 2013-06-26 2013-06-26 By Compilation Method and the system of implementation by assembly Code obfuscation Active CN103324481B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310258325.5A CN103324481B (en) 2013-06-26 2013-06-26 By Compilation Method and the system of implementation by assembly Code obfuscation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310258325.5A CN103324481B (en) 2013-06-26 2013-06-26 By Compilation Method and the system of implementation by assembly Code obfuscation

Publications (2)

Publication Number Publication Date
CN103324481A true CN103324481A (en) 2013-09-25
CN103324481B CN103324481B (en) 2016-08-31

Family

ID=49193250

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310258325.5A Active CN103324481B (en) 2013-06-26 2013-06-26 By Compilation Method and the system of implementation by assembly Code obfuscation

Country Status (1)

Country Link
CN (1) CN103324481B (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678961A (en) * 2013-11-07 2014-03-26 北京深思数盾科技有限公司 Code dynamic generating method
CN104318134A (en) * 2014-11-05 2015-01-28 北京深思数盾科技有限公司 Data protection method
CN104573427A (en) * 2015-01-06 2015-04-29 北京邮电大学 Confusing method and device of executable application
CN104573426A (en) * 2015-01-06 2015-04-29 北京邮电大学 Confusing method and device of executable application
CN104869170A (en) * 2015-05-29 2015-08-26 四川效率源信息安全技术有限责任公司 Decryption method for encrypted data file of UC browser
WO2016096139A1 (en) * 2014-12-18 2016-06-23 Giesecke & Devrient Gmbh Method for providing a security-critical software application on a computer unit
CN105975816A (en) * 2015-12-25 2016-09-28 武汉安天信息技术有限责任公司 Method and system for code protection based on virtual technology under mobile terminal
CN106126981A (en) * 2016-08-30 2016-11-16 电子科技大学 The software security means of defence replaced based on virtual function table
CN106682460A (en) * 2016-11-25 2017-05-17 西北大学 Code obfuscation method based on two transformations
CN108804937A (en) * 2018-06-12 2018-11-13 广州华多网络科技有限公司 System function call method and relevant apparatus
CN109426703A (en) * 2017-08-30 2019-03-05 武汉斗鱼网络科技有限公司 Guard method and device on a kind of ios platform to core code
CN110020533A (en) * 2018-01-08 2019-07-16 福建天泉教育科技有限公司 A kind of method for security protection and terminal of VR resource
CN110046479A (en) * 2019-03-21 2019-07-23 腾讯科技(深圳)有限公司 A kind of chained library file reverse adjustment method and device based on Android operation system
CN110717150A (en) * 2019-10-08 2020-01-21 北京顶象技术有限公司 Code protection method, device, protection equipment and readable storage medium
CN111190604A (en) * 2019-12-30 2020-05-22 航天信息股份有限公司 Android application memory confusion method and device, electronic equipment and medium
CN113010855A (en) * 2019-12-18 2021-06-22 武汉斗鱼鱼乐网络科技有限公司 Method, device and medium for acquiring data and computer equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090164753A1 (en) * 2007-12-20 2009-06-25 United States Of America As Represented By The Secrectary Of The Army Operation, Control, Branch VLIW Processor
CN101807239A (en) * 2010-03-29 2010-08-18 山东高效能服务器和存储研究院 Method for preventing source code from decompiling
CN101980160A (en) * 2010-10-28 2011-02-23 北京飞天诚信科技有限公司 Implementing method for encrypted .NET program
CN101986326A (en) * 2010-12-01 2011-03-16 浙江核新同花顺网络信息股份有限公司 Method and device for protecting software security

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090164753A1 (en) * 2007-12-20 2009-06-25 United States Of America As Represented By The Secrectary Of The Army Operation, Control, Branch VLIW Processor
CN101807239A (en) * 2010-03-29 2010-08-18 山东高效能服务器和存储研究院 Method for preventing source code from decompiling
CN101980160A (en) * 2010-10-28 2011-02-23 北京飞天诚信科技有限公司 Implementing method for encrypted .NET program
CN101986326A (en) * 2010-12-01 2011-03-16 浙江核新同花顺网络信息股份有限公司 Method and device for protecting software security

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
何炎祥: "基于程序流敏感的自修改代码混淆方法", 《计算机工程与科学》 *
曾鸣: "二进制代码中函数混淆调用的识别", 《计算机工程与应用》 *
李勇: "目标代码混淆技术综述", 《计算机技术与发展》 *

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678961B (en) * 2013-11-07 2016-07-06 北京深思数盾科技股份有限公司 The method that code dynamically generates
CN103678961A (en) * 2013-11-07 2014-03-26 北京深思数盾科技有限公司 Code dynamic generating method
CN104318134A (en) * 2014-11-05 2015-01-28 北京深思数盾科技有限公司 Data protection method
CN104318134B (en) * 2014-11-05 2017-06-06 北京深思数盾科技股份有限公司 A kind of data guard method
WO2016096139A1 (en) * 2014-12-18 2016-06-23 Giesecke & Devrient Gmbh Method for providing a security-critical software application on a computer unit
CN104573426B (en) * 2015-01-06 2017-06-06 北京邮电大学 Method and apparatus are obscured in a kind of executable application
CN104573427A (en) * 2015-01-06 2015-04-29 北京邮电大学 Confusing method and device of executable application
CN104573426A (en) * 2015-01-06 2015-04-29 北京邮电大学 Confusing method and device of executable application
CN104573427B (en) * 2015-01-06 2017-09-08 北京邮电大学 Method and apparatus are obscured in a kind of executable application
CN104869170A (en) * 2015-05-29 2015-08-26 四川效率源信息安全技术有限责任公司 Decryption method for encrypted data file of UC browser
CN104869170B (en) * 2015-05-29 2018-11-13 四川效率源信息安全技术股份有限公司 For the decryption method of UC browser data file encryptions
CN105975816A (en) * 2015-12-25 2016-09-28 武汉安天信息技术有限责任公司 Method and system for code protection based on virtual technology under mobile terminal
CN105975816B (en) * 2015-12-25 2019-06-07 武汉安天信息技术有限责任公司 Code protection method and system under mobile terminal based on virtual technology
CN106126981A (en) * 2016-08-30 2016-11-16 电子科技大学 The software security means of defence replaced based on virtual function table
CN106126981B (en) * 2016-08-30 2019-04-02 电子科技大学 Software security means of defence based on the replacement of virtual function table
CN106682460B (en) * 2016-11-25 2019-05-31 西北大学 It is a kind of based on the Code obfuscation method converted twice
CN106682460A (en) * 2016-11-25 2017-05-17 西北大学 Code obfuscation method based on two transformations
CN109426703A (en) * 2017-08-30 2019-03-05 武汉斗鱼网络科技有限公司 Guard method and device on a kind of ios platform to core code
CN109426703B (en) * 2017-08-30 2023-11-24 喀斯玛汇智(无锡)科技有限公司 Method and device for protecting core code on IOS platform
CN110020533B (en) * 2018-01-08 2021-02-09 福建天泉教育科技有限公司 Safety protection method for VR resources and terminal
CN110020533A (en) * 2018-01-08 2019-07-16 福建天泉教育科技有限公司 A kind of method for security protection and terminal of VR resource
CN108804937A (en) * 2018-06-12 2018-11-13 广州华多网络科技有限公司 System function call method and relevant apparatus
CN110046479A (en) * 2019-03-21 2019-07-23 腾讯科技(深圳)有限公司 A kind of chained library file reverse adjustment method and device based on Android operation system
CN110717150A (en) * 2019-10-08 2020-01-21 北京顶象技术有限公司 Code protection method, device, protection equipment and readable storage medium
CN113010855A (en) * 2019-12-18 2021-06-22 武汉斗鱼鱼乐网络科技有限公司 Method, device and medium for acquiring data and computer equipment
CN113010855B (en) * 2019-12-18 2022-05-10 武汉斗鱼鱼乐网络科技有限公司 Method, device and medium for acquiring data and computer equipment
CN111190604A (en) * 2019-12-30 2020-05-22 航天信息股份有限公司 Android application memory confusion method and device, electronic equipment and medium
CN111190604B (en) * 2019-12-30 2023-11-03 航天信息股份有限公司 Android application memory confusion method and device, electronic equipment and medium

Also Published As

Publication number Publication date
CN103324481B (en) 2016-08-31

Similar Documents

Publication Publication Date Title
CN103324481A (en) Compiling method and compiling system for obfuscating codes by means of assembly
US11748468B2 (en) Dynamic switching between pointer authentication regimes
US10152430B2 (en) Cryptographic pointer address encoding
WO2016078130A1 (en) Dynamic loading method for preventing reverse of apk file
CN107908933A (en) A kind of character string encryption method based on intermediate language
US8615735B2 (en) System and method for blurring instructions and data via binary obfuscation
CN108733988A (en) The guard method of executable program on Android platform
CN104834838B (en) Prevent the method and device of DEX file unloading from internal memory
CN104408337A (en) Reinforcement method for preventing reverse of APK (Android package) file
JP2012128536A (en) Data protection processing program
CN103679060B (en) Encryption method and encryption device
CN105303072A (en) ART mode based software hardening method and apparatus
CN101964040A (en) PE loader-based software packing protection method
CN112052461A (en) Code processing method based on instruction injection, terminal and storage medium
CN102855439A (en) Executable file self-checking method and device
JP5549810B2 (en) Program obfuscation device, program control device, program obfuscation method, and program
CN104751026A (en) Software protection method and software application method of android system, and related devices
WO2022011818A1 (en) Kernel sensitive data integrity protection method based on arm pointer authentication
CN107423586B (en) Method for protecting software and software protecting equipment
CN109190336A (en) A kind of method and system that the library So in Android application reinforces
JP6215468B2 (en) Program protector
CN112052462B (en) Virtualized encryption method, terminal and storage medium
EP2966587A1 (en) Method of protecting software program by corrupting memory chunks, and device for implementing said method
CN110659509B (en) Memory snapshot file generation method and device, electronic equipment and medium
CN104573556A (en) Encrypting method based on virtual system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171204

Address after: 361000 No. 0036, unit 0036, Chengyi street, Xiamen Software Park, Fujian Province, unit 0036

Patentee after: Xiamen net Lodge Co., Ltd.

Address before: 200030 Shanghai Xuhui District Xietu Road No. 2669 15 Floor

Patentee before: ChinaNetCenter Co., Ltd.