脚本语言@惊雷?雷火引擎要重新定义Webshell检测的新纪元( 二 )


以上三种检测方法是业界对Webshell检测的几种方式 , 但是由于shell的可变程度很高 , 加解密利用难度基本为零 , 所以黑客只需要把能够检测出来的样本略做更改 , 就能够绕开检测 , 就会让检测工具误判认为这是正常的文件 。 所以 , 目前来说依靠以上三种检测方式的检测工具的有效性还有待提高 , 不否认能够检测到一部分的Webshell , 但是做不到真正意义上的对抗 , 是弱对抗的检测 。
这就是整个行业的现状 , Webshell通过特征修剪和流量加密经过反复测试、调整 , 最终还是可以绕过上述检测方式 , 经不起对抗 。
大家都知道 , 只依靠一种检测方法是很难对现在混淆多变的Webshell文件进行全面检测的 。 在真实的环境中进行部署检测系统时需要多种传统检测方法的加持 , 来达到互补和增强检测结果可行度的目的 。
雷火检测引擎使用了一种全新的思路——反混淆等价回归 , 即将黑客精心构建的经过加解密、隐藏恶意函数、或者经过动态拼接的shell样本 , 运用人的思维推演出该样本的本质目的 , 再判断这一行为是否为合规 。 但是需要强调的是整个推演和判断的过程是不需要人为干预的 。 下面简单列出了经过反混淆等价回归前后的Webshell变化 。
混淆webshell:
反混淆等价回归后的webshell:
【脚本语言@惊雷?雷火引擎要重新定义Webshell检测的新纪元】事实上 , 为了实现反混淆等价回归的整个流程 , 整个引擎融入了三大核心技术:
1.做抽象语法树解析
将脚本文件用树状的形式表示编程语言的语法结构 , 树上的每个节点都表示源代码中的一种结构 。 借鉴抽象语法树遍历出脚本所有可能执行的路径 。
2.AI推理
借助数据表及、代码推理等多种技术 , 从遍历的众多执行路径中找出最佳执行路径 。 即当这段代码能够做非常复杂的执行操作的时候 , AI要把所有的代码可能性全部推演出来 , 找到最有可能是恶意行为的那些分支 , 然后对整段代码做减法 , 裁减掉认为跟恶意行为无关的代码 , 剩下的就是恶意代码 。
3.虚拟运算
虚拟运算是将脚本模拟真实黄经中去运行得到结果 , 并对此过程中融入AI推理 , 从脚本中找到最佳执行路径 , 将其有效等价还原 。
通过对Webshell现状的整体分析 , 我们发现Webshell不知不觉为人们带来了很多危害 , 一旦黑客拿到了网站的WebShell , 网站将不再有秘密可言 , 比如下载文件、修改文件、删除文件等 , 将变得非常容易 。 《雷火引擎》的推出为有效检测Webshell提供了新思路 。 另外为了进一步提升与完备引擎的检测能力 , 青藤SRC重磅推出“雷火齐鸣 最燃公测-暨青藤首届线上公开挑战赛” , 欢迎安全界有识之士参与挑战(报名指引:https://thunderfire.qingteng.cn/) 。