云镜

腾讯主机安全(云镜)兵器库:WebShell克星-TAV引擎

腾讯TAV反病毒引擎是腾讯安全的自研引擎,最初应用在腾讯电脑管家中检测清除病毒木马,支持腾讯电脑管家取得过一系列国际评测的优异成绩。年龄超过11岁的TAV反病毒引擎始终 坚持与时俱进不断创新,致力于解决全新的安全课题。今天要讲的,就是腾讯TAV引擎对抗新型恶意程序WebShell的故事。

Webshell是什么?

随着越来越多的政企机构将其业务和公共服务互联网化,网络应用日益普及,网民一部手机几乎可以包打天下了。产业互联网的快速发展,也给网络黑*产业创造出新的舞台,WebShell就是其中之一,传统安全软件在WebShell的检测上会遇到力不从心的问题。
Webshell并不是漏洞,但与漏洞密切相关。从攻击角度看,可以将WebShell理解成一类攻击工具或方法,通常会结合服务器组件、应用的安全漏洞达到其入侵控制目的。

从字面理解,Web指Web服务器,而Shell是脚本程序,Webshell可以理解为针对Web服务的管理工具,可以利用WebShell工具获得Web服务器的控制管理权限。虽然可以用来实现某些管理功能,但网站运营人员正常情况下却不会采用此类方法。所以,日常发现的WebShell基本都是黑客入侵的结果。

Webshell功能十分强大,可以上传下载文件,查看数据库,甚至可以调用一些服务器上系统相关命令(比如创建用户,修改删除文件之类)。
攻击者用于恶意目的,可通过Web页面的上传漏洞或上传权限控制不当漏洞,将已编写好的Webshell文件上传到服务器上,再通过页面访问已上传的Webshell文件便可实现恶意命令执行。

WebShell因其具有隐秘性,基于脚本、灵活便捷、功能强大、易于编写、变化多端,便于绕过传统恶意软件检测方法等等特点,已是黑客入侵攻击的绝佳武器。WebShell有PHP脚本木马、ASP脚本木马、JSP脚本木马等。在日常网络安全检测时,可以发现大量尝试上传WebShell的攻击活动,证明采用WebShell攻击,已是黑客群体极为普遍的作法。

传统Webshell检测方案

传统Webshell检测依靠正则特征,但由于Webshell是纯脚本文件,无需编译,灵活性高,传统特征很容易被绕过。特别是PHP的Webshell,借助PHP灵活的语法来变形、混淆绕过特征,从而令传统检测方法效果欠佳。

TAV Webshell检测引擎

腾讯安全TAV的Webshell检测引擎结合传统特征、静态分析、动态行为分析,三管齐下,全方位无死角地检测各类Webshell。

静态分析

TAV引擎首先会将各种脚本语言进行词法语法分析,将其转换成一种统一的中间表示,再进行后续的分析。TAV的静态分析引擎支持检测PHP、JSP等各类主流脚本的Webshell。

得到中间表示后,TAV引擎会构建控制流图和数据流图,并在图上跟踪外界变量通过赋值操作、函数调用等方式的传递。操作外界变量是WebShell非常重要的特征,如果发现外界变量最终进入了命令执行函数,就可以判断为Webshell。
腾讯-云镜 - TAV反病毒引擎 - 图1
依靠静态分析引擎,我们对开源社区的热门php项目进行了自动化代码审计,发现了数十个风险,人工确认利用后,向CNVD提交了3个漏洞,并获得漏洞证书。(CNVD-2021-10320,CNVD-2021-08442,CNVD-2021-51345)

动态行为分析

与静态分析不同,动态行为分析关注攻击行为的发生,TAV引擎在内部实现了一个安全精巧的PHP解释器,可以将PHP WebShell在安全、稳定的前提下,虚拟执行脚本,利用动态污点跟踪技术,对攻击行为进行严格检测鉴别。

TAV动态分析引擎的污点技术,会监控PHP样本中读取外界参数的行为,并将所有外界传入的变量进行标记,对PHP中所有的变量传递和赋值的相关逻辑操作进行监控,实现污点传播的跟踪。最后对高危风险函数如eval,system等执行前进行拦截,分析其参数和具体行为,实现恶意WebShell检测。
腾讯-云镜 - TAV反病毒引擎 - 图2

除此之外,TAV PHP虚拟执行解释器针对加密混淆的样本,可以在动态分析后输出其真实的执行逻辑,将其真实的执行代码和中间表示输出到特征分析和污点分析中,几大模块相互配合,实现领先业内的WebShell检出率,攻击者很难通过加密混淆等手段绕过腾讯TAV 引擎检测。
腾讯-云镜 - TAV反病毒引擎 - 图3

TAV WebShell引擎的检测效果

在云上真实WebShell黑样本集中,腾讯TAV引擎的检测贡献率能达到99%以上。相比于传统的特征检测方案,TAV WebShell检测引擎不仅有着超高的检测率,同时也有超低的误报率,在云上真实环境中,也具备较高的独报能力。

TAV WebShell引擎能力既可以应用于腾讯安全软件的本地检测引擎,也可以应用在云端服务。
目前腾讯主机安全(云镜)已全面接入TAV WebShell检测能力,使腾讯云主机查杀防御WebShell攻击的能力得以大幅提升。后续还将陆续接入腾讯安全其他产品,比如腾讯高级威胁检测系统(御界)、Web应用防火墙、云防火墙、零信任iOA等等产品,将全面增强在终端侧、主机侧、流量侧的安全能力。

腾讯TAV反病毒引擎

腾讯TAV反病毒引擎汇聚了腾讯安全多年来与恶意软件对抗的经验,具备高性能、高检出、高处理能力、低消耗等技术特点,极大地提升了腾讯安全旗下终端安全产品的杀毒能力,护航亿级用户的终端安全。

TAV反病毒引擎的技术能力主要体现在自主打造增强版特征识别技术、强大的复合类文件处理能力、专业的脱壳技术、创新的动态模拟检测技术、多维启发检测等五个方面。依托腾讯安全全网海量情报数据,能够全面覆盖流行威胁,实现对全平台(Windows、Android、linux等)的威胁样本捕获,第一时间检测到爆发的恶意软件和漏洞攻击样本。依托大数据分析,自动进行样本聚类处理和样本行为判定,完成对海量威胁情报的特征提取和分析。

依托腾讯安全反病毒实验室自研的TAV反病毒引擎,腾讯安全产品在各项国内外产品评测取得优异成绩,多次获得满分,最高评级。VB100累计50次通过,连续三年获得AV-Comparatives Top Rated 产品,29个A+评级,AV-TEST移动安全评测连续17次满分,在国内赛可达评测更是连续多次排名第一,安全能力获得国内外认可。

一张图了解腾讯TAV引擎精准检测新型网络威胁:WebShell

腾讯-云镜 - TAV反病毒引擎 - 图4