CN107193538A - 一种改进的钩取技术的方法及装置 - Google Patents
一种改进的钩取技术的方法及装置 Download PDFInfo
- Publication number
- CN107193538A CN107193538A CN201610143092.8A CN201610143092A CN107193538A CN 107193538 A CN107193538 A CN 107193538A CN 201610143092 A CN201610143092 A CN 201610143092A CN 107193538 A CN107193538 A CN 107193538A
- Authority
- CN
- China
- Prior art keywords
- address
- system program
- program
- entrance
- bytes
- 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
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种改进的钩取技术的方法及装置。所述一种改进的钩取技术的方法,包括:当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;在执行完所述注入程序后,计算出所述系统程序的第一入口地址;以所述第一入口地址为起始地址,运行所述系统程序。在多线程环境中,本发明可有效的避免对系统程序频繁的进行钩取操作和去钩取操作而带来的读写异常的情况,提高了钩取技术的鲁棒性和安全性。
Description
技术领域
本发明涉及钩取函数领域,特别涉及一种改进的钩取技术的方法及装置。
背景技术
现有的钩取技术是通过修改系统程序的入口地址处的五个字节的内容,从而跳转至注入程序的入口地址,从而达到钩取的目的。在修改系统程序的入口地址处的五个字节的内容前,需要保存系统函数的入口地址的前五个字节的内容。当运行完成钩取函数之后,需要跳转至系统程序的入口地址,此时就需要利用保存过的系统函数的入口地址处的前五个字节的内容来恢复原系统函数。但是在多线程环境中,过于频繁的对系统程序的入口地址的前五个字节的内容进行修改操作和恢复操作,有可能会造成读写异常的情况发生,导致系统进程发生异常。如何解决上述问题,就成为了业界亟待解决的课题。
发明内容
本发明提供一种改进的钩取技术的方法及装置,用以在使用钩取技术时,避免发生读写异常的情况。
根据本发明实施例的第一方面,提供一种改进的钩取技术的方法,包括:
当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
以所述第一入口地址为起始地址,运行所述系统程序。
本在一个实施例中,所述当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容,包括:
当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
在一个实施例中,所述根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址,包括:
根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
根据所述跳转指令,跳转至所述注入程序的入口地址。
在一个实施例中,所述在执行完所述注入程序后,计算出所述系统程序的第一入口地址,包括:
在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
确认所述新的地址为所述系统程序的第一入口地址。
在一个实施例中,所述以所述第一入口地址为起始地址,运行所述系统程序,包括:
跳转至所述系统程序的第一入口地址;
以所述第一入口地址为起始地址,运行所述系统程序。
根据本发明实施例的第二方面,提供一种改进的钩取技术的装置,包括:
修改模块,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
跳转模块,用于根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
计算模块,用于在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
运行模块,用于以所述第一入口地址为起始地址,运行所述系统程序。
在一个实施例中,所述修改模块,包括:
第一修改子模块,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
指向子模块,用于所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
在一个实施例中,所述跳转模块,包括:
第一跳转子模块,用于根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
第二修改子模块,用于修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
第二跳转子模块,用于根据所述跳转指令,跳转至所述注入程序的入口地址。
在一个实施例中,所述计算模块,包括:
相加子模块,用于在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
确认子模块,用于确认所述新的地址为所述系统程序的第一入口地址。
在一个实施例中,所述运行模块,包括:
第三跳转子模块,用于跳转至所述系统程序的第一入口地址;
运行子模块,用于以所述第一入口地址为起始地址,运行所述系统程序。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明一示例性实施例示出的一种改进的钩取技术的方法的流程图;
图2为本发明一示例性实施例示出的一种改进的钩取技术的方法的步骤S11的流程图;
图3为本发明一示例性实施例示出的一种改进的钩取技术的方法的步骤S12的流程图;
图4为本发明一示例性实施例示出的一种改进的钩取技术的方法的步骤S13的流程图;
图5为本发明一示例性实施例示出的一种改进的钩取技术的方法的步骤S14流程图;
图6a为本发明一示例性实施例示出的一种改进的钩取技术的方法的示意图;
图6b为本发明另一示例性实施例示出的一种改进的钩取技术的方法的示意图;
图7为本发明一示例性实施例示出的一种改进的钩取技术的装置的框图;
图8为本发明一示例性实施例示出的一种改进的钩取技术的装置的修改模块71的框图;
图9为本发明一示例性实施例示出的一种改进的钩取技术的装置的跳转模块72的框图;
图10为本发明一示例性实施例示出的一种改进的钩取技术的装置的计算模块73的框图;
图11为本发明一示例性实施例示出的一种改进的钩取技术的装置的修改模块74的框图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
现有的钩取技术是通过修改系统程序的入口地址处的五个字节的内容,跳转至注入程序的入口地址,从而达到钩取的目的。在修改系统程序的入口地址处的五个字节的内容前,需要保存系统函数的入口地址的前五个字节的内容。当运行完成钩取函数之后,需要跳转至系统程序的入口地址,此时就需要利用保存过的系统函数的入口地址处的前五个字节的内容来恢复原系统函数。但是在多线程环境中,过于频繁的对系统程序的入口地址的前五个字节的内容进行修改操作和恢复操作,有可能会造成读写异常的情况发生,导致系统进程发生异常。
图1是根据一示例性实施例示出的一种改进的钩取技术的方法流程图,如图1所示,该一种改进的钩取技术的方法,包括以下步骤S11-S14:
在步骤S11中,当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
当监测到系统程序被钩取时,修改该系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,该短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;该短跳转地址指向该系统程序入口地址之前的第五个字节的地址。
在步骤S12中,根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
根据该短跳转指令,跳转至该系统程序入口地址之前的第五个字节的地址;修改该系统程序入口地址之前连续的五个字节的内容为跳转指令,该跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;根据该跳转指令,跳转至该注入程序的入口地址。
在步骤S13中,在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
在执行完该注入程序后,将该系统程序的该入口地址加上两个字节,得到新的地址;确认该新的地址为该系统程序的第一入口地址。
在步骤S14中,以所述第一入口地址为起始地址,运行所述系统程序。
跳转至该系统程序的第一入口地址;以该第一入口地址为起始地址,运行该系统程序。通过上述操作即可在多线程环境中有效的避免对系统程序频繁的进行钩取操作和去钩取操作而带来的读写异常的情况,提高了钩取技术的鲁棒性和安全性。
在一个实施例中,如图2所示,步骤S11包括如下步骤S21-S22:
在步骤S21中,当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
不妨假设系统程序的入口地址为X,那么对地址为X和X+1两个字节中的内容进行修改。使用本实施例中的技术方案,在进行修改前,无需保存系统程序的入口地址为起始的连续的两个字节的内容。可以省略现有的钩取技术中,保存系统函数前两个字节的内容的操作步骤,还可以节省出为保存系统程序前两个字节的内容所使用的存储空间。
在步骤S22中,所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
不妨假设系统程序的入口地址为X,那么该短跳转地址指向的地址为X-5。
在一个实施例中,如图3所示,步骤S12包括如下步骤S31-S33:
在步骤S31中,根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
不妨假设系统程序的入口地址为X,那么根据该短跳转指令,跳转至X-5处的地址,系统准备运行地址为X-5处的程序。
在步骤S32中,修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
修改地址为X-5处的内容为跳转指令,该挑战指令中的跳转地址为注入函数的入口地址,不妨假设该入口地址为Y。
在步骤S33中,根据所述跳转指令,跳转至所述注入程序的入口地址。
根据该跳转指令,跳转至该注入程序的入口地址Y,系统准备运行地址为Y处的程序。
在一个实施例中,如图4所示,步骤S13包括如下步骤S41-S42:
在步骤S41中,在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
不妨假设系统程序的入口地址为X,那么新的地址为X+2。
在步骤S42中,确认所述新的地址为所述系统程序的第一入口地址。
确认新的地址X+2为系统程序的第一入口地址。在现有的钩取技术中,需要利用保存的未修改前的系统函数前2个字节的内容,来恢复修改后的系统程序。而且,现有技术中,跳回的地址也是原系统程序的入口地址。使用本实施例中的技术方案,可以节省现有钩取技术中的恢复原系统程序的入口地址的操作。本发明可在多线程环境中有效的避免对系统程序频繁的进行钩取操作和去钩取操作而带来的读写异常的情况,提高了钩取技术的鲁棒性和安全性。
在一个实施例中,如图5所示,步骤S14包括如下步骤S51-S52:
在步骤S51中,跳转至所述系统程序的第一入口地址;
在步骤S52中,以所述第一入口地址为起始地址,运行所述系统程序。
跳转至第一入口地址X+2处,以第一入口地址X+2处为起始地址,系统运行该处的系统程序。
在一个实施例中,如图6a和图6b所示,在一个实施例,系统函数的入口地址为77D507EA。地址为77D507EA处的指令MOV EDI,EDI作用是将EDI寄存器中的数据送至EDI,该条指令占用2个字节的内容。地址为77D507E5到地址为77D507E9处的5行代码皆为NOP,NOP指令的作用是空循环一个机器指令的时间,每一条NOP指令占用1个字节的空间。
修改地址为77D507EA处的MOV EDI,EDI指令为JMP SHORTUSER32.77D507E5,该指令的作用为短跳转至地址为77D507E5处,系统继续执行地址为77D507E5处的代码。地址为77D507E5处的代码为JMPRPCRT4.77E507EA,该条指令JMP RPCRT4.77E507EA的作用为跳转至注入函数的入口地址。
在运行完注入函数后,跳转至地址77D507EC处,77D507EC=77D507EA+2,即跳转至系统函数的入口地址77D507EA加上2个字节出的地址77D507EC,以地址77D507EC处为起始地址,运行该系统函数。
在一个实施例中,图7是根据一示例性实施例示出的一种改进的钩取技术的装置框图。如图7示,该装置包括修改模块71、跳转模块72、计算模块73和运行模块74。
该修改模块71,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
该跳转模块72,用于根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
该计算模块73,用于在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
该运行模块74,用于以所述第一入口地址为起始地址,运行所述系统程序。
如图8所示,该修改模块71包括第一修改子模块81和指向子模块82。
该第一修改子模块81,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
该指向子模块82,用于所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
如图9所示,该跳转模块72包括第一跳转子模块91、第二修改子模块92和第二跳转子模块93。
该第一跳转子模块91,用于根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
该第二修改子模块92,用于修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
该第二跳转子模块93,用于根据所述跳转指令,跳转至所述注入程序的入口地址。
如图10所示,该计算模块73包括相加子模块101和确认子模块102:
该相加子模块101,用于在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
该确认子模块102,用于确认所述新的地址为所述系统程序的第一入口地址。
如图11所示,该运行模块74包括第三跳转子模块111和运行子模块112。
该第三跳转子模块111,用于跳转至所述系统程序的第一入口地址;
该运行子模块112,用于以所述第一入口地址为起始地址,运行所述系统程序。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种改进的钩取技术的方法,其特征在于,包括:
当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
以所述第一入口地址为起始地址,运行所述系统程序。
2.如权利要求1所述的方法,其特征在于,所述当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容,包括:
当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
3.如权利要求2所述的方法,其特征在于,所述根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址,包括:
根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
根据所述跳转指令,跳转至所述注入程序的入口地址。
4.如权利要求1所述的方法,其特征在于,所述在执行完所述注入程序后,计算出所述系统程序的第一入口地址,包括:
在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
确认所述新的地址为所述系统程序的第一入口地址。
5.如权利要求4所述的方法,其特征在于,所述以所述第一入口地址为起始地址,运行所述系统程序,包括:
跳转至所述系统程序的第一入口地址;
以所述第一入口地址为起始地址,运行所述系统程序。
6.一种改进的钩取技术的装置,其特征在于,包括:
修改模块,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容;
跳转模块,用于根据修改后的所述系统程序以入口地址为起始的连续的两个字节的内容,跳转至注入程序的入口地址;
计算模块,用于在执行完所述注入程序后,计算出所述系统程序的第一入口地址;
运行模块,用于以所述第一入口地址为起始地址,运行所述系统程序。
7.根据权利要求6的装置,其特征在于,所述修改模块,包括:
第一修改子模块,用于当监测到系统程序被钩取时,修改所述系统程序以入口地址为起始的连续的两个字节的内容为短跳转指令,所述短跳转指令包括一个字节的短跳转关键字和一个字节的短跳转地址;
指向子模块,用于所述短跳转地址指向所述系统程序入口地址之前的第五个字节的地址。
8.根据权利要求7的装置,其特征在于,所述跳转模块,包括:
第一跳转子模块,用于根据所述短跳转指令,跳转至所述系统程序入口地址之前的第五个字节的地址;
第二修改子模块,用于修改所述系统程序入口地址之前连续的五个字节的内容为跳转指令,所述跳转指令包括一个字节的跳转关键字和四个字节的跳转地址;
第二跳转子模块,用于根据所述跳转指令,跳转至所述注入程序的入口地址。
9.根据权利要求6的装置,其特征在于,所述计算模块,包括:
相加子模块,用于在执行完所述注入程序后,将所述系统程序的所述入口地址加上两个字节,得到新的地址;
确认子模块,用于确认所述新的地址为所述系统程序的第一入口地址。
10.根据权利要求9的装置,其特征在于,所述运行模块,包括:
第三跳转子模块,用于跳转至所述系统程序的第一入口地址;
运行子模块,用于以所述第一入口地址为起始地址,运行所述系统程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610143092.8A CN107193538A (zh) | 2016-03-14 | 2016-03-14 | 一种改进的钩取技术的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610143092.8A CN107193538A (zh) | 2016-03-14 | 2016-03-14 | 一种改进的钩取技术的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107193538A true CN107193538A (zh) | 2017-09-22 |
Family
ID=59871975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610143092.8A Pending CN107193538A (zh) | 2016-03-14 | 2016-03-14 | 一种改进的钩取技术的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107193538A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943517A (zh) * | 2017-10-26 | 2018-04-20 | 北京奇虎科技有限公司 | 终端应用的挂钩方法及装置 |
CN109766145A (zh) * | 2019-01-22 | 2019-05-17 | 杭州云缔盟科技有限公司 | 一种Windows下通过HOOK技术实现函数热补丁的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0263447A2 (en) * | 1986-10-10 | 1988-04-13 | International Business Machines Corporation | A method and apparatus for implementing a branch and return on address instruction in a digital data processing system |
CN101719077A (zh) * | 2009-12-24 | 2010-06-02 | 北京飞天诚信科技有限公司 | 在.Net程序中注入代码的方法和装置 |
CN103218262A (zh) * | 2010-02-11 | 2013-07-24 | 华为技术有限公司 | 在线补丁的激活方法、装置及系统 |
CN103530184A (zh) * | 2013-10-24 | 2014-01-22 | 华为技术有限公司 | 一种在线补丁激活的方法及装置 |
-
2016
- 2016-03-14 CN CN201610143092.8A patent/CN107193538A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0263447A2 (en) * | 1986-10-10 | 1988-04-13 | International Business Machines Corporation | A method and apparatus for implementing a branch and return on address instruction in a digital data processing system |
CN101719077A (zh) * | 2009-12-24 | 2010-06-02 | 北京飞天诚信科技有限公司 | 在.Net程序中注入代码的方法和装置 |
CN103218262A (zh) * | 2010-02-11 | 2013-07-24 | 华为技术有限公司 | 在线补丁的激活方法、装置及系统 |
CN103530184A (zh) * | 2013-10-24 | 2014-01-22 | 华为技术有限公司 | 一种在线补丁激活的方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943517A (zh) * | 2017-10-26 | 2018-04-20 | 北京奇虎科技有限公司 | 终端应用的挂钩方法及装置 |
CN109766145A (zh) * | 2019-01-22 | 2019-05-17 | 杭州云缔盟科技有限公司 | 一种Windows下通过HOOK技术实现函数热补丁的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5602597B2 (ja) | 外来情報を区分けすることにより仮想マシン・コードをメモリ最適化する方法、コンピュータ・プログラム、およびシステム | |
US10007784B2 (en) | Technologies for control flow exploit mitigation using processor trace | |
CN107480476B (zh) | 一种基于ELF感染的Android本地层指令编译虚拟化加壳方法 | |
CN110825363B (zh) | 智能合约获取方法、装置、电子设备及存储介质 | |
CN103946855A (zh) | 用于检测面向返回编程攻击的方法、装置和系统 | |
Kalysch et al. | VMAttack: Deobfuscating virtualization-based packed binaries | |
CN107102944A (zh) | 一种调用函数的分析方法及装置 | |
CN104918119B (zh) | 基于iOS浏览器的视频处理方法及视频处理装置 | |
CN104536810B (zh) | 一种基于栈的异常检测方法和装置 | |
JP2022009556A (ja) | ソフトウェアコードをセキュアにするための方法 | |
CN107545182B (zh) | 一种ios应用中绕过函数调用链检测的方法及系统 | |
CN105468588A (zh) | 字符串匹配方法和装置 | |
CN104252594A (zh) | 病毒检测方法和装置 | |
CN107239698A (zh) | 一种基于信号处理机制的反调试方法和装置 | |
CN107193538A (zh) | 一种改进的钩取技术的方法及装置 | |
CN106709335B (zh) | 漏洞检测方法和装置 | |
CN107436752A (zh) | 异常现场恢复方法、装置及计算机可读存储介质 | |
CN104298618B (zh) | 一种智能终端的命令处理方法及装置 | |
CN107943517A (zh) | 终端应用的挂钩方法及装置 | |
CN110673899B (zh) | 一种程序处理方法及相关设备 | |
JP5024252B2 (ja) | トレース情報取得装置、トレース情報取得プログラム、および、トレース情報取得方法 | |
CN112631949B (zh) | 一种调试方法、装置、计算机设备及存储介质 | |
CN108897522A (zh) | 数据处理方法、数据处理装置以及电子设备 | |
CN107045606B (zh) | 用于监测程序代码的执行的方法和设备 | |
CN111488282B (zh) | 业务功能处理方法、装置、电子设备及存储介质 |
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: 20170922 |
|
RJ01 | Rejection of invention patent application after publication |