Shell中的幽灵?OneEDR用机器学习让Webshell无处遁形

访客 368 0
本文来源:

据微软365Defender数据显示,从2020年8月到2021年1月,平均每月检测到大约14万次Webshell威胁,这几乎是上一年平均每月检出量的两倍(77000次)。

Shell中的幽灵?OneEDR用机器学习让Webshell无处遁形-第1张图片-网盾网络安全培训

与2019年相比,2020年下半年服务器Webshell攻击频次大幅增长,图来自微软官网

而据埃森哲在去年(2021年)8月发布的《网络调查、取证和响应(CIFR》报告》数据显示, 2021年上半年的网络入侵活动同比增长125%,其中Webshell增长最为迅猛,是恶意勒索行为最频繁使用的入侵方式之一。

Webshell原本被网站管理员用于服务器和网站的日常管理,并能根据FSO(File System Object)权限查看数据库、上传下载文件,以及执行服务器系统的任意相关命令(如修改、删除文件,或创建用户等)。这些特性也让Webshell成为网络入侵者眼中的“香饽饽”,通过利用Web应用程序漏洞或配置漏洞,恶意Webshell被植入到web服务器中,然后……你懂的。

Webshell攻击之所以泛滥,一方面是因为web服务器天然暴露在互联网中,且web漏洞更容易被入侵者利用之外;另一方面还在于利用Webshell入侵的灵活性与隐蔽性,不利于察觉,也很难检出。

比如Webshell可以用Web应用程序的任何一种语言编写,其中PHP、ASP、Python与Unix Shell是最常用的语言,每种语言都有多种攻击方式方法。同时,攻击者在隐藏对抗方面也有许多“成熟”的经验,比如文件伪装、代码隐藏等等。

Shell中的幽灵?OneEDR用机器学习让Webshell无处遁形-第2张图片-网盾网络安全培训

上图左中的文件名看似web服务器中的合法文件,但实际是由恶意Webshell文件伪装;图右则是混淆过的Webshell代码,很难辨别具体作用

Webshell的另一种隐藏方式是伪装成不可执行的文件格式,比如PNG或JPG等图片格式。这加大了检出难度,因为web服务器加载和分析此文件时,会被误认为是图片,但当浏览器向服务器请求此文件时,恶意代码就会在服务器上执行。

正是这些特点,让Webshell很难被检出,哪怕是经验丰富的安全人员,也需要通过多种方式来仔细甄别才能做出最终判断,这也让大多数企业很难有效应对Webshell攻击。

AI曾被认为是检出Webshell威胁最理想的方法,在经过大量的数据训练之后,基于AI技术的检测引擎能够将Webshell检出率提升到95%左右,相比传统方法的90%检出率,确实有一定效果,但依然未达预期。

Shell中的幽灵?OneEDR用机器学习让Webshell无处遁形-第3张图片-网盾网络安全培训 AI对Webshell检出率的帮助不大?

微步在线机器学习团队负责人陈杰并不这么认为。相反,他认为AI不仅可以大幅提升包括Webshell在内的威胁检出率,同时还能极大地降低企业安全团队的成本。但要使检出准确率符合预期,在训练时有两点非常关键。

首先是AI训练所使用数据的质量——这是两个词——品质要高,量要大。

微步在线在威胁情报领域耕耘多年,并成为国内威胁情报领域的领头羊,高质量的威胁情报离不开海量的恶意样本,正是基于这一优势,陈杰对这个机器学习项目充满信心。

训练数据量大、质量高只是必要条件,要充分发挥出来,还得深入利用机器学习。同样是针对Webshell威胁的训练,一些AI在训练的时候“深度”不够,可能只提取了恶意样本中的敏感函数、信息熵、文件重合指数、标签数等等特征,然后通过传统的机器学习或者简单的深度学习进行训练得到检测模型。这样的检测模型也许在实验室中会有很好的效果,但在实际使用中,可能就会出现新样本检出率低、线上线下效果差异大,以及无法有效解释等问题。

在训练之前,必须要对恶意样本的特征进行细化,这就跟AI模型参数的道理相似,多不一定有效果,但少了肯定不行。经过大量实验之后,陈杰团队不仅细化了常规的特征提取,还从多个维度抽取文件信息,以此让AI训练的结果更加准确。

Shell中的幽灵?OneEDR用机器学习让Webshell无处遁形-第4张图片-网盾网络安全培训

微步在线深度学习模块架构,从多维度提取样本特征信息

具体到Webshell的样本训练:

  • 也会抽取敏感函数,但细化函数分类,更精准地确定函数执行位置和执行情况;
  • 舍弃传统的基于信息熵和文件重合指数的混乱度指标,使用更精准的计算代码混乱度;
  • 不仅从语法树AST角度抽取信息,还从文本、字符、字节码等维度抽取文本信息。

大量的高质量样本,更细化的样本特征,经训练获得的检出模型,集成到微步在线的Webshell引擎之后,让检出率提升到99%以上,可谓是一鸣惊人。

都说Webshell威胁如同shell中的“幽灵”,那微步在线基于AI模型的Webshell引擎就如同“荧光粉”,让Webshell威胁现原形。

除了Webshell引擎之外,微步在线机器学习团队还在Linux ELF格式的静态检测方面也获得了丰硕成果,通过微步在线积累的海量恶意ELF样本,从字节码、字符串、二进制文件以及文件结构不同维度抽取的上万个有效特征,经训练后获得的ELF检出模型成为ELF引擎的核心,在百万级的样本中,Linux ELF AI检测在约30ms左右内可以精确识别恶意软件,误报率只有0.02%,检出率达到99.4%,处于国际领先水准。

Webshell引擎和Linux ELF引擎都是微步在线主机威胁检测与响应平台OneEDR中的12款自研引擎之一,在4月底,OneEDR已升级到最新2.5版本,这个新版本已经全面集成了基于最新机器学习成果的Webshell引擎和Linux ELF文件检测引擎,欢

标签: 机器学习 webshell shell

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~