CN113239352A - 一种Webshell检测方法及系统 - Google Patents

一种Webshell检测方法及系统 Download PDF

Info

Publication number
CN113239352A
CN113239352A CN202110367559.8A CN202110367559A CN113239352A CN 113239352 A CN113239352 A CN 113239352A CN 202110367559 A CN202110367559 A CN 202110367559A CN 113239352 A CN113239352 A CN 113239352A
Authority
CN
China
Prior art keywords
webshell
file
statistical
characteristic
detection result
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
CN202110367559.8A
Other languages
English (en)
Other versions
CN113239352B (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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN202110367559.8A priority Critical patent/CN113239352B/zh
Publication of CN113239352A publication Critical patent/CN113239352A/zh
Application granted granted Critical
Publication of CN113239352B publication Critical patent/CN113239352B/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
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Virology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种Webshell检测方法及系统,包括:获取源码文件;计算源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;获取统计学特征表示;分别将源码文件的模糊哈希值及数据流语法特征与Webshell特征库对比,得到同源相似度检测结果及数据流语法特征检测结果;分别将统计学特征表示及语法结构特征,输入统计学文件特征检测模型及语法结构特征检测模型,得到统计学文件特征检测结果及语法结构特征检测结果;根据上述检测结果,获取待检测网站文件的Webshell检测结果。本发明能够有效地检测出网站及APT攻击中的Webshell样本,检测效率高,可检测新型、变种Webshell,提供了较好的用户体验,能够在常规站点检查中达到有效检测Webshell的效果。

Description

一种Webshell检测方法及系统
技术领域
本发明涉及计算机网络安全和大数据领域,具体涉及一种Webshell检测方法及系统。
背景技术
随着互联网技术的飞速发展,网络与人们的生活联系日益紧密,网络空间安全形势日益复杂。Web应用程序的安全性受到了越来越多的关注,服务端安全问题日益严峻,甚至严重威胁到网络服务的正常运行。因此及时发现并检测服务器的后门,保证服务端安全至关重要。
网站服务器频繁被植入后门,已经成为安全人员所面临的重要问题,虽然随着技术的发展,越来越多的安全设备及产品被应用于保护Web服务,但总会有漏网之鱼的存在。当网站漏洞被攻击者发现利用后,攻击者通常会进一步地控制网站服务器并维持对服务器的访问权限,因此会上传可利用的Webshell网站后门。
在Web攻击和高级持续性威胁手段中,Webshell可以实现外部人员对于系统部分权限的掌控。Webshell是基于现有的Web服务实现远程对服务器操作的一段程序代码,用户可以通过浏览器或客户端软件远程访问该页面。在网络攻击生命周期中,Webshell常被看作是一种在被攻击Web服务器上运行的远程访问木马程序,可以突破系统的内部边界,完成对网站的持续性控制。由于它是一段由服务端动态脚本语言编写的命令执行环境,较为容易穿过防火墙等从外部和流量层面检测入侵的安全产品。因此,能够深入服务器内部,以最准确、最及时的手段和方法异步分析网站源码侧的Webshell后门,获知网站服务器的安全状态,成为当前亟待解决的问题。
发明内容
针对上述问题,本发明提出了一种Webshell检测方法及系统,通过获取网站文件,分析并检测网站源码中存在的Webshell。
为达到上述目的,本发明采取的具体技术方案是:
一种Webshell检测方法,其步骤包括:
1)利用云端Webshell特征库,更新客户端Webshell特征库,其中云端Webshell特征库包括:若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
2)收集若干正常样本,获取正常样本的统计学特征,并利用Webshell样本文件与正常样本的统计学特征进行机器学习训练,得到统计学文件特征检测模型,利用Webshell样本文件与正常样本的语法结构特征进行深度学习训练,得到语法结构特征检测模型;
3)对待检测网站文件进行源码获取,得到源码文件,并获取源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并对统计学特征向量化,得到统计学特征表示;
4)分别将源码文件的模糊哈希值及数据流语法特征,与本地Webshell特征库中各Webshell样本文件的模糊哈希值及数据流语法特征进行对比,得到同源相似度检测结果及数据流语法特征检测结果;
5)分别将统计学特征表示及语法结构特征,输入统计学文件特征检测模型及语法结构特征检测模型,得到统计学文件特征检测结果及语法结构特征检测结果;
6)根据同源相似度检测结果、数据流语法特征检测结果、统计学文件特征检测结果及语法结构特征检测结果,得到待检测网站文件的Webshell检测结果。
进一步地,得到源码文件后,提取源码文件的属性信息,用以对检测出的Webshell文件进行集中分析与确认。
进一步地,所述属性信息包括:名称、源码语言类型、路径、大小和上次修改时间。
进一步地,通过模糊哈希算法,获取源码文件的模糊哈希值。
进一步地,数据流语法特征包括:数据流传播过程中的可控资源操作和Webshell特有特征。
进一步地,Webshell特有特征包括:Webshell名称、设定的固有变量名、Webshell开发者、攻击者及其组织的昵称、邮件地址信息和网站URL。
进一步地,设定的固有变量名包括:c99sh_surl。
进一步地,统计学特征包括:信息熵、重合指数、最长单词、压缩比和Webshell特有特征。
进一步地,语法结构特征包括:含有上下文语料的词袋。
进一步地,通过以下步骤得到Webshell样本文件的语法结构特征:
1)使用N-Gram算法,分别提取Webshell样本文件的上下文语料特征;
2)将上下文语料特征输入TF-IDF模型,得到Webshell样本文件的语法结构特征。
进一步地,机器学习的方法包括:随机森林方法。
进一步地,通过以下步骤得到语法结构特征检测模型:
1)将各Webshell样本文件与正常样本的语法结构特征,迭代输入循环神经网络算法中进行监督学习,生成初步的语法结构特征检测模型;
2)将测试数据输入初步的语法结构特征检测模型,对循环神经网络算法的参数优化,得到语法结构特征检测模型。
进一步地,通过以下步骤更新云端Webshell特征库:
1)将Webshell检测结果中的Webshell文件输入客户端Webshell特征库;
2)客户端Webshell特征库根据Webshell样本文件及Webshell检测结果,判断该源码文件是否为新型Webshell文件或变种Webshell文件;
3)若为新型Webshell文件或变种Webshell文件,将该源码文件上传至云端;
4)云端计算该源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并与云端Webshell特征库进行对比及计算,判断该源码文件是否为新型Webshell文件或变种Webshell文件;
5)若不是新型Webshell文件或变种Webshell文件,利用云端Webshell特征库定期更新客户端Webshell特征库;若是新型Webshell文件或变种Webshell文件,则将该源码文件及相应的模糊哈希值、数据流语法特征、统计学特征语法结构特征,输入云端Webshell特征库,并定期更新客户端Webshell特征库。
一种Webshell检测系统,包括:
云端Webshell特征库,用以更新客户端Webshell特征库,其中云端Webshell特征库包括:若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
客户端Webshell特征库,用以向Webshell检测模块提供若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
Webshell检测模块,用以收集若干正常样本,获取正常样本的统计学特征,并利用Webshell样本文件与正常样本的统计学特征进行机器学习训练,得到统计学文件特征检测模型,利用Webshell样本文件与正常样本的语法结构特征进行深度学习训练,得到语法结构特征检测模型;对待检测网站文件进行源码获取,得到源码文件,并获取源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并对统计学特征向量化,得到统计学特征表示;分别将源码文件的模糊哈希值及数据流语法特征,与本地Webshell特征库中各Webshell样本文件的模糊哈希值及数据流语法特征进行对比,得到同源相似度检测结果及数据流语法特征检测结果;分别将统计学特征表示及语法结构特征,输入统计学文件特征检测模型及语法结构特征检测模型,得到统计学文件特征检测结果及语法结构特征检测结果;根据同源相似度检测结果、数据流语法特征检测结果、统计学文件特征检测结果及语法结构特征检测结果,得到待检测网站文件的Webshell检测结果。
本发明的积极效果如下:
由于Webshell入侵与检测技术的飞速发展,传统Webshell检测方法中的攻击片段匹配已经无法应对日益复杂的新型、变种Webshell检测需求。本发明针对这一问题,提出了一种多维建模的Webshell检测方法,覆盖了非入侵式检测中可以使用的大部分检测模型,该方法能够有效地检测出网站及APT攻击中的Webshell样本,提升了入侵检测过程中Webshell的检测效率,达到了在站点常规检查中有效检测Webshell的效果。
附图说明
图1是本发明方案的系统整体流程图。
图2是同源相似度检测算法流程图。
图3是数据流语法特征检测算法流程图。
图4是统计学文件特征检测算法流程图。
图5是深度学习检测算法流程图。
图6是云分析模块流程图。
图中100、200、300、400、210、220、230、240、250、260、310、320、330、340、350、410、420、430、440、450:步骤。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的目的、特征和优点能够更加明显易懂,下面结合附图和实施例对本发明作进一步详细说明。
本实施例提供一种Webshell的检测方法,如图1所示,具体包括以下步骤:
步骤100:获取待检测的网站文件,递归解析网站文件内容并对其进行源码收集,得到待检测源码文件,分别提取源码文件的名称、源码语言类型、路径、大小及上次修改时间等属性信息,以供网站管理人员对检测出的Webshell进行集中分析、确认。
步骤200:启发式检测模块对经过预处理的源码文件进行Webshell检测,启发式检测模块包括同源相似度检测算法、数据流语法特征检测算法以及统计学文件特征检测算法。通过多维Webshell检测算法建模,分别确定检测模型的阈值、所用特征库以及属性特征信息,完成启发式检测模块构建与对待检测源码文件的检测分析。
步骤300:深度学习模块通过提取源码文件的语法结构特征并进行向量化,随后输入到使用经大量样本驱动的循环神经网络检测算法生成的检测模型中,由检测模型对待检测的网站源码进行Webshell检测、分析。其中,语法结构特征指的是包含有上下文语料的词袋。
步骤400:云分析模块包括:Webshell特征库与云分析模块。
云端Webshell特征库指的是系统检测上传的网站文件时不同算法建模使用的Webshell特征库。在系统建模过程中,收集的Webshell训练样本构成了初始Webshell特征库,当检测模块检测出新型、变种Webshell后,系统会通过与Webshell特征库的对比分析,确认新型Webshell特征,并将其添加进特征库。
云分析模块包括云端Webshell特征库和协同客户端特征库上传Webshell的处理过程。客户端完成请求的Webshell检测过程后,会将检测到的新型、变种Webshell异步上传到云分析模块进行确认。云分析模块将上传的文件与已有云端Webshell特征库进行对比、识别,完成特征库的同步过程。
图2所示为同源相似度检测算法处理流程图,具体说明如下:
步骤210:在同源相似度算法建模过程中,源码文件输入模型后,算法首先计算该源码文件的模糊哈希值。
步骤220,通过计算待检测源码文件的模糊哈希值,将该值与Webshell样本库中的每一个文件的模糊哈希值进行对比计算,表示源码文件与Webshell样本库的同源相似度。计算出的数值越高,两个文件内容的相似度越高。当相似度达到一定阈值,即可判断其为Webshell。
图3所示为数据流语法特征检测算法流程图,具体如下:
步骤230:在数据流语法特征检测算法中,待检测源码文件的数据流语法特征提取包括数据流传播过程中的可控资源操作的提取、以及Webshell特有特征的提取。其中Webshell特有特征包括:Webshell名称、某一固有变量名如c99sh_surl、Webshell开发者、攻击者及其组织的昵称、邮件地址信息、网站URL
步骤240:分别计算待检测样本的数据流语法特征与Webshell样本库中的数据流语法特征,判断源码文件是否存在Webshell样本库中的数据流语法特征。如存在Webshell数据流特征,则判定其为Webshell。由于Webshell的主要功能集中在对服务器的权限获取和资源操作上,数据流语法特征检测模型实现了攻击者访问Webshell到资源操作的调用过程建模,不仅可以有效检测已知Webshell样本,还可以实现在Webshell数据流传输过程中高效检测新型、变种Webshell。
图4所示为统计学文件特征检测算法流程图,具体流程如下:
步骤250:在统计学文件特征检测算法中,分别提取待检测源码文件的信息熵、重合指数、最长单词、压缩比、Webshell特有特征。根据不同的特征对于模型检测的重要性不同,对各个特征进行权重设置。避免在统计学检测Webshell建模的过程中,提取特征权重相同导致的模型误报和漏报。
步骤260:在统计学文件特征检测算法的训练过程中,分别提取训练数据中正常样本和Webshell样本的统计学文件特征,通过搜索网格技术优化超参,找到最佳的检测模型,从而对待检测源码文件进行检测、分类。由于新型、变种Webshell常通过混淆、加密编码等手段躲避查杀,而构造的基于统计学文件特征的检测模型实现了对经混淆、加密编码Webshell的检测,从而可以高效地检测出该类型变种的Webshell。所述经优化的超参包括:弱分类器个数、子树划分最小样本数、叶子节点最少样本数、决策树最大深度以及算法划分的最大特征数。
图5所示为深度学习检测算法流程图,具体流程如下:
步骤310:在深度学习检测算法中,分别提取训练数据中正常样本和Webshell样本的语料,用于模型训练。在生成模型检测Webshell的过程中,提取源码文件的语料用于后续模型的检测输入。
步骤320:使用N-Gram算法处理源码文件的语料用于生成上下文语料特征,通过对比不同的上下文语料特征生成模型,找到训练效果最佳的检测模型,用于判定Webshell。在N-Gram算法选择范围是1-4,根据实验结果,当选用3-Gram提取语法结构特征时,Webshell检测效果最好。
步骤330:用TF-IDF模型进一步处理提取的上下文语料,并进行向量化。通过平衡单个语料在Webshell中和全部语料库中的权重,更好地评估该语料在Webshell检测模型中的重要性。
步骤340:将训练数据中前期提取的上下文语料向量作为输入,传入循环神经网络算法中进行监督学习,并生成检测模型。
步骤350:通过测试数据对算法的检测效果,进行循环神经网络算法的参数优化,直至找到最佳的Webshell检测模型。生成检测模型后,封装不同语言类型的模型及其参数,用于后续对源码文件的分类、检测。由于语法结构特征检测模型提取了源码文件中经TF-IDF处理的上下文词袋用于监督学习,因此可以有效地检测出与特征库Webshell上下文相似的不同新型、变种Webshell。
最后,根据不同模型的检测结果,对不同模型检测到的Webshell进行权值累加,得到最终的Webshell检测结果和分值,从而确定Webshell及其危害程度。
权值累加是通过在上述算法建模过程中,对检测的样本进行威胁评估,其分数范围为0-10。分数越高,表征的是该Webshell威胁性越强,当样本的打分结果为0时表示该样本被系统判别为正常样本。
上述检测算法根据不同的源码语言类型分别建模,模型支持的语言类型包括PHP、ASP、ASPX、JSP、Python等。
图6所示为云分析模块处理流程图,具体流程如下
步骤410:在系统的多维算法检测过程中,构造前期收集的开源Webshell样本的特征,形成初始客户端Webshell特征库,用于不同算法生成模型的分类判定。当检测到新型、变种Webshell时,客户端特征库进行对比、识别,添加新型、变种Webshell至客户端特征库。
步骤420:在发现新型、变种Webshell后,客户端特征库同步更新的过程中,异步将该Webshell上传至云端,用作后续云端分析。
步骤430:云分析模块将客户端上传的新型Webshell特征与云端Webshell特征库进行对比、计算。当判定该文件确为Webshell,且未完全添加进不同算法的Webshell特征库时,将该Webshell进行全部算法的特征计算,并上报云端特征库。当判定该文件为正常文件时,不添加该样本进入云端特征库,云分析模块通过定期更新,将云端Webshell特征库同步给客户端。
步骤440:通过收集各初始客户端Webshell特征库,生成初始云端Webshell特征库。当检测到新型、变种Webshell时,客户端特征库将该Webshell特征上传至云端,经计算分析后,将符合新型Webshell特征的样本及其特征添加进云端特征库。
步骤450:云端Webshell特征库作为系统检测的综合型特征库。通过定期更新的方式,将确认后的特征库定期同步到全部客户端特征库。
最后所应说明的是,以上实施案例仅用以说明本发明的技术方案而非限制,尽管使用事例对本发明进行了详细说明,本领域的技术人员应当理解,可对本发明的技术方案进行修改或者等价替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种Webshell检测方法,其步骤包括:
1)利用云端Webshell特征库,更新客户端Webshell特征库,其中云端Webshell特征库包括:若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
2)收集若干正常样本,获取正常样本的统计学特征,并利用Webshell样本文件与正常样本的统计学特征进行机器学习训练,得到统计学文件特征检测模型,利用Webshell样本文件与正常样本的语法结构特征进行深度学习训练,得到语法结构特征检测模型;
3)对待检测网站文件进行源码获取,得到源码文件,并获取源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并对统计学特征向量化,得到统计学特征表示;
4)分别将源码文件的模糊哈希值及数据流语法特征,与本地Webshell特征库中各Webshell样本文件的模糊哈希值及数据流语法特征进行对比,得到同源相似度检测结果及数据流语法特征检测结果;
5)分别将统计学特征表示及语法结构特征,输入统计学文件特征检测模型及语法结构特征检测模型,得到统计学文件特征检测结果及语法结构特征检测结果;
6)根据同源相似度检测结果、数据流语法特征检测结果、统计学文件特征检测结果及语法结构特征检测结果,得到待检测网站文件的Webshell检测结果。
2.如权利要求1所述的方法,其特征在于,得到源码文件后,提取源码文件的属性信息,用以对检测出的Webshell文件进行集中分析与确认;所述属性信息包括:名称、源码语言类型、路径、大小和上次修改时间。
3.如权利要求1所述的方法,其特征在于,通过模糊哈希算法,获取源码文件的模糊哈希值。
4.如权利要求1所述的方法,其特征在于,数据流语法特征包括:数据流传播过程中的可控资源操作和Webshell特有特征;统计学特征包括:信息熵、重合指数、最长单词、压缩比和Webshell特有特征;语法结构特征包括:含有上下文语料的词袋。
5.如权利要求4所述的方法,其特征在于,Webshell特有特征包括:Webshell名称、设定的固有变量名、Webshell开发者、攻击者及其组织的昵称、邮件地址信息和网站URL;设定的固有变量名包括:c99sh_surl。
6.如权利要求4所述的方法,其特征在于,通过以下步骤得到Webshell样本文件的语法结构特征:
1)使用N-Gram算法,分别提取Webshell样本文件的上下文语料特征;
2)将上下文语料特征输入TF-IDF模型,得到Webshell样本文件的语法结构特征。
7.如权利要求1所述的方法,其特征在于,机器学习的方法包括:随机森林方法。
8.如权利要求1所述的方法,其特征在于,通过以下步骤得到语法结构特征检测模型:
1)将各Webshell样本文件与正常样本的语法结构特征,迭代输入循环神经网络算法中进行监督学习,生成初步的语法结构特征检测模型;
2)将测试数据输入初步的语法结构特征检测模型,对循环神经网络算法的参数优化,得到语法结构特征检测模型。
9.如权利要求1所述的方法,其特征在于,通过以下步骤更新云端Webshell特征库:
1)将Webshell检测结果中的Webshell文件输入客户端Webshell特征库;
2)客户端Webshell特征库根据Webshell样本文件及Webshell检测结果,判断该源码文件是否为新型Webshell文件或变种Webshell文件;
3)若为新型Webshell文件或变种Webshell文件,将该源码文件上传至云端;
4)云端计算该源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并与云端Webshell特征库进行对比及计算,判断该源码文件是否为新型Webshell文件或变种Webshell文件;
5)若不是新型Webshell文件或变种Webshell文件,利用云端Webshell特征库定期更新客户端Webshell特征库;若是新型Webshell文件或变种Webshell文件,则将该源码文件及相应的模糊哈希值、数据流语法特征、统计学特征语法结构特征,输入云端Webshell特征库,并定期更新客户端Webshell特征库。
10.一种Webshell检测系统,包括:
云端Webshell特征库,用以更新客户端Webshell特征库,其中云端Webshell特征库包括:若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
客户端Webshell特征库,用以向Webshell检测模块提供若干Webshell样本文件及相应的模糊哈希值、数据流语法特征、统计学特征和语法结构特征;
Webshell检测模块,用以收集若干正常样本,获取正常样本的统计学特征,并利用Webshell样本文件与正常样本的统计学特征进行机器学习训练,得到统计学文件特征检测模型,利用Webshell样本文件与正常样本的语法结构特征进行深度学习训练,得到语法结构特征检测模型;对待检测网站文件进行源码获取,得到源码文件,并获取源码文件的模糊哈希值、数据流语法特征、统计学特征和语法结构特征,并对统计学特征向量化,得到统计学特征表示;分别将源码文件的模糊哈希值及数据流语法特征,与本地Webshell特征库中各Webshell样本文件的模糊哈希值及数据流语法特征进行对比,得到同源相似度检测结果及数据流语法特征检测结果;分别将统计学特征表示及语法结构特征,输入统计学文件特征检测模型及语法结构特征检测模型,得到统计学文件特征检测结果及语法结构特征检测结果;根据同源相似度检测结果、数据流语法特征检测结果、统计学文件特征检测结果及语法结构特征检测结果,得到待检测网站文件的Webshell检测结果。
CN202110367559.8A 2021-04-06 2021-04-06 一种Webshell检测方法及系统 Active CN113239352B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110367559.8A CN113239352B (zh) 2021-04-06 2021-04-06 一种Webshell检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110367559.8A CN113239352B (zh) 2021-04-06 2021-04-06 一种Webshell检测方法及系统

Publications (2)

Publication Number Publication Date
CN113239352A true CN113239352A (zh) 2021-08-10
CN113239352B CN113239352B (zh) 2022-05-17

Family

ID=77131231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110367559.8A Active CN113239352B (zh) 2021-04-06 2021-04-06 一种Webshell检测方法及系统

Country Status (1)

Country Link
CN (1) CN113239352B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117235727A (zh) * 2023-11-09 2023-12-15 中孚安全技术有限公司 基于大型语言模型的WebShell识别方法和系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160000358A (ko) * 2014-06-24 2016-01-04 에스케이인포섹(주) 정오탐 분석 기능을 구비한 웹쉘 탐지 장치 및 이의 정오탐 분석 방법
CN106850617A (zh) * 2017-01-25 2017-06-13 余洋 webshell检测方法及装置
CN106961419A (zh) * 2017-02-13 2017-07-18 深信服科技股份有限公司 WebShell检测方法、装置及系统
CN107659570A (zh) * 2017-09-29 2018-02-02 杭州安恒信息技术有限公司 基于机器学习与动静态分析的Webshell检测方法及系统
CN109462575A (zh) * 2018-09-28 2019-03-12 东巽科技(北京)有限公司 一种webshell检测方法及装置
CN109948339A (zh) * 2019-03-20 2019-06-28 国家计算机网络与信息安全管理中心 一种基于机器学习的恶意脚本检测方法
CN110034921A (zh) * 2019-04-18 2019-07-19 成都信息工程大学 基于带权模糊hash的webshell检测方法
CN110162973A (zh) * 2019-05-24 2019-08-23 新华三信息安全技术有限公司 一种Webshell文件检测方法及装置
US20190334948A1 (en) * 2016-12-16 2019-10-31 Huawei Technologies Co., Ltd. Webshell detection method and apparatus

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160000358A (ko) * 2014-06-24 2016-01-04 에스케이인포섹(주) 정오탐 분석 기능을 구비한 웹쉘 탐지 장치 및 이의 정오탐 분석 방법
US20190334948A1 (en) * 2016-12-16 2019-10-31 Huawei Technologies Co., Ltd. Webshell detection method and apparatus
CN106850617A (zh) * 2017-01-25 2017-06-13 余洋 webshell检测方法及装置
CN106961419A (zh) * 2017-02-13 2017-07-18 深信服科技股份有限公司 WebShell检测方法、装置及系统
CN107659570A (zh) * 2017-09-29 2018-02-02 杭州安恒信息技术有限公司 基于机器学习与动静态分析的Webshell检测方法及系统
CN109462575A (zh) * 2018-09-28 2019-03-12 东巽科技(北京)有限公司 一种webshell检测方法及装置
CN109948339A (zh) * 2019-03-20 2019-06-28 国家计算机网络与信息安全管理中心 一种基于机器学习的恶意脚本检测方法
CN110034921A (zh) * 2019-04-18 2019-07-19 成都信息工程大学 基于带权模糊hash的webshell检测方法
CN110162973A (zh) * 2019-05-24 2019-08-23 新华三信息安全技术有限公司 一种Webshell文件检测方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HUA ZHANG 等: "Webshell Traffic Detection With Character-Level Features Based on Deep Learning", 《IEEE ACCESS》 *
吴斌 等: "基于深度学习和半监督学习的websheII检测方法", 《信息技术与网络安全》 *
赵琦 等: "一种基于HTTP协议的隐蔽隧道及其检测方法", 《计算机与现代化》 *
赵磊 等: "基于深度学习的高结构化恶意样本的检测方法", 《武汉大学学报(理学版)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117235727A (zh) * 2023-11-09 2023-12-15 中孚安全技术有限公司 基于大型语言模型的WebShell识别方法和系统
CN117235727B (zh) * 2023-11-09 2024-02-23 中孚安全技术有限公司 基于大型语言模型的WebShell识别方法和系统

Also Published As

Publication number Publication date
CN113239352B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
CN109347801B (zh) 一种基于多源词嵌入和知识图谱的漏洞利用风险评估方法
CN110233849B (zh) 网络安全态势分析的方法及系统
US11334764B2 (en) Real-time detection method and apparatus for DGA domain name
CN107241352B (zh) 一种网络安全事件分类与预测方法及系统
JP7086972B2 (ja) 侵入検出のための継続的な学習
Wang et al. A deep learning approach for detecting malicious JavaScript code
CN109510815B (zh) 一种基于有监督学习的多级钓鱼网站检测方法及检测系统
CN106961419B (zh) WebShell检测方法、装置及系统
CN110266647B (zh) 一种命令和控制通信检测方法及系统
Zhang et al. Webshell traffic detection with character-level features based on deep learning
CN111600919A (zh) 基于人工智能的web检测方法和装置
KR20220066993A (ko) 온라인 서비스의 거동 변화의 인식 기법
CN113704328B (zh) 基于人工智能的用户行为大数据挖掘方法及系统
CN112199677A (zh) 一种数据处理方法和装置
CN112532624B (zh) 一种黑链检测方法、装置、电子设备及可读存储介质
CN113239352B (zh) 一种Webshell检测方法及系统
Zhang et al. A php and jsp web shell detection system with text processing based on machine learning
Zhu et al. CCBLA: a lightweight phishing detection model based on CNN, BiLSTM, and attention mechanism
Amanullah et al. CNN based prediction analysis for web phishing prevention
Vishva et al. Phisher fighter: website phishing detection system based on url and term frequency-inverse document frequency values
Rayyan et al. Uniform resource locator classification using classical machine learning & deep learning techniques
CN112883373A (zh) 一种PHP类型的WebShell检测方法及其检测系统
US20230048076A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
Alex et al. Taylor–HHO algorithm: A hybrid optimization algorithm with deep long short‐term for malicious JavaScript detection
Graf et al. Neural network-based technique for android smartphone applications classification

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