CN114024773B - 一种webshell文件检测方法及系统 - Google Patents
一种webshell文件检测方法及系统 Download PDFInfo
- Publication number
- CN114024773B CN114024773B CN202210002623.7A CN202210002623A CN114024773B CN 114024773 B CN114024773 B CN 114024773B CN 202210002623 A CN202210002623 A CN 202210002623A CN 114024773 B CN114024773 B CN 114024773B
- Authority
- CN
- China
- Prior art keywords
- ndr
- detection
- edr
- unit
- file
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Virology (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例提供一种webshell文件检测方法及系统,涉及网络安全技术领域。webshell文件检测方法包括:获取包括webshell文件的主机文件数据、与所述主机文件数据对应的流量数据;通过NDR单元对所述流量数据进行检测,生成NDR检测信息;将所述NDR检测信息发送至EDR单元;通过所述EDR单元对所述主机文件数据进行检测,生成EDR检测信息;将所述EDR检测信息发送至所述NDR单元;根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果。该webshell文件检测方法可以实现提高检测效率、检测精度以及泛用性的技术效果。
Description
技术领域
本申请涉及网络安全技术领域,具体而言,涉及一种webshell文件检测方法及系统。
背景技术
目前,webshell就是以动态服务器页面(ASP,Active Server Pages)、超文本预处理器(PHP,PHP:Hypertext Preprocessor)、JAVA服务器页面(JSP,Java Server Pages)或者公共网关接口(CGI,Common Gateway Interface)等网页文件形式存在的一种代码执行环境,主要用于网站管理、服务器管理、权限管理等操作,且使用方法简单,只需要上传一个代码文件,通过网址访问,便可进行一些相关操作,极大的方便了使用者对网站或服务器进行日常管理,正因为如此,会有一少部分人将代码修改后当作后门程序使用,攻击者通过上传一些恶意的webshell文件,来进行相关的敏感操作或非法操作,以达到控制网站或服务器的目的。因此在服务器的安全防范中,webshell检测就显得尤为重要。
现有技术中,传统的webshell检测方式更多的是以服务器自身为纬度进行发现、识别、检测webshell文件,强依赖于产品本身所具备的能力,同时也意味着受限于产品本身具备的能力,泛用性低,检测效率和检测精度难以保证。
发明内容
本申请实施例的目的在于提供一种webshell文件检测方法、系统、电子设备及计算机可读存储介质,可以实现提高检测效率、检测精度以及泛用性的技术效果。
第一方面,本申请实施例提供了一种webshell文件检测方法,包括:
获取包括webshell文件的主机文件数据、与所述主机文件数据对应的流量数据;
通过NDR单元对所述流量数据进行检测,生成NDR检测信息;
将所述NDR检测信息发送至EDR单元;
通过所述EDR单元对所述主机文件数据进行检测,生成EDR检测信息;
将所述EDR检测信息发送至所述NDR单元;
根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果。
在上述实现过程中,该webshell文件检测方法通过结合EDR和NDR双方的优势特点,从更全面的角度实现对webshell文件的检测,增加了检测的全面性;通过EDR、NDR形成二次检测,增加了检测准确性,尽可能多的避免误报、漏检的情况发生;从而,该webshell文件检测方法避免了单一模式的webshell检测方式,检测更精准更全面,降低漏检和误报概率,可以实现提高检测效率、检测精度以及泛用性的技术效果。
进一步地,所述通过NDR单元对所述流量数据进行检测,生成NDR检测信息的步骤,包括:
根据所述流量数据获取提取请求头数据和请求体特征数据;
通过所述NDR单元对所述请求头数据和所述请求体特征数据进行匹配,生成所述NDR检测信息,所述NDR检测信息包括对所述webshell文件的第一命中信息。
在上述实现过程中,通过NDR单元定义的相关规则对请求头数据和请求体特征数据进行匹配,命中则认为是webshell文件(直接命中则认为是恶意webshell文件),单一命中信息包括对流量数据匹配的具体结果,即具体的命中结果。
进一步地,所述通过所述EDR单元对所述文件数据进行检测,生成EDR检测信息的步骤,包括:
根据所述主机文件数据获取特征内容和特征代码段;
通过所述EDR单元对所述特征内容和所述特征代码段提取进行匹配,生成所述EDR检测信息,所述EDR检测信息包括对所述webshell文件的第二命中信息。
在上述实现过程中,通过提取主机文件数据中的特征内容以及特征代码段,并通过EDR单元自定义的规则进行匹配,命中则认为检测恶意webshell文件;单二命中信息包括对主机文件数据匹配的具体结果,即具体的命中结果。
进一步地,在所述根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果的步骤之后,还包括:
在所述第一命中信息为恶意且所述第二命中信息为非恶意时,将所述主机文件数据上传至服务端进行检测,所述服务端搭建虚拟环境以模拟运行所述webshell文件中的部分代码,生成代码执行信息;
根据所述NDR检测信息、EDR检测信息和所述代码执行信息生成服务端检测结果。
在上述实现过程中,通过服务端实现对webshell文件的再次检测,服务端搭建了虚拟环境可模拟运行webshell文件中的部分代码,根据NDR检测信息、EDR检测信息和代码执行信息综合判断,提高检测精度。
进一步地,在所述将所述NDR检测信息发送至EDR单元的步骤之后,还包括:
通过NDR单元将历史流量日志信息发送至所述EDR单元。
在上述实现过程中,联动EDR单元和NDR单元,NDR单元提供网络流量相关的日志信息,如来源IP、域名、主机地址、以及在流量中的行为日志给EDR单元。
进一步地,在所述将所述EDR检测信息发送至所述NDR单元的步骤之后,还包括;
通过EDR单元将文件历史日志信息和所述webshell文件发送至所述NDR单元。
在上述实现过程中,联动EDR单元和NDR单元,EDR单元可将本次检测的告警信息以及文件相关的历史日志提供给NDR单元。
第二方面,本申请实施例提供了一种webshell文件检测系统,包括:
获取模块,用于获取包括webshell文件的主机文件数据、与所述主机文件数据对应的流量数据;
NDR检测模块,用于通过NDR单元对所述流量数据进行检测,生成NDR检测信息;
发送模块,用于将所述NDR检测信息发送至EDR单元;
EDR检测模块,用于通过所述EDR单元对所述主机文件数据进行检测,生成EDR检测信息;
所述发送模块还用于将所述EDR检测信息发送至所述NDR单元;
检测结果模块,用于根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果。
进一步地,所述NDR检测模块包括:
流量特征获取单元,用于根据所述流量数据获取提取请求头数据和请求体特征数据;
NDR检测单元,用于通过所述NDR单元对所述请求头数据和所述请求体特征数据进行匹配,生成所述NDR检测信息,所述NDR检测信息包括对所述webshell文件的第一命中信息。
进一步地,所述EDR检测模块包括:
文件特征获取单元,用于根据所述主机文件数据获取特征内容和特征代码段;
EDR检测单元,用于通过所述EDR单元对所述特征内容和所述特征代码段提取进行匹配,生成所述EDR检测信息,所述EDR检测信息包括对所述webshell文件的第二命中信息。
进一步地,所述webshell文件检测系统还包括:
上传模块,用于在所述第一命中信息为恶意且所述第二命中信息为非恶意时,将所述主机文件数据上传至服务端进行检测,所述服务端搭建虚拟环境以模拟运行所述webshell文件中的部分代码,生成代码执行信息;
服务端检测模块,用于根据所述NDR检测信息、EDR检测信息和所述代码执行信息生成服务端检测结果。
进一步地,所述发送模块还用于通过NDR单元将历史流量日志信息发送至所述EDR单元。
进一步地,所述发送模块还用于通过EDR单元将文件历史日志信息和所述webshell文件发送至所述NDR单元。
第三方面,本申请实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
第四方面,本申请实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。
第五方面,本申请实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
本申请公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本申请公开的上述技术即可得知。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种webshell文件检测方法的流程示意图;
图2为本申请实施例提供的另一种webshell文件检测方法的流程示意图;
图3为本申请实施例提供的webshell文件检测系统的结构框图;
图4为本申请实施例提供的一种电子设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
本申请实施例提供了一种webshell文件检测方法、系统、电子设备及计算机可读存储介质,可以应用于webshell文件检测中;该webshell文件检测方法通过结合EDR和NDR双方的优势特点,从更全面的角度实现对webshell文件的检测,增加了检测的全面性;通过EDR、NDR形成二次检测,增加了检测准确性,尽可能多的避免误报、漏检的情况发生;从而,该webshell文件检测方法避免了单一模式的webshell检测方式,检测更精准更全面,降低漏检和误报概率,可以实现提高检测效率、检测精度以及泛用性的技术效果。
示例性地,网络监测响应(NDR,Network Detection Response)工具以网络为监控维度,保障主机的联网安全。NDR通过对网络流量和网络行为的监控,结合联网平台中的网络威胁情报,发现主机中的异常联网行为,并进行联网行为的管控。
示例性地,端点检测与响应(EDR,Endpoint Detection and Response)通过云端威胁情报、机器学习、异常行为分析、攻击指示器等方式,主动发现来自外部或内部的安全威胁,并进行自动化的阻止、取证、补救和溯源,从而有效对端点进行防护;其中,端点指的是台式机、服务器、移动设备和嵌人式设备等,攻击者往往首先利用目标网络中的脆弱端点建立桥头堡,再通过进一步的漏洞利用来构筑长期驻留条件,最终迈向既定目标。
传统方案中NDR技术、EDR技术分开使用,或简单叠加使用进行二次检测;其中NDR基于流量方式检测来识别webshell文件,EDR基于文件本身检测webshell文件,两者都只是单纯的检测,对于检测结果没有加以利用。NDR针对流量方式检测来识别webshell文件,但是对于通过非流量方式的webshell上传行为无法识别到;EDR是根据主机文件本身的方式检测webshell,以主机上已的文件为核心,对于文件的整个流转过程或流量中的溯源信息是有缺失的;NDR和EDR技术双方间数据各自分离,无法互补缺失信息,不利于溯源和后期遇到类似的操作及时作出反应。
需要注意的是,本申请实施例的主机需同时安装EDR和NDR两款产品,使得主机处于流量和文件的双重检测之下,从而进一步地保证主机的安全。
请参见图1,图1为本申请实施例提供的一种webshell文件检测方法的流程示意图,该webshell文件检测方法包括如下步骤:
S100:获取包括webshell文件的主机文件数据、与主机文件数据对应的流量数据。
示例性地,攻击者可能通过流量形式或非流量形式的方式上传webshell文件到主机;若是通过流量形式的方式上传webshell文件到主机,则可以获取包括webshell文件的主机文件数据、与主机文件数据对应的流量数据;若是通过非流量形式的方式上传webshell文件到主机(如通过移动硬盘、U盘等移动存储装置),则可以包括webshell文件的主机文件数据(流量数据这一项置空)。
S200:通过NDR单元对流量数据进行检测,生成NDR检测信息。
示例性地,NDR单元对流量数据进行检测/监控,可通过NDR单元定义的相关规则做匹配,检测流量数据中是否包括webshell文件、或直接识别为恶意webshell文件;换言之,根据NDR单元定义的相关规则对流量数据进行匹配,命中则认为是webshell文件,或直接可命则认为是恶意webshell文件。NDR检测信息包括上述的对流量数据的相关检测信息。
S300:将NDR检测信息发送至EDR单元。
示例性地,NDR联动EDR,NDR检测信息可包括提供网络流量相关的日志信息(网络流量日志信息),如来源IP、域名、主机地址、以及在流量中的行为日志。
S400:通过EDR单元对主机文件数据进行检测,生成EDR检测信息。
示例性地,EDR单元通过收到的主机文件数据(相关主机和文件信息)后,通过主机文件数据中的主机IP信息确定主机,解析主机文件数据中的URL识别具体的文件路径后即可开始进行webshell检测;通过EDR单元自定义的规则对主机文件数据进行匹配,命中则认为该主机文件数据包括恶意webshell文件;根据匹配结果生成EDR检测信息。
S500:将EDR检测信息发送至NDR单元。
示例性地,实现EDR单元和NDR单元的联动;若EDR检测信息认为该主机文件数据包括恶意webshell文件,EDR单元可将EDR检测信息中的告警信息以及文件相关的历史日志提供给NDR单元。
需要注意的是,S200-S300、S400-S500两组步骤可互换,本申请实施例不作限定;例如,具体执行步骤可以是S200→S300→S400→S500,也可以是S400→S500→S200→S300,不影响最终的webshell检测结果。
S600:根据NDR检测信息和EDR检测信息生成webshell检测结果。
示例性地,EDR单元和NDR单元可实时交互检测信息,同时互相提供对方缺失部分的日志信息、以及各自的溯源信息,NDR单元获得缺失的文件告警信息和恶意文件内容等信息,EDR单元获得缺失的该文件在整个流量过程中的日志信息和用户行为等,一方面互补双方日志记录,方便后期对相同用户用为或形同文件做分析,同时可用这些数据丰富公司或产品自身的情报库,如当发现新的黑客团伙时新增团伙信息,或者对已有黑客历史行为信息进行更新等。从而,根据NDR检测信息和EDR检测信息生成的webshell检测结果,检测效率及检测精度更高;与单一模式的EDR或NDR检测相比,泛用性更高。
在一些实施场景中,当通过非流量方式上传webshell文件到主机时,EDR单元检测到主机有新增文件或文件变更,触发webshell检测;若EDR检测信息为恶意webshell文件时,同时将告警信息和文件历史日志以及恶意webshell文件本身同步给NDR单元,NDR单元收到数据后提取其中需要的信息,例如用户信息、文件信息,可丰富NDR单元的日志,可查询文件历史日志信息,分析该用户的历史行为,进而溯源整个攻击过程;同时NDR单元同步给EDR单元该攻击者来源的历史流量日志信息,丰富EDR单元的日志库数据,以便于EDR在后期发现类似恶意行为及时进行防御措施,如IP封锁、用户封禁、文件隔离等操作。
请参见图2,图2为本申请实施例提供的另一种webshell文件检测方法的流程示意图。
示例性地,S200:通过NDR单元对流量数据进行检测,生成NDR检测信息的步骤,包括:
S210:根据流量数据获取提取请求头数据和请求体特征数据;
S220:通过NDR单元对请求头数据和请求体特征数据进行匹配,生成NDR检测信息,NDR检测信息包括对webshell文件的第一命中信息。
示例性地,通过NDR单元定义的相关规则对请求头数据和请求体特征数据进行匹配,命中则认为是webshell文件(直接命中则认为是恶意webshell文件),单一命中信息包括对流量数据匹配的具体结果,即具体的命中结果。
示例性地,S400:通过EDR单元对文件数据进行检测,生成EDR检测信息的步骤,包括:
S410:根据主机文件数据获取特征内容和特征代码段;
S420:通过EDR单元对特征内容和特征代码段提取进行匹配,生成EDR检测信息,EDR检测信息包括对webshell文件的第二命中信息。
示例性地,通过提取主机文件数据中的特征内容以及特征代码段,并通过EDR单元自定义的规则进行匹配,命中则认为检测恶意webshell文件;单二命中信息包括对主机文件数据匹配的具体结果,即具体的命中结果。
示例性地,在S600:根据NDR检测信息和EDR检测信息生成webshell检测结果的步骤之后,还包括:
S610:在第一命中信息为恶意且第二命中信息为非恶意时,将主机文件数据上传至服务端进行检测,服务端搭建虚拟环境以模拟运行webshell文件中的部分代码,生成代码执行信息;
S620:根据NDR检测信息、EDR检测信息和代码执行信息生成服务端检测结果。
示例性地,通过服务端实现对webshell文件的再次检测,服务端搭建了虚拟环境可模拟运行webshell文件中的部分代码,根据NDR检测信息、EDR检测信息和代码执行信息综合判断,提高检测精度。
在一些实施场景中,若EDR检测信息未检测出恶意webshell文件、但EDR单元收到的NDR检测信息中包括恶意webshell文件时,将主机文件数据上传服务端再次进行检测,服务端除了根据文件中的特征内容进行自定义的规则匹配,同时服务端搭建虚拟环境来模拟运行该主机文件数据中 的webshell文件中的部分代码,通过代码执行效果判断是否为恶意webshell文件,同时可结合收到的该文件的网络流量相关的行为日志,提取来源IP、用户信息等,查询EDR单元的历史日志信息库进行分析,若仍识别为安全,则证明此次为NDR单元误报,返回安全提示信息和文件相关历史日志给NDR单元,当检测出恶意时,将本次检测的告警信息以及文件相关的历史日志提供给NDR单元。
示例性地,在S300:将NDR检测信息发送至EDR单元的步骤之后,还包括:
S310:通过NDR单元将历史流量日志信息发送至EDR单元。
示例性地,联动EDR单元和NDR单元,NDR单元提供网络流量相关的日志信息,如来源IP、域名、主机地址、以及在流量中的行为日志给EDR单元。
示例性地,在S500:将EDR检测信息发送至NDR单元的步骤之后,还包括;
S510:通过EDR单元将文件历史日志信息和webshell文件发送至NDR单元。
示例性地,联动EDR单元和NDR单元,EDR单元可将本次检测的告警信息以及文件相关的历史日志提供给NDR单元。
示例性地,通过上述不步骤,联动EDR单元、NDR单元的日志库和情报库,丰富数据,可在后期对类似行为及时作出防御措施。
在一些实施方式中,EDR单元和NDR单元可双向实时通信,互补双方漏检或缺失的日志信息;EDR单元和NDR单元可互相反馈实时结果,提供更丰富的整个溯源日志数据。
示例性地,本申请实施例提供的webshell文件检测方法针对不同的实施场景时,具体应用步骤如下:
(1)当攻击者通过流量的方式上传webshell文件到主机时,NDR单元可监控到这部分的行为,NDR通过流量层面检测webshell文件(NDR检测信息),当检测到webshell文件时联动EDR单元,双方通过不同的方式检测webshell文件,当NDR检测信息和EDR检测信息中的检测结果同为恶意或者同为安全时,判定该webshell文件为恶意或安全;当一方检测恶意,一方检测安全时,以恶意为主,以此形成二次检测,便于产生更加精准的检测结果,降低误检和漏检的概率;
(2)当攻击者通过流量形式上传webshell到主机,但由于通过一些特殊途径绕过NDR单元的监控时,EDR单元检测到主机新增文件或文件变化,主动触发检测,若检测该主机文件数据包括恶意webshell文件时,EDR检测信息中生成告警信息,告警信息包括具体告警内容、文件参数、历史日志信息等;将EDR检测信息提供给NDR单元,NDR单元收到其中的告警信息后通过该webshell文件的相关信息,溯源来源以及在流量中产生的行为进行分析,识别该攻击者的整条攻击链路情况,同时将相关溯源信息,如攻击者IP、域名、网络信息、路由信息等反馈EDR单元;
(3)当攻击者通过非流量形式的方式上传webshell文件到主机,EDR单元检测到主机新增文件或文件变化,主动触发检测,生成EDR检测信息;若EDR检测信息为恶意webshell文件,则将该webs hell文件本身的告警信息如:具体告警内容、文件参数、历史日志信息等提供给NDR单元,NDR收到告警信息后对该文件源是否在历史记录中出现过以及该攻击者历史行为进行分析,可将分析结果,如用户信息,文件历史网络日志、行为日志等反馈EDR单元;
示例性地,本申请实施例提供的webshell文件检测方法,将原本相互独立的基于流量行为相关溯源数据和基于文件或用户行为的相关溯源数据相互结合,以分析出更为完整的攻击者的整个攻击模式,以便于后期对相关操作及时作出应对措施,更高效的保护主机安全;同时该部分数据还可以加入到产品所使用的黑客团伙的情报库中,丰富情报库的信息,提供给其它产品更多的便利。
在一些实施场景中,本申请实施例提供的webshell文件检测方法应用于主机中,主机部署了EDR单元和NDR单元,保证双方的正常运行;其具体处理步骤示例如下:
(1)攻击者通过流量方式上传webshell到主机,NDR单元识别到该攻击者行为上传webshell文件,当检测为恶意webshell文件时,实时联动EDR单元来对该文件进行二次检测,同时向EDR单元提供该webshell文件在流量中的相关网络日志信息;
(2)EDR单元收到NDR检测信息后,通过IP信息锁定主机,通过对URL路径解析定位文件路径,对该welshell文件进行检测,若检测为恶意,则认为该文件确实为恶意文件,将文件告警和恶意代码段提供给NDR单元,同时根据NDR单元提供的相关日志和自身的历史日志,对该webshell文件的来源用户进行分析,若存在历史恶意行为,则在后期相同用户操作时直接封锁账号,若为新用户的操作,则保存日志和情报库中,为后期再次检测出时提供分析依据;若EDR检测信息为安全,则上传服务端再次进行webshell检测,若检测为恶意则判定恶意,若检测为安全则同步NDR,本次检测为NDR端误报;
(3)攻击者通过非流量方式上传webshell到主机,或仍以流量方式但未被NDR单元识别到该行为,则EDR单元发现该文件后会主动检测该webshell文件,若检出为恶意,则将告警信息以及恶意代码段实时同步给NDR单元,NDR单元将根据文件信息和用户信息,溯源历史流量中的日志插搜索对应IP、域名等信息,可在后期对该来源文件数据进行重点监控;同时将溯源到的对应历史流量日志同步给EDR单元,EDR单元端收到日志后进行分析,可在后期对该IP的连接进行封锁等相关操作;
(4)若EDR检测信息检出为安全,则上传服务端再次进行检测,仍为安全则不做操作,若为恶意则同上操作;
(5)EDR单元和NDR单元的每次webshell检测都保证实时双向通信,同步双方的检测结果,以达到对恶意webshell检测更全面和精准的效果,避免误报和漏检;实时互补确实日志信息,方便溯源,同时能将每一次的检测结果丰富双方情报库数据,以达到在后期对类似操作及时作出防御行为,进一步保证用户主机安全。
请参见图3,图3为本申请实施例提供的webshell文件检测系统的结构框图,该webshell文件检测系统包括:
获取模块100,用于获取包括webshell文件的主机文件数据、与主机文件数据对应的流量数据;
NDR检测模块200,用于通过NDR单元对流量数据进行检测,生成NDR检测信息;
发送模块300,用于将NDR检测信息发送至EDR单元;
EDR检测模块400,用于通过EDR单元对主机文件数据进行检测,生成EDR检测信息;
发送模块还用于将EDR检测信息发送至NDR单元;
检测结果模块500,用于根据NDR检测信息和EDR检测信息生成webshell检测结果。
示例性地,NDR检测模块200包括:
流量特征获取单元,用于根据流量数据获取提取请求头数据和请求体特征数据;
NDR检测单元,用于通过NDR单元对请求头数据和请求体特征数据进行匹配,生成NDR检测信息,NDR检测信息包括对webshell文件的第一命中信息。
示例性地,EDR检测模块400包括:
文件特征获取单元,用于根据主机文件数据获取特征内容和特征代码段;
EDR检测单元,用于通过EDR单元对特征内容和特征代码段提取进行匹配,生成EDR检测信息,EDR检测信息包括对webshell文件的第二命中信息。
示例性地,webshell文件检测系统还包括:
上传模块,用于在第一命中信息为恶意且第二命中信息为非恶意时,将主机文件数据上传至服务端进行检测,服务端搭建虚拟环境以模拟运行webshell文件中的部分代码,生成代码执行信息;
服务端检测模块,用于根据NDR检测信息、EDR检测信息和代码执行信息生成服务端检测结果。
示例性地,发送模块还用于通过NDR单元将历史流量日志信息发送至EDR单元。
示例性地,发送模块还用于通过EDR单元将文件历史日志信息和webshell文件发送至NDR单元。
应理解,图3所述的webshell文件检测系统与图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 Only Memory),可编程只读存储器(PROM ,Programmable Read-OnlyMemory),可擦除只读存储器(EPROM ,Erasable Programmable Read-Only Memory),电可擦除只读存储器(EEPROM ,Electric Erasable Programmable Read-Only Memory)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备可以执行上述图1至图2方法实施例涉及的各个步骤。
可选地,电子设备还可以包括存储控制器、输入输出单元。
所述存储器530、存储控制器、处理器510、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。
输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
可以理解,图4所示的结构仅为示意,所述电子设备还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
本申请实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
本申请还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (8)
1.一种webshell文件检测方法,其特征在于,包括:
获取包括webshell文件的主机文件数据、与所述主机文件数据对应的流量数据;
通过NDR单元对所述流量数据进行检测,生成NDR检测信息;
将所述NDR检测信息发送至EDR单元;
通过所述EDR单元对所述主机文件数据进行检测,生成EDR检测信息;
将所述EDR检测信息发送至所述NDR单元;
根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果;
所述通过NDR单元对所述流量数据进行检测,生成NDR检测信息的步骤,包括:
根据所述流量数据获取提取请求头数据和请求体特征数据;
通过所述NDR单元对所述请求头数据和所述请求体特征数据进行匹配,生成所述NDR检测信息,所述NDR检测信息包括对所述webshell文件的第一命中信息。
2.根据权利要求1所述的webshell文件检测方法,其特征在于,所述通过所述EDR单元对所述文件数据进行检测,生成EDR检测信息的步骤,包括:
根据所述主机文件数据获取特征内容和特征代码段;
通过所述EDR单元对所述特征内容和所述特征代码段提取进行匹配,生成所述EDR检测信息,所述EDR检测信息包括对所述webshell文件的第二命中信息。
3.根据权利要求2所述的webshell文件检测方法,其特征在于,在所述根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果的步骤之后,还包括:
在所述第一命中信息为恶意且所述第二命中信息为非恶意时,将所述主机文件数据上传至服务端进行检测,所述服务端搭建虚拟环境以模拟运行所述webshell文件中的部分代码,生成代码执行信息;
根据所述NDR检测信息、EDR检测信息和所述代码执行信息生成服务端检测结果。
4.根据权利要求1所述的webshell文件检测方法,其特征在于,在所述将所述NDR检测信息发送至EDR单元的步骤之后,还包括:
通过NDR单元将历史流量日志信息发送至所述EDR单元。
5.根据权利要求1所述的webshell文件检测方法,其特征在于,在所述将所述EDR检测信息发送至所述NDR单元的步骤之后,还包括;
通过EDR单元将文件历史日志信息和所述webshell文件发送至所述NDR单元。
6.一种webshell文件检测系统,其特征在于,包括:
获取模块,用于获取包括webshell文件的主机文件数据、与所述主机文件数据对应的流量数据;
NDR检测模块,用于通过NDR单元对所述流量数据进行检测,生成NDR检测信息;
发送模块,用于将所述NDR检测信息发送至EDR单元;
EDR检测模块,用于通过所述EDR单元对所述主机文件数据进行检测,生成EDR检测信息;
所述发送模块还用于将所述EDR检测信息发送至所述NDR单元;
检测结果模块,用于根据所述NDR检测信息和所述EDR检测信息生成webshell检测结果;
所述NDR检测模块包括:
特征获取单元,用于根据所述流量数据获取提取请求头数据和请求体特征数据;
NDR检测单元,用于通过所述NDR单元对所述请求头数据和所述请求体特征数据进行匹配,生成所述NDR检测信息,所述NDR检测信息包括对所述webshell文件的第一命中信息。
7.一种电子设备,其特征在于,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的webshell文件检测方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1至5任一项所述的webshell文件检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210002623.7A CN114024773B (zh) | 2022-01-05 | 2022-01-05 | 一种webshell文件检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210002623.7A CN114024773B (zh) | 2022-01-05 | 2022-01-05 | 一种webshell文件检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114024773A CN114024773A (zh) | 2022-02-08 |
CN114024773B true CN114024773B (zh) | 2022-03-29 |
Family
ID=80069339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210002623.7A Active CN114024773B (zh) | 2022-01-05 | 2022-01-05 | 一种webshell文件检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114024773B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115174197B (zh) * | 2022-07-01 | 2024-03-29 | 阿里云计算有限公司 | webshell文件的检测方法、系统、电子设备及计算机存储介质 |
CN116248413B (zh) * | 2023-05-09 | 2023-07-28 | 山东云天安全技术有限公司 | 一种webshell文件的流量检测方法、设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486334A (zh) * | 2021-05-25 | 2021-10-08 | 新华三信息安全技术有限公司 | 网络攻击预测方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101554633B1 (ko) * | 2014-03-04 | 2015-09-21 | 한국전자통신연구원 | 악성 코드 검출 장치 및 그 방법 |
CN111786964B (zh) * | 2020-06-12 | 2022-09-30 | 深信服科技股份有限公司 | 网络安全检测方法、终端及网络安全设备 |
CN113779574B (zh) * | 2021-08-09 | 2024-02-27 | 浙江工业大学 | 一种基于上下文行为分析的apt检测方法 |
-
2022
- 2022-01-05 CN CN202210002623.7A patent/CN114024773B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486334A (zh) * | 2021-05-25 | 2021-10-08 | 新华三信息安全技术有限公司 | 网络攻击预测方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114024773A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110719291B (zh) | 一种基于威胁情报的网络威胁识别方法及识别系统 | |
US9027121B2 (en) | Method and system for creating a record for one or more computer security incidents | |
CN114024773B (zh) | 一种webshell文件检测方法及系统 | |
KR100894331B1 (ko) | 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의침입 탐지 시스템 및 방법 | |
US10505986B1 (en) | Sensor based rules for responding to malicious activity | |
CN112787992A (zh) | 一种敏感数据的检测与防护的方法、装置、设备和介质 | |
CN110598411A (zh) | 敏感信息检测方法、装置、存储介质和计算机设备 | |
EP3566166B1 (en) | Management of security vulnerabilities | |
CN107896219B (zh) | 一种网站脆弱性的检测方法、系统及相关装置 | |
CN112003838A (zh) | 网络威胁的检测方法、装置、电子装置和存储介质 | |
CN101908116B (zh) | 一种计算机防护系统及方法 | |
CN111104579A (zh) | 一种公网资产的识别方法、装置及存储介质 | |
CN107733699B (zh) | 互联网资产安全管理方法、系统、设备及可读存储介质 | |
KR20060117693A (ko) | 웹 보안방법 및 그 장치 | |
CN112131577A (zh) | 一种漏洞检测方法、装置、设备及计算机可读存储介质 | |
CN110868403B (zh) | 一种识别高级持续性攻击apt的方法及设备 | |
CN112131571B (zh) | 威胁溯源方法及相关设备 | |
CN112887341A (zh) | 一种外部威胁监控方法 | |
CN114006778A (zh) | 一种威胁情报的识别方法、装置、电子设备及存储介质 | |
CN113411295A (zh) | 基于角色的访问控制态势感知防御方法及系统 | |
CN113411297A (zh) | 基于属性访问控制的态势感知防御方法及系统 | |
CN115361235A (zh) | 一种网络安全检测的方法、设备、装置、电子设备及介质 | |
CN113886829B (zh) | 一种失陷主机检测方法、装置、电子设备及存储介质 | |
CN114024775A (zh) | 一种基于edr和ndr的主机失陷检测方法及系统 | |
CN117527412A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |