CN115795444A - 一种mssql后门的检测方法及装置 - Google Patents
一种mssql后门的检测方法及装置 Download PDFInfo
- Publication number
- CN115795444A CN115795444A CN202310047577.7A CN202310047577A CN115795444A CN 115795444 A CN115795444 A CN 115795444A CN 202310047577 A CN202310047577 A CN 202310047577A CN 115795444 A CN115795444 A CN 115795444A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- mssql
- detected
- memory block
- 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
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种MSSQL后门的检测方法及装置,涉及数据安全技术领域。该MSSQL后门的检测方法包括:获取待检测MSSQL的进程行为数据;根据所述进程行为数据判断是否发生AssemblyLoad行为;若是,根据所述进程行为数据进行内存扫描,获取Module结构数据;根据所述Module结构数据进行内存筛选,获得待检测内存块数据;基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果。该MSSQL后门的检测方法可以实现提高无文件后门的检测效率的技术效果。
Description
技术领域
本申请涉及数据安全技术领域,具体而言,涉及一种MSSQL后门的检测方法及装置。
背景技术
目前,MSSQL是指一款SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。现有技术中,MSSQL的后门可以分为多种,按照是否有落盘文件可以将其分为两大类,分别为有文件后门和无文件后门。目前,有文件后门的检测比较成熟,主要步骤为:
监控系统中的新文件,这里的新文件主要为PE(Portable Executable,可移植的、可执行的)文件;
判断新文件的签名,如果存在合法签名,则判断该文件为正常文件;
如果不存在合法文件,则将该文件进行模式匹配引擎中,判断能够匹配到已知特征的后门;
如果能匹配到已知特征的后门,则判断为该后门;
如果不能匹配到已知特征的后门,则由人工进行分析。
但是,对于无文件后门,并没有比较成熟的方式,因为无文件后门完全隐藏在MSSQL数据库进程内部,无文件落地、无额外进程,运维管理人员很难定位到后门真正所在,检测效率低下。
发明内容
本申请实施例的目的在于提供一种MSSQL后门的检测方法、装置、电子设备及计算机可读存储介质,可以实现提高无文件后门的检测效率的技术效果。
第一方面,本申请实施例提供了一种MSSQL后门的检测方法,包括:
获取待检测MSSQL的进程行为数据;
根据所述进程行为数据判断是否发生AssemblyLoad行为;
若是,根据所述进程行为数据进行内存扫描,获取Module结构数据;
根据所述Module结构数据进行内存筛选,获得待检测内存块数据;
基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果。
在上述实现过程中,该MSSQL后门的检测方法通过监控MSSQL进程,获得待检测MSSQL的进程行为数据,并在待检测MSSQL的进程行为数据发生AssemblyLoad行为时、调用内存筛选,从待检测MSSQL的进程行为数据筛选获得待检测内存块数据;进而,根据待检测内存块数据进行解析,获得后门文件检测结果;从而,该方法可以针对完全隐藏在MSSQL数据库进程内部、无文件落地、无额外进程的无文件后门进行检测,能够检测无文件木马,并定位无文件后门的内存块,避免了人工手动排查,实现提高无文件后门的检测效率的技术效果。
进一步地,所述获取待检测MSSQL的进程行为数据的步骤,包括:
通过预设ETW监控所述待检测MSSQL的进程,获取所述进程行为数据。
在上述实现过程中,检测无文件后门的第一步就是需要获取触发查找内存扫描的时机,在本方法中通过预设ETW监控待检测MSSQL的进程,并在进程行为数据发生AssemblyLoad行为时出发内存扫描。
进一步地,所述根据所述Module结构数据进行内存筛选,获得待检测内存块数据的步骤,包括:
判断所述Module结构数据的名称是否包括在预设白名单中;
若是,跳转至所述根据所述进程行为数据进行内存扫描,获取Module结构数据的步骤;
若否,根据预设内存筛选器对所述Module结构数据进行筛选,获得待检测内存块数据。
在上述实现过程中,通过预设白名单对Module结构数据进行初步过滤,然后再调用预设内存筛选器对Module结构数据进行筛选、并获得待检测内存块数据,提高检测效率。
进一步地,所述待检测内存块数据包括多个可疑内存块,所述基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果的步骤,包括:
遍历所述待检测内存块数据中的所有可疑内存块,并对遍历到的可疑内存块如下处理:
基于预设内存解析器对所述可疑内存块进行解析,获得解析后的可疑内存块;
对解析后的可疑内存块匹配预设规则库,生成匹配结果;
遍历完成后,根据所述匹配结果获得后门文件检测结果。
进一步地,所述基于预设内存解析器对所述可疑内存块进行解析,获得解析后的可疑内存块的步骤,包括:
基于所述预设内存解析器解析所述可疑内存块的数据,获得所述可疑内存块的外部函数调用信息。
在上述实现过程中,预设内存解析器可以解析可疑内存块Metadata中的数据,从而分析出该可疑内存块调用的外部函数,再使用预设规则库加以判断。
进一步地,所述预设规则库包括多个函数调用序列,所述对解析后的可疑内存块匹配预设规则库,生成匹配结果的步骤,包括:
基于所述预设规则库对所述可疑内存块的外部函数调用信息进行匹配,生成匹配结果;其中,匹配结果成功时判定所述可疑内存块是后门文件的内存块,匹配结果失败时判定所述可疑内存块不是后门文件的内存块。
在上述实现过程中,根据不同的函数调用序列构建预设规则库,根据预设规则库对可疑内存块的外部函数调用信息进行匹配,匹配成功则判定可疑内存块是后门文件的内存块,匹配失败则判定可疑内存块不是后门文件的内存块。
第二方面,本申请实施例提供了一种MSSQL后门的检测装置,包括:
监控进程模块,用于获取待检测MSSQL的进程行为数据;
判断模块,用于根据所述进程行为数据判断是否发生AssemblyLoad行为;
扫描模块,用于若是,根据所述进程行为数据进行内存扫描,获取Module结构数据;
筛选模块,用于根据所述Module结构数据进行内存筛选,获得待检测内存块数据;
解析模块,用于基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果。
进一步地,所述监控进程模块具体用于:
通过预设ETW监控所述待检测MSSQL的进程,获取所述进程行为数据。
进一步地,所述筛选模块具体用于:
判断所述Module结构数据的名称是否包括在预设白名单中;
若是,跳转至所述根据所述进程行为数据进行内存扫描,获取Module结构数据的步骤;
若否,根据预设内存筛选器对所述Module结构数据进行筛选,获得待检测内存块数据。
进一步地,所述待检测内存块数据包括多个可疑内存块,所述解析模块具体用于:
遍历所述待检测内存块数据中的所有可疑内存块,并对遍历到的可疑内存块如下处理:
基于预设内存解析器对所述可疑内存块进行解析,获得解析后的可疑内存块;
对解析后的可疑内存块匹配预设规则库,生成匹配结果;
遍历完成后,根据所述匹配结果获得后门文件检测结果。
进一步地,所述解析模块还用于:基于所述预设内存解析器解析所述可疑内存块的数据,获得所述可疑内存块的外部函数调用信息。
进一步地,所述解析模块还用于:基于所述预设规则库对所述可疑内存块的外部函数调用信息进行匹配,生成匹配结果;其中,匹配结果成功时判定所述可疑内存块是后门文件的内存块,匹配结果失败时判定所述可疑内存块不是后门文件的内存块。
第三方面,本申请实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
第四方面,本申请实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。
第五方面,本申请实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
本申请公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本申请公开的上述技术即可得知。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种MSSQL后门的检测方法的流程示意图;
图2为本申请实施例提供的另一种MSSQL后门的检测方法的流程示意图;
图3为本申请实施例提供的MSSQL后门的检测装置的结构框图;
图4为本申请实施例提供的一种电子设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
本申请实施例提供了一种MSSQL后门的检测方法、装置、电子设备及计算机可读存储介质,可以应用于MSSQL无文件后门的检测中;该MSSQL后门的检测方法通过监控MSSQL进程,获得待检测MSSQL的进程行为数据,并在待检测MSSQL的进程行为数据发生AssemblyLoad行为时、调用内存筛选,从待检测MSSQL的进程行为数据筛选获得待检测内存块数据;进而,根据待检测内存块数据进行解析,获得后门文件检测结果;从而,该方法可以针对完全隐藏在MSSQL数据库进程内部、无文件落地、无额外进程的无文件后门进行检测,能够检测无文件木马,并定位无文件后门的内存块,避免了人工手动排查,实现提高无文件后门的检测效率的技术效果。
在描述本申请实施例提供的MSSQL后门的检测方法之前,对.NET程序中的概念阐述如下:
1、CLR(CommonLanguage Runtime): CLR是.NET程序提供的运行时环境,它的功能为通过编译器和工具公开,开发者可以通过CLR编写利用托管执行环境的代码;其中,使用面向运行时的语言编译器开发的代码称为托管代码;
2、Assembly(.NET程序集):Assembly构成了.NET程序的部署、版本控制、重用、激活范围和安全权限的基本单元;程序集是为协同工作而生成的类型和资源的集合,这些类型和资源构成了一个逻辑功能单元;程序集采用可执行文件(.exe)或动态链接库文件(.dll)的形式,是.NET程序的构建基块;
3、Module:Module是Assembly中一段代码的集合,也就是说Assembly是由Module构成的;
4、Metadata:Metadata记录了代码中类型,成员和引用等信息,并且Metadata被保存在文件PE头中,CLR通过这些数据可以加载数据、调用方法。
请参见图1,图1为本申请实施例提供的一种MSSQL后门的检测方法的流程示意图,该MSSQL后门的检测方法包括如下步骤:
S100:获取待检测MSSQL的进程行为数据。
示例性地,通过监控MSSQL进程行为,获得待检测MSSQL的进程行为数据;可选地,因为无文件后门一般都是存在于内存中的,通过实时监控MSSQL进程行为,基于待检测MSSQL的进程行为数据实现对无文件后门的检测。
S200:根据进程行为数据判断是否发生AssemblyLoad行为;若否,则跳转至S100:获取待检测MSSQL的进程行为数据;
S300:若是,根据进程行为数据进行内存扫描,获取Module结构数据。
示例性地,若进程行为数据中发生AssemblyLoad行为,则说明该待检测MSSQL的进程行为数据中可能存在无文件后门,从而可以对该进程行为数据进行进一步地检测。
S400:根据Module结构数据进行内存筛选,获得待检测内存块数据;
S500:基于预设规则库对待检测内存块数据进行解析,获得后门文件检测结果。
示例性地,该MSSQL后门的检测方法通过监控MSSQL进程,获得待检测MSSQL的进程行为数据,并在待检测MSSQL的进程行为数据发生AssemblyLoad行为时、调用内存筛选,从待检测MSSQL的进程行为数据筛选获得待检测内存块数据;进而,根据待检测内存块数据进行解析,获得后门文件检测结果;从而,该方法可以针对完全隐藏在MSSQL数据库进程内部、无文件落地、无额外进程的无文件后门进行检测,能够检测无文件木马,并定位无文件后门的内存块,避免了人工手动排查,实现提高无文件后门的检测效率的技术效果。
请参见图2,图2为本申请实施例提供的另一种MSSQL后门的检测方法的流程示意图。
示例性地,S100:获取待检测MSSQL的进程行为数据的步骤,包括:
S110:通过预设ETW监控待检测MSSQL的进程,获取进程行为数据。
示例性地,检测无文件后门的第一步就是需要获取触发查找内存扫描的时机,在本方法中使用了Windows提供的ETW;其中,ETW(Event Tracingfor Windows)提供了一种对用户层应用程序和内核层驱动创建的事件对象的跟踪记录机制。为开发者提供了一套快速、可靠、通用的一系列事件跟踪特性。
示例性地,S400:根据Module结构数据进行内存筛选,获得待检测内存块数据的步骤,包括:
S410:判断Module结构数据的名称是否包括在预设白名单中;
若是,跳转至:S300:根据进程行为数据进行内存扫描,获取Module结构数据的步骤;
S420:若否,根据预设内存筛选器对Module结构数据进行筛选,获得待检测内存块数据。
示例性地,通过预设白名单对Module结构数据进行初步过滤,然后再调用预设内存筛选器对Module结构数据进行筛选、并获得待检测内存块数据,提高检测效率。
在一些实施方式中,通过预设内存筛选器对Module结构数据进行筛选,可以对Module结构数据中的Module内存块进行标记;若Module内存块没有通过预设内存筛选器的筛选,则将Module内存块标记为“可疑”;从而,根据可疑Module内存块生成待检测内存块数据、进行进一步检测。
示例性地,待检测内存块数据包括多个可疑内存块,S500:基于预设规则库对待检测内存块数据进行解析,获得后门文件检测结果的步骤,包括:
S510:遍历待检测内存块数据中的所有可疑内存块,并对遍历到的可疑内存块如下处理:基于预设内存解析器对可疑内存块进行解析,获得解析后的可疑内存块;对解析后的可疑内存块匹配预设规则库,生成匹配结果;
S520:遍历完成后,根据匹配结果获得后门文件检测结果。
示例性地,基于预设内存解析器对可疑内存块进行解析,获得解析后的可疑内存块的步骤,包括:
基于预设内存解析器解析可疑内存块的数据,获得可疑内存块的外部函数调用信息。
示例性地,本申请实施例提供的预设内存解析器,可以解析该可疑内存块Metadata中的数据,从而分析出该可疑内存块调用的外部函数,再使用预设规则库加以判断。
示例性地,预设规则库包括多个函数调用序列,对解析后的可疑内存块匹配预设规则库,生成匹配结果的步骤,包括:
基于预设规则库对可疑内存块的外部函数调用信息进行匹配,生成匹配结果;其中,匹配结果成功时判定可疑内存块是后门文件的内存块,匹配结果失败时判定可疑内存块不是后门文件的内存块。
示例性地,由于无文件后门根据功能可以被分为:命令执行类型、文件下载类型、反弹SHELL类型等,这些不同的功能对应的外部函数调用序列并不一致;从而,本申请实施例根据不同的函数调用序列构建预设规则库,根据预设规则库对可疑内存块的外部函数调用信息进行匹配,匹配成功则判定可疑内存块是后门文件的内存块,匹配失败则判定可疑内存块不是后门文件的内存块。
结合图1至图2,本申请实施例提供的MSSQL后门的检测方法中,由于MSSQL是一个.NET程序,其是运行在CLR环境中的,MSSQL的程序必然是由Assembly构成的;换言之,无文件后门想要能够执行,必然需要以Assembly的形式存在于内存空间中;从而,可以通过获取MSSQL内存中Assembly的方式,实现检测无文件后门的检测。从而,对于无文件后门,本申请实施例提供了一种检测MSSQL无文件后门的方法,能够检测无文件木马,并定位无文件后门的内存块,避免了人工手动排查,实现提高无文件后门的检测效率的技术效果。
请参见图3,图3为本申请实施例提供的MSSQL后门的检测装置的结构框图,该MSSQL后门的检测装置包括:
监控进程模块100,用于获取待检测MSSQL的进程行为数据;
判断模块200,用于根据进程行为数据判断是否发生AssemblyLoad行为;
扫描模块300,用于若是,根据进程行为数据进行内存扫描,获取Module结构数据;
筛选模块400,用于根据Module结构数据进行内存筛选,获得待检测内存块数据;
解析模块500,用于基于预设规则库对待检测内存块数据进行解析,获得后门文件检测结果。
示例性地,监控进程模块100具体用于:
通过预设ETW监控待检测MSSQL的进程,获取进程行为数据。
示例性地,筛选模块400具体用于:
判断Module结构数据的名称是否包括在预设白名单中;
若是,跳转至根据进程行为数据进行内存扫描,获取Module结构数据的步骤;
若否,根据预设内存筛选器对Module结构数据进行筛选,获得待检测内存块数据。
示例性地,待检测内存块数据包括多个可疑内存块,解析模块500具体用于:
遍历待检测内存块数据中的所有可疑内存块,并对遍历到的可疑内存块如下处理:
基于预设内存解析器对可疑内存块进行解析,获得解析后的可疑内存块;
对解析后的可疑内存块匹配预设规则库,生成匹配结果;
遍历完成后,根据匹配结果获得后门文件检测结果。
进一步地,解析模块500还用于:基于预设内存解析器解析可疑内存块的数据,获得可疑内存块的外部函数调用信息。
示例性地,解析模块500还用于:基于预设规则库对可疑内存块的外部函数调用信息进行匹配,生成匹配结果;其中,匹配结果成功时判定可疑内存块是后门文件的内存块,匹配结果失败时判定可疑内存块不是后门文件的内存块。
需要注意的是,本申请实施例提供的MSSQL后门的检测装置与图1至图2所述的方法实施例相对应,为避免重复,此处不在赘述。
本申请还提供一种电子设备,请参见图4,图4为本申请实施例提供的一种电子设备的结构框图。电子设备可以包括处理器510、通信接口520、存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本申请实施例中电子设备的通信接口520用于与其他节点设备进行信令或数据的通信。处理器510可以是一种集成电路芯片,具有信号的处理能力。
上述的处理器510可以是通用处理器,包括中央处理器(CPU,Central ProcessingUnit)、网络处理器(NP,Network Processor)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器510也可以是任何常规的处理器等。
存储器530可以是,但不限于,随机存取存储器(RAM,Random Access Memory),只读存储器(ROM,Read OnlyMemory),可编程只读存储器(PROM ,Programmable Read-OnlyMemory),可擦除只读存储器(EPROM ,ErasableProgrammable Read-Only Memory),电可擦除只读存储器(EEPROM ,ElectricErasable Programmable Read-Only Memory)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备可以执行上述图1至图2方法实施例涉及的各个步骤。
可选地,电子设备还可以包括存储控制器、输入输出单元。
所述存储器530、存储控制器、处理器510、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。
输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
可以理解,图4所示的结构仅为示意,所述电子设备还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
本申请实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
本申请还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种MSSQL后门的检测方法,其特征在于,包括:
获取待检测MSSQL的进程行为数据;
根据所述进程行为数据判断是否发生AssemblyLoad行为;
若是,根据所述进程行为数据进行内存扫描,获取Module结构数据;
根据所述Module结构数据进行内存筛选,获得待检测内存块数据;
基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果。
2.根据权利要求1所述的MSSQL后门的检测方法,其特征在于,所述获取待检测MSSQL的进程行为数据的步骤,包括:
通过预设ETW监控所述待检测MSSQL的进程,获取所述进程行为数据。
3.根据权利要求1或2所述的MSSQL后门的检测方法,其特征在于,所述根据所述Module结构数据进行内存筛选,获得待检测内存块数据的步骤,包括:
判断所述Module结构数据的名称是否包括在预设白名单中;
若是,跳转至所述根据所述进程行为数据进行内存扫描,获取Module结构数据的步骤;
若否,根据预设内存筛选器对所述Module结构数据进行筛选,获得待检测内存块数据。
4.根据权利要求1所述的MSSQL后门的检测方法,其特征在于,所述待检测内存块数据包括多个可疑内存块,所述基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果的步骤,包括:
遍历所述待检测内存块数据中的所有可疑内存块,并对遍历到的可疑内存块如下处理:
基于预设内存解析器对所述可疑内存块进行解析,获得解析后的可疑内存块;
对解析后的可疑内存块匹配预设规则库,生成匹配结果;
遍历完成后,根据所述匹配结果获得后门文件检测结果。
5.根据权利要求4所述的MSSQL后门的检测方法,其特征在于,所述基于预设内存解析器对所述可疑内存块进行解析,获得解析后的可疑内存块的步骤,包括:
基于所述预设内存解析器解析所述可疑内存块的数据,获得所述可疑内存块的外部函数调用信息。
6.根据权利要求4所述的MSSQL后门的检测方法,其特征在于,所述预设规则库包括多个函数调用序列,所述对解析后的可疑内存块匹配预设规则库,生成匹配结果的步骤,包括:
基于所述预设规则库对所述可疑内存块的外部函数调用信息进行匹配,生成匹配结果;其中,匹配结果成功时判定所述可疑内存块是后门文件的内存块,匹配结果失败时判定所述可疑内存块不是后门文件的内存块。
7.一种MSSQL后门的检测装置,其特征在于,包括:
监控进程模块,用于获取待检测MSSQL的进程行为数据;
判断模块,用于根据所述进程行为数据判断是否发生AssemblyLoad行为;
扫描模块,用于若是,根据所述进程行为数据进行内存扫描,获取Module结构数据;
筛选模块,用于根据所述Module结构数据进行内存筛选,获得待检测内存块数据;
解析模块,用于基于预设规则库对所述待检测内存块数据进行解析,获得后门文件检测结果。
8.根据权利要求7所述的MSSQL后门的检测装置,其特征在于,所述监控进程模块具体用于:
通过预设ETW监控所述待检测MSSQL的进程,获取所述进程行为数据。
9.一种电子设备,其特征在于,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的MSSQL后门的检测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1至6任一项所述的MSSQL后门的检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310047577.7A CN115795444B (zh) | 2023-01-31 | 2023-01-31 | 一种mssql后门的检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310047577.7A CN115795444B (zh) | 2023-01-31 | 2023-01-31 | 一种mssql后门的检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115795444A true CN115795444A (zh) | 2023-03-14 |
CN115795444B CN115795444B (zh) | 2023-05-05 |
Family
ID=85429306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310047577.7A Active CN115795444B (zh) | 2023-01-31 | 2023-01-31 | 一种mssql后门的检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115795444B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184371A (zh) * | 2011-04-15 | 2011-09-14 | 国都兴业信息审计系统技术(北京)有限公司 | Sql语句的数据库操作权限检测方法与系统 |
CN111859386A (zh) * | 2020-08-03 | 2020-10-30 | 深圳市联软科技股份有限公司 | 基于行为分析的木马检测方法及系统 |
US20200387597A1 (en) * | 2019-06-07 | 2020-12-10 | Acronis International Gmbh | System and method of detecting unauthorized access to computing resources for cryptomining |
CN113946825A (zh) * | 2021-12-22 | 2022-01-18 | 北京微步在线科技有限公司 | 一种内存马处理方法及系统 |
CN114065204A (zh) * | 2021-11-29 | 2022-02-18 | 中国工商银行股份有限公司 | 一种无文件木马查杀方法及装置 |
CN114692153A (zh) * | 2022-04-11 | 2022-07-01 | 北京中睿天下信息技术有限公司 | 基于java程序的恶意代码检测方法、设备及存储介质 |
CN114707150A (zh) * | 2022-03-21 | 2022-07-05 | 安芯网盾(北京)科技有限公司 | 一种恶意代码检测方法、装置、电子设备和存储介质 |
CN115544503A (zh) * | 2022-09-22 | 2022-12-30 | 深信服科技股份有限公司 | 一种无文件攻击检测方法、装置、设备及存储介质 |
-
2023
- 2023-01-31 CN CN202310047577.7A patent/CN115795444B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184371A (zh) * | 2011-04-15 | 2011-09-14 | 国都兴业信息审计系统技术(北京)有限公司 | Sql语句的数据库操作权限检测方法与系统 |
US20200387597A1 (en) * | 2019-06-07 | 2020-12-10 | Acronis International Gmbh | System and method of detecting unauthorized access to computing resources for cryptomining |
CN111859386A (zh) * | 2020-08-03 | 2020-10-30 | 深圳市联软科技股份有限公司 | 基于行为分析的木马检测方法及系统 |
CN114065204A (zh) * | 2021-11-29 | 2022-02-18 | 中国工商银行股份有限公司 | 一种无文件木马查杀方法及装置 |
CN113946825A (zh) * | 2021-12-22 | 2022-01-18 | 北京微步在线科技有限公司 | 一种内存马处理方法及系统 |
CN114707150A (zh) * | 2022-03-21 | 2022-07-05 | 安芯网盾(北京)科技有限公司 | 一种恶意代码检测方法、装置、电子设备和存储介质 |
CN114692153A (zh) * | 2022-04-11 | 2022-07-01 | 北京中睿天下信息技术有限公司 | 基于java程序的恶意代码检测方法、设备及存储介质 |
CN115544503A (zh) * | 2022-09-22 | 2022-12-30 | 深信服科技股份有限公司 | 一种无文件攻击检测方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
张驯;马之力;智勇;朱小琴;龚波;李志茹;: "基于内核检测的数据库漏洞扫描器的设计与实现" * |
Also Published As
Publication number | Publication date |
---|---|
CN115795444B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Duan et al. | Detective: Automatically identify and analyze malware processes in forensic scenarios via DLLs | |
US7900193B1 (en) | System and method for detecting defects in a computer program using data and control flow analysis | |
JP4903879B2 (ja) | システム解析および管理 | |
US20150302198A1 (en) | Detection of Malicious Code Insertion in Trusted Environments | |
KR101676366B1 (ko) | 사이버 공격 대응을 위한 악성코드 침해 경로 및 행위 추적을 수행하는 침해 공격 추적 시스템 및 방법 | |
RU2430411C1 (ru) | Система и способ обнаружения вредоносного программного обеспечения | |
CN111835756B (zh) | App隐私合规检测方法、装置、计算机设备及存储介质 | |
CN111191248B (zh) | 针对Android车载终端系统的漏洞检测系统及方法 | |
CN103778373A (zh) | 病毒检测方法及装置 | |
RU2706883C1 (ru) | Система и способ снижения количества ложных срабатываний классифицирующих алгоритмов | |
CN112688966A (zh) | webshell检测方法、装置、介质和设备 | |
US20160246963A1 (en) | System and method for enhancing static analysis of software applications | |
Seifert et al. | Capture–A behavioral analysis tool for applications and documents | |
CN107103237A (zh) | 一种恶意文件的检测方法及装置 | |
CN110716866A (zh) | 代码质量扫描方法、装置、计算机设备及存储介质 | |
Bernardi et al. | A fuzzy-based process mining approach for dynamic malware detection | |
Liu et al. | A system call analysis method with mapreduce for malware detection | |
US9483645B2 (en) | System, method, and computer program product for identifying unwanted data based on an assembled execution profile of code | |
CN113971284B (zh) | 基于JavaScript的恶意网页检测方法、设备及计算机可读存储介质 | |
CN114328168A (zh) | 异常检测方法、装置、计算机设备和存储介质 | |
CN117235714A (zh) | 无文件攻击检测方法、装置、设备及存储介质 | |
CN117272308A (zh) | 软件安全测试方法、装置、设备、存储介质及程序产品 | |
CN115795444B (zh) | 一种mssql后门的检测方法及装置 | |
CN115544518A (zh) | 漏洞扫描引擎实现方法、装置、漏洞扫描方法及电子设备 | |
Egele et al. | Using static program analysis to aid intrusion detection |
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 |