Webshell,隐藏在网站之下的潘多拉魔盒
近年来网站被植入后门等隐蔽性攻击呈逐年增长态势,国家互联网应急响应中心发布的《2015年中国互联网网络安全报告》中指出,“2015年CNCERT/CC共监测到境内75028个网站被植入后门,其中政府网站有3514个。”
而Webshell则是最常用的一种网站后门工具,盛邦安全通过大量对被黑网站的应急发现,绝大多数黑客是通过后门进行的修改,并在篡改后删除后门及服务器日志。但与Webshell的危害程度相反的是,许多信息中心并没有非常重视该问题,或者可以说,业界并没有提供很好的解决办法。本文将根据盛邦安全对于Webshell的一些研究做些总结,希望给大家一些借鉴意义。
你知道或者不知道的Webshell
对于Webshell在这里我会简单介绍一下,更详细的内容大家可以百度或者查看公众号‘唯品会应急响应中心’之前发布的一篇《Webshell技术总结》的文章,其中有很全面的介绍。
1、什么是Webshell
“Web”的含义是需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上的操作权限,常常被称为匿名用户(入侵者)通过网站端口对网站服务器的某种程度的操作权限。类似于个人电脑的cmd模式。
2、Webshell的分类
3、Webshell的用途
· 你发现并利用了一个网站的漏洞
· 得到了Web权限但没有系统权限
· 希望下一次能够优雅地连接系统
如果你通过漏洞成功的在网站中植入了Webshell,那么一个“魔盒”就成功的存在于网站之下,而开启它的“钥匙”就掌握在你的手中。你可以通过它,获取服务器系统权限、控制“肉鸡”发起DDos攻击、篡改网站、网页挂马、作为用于隐藏自己的代理服务器、内部扫描、植入暗链/黑链等等。
盛邦安全对于检测Webshell的一些建议
处置一:人工处置
1、定期检查服务器上是否存在不认识文件;
虽然大马通常有.asp、.jsp、.php等多种形式,但其通常都是要植入到网站的文件目录下。理论上只要确保目录中不存在未知文件即可防范大马。
缺点:显而易见,对于自己编辑的简单网站检查起来比较可行,但多数情况下,此类方法费事费力,很难实现。
2、安装网页防篡改软件(非网关模式)
网页防篡改解决Webshell问题的原理与人工检查类似,都是尽可能确保网站目录下不会被随意修改。
处置二:基于文件的Webshell分析
◆检测是否包含Webshell特征,例如常用的各种函数。
◆检测是否加密(混淆处理)来判断是否为Webshell
◆文件hash检测,创建Webshell样本hashing库,进行对比分析可疑文件。
◆对文件的创建时间、修改时间、文件权限等进行检测,以确认是否为Webshell
◆沙箱技术,根据动态语言沙箱运行时的行为特征进行判断
处置三:基于流量的检测方式
◆基于payload的行为分析,不仅对已知Webshell进行检测,还能识别出未知的、伪装性强的Webshell。
◆对Webshell的访问特征(IP/UA/Cookie)、payload特征、path特征、时间特征等进行关联分析,以时间为索引,还原攻击事件。
◆便于部署,只需要镜像流量进行分析。
处置三与处置四的核心之一均是特征库的大小及更新频度,无论是文件特征还是Webshell的传输特征。
处置四:基于日志的Webshell分析
分析日志的手段往往用于被攻击后的溯源阶段,最主要的原因就是WEB日志过多,分析起来非常繁琐。而且有些黑客会在攻击后删除日志,这样就只能借助外置的审计类设备进行溯源。
烽火台的Webshell检测
WebRAY烽火台监控预警与态势感知平台在设计之初就将Webshell的检测作为核心能力,结合盛邦安全在Web领域的研究,深度集成Webshell检测引擎。该引擎主要利用基于文件以及基于流量两种检测技术。并通过下图所示的威胁情报自研系统,建立情报及行为分析模型库,以此为核心来保障Webshell检测的全面性及准确性。
盛邦安全对Webshell的研究
1、基于文件特征的检测:
通过收集常用的Webshell工具,对其进行分析,提取相应文件特征。然后基于这些特征进行检测。同时还包括处置三中的几种检测方式:是否加密、文件的创建时间、修改时间、文件权限等。同时对于灰色文件启用沙箱检测。
常用Webshell工具
烽火台对于基于文件特征的Webshell检测提供两种模式:本地查杀、远程扫描查杀。本地查杀需要在服务器上安装插件进行检测;对于不便于安装插件的客户,烽火台提供远程扫描检测,为实现更好的效果对爬虫进行了改进:爬虫要能识别、积累各种WebShell的特征,并作为爬取必须项;同时具备登录扫描功能,使扫描结果更全面。
2、基于流量的检测
烽火台可部署在网络出口交换机处,通过流量镜像分析是否存在Webshell的传输特征。其核心是对于Webshell发起恶意行为的分析及建模能力,更新周期为每月更新。
行为特征收集
基于流量的Webshell检测结果
从安全的演变阶段划分,无论是用上传型小马带大马还是比较流行的直接在cms中植入Webshell等植入形式,都是因为事前存在漏洞。在烽火台系列文章中,也多次提及了漏洞的危害性,而这方面更应该审视的是漏洞检测的全面性,应包括系统漏洞、Web漏洞、中间件漏洞、数据库漏洞,从而保证不存在短板。而Webshell、篡改等问题的监测及检测均属于感知与侦测范畴。在态势感知中,及时性、准确性则是主要的考量标准,而基于威胁情报的检测能大大提高了感知的能力,对于解决隐蔽性、高级的新型威胁有更好帮助。