CN112464228A - 一种应用层命令审计方法、装置、系统及存储介质 - Google Patents

一种应用层命令审计方法、装置、系统及存储介质 Download PDF

Info

Publication number
CN112464228A
CN112464228A CN202010943534.3A CN202010943534A CN112464228A CN 112464228 A CN112464228 A CN 112464228A CN 202010943534 A CN202010943534 A CN 202010943534A CN 112464228 A CN112464228 A CN 112464228A
Authority
CN
China
Prior art keywords
command
function
dynamic library
recording
specified dynamic
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
CN202010943534.3A
Other languages
English (en)
Other versions
CN112464228B (zh
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.)
Beijing Shengxin Network Technology Co ltd
Original Assignee
Beijing Shengxin Network 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 Beijing Shengxin Network Technology Co ltd filed Critical Beijing Shengxin Network Technology Co ltd
Priority to CN202010943534.3A priority Critical patent/CN112464228B/zh
Publication of CN112464228A publication Critical patent/CN112464228A/zh
Application granted granted Critical
Publication of CN112464228B publication Critical patent/CN112464228B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种应用层命令审计方法、装置、系统及存储介质,方法包括:对命令的二进制文件静态注入一段加载指定动态库的机器码;当命令的命令进程启动时,加载指定动态库,并在指定动态库中hook记录命令函数;确定记录命令函数被调用时,记录命令的命令信息,并通过客户端上报命令信息至服务端;即对命令的二进制文件静态注入一段加载动态库的机器码,注入机器码之后不会影响此二进制文件的正常功能,注入成功后,加载指定的动态库,在动态库中被hook的函数被调用后,相关命令信息就会被实时记录,通过客户端上报到服务端,进而可以实时收集并且上报命令信息,及时提示客户存在异常操作,支持对攻击者进行阻断,保护系统安全。

Description

一种应用层命令审计方法、装置、系统及存储介质
技术领域
本发明涉及计算机安全领域,尤其涉及一种应用层命令审计方法、装置、系统及存储介质。
背景技术
Linux操作系统是基于UNIX操作系统发展而来的一种克隆系统,其以性能稳定、运行高效而被各大企业广泛使用,目前系统的基础操作大多数使用命令完成,然而这些命令中会存在一些对系统安全产生威胁的行为,其中目前主要是通过获取shell命令的历史记录,来分析shell命令是否对系统存在安全风险并且记录IP来源,而通过历史记录来分析一些异常的命令和定位一些异常的IP,不能够及时的发现命令的风险。
发明内容
本发明所要解决的技术问题是针对上述现有技术的不足,提供一种应用层命令审计方法、装置、系统及存储介质,可以实时记录命令信息,并及时上报,能有效解决通过历史记录来分析一些异常的命令和定位一些异常的IP,不能够及时的发现命令的风险的技术问题。
本发明解决上述技术问题的技术方案如下:一种应用层命令审计方法,包括以下步骤:
对命令的二进制文件静态注入一段加载指定动态库的机器码;
当所述命令的命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数;
确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端。
为解决上述技术问题,本发明实施例还提供一种应用层命令审计方法,包括以下步骤:
对命令的二进制文件静态注入一段加载指定动态库的机器码;
当命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数;
确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端;
接收并分析所述客户端上报的所述命令信息;
当确定对所述命令信息对应的命令进行阻断时,向所述客户端下发命令阻断操作。
为解决上述技术问题,本发明实施例还提供一种应用层命令审计装置,包括静态注入模块、hook模块和上报模块;
所述静态注入模块,用于对命令的二进制文件静态注入一段加载指定动态库的机器码;
所述hook模块,用于当所述命令的命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数;
所述上报模块,用于确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端。
为解决上述技术问题,本发明实施例还提供一种应用层命令审计系统,包括:根据如上所述的应用层命令审计装置、客户端和服务端;
所述应用层命令审计装置将命令信息上报给所述客户端;
所述客户端对所述命令信息进行处理后上报给所述服务端;
所述服务端对所述命令信息进行分析,当确定对所述命令信息对应的命令进行阻断时,向所述客户端下发命令阻断操作。
所述客户端执行所述命令阻断操作。
为解决上述技术问题,本发明实施例还提供一种存储介质,所述存储介质存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如上所述的应用层命令审计方法的步骤。
本发明的有益效果是:对命令的二进制文件静态注入一段加载动态库的机器码,注入机器码之后不会影响此二进制文件的正常功能,注入成功后,二进制文件在执行的时候会加载指定的动态库,接着在动态库中hook记录命令的函数;当记录命令函数被调用,会直接跳转到hook函数,相关命令信息就会在命令执行过程中实时地被记录,通过客户端上报到服务端,进而可以实时收集并且上报命令信息,及时提示客户存在异常操作,支持对攻击者进行阻断,保护系统安全。
附图说明
图1为本发明一实施例提供的应用层命令审计方法流程图;
图2为本发明另一实施例提供的应用层命令审计方法流程图;
图3为本发明另一实施例提供的应用层命令审计方法流程图;
图4为本发明实施例提供的应用层命令审计装置结构示意图;
图5为本发明实施例提供的应用层命令审计系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
参照图1所示,一种应用层命令审计方法,包括以下步骤:
S101:对命令的二进制文件静态注入一段加载指定动态库的机器码;
S102:当命令的命令进程启动时,加载指定动态库,并在指定动态库中hook记录命令函数;
S103:确定记录命令函数被调用时,记录命令的命令信息,并通过客户端上报命令信息至服务端。
在本实施例中,对命令的二进制文件静态注入一段加载动态库的机器码,注入机器码之后不会影响此二进制文件的正常功能,注入成功后,二进制文件在执行的时候会加载指定的动态库,接着在动态库中hook记录命令的函数。当记录命令函数被调用,会直接跳转到hook函数,相关命令和用户IP就会实时被记录,通过客户端上报到服务端,进而可以实时收集并且上报命令信息,及时提示客户存在异常操作,支持对攻击者进行阻断,保护系统安全。
在本实施例中,具体的,步骤S101包括:
将加载指定动态库的机器码写到命令的二进制文件对应的代码段中;
查找命令的二进制文件的入口函数地址和加载动态库的API函数地址,入口函数用于作为跳转到机器码的入口,API函数地址用于加载指定动态库;
根据入口函数和API函数的地址值对机器码进行计算;
保存修改后的执行命令的二进制文件。
本实施例中,还可以先读取命令的二进制文件的文本内容,并进行对应格式校验,确保该命令的格式正确性,确保该命令的二进制文件包括入口函数和加载动态库的API函数;然后查找入口函数和加载动态库的API函数地址;可预设编写好一段机器码,该机器码用于加载到指定动态库中,对命令的二进制文件的结构进行分析,将该机器码写到程序的代码段中。
进一步地,在本实施例中,根据入口函数和API函数的地址值对机器码进行计算具体包括:将入口函数所在位置的前n个字节修改为跳转到注入的机器码的地址处,n为正整数;根据修改后的入口函数和API函数的地址值,对机器码中的指定位置的跳转偏移值进行计算。通过将入口函数所在位置的前n个字节修改跳转到注入的机器码的地址处,进而后续在命令执行入口函数处,可跳转到注入的机器码;在本实施例中,该n可以为10,该前10字节主要是通过对基础的寄存器的值进行保存,具体修改前10个字节,替换成jmp的跳转指令,跳转到注入的机器码地址处;其中机器码中的指定位置指的是入口函数地址+修改指令的长度(n个)处;进一步地,对机器码中的指定位置的跳转偏移值进行计算包括:偏移值=(入口函数地址+修改指令的长度(10))-(当前指令所在地址+跳转指令长度)。
在本实施例中,步骤S102具体包括:当命令进程启动时,执行入口函数,跳转到机器码处;保存入口函数中预设寄存器的值,并调用API加载指定动态库;指定动态库被加载后,获取命令进程中记录命令函数的地址,并对记录命令函数进行hook。
Hook(钩子)函数是一个处理消息的代码段,采用Hook函数可以钩住目标函数,此时如果有其他函数向该目标函数发送消息时,不会先运行该目标函数,而是先运行Hook函数,在Hook函数运行过程中,可以先对传递给目标函数的消息进行加工处理再传递给该目标函数,也可以直接将该消息传递给目标函数,也可以强制结束该消息的传递。
在本实施例中,当命令进程启动时,执行该入口函数,会直接跳转到注入的机器码处,在注入的机器码中会保存入口函数中的一些寄存器的值,调用API加载到指定动态库中;动态库被加载后,会获取命令进程中记录命令函数的地址,并且对记录的函数进行hook,进而完成对指定动态库的加载。即本实施例中,是通过机器码加载到指定动态库,在指定动态库中实现hook记录命令的函数,便于后续在指定动态库中实现对命令的记录及上报。
需要说明的是,在指定动态库加载完成后,该命令进程还需要继续执行入口函数后面的逻辑,因此本实施例中,指定动态库加载完成后,恢复预设寄存器的值,跳转回入口函数执行命令进程。
进一步地,步骤S103具体包括:当命令进程中记录命令函数被调用,跳转到hook记录命令函数;记录命令和命令的IP,并上报至客户端。
在本实施例中,跳转回入口函数处继续执行后面的逻辑时,当命令进程中记录命令函数被调用,会跳转到hook记录命令的函数,在hook函数模块中,会记录命令和对应的IP源等命令信息,接着将命令信息转发给客户端,hook函数上报信息完成后,会跳转回执行记录命令的正常功能中去,进而命令进程继续执行剩余的逻辑;由于是在指定动态库中hook,因此本实施例在指定动态库中实现对应的命令审计功能。
本实施例还提供一种应用层命令审计方法,如图2所示,该应用层命令审计方法包括:
S201、对命令的二进制文件静态注入一段加载指定动态库的机器码;
S202、当命令进程启动时,加载指定动态库,并在指定动态库中hook记录命令函数;
S203、确定记录命令函数被调用时,记录命令的命令信息,并通过客户端上报命令信息至服务端;
S204、接收并分析客户端上报的命令信息;
S205、当确定对命令信息对应的命令进行阻断时,向客户端下发阻断IP源的命令操作。
即在本实施例中,当命令的命令信息上报到客户端后,客户端可对该命令信息进行处理,处理后上报给服务端,其中客户端将命令信息标准化,在补充一些标识客户端的基础信息和消息类型之后,转换成json格式上报给服务端,该基础信息可以是客户端的身份信息,如IP或ID等;即处理后的命令信息包括命令+命令IP源+客户端的基础信息+消息类型,服务端接收到处理后的命令信息后,立即进行分析,判断该命令是否是影响系统安全的命令操作,如是,则及时提醒给用户,由用户确认是否进行阻断;在一些实施例中,当服务端接收到命令信息后,在判定该命令影响系统安全的命令操作时,由自己确定对命令信息对应的命令进行阻断;在本实施例,服务端可以根据命令信息中的IP源和正常来源的IP进行匹配,IP不同时,可判定该命令是影响系统安全的命令操作;在一些实施例中,还可以根据命令的本身判断是否是影响系统安全的命令操作,如该命令为打开敏感文件,则判定该命令是影响系统安全的命令操作;当服务端接收到用户下发的阻断操作时,确定对命令信息对应的命令进行阻断,向客户端下发命令阻断操作,其中该命令阻断操作可以是直接阻断该命令继续执行,也可以是阻断该命令的IP源的所有命令操作;进而由客户端执行该命令阻断操作,保护系统安全。
为了便于理解,本实施例提供一种具体的应用层命令审计方法,如图3所示,该应用层命令审计方法包括:
S301、命令的进程被启动,执行入口函数处,跳转到注入的一段机器码处。
在本实施例中,命令的进程被启动之前,在命令的二进制文件中一段加载指定动态库文件的机器码,注入成功后,二进制文件在执行的时候会加载指定的动态库;
其中在命令的二进制文件中注入一段加载动态库的机器码主要流程如下:
步骤1、读取执行命令的二进制文件的文本内容,并且进行对应的格式校验;
步骤2、查找执行命令文件的一个入口函数地址;用于作为跳转的一个入口点;
步骤3、查找执行命令文件中的加载动态库的API的函数地址;通过加载动态库的API来加载我们的动态库文件;
步骤4、对执行命令文件的结构进行分析,将新增加的一段机器码写到程序的代码段中;
步骤5、对执行命令文件中入口函数所在的位置的前几个字节进行修改,修改为跳转到注入的新增的机器码的地址处;
步骤6、依据入口函数和加载动态库函数的地址值,对注入的那一段机器码中的指定位置的跳转偏移值进行重新计算;
步骤7、保存修改后的执行命令的文件数据。
S302、保存入口函数中的一些寄存器的值,调用API加载指定动态库。
S303、动态库被加载后,会获取命令进程中记录命令的函数地址,并且对记录命令的函数进行hook。
S304、动态库加载完成后,会恢复保存的寄存器中的值,跳转回入口函数处继续执行后面的逻辑。
S305、命令进程中记录命令的函数被调用,会跳转到hook记录命令的函数。
S306、在hook函数模块中,会记录、上报命令和对应的IP源等信息,接着将信息转发给agent客户端。
S307、agent客户端对收到的信息进行处理后,上报给服务端。
S308、服务端收到命令后,立即进行分析,判断是否是影响系统安全的操作,是,就及时提示给用户,由用户确认是否进行阻断操作,当用户确认进行阻断操作时,下发阻断指定IP源的命令操作。
S309、agent客户端执行该阻断指定IP源的命令操作。
S310、hook函数上报信息完成后,会跳转回执行记录命令的正常功能中去。
S311、命令进程继续执行剩余的逻辑,执行完成。
可以理解的是,本实施例中的,步骤S306和S310可以是同时发生的。
本实施例提供的应用层命令审计方法,对命令的二进制文件静态注入一段加载动态库的机器码。注入机器码之后不会影响此二进制文件的正常功能,动态库文件中,实时收集并且上报命令和执行命令用户的IP来源,准确率高,可控性强,并且易于维护和升级;且服务端可及时提示客户存在异常操作,支持对攻击者行为进行阻断,保护系统安全。
如图4所示,本实施例提供一种应用层命令审计装置40,包括静态注入模块401、hook模块402和上报模块403;
静态注入模块401,用于对命令的二进制文件静态注入一段加载指定动态库的机器码;hook模块402,用于当命令的命令进程启动时,加载指定动态库,并在指定动态库中hook记录命令函数;上报模块403,用于确定记录命令函数被调用时,记录命令的命令信息,并通过客户端上报命令信息至服务端。
静态注入模块401具体用于:将加载指定动态库的机器码写到命令的二进制文件对应的代码段中;查找命令的二进制文件的入口函数地址和加载动态库的API函数地址,入口函数用于作为跳转到机器码的入口,API函数地址用于加载指定动态库;根据入口函数和API函数的地址值对机器码进行计算;保存修改后的执行命令的二进制文件。
其中根据入口函数和API函数的地址值对机器码进行计算包括:将入口函数所在位置的前n个字节修改为跳转到注入的机器码的地址处,n为正整数;根据修改后的入口函数和API函数的地址值,对机器码中的指定位置的跳转偏移值进行计算。
在本实施例中,hook模块402具体用于:当命令进程启动时,执行入口函数,跳转到机器码处;保存入口函数中预设寄存器的值,并调用API加载指定动态库;指定动态库被加载后,获取命令进程中记录命令函数的地址,并对记录命令函数进行hook。
在本实施例中,hook模块402具体还用于:指定动态库加载完成后,恢复预设寄存器的值,跳转回入口函数执行命令进程。
上报模块403具体用于:当命令进程中记录命令函数被调用,跳转到hook记录命令函数;记录命令和命令的IP,并上报至客户端。
本发明实施例还提供一种应用层命令审计系统,如图5所示,包括应用层命令审计装置40、客户端50和服务端60;
应用层命令审计装置40将命令信息上报给客户端50;客户端50对命令信息进行处理后上报给服务端60;服务端60对命令信息进行分析,当确定对命令信息对应的命令进行阻断时,向客户端50下发命令阻断操作。客户端20执行命令阻断操作。
本发明实施例还提供一种存储介质,存储介质存储一个或者多个计算机程序,一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述各实施例中的应用层命令审计方法的步骤,在此不再一一赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明实施例所提供的技术方案进行了详细介绍,本专利中应用了具体个例对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发明实施例的原理;以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种应用层命令审计方法,其特征在于,所述应用层命令审计方法包括:
对命令的二进制文件静态注入一段加载指定动态库的机器码;
当所述命令的命令进程启动时,加载所述指定动态库,并在所述指定动态库中钩子hook记录命令函数;
确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端。
2.根据权利要求1所述的应用层命令审计方法,其特征在于,所述对所述命令的二进制文件静态注入一段加载指定动态库的机器码包括:
将所述加载指定动态库的机器码写到所述命令的二进制文件对应的代码段中;
查找所述命令的二进制文件的入口函数地址和加载动态库的API函数地址,所述入口函数用于作为跳转到所述机器码的入口,所述API函数地址用于加载所述指定动态库;
根据所述入口函数和所述API函数的地址值对所述机器码进行计算;
保存修改后的执行命令的二进制文件。
3.根据权利要求2所述的应用层命令审计方法,其特征在于,所述根据所述入口函数和所述API函数的地址值对所述机器码进行计算包括:
将所述入口函数所在位置的前n个字节修改为跳转到注入的所述机器码的地址处,n为正整数;
根据修改后的所述入口函数和所述API函数的地址值,对所述机器码中的指定位置的跳转偏移值进行计算。
4.根据权利要求3所述的应用层命令审计方法,其特征在于,所述当命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数包括:
当所述命令进程启动时,执行所述入口函数,跳转到所述机器码处;
保存所述入口函数中预设寄存器的值,并调用所述API加载所述指定动态库;
所述指定动态库被加载后,获取所述命令进程中所述记录命令函数的地址,并对所述记录命令函数进行hook。
5.根据权利要求4所述的应用层命令审计方法,其特征在于,所述当所述命令的命令进程启动时,加载所述指定动态库之后包括:
所述指定动态库加载完成后,恢复所述预设寄存器的值,跳转回所述入口函数执行所述命令进程。
6.根据权利要求5所述的应用层命令审计方法,其特征在于,所述确定所述记录命令函数被调用时,记录所述命令的命令信息包括:
当所述命令进程中所述记录命令函数被调用,跳转到hook记录命令函数;
记录所述命令和命令的IP,并上报至客户端。
7.一种应用层命令审计方法,其特征在于,所述应用层命令审计方法包括:
对命令的二进制文件静态注入一段加载指定动态库的机器码;
当命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数;
确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端;
接收并分析所述客户端上报的所述命令信息;
当确定对所述命令信息对应的命令进行阻断时,向所述客户端下发命令阻断操作。
8.一种应用层命令审计装置,其特征在于,包括静态注入模块、hook模块和上报模块;
所述静态注入模块,用于对命令的二进制文件静态注入一段加载指定动态库的机器码;
所述hook模块,用于当所述命令的命令进程启动时,加载所述指定动态库,并在所述指定动态库中hook记录命令函数;
所述上报模块,用于确定所述记录命令函数被调用时,记录所述命令的命令信息,并通过客户端上报所述命令信息至服务端。
9.一种应用层命令审计系统,其特征在于,包括客户端、服务端和根据权利要求8所述的应用层命令审计装置;
所述应用层命令审计装置将命令信息上报给所述客户端;
所述客户端对所述命令信息进行处理后上报给所述服务端;
所述服务端对所述命令信息进行分析,当确定对所述命令信息对应的命令进行阻断时,向所述客户端下发命令阻断操作。
所述客户端执行所述命令阻断操作。
10.一种存储介质,其特征在于,所述存储介质存储一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现根据权利要求1至6中任一项所述的应用层命令审计方法的步骤,或以实现根据权利要求7所述的应用层命令审计方法的步骤。
CN202010943534.3A 2020-09-09 2020-09-09 一种应用层命令审计方法、装置、系统及存储介质 Active CN112464228B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010943534.3A CN112464228B (zh) 2020-09-09 2020-09-09 一种应用层命令审计方法、装置、系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010943534.3A CN112464228B (zh) 2020-09-09 2020-09-09 一种应用层命令审计方法、装置、系统及存储介质

Publications (2)

Publication Number Publication Date
CN112464228A true CN112464228A (zh) 2021-03-09
CN112464228B CN112464228B (zh) 2021-07-27

Family

ID=74833346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010943534.3A Active CN112464228B (zh) 2020-09-09 2020-09-09 一种应用层命令审计方法、装置、系统及存储介质

Country Status (1)

Country Link
CN (1) CN112464228B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102891802A (zh) * 2012-09-19 2013-01-23 深圳市深信服电子科技有限公司 数据分流方法、移动终端及数据分流系统
CN104123492A (zh) * 2014-07-21 2014-10-29 蓝盾信息安全技术有限公司 一种Windows的进程保护方法
US9489220B1 (en) * 2012-11-26 2016-11-08 Parallels IP Holdings GmbH Displaying guest operating system statistics in host task manager
CN106126290A (zh) * 2016-06-27 2016-11-16 微梦创科网络科技(中国)有限公司 应用程序优化方法、装置及系统
CN108255542A (zh) * 2018-01-05 2018-07-06 北京北信源信息安全技术有限公司 一种虚拟机的串口并口管控方法与装置
US20190087210A1 (en) * 2017-09-20 2019-03-21 Citrix Systems, Inc. Java native interface and windows universal app hooking

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102891802A (zh) * 2012-09-19 2013-01-23 深圳市深信服电子科技有限公司 数据分流方法、移动终端及数据分流系统
US9489220B1 (en) * 2012-11-26 2016-11-08 Parallels IP Holdings GmbH Displaying guest operating system statistics in host task manager
US10140145B1 (en) * 2012-11-26 2018-11-27 Parallels IP Holdings GmbH Displaying guest operating system statistics in host task manager
CN104123492A (zh) * 2014-07-21 2014-10-29 蓝盾信息安全技术有限公司 一种Windows的进程保护方法
CN106126290A (zh) * 2016-06-27 2016-11-16 微梦创科网络科技(中国)有限公司 应用程序优化方法、装置及系统
US20190087210A1 (en) * 2017-09-20 2019-03-21 Citrix Systems, Inc. Java native interface and windows universal app hooking
CN108255542A (zh) * 2018-01-05 2018-07-06 北京北信源信息安全技术有限公司 一种虚拟机的串口并口管控方法与装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
余成锋: "基于Rootkit技术Android系统木马程序的分析", 《万方数据库》 *

Also Published As

Publication number Publication date
CN112464228B (zh) 2021-07-27

Similar Documents

Publication Publication Date Title
CN102799817B (zh) 用于使用虚拟化技术进行恶意软件保护的系统和方法
US8255931B2 (en) Method for implementing ejection-safe API interception
US6698016B1 (en) Method for injecting code into another process
US8875165B2 (en) Computing device having a DLL injection function, and DLL injection method
CN110603527B (zh) 用于服务器侧生产代码的条件调试的方法、系统和设备
US10089126B2 (en) Function exit instrumentation for tail-call optimized code
CN109471697B (zh) 一种监控虚拟机中系统调用的方法、装置及存储介质
US20070113291A1 (en) Method for administrating the function access
CN107908444B (zh) 终端应用的挂钩方法及装置
CN116502220B (zh) 一种对抗性Java内存马的检测方法及处理方法
US20110265072A1 (en) Dynamic Installation of Files for Running Programs
CN111914250B (zh) 一种Linux系统脚本程序运行时验证与管控方法
CN111258850A (zh) 一种基于Linux系统的更新软件信息的方法及装置
CN115688106A (zh) 一种Java agent无文件注入内存马的检测方法及装置
CN115017505A (zh) 一种pe病毒检测方法、装置、电子设备及存储介质
CN112464228B (zh) 一种应用层命令审计方法、装置、系统及存储介质
CN113110865A (zh) 一种服务器热更新方法及装置
US6785883B1 (en) Software system for tracing data
US11630714B2 (en) Automated crash recovery
US8726244B2 (en) Software breakpoint handling by eliminating instruction replacement and execution under certain conditions
CN111026609B (zh) 一种信息审计方法、系统、设备及计算机可读存储介质
CN109388948B (zh) 一种基于虚拟化技术的潜在恶意软件分析方法及相关装置
US9158558B1 (en) Methods and systems for providing application manifest information
CN110515652B (zh) 代码摘要的生成方法、装置和存储介质
CN113609478A (zh) 一种ios平台应用程序篡改检测方法及装置

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
GR01 Patent grant
GR01 Patent grant