百万奖金,广邀豪杰!WebShell“大杀器”雷火引擎公测赛等你来战!
即将开播:4月29日,民生银行郭庆谈商业银行金融科技赋能的探索与实践
【51CTO.com原创稿件】安全市场的各类产品比比皆是,但是敢于拿出来接受公众测评的却少之又少。然而,少并不代表无,近日就有一家安全厂商发起了公测活动。究竟哪家厂商如此有勇气,敢于公测?公测又是什么产品呢?请您往下看。
百万奖金池!青藤发起“雷火引擎”公测挑战赛
在前不久青藤召开的媒体沟通会上,青藤正式宣布启动“雷火引擎”公测挑战赛活动,并设置了一百万的奖金池,对于成功绕过引擎的黑样本,每个给予最高1000元现金奖励。
目前,青藤携手业内22家互联网公司 SRC,面向全国科研机构、高等院校、关键基础设施单位、重保单位、安全企业、互联网企业安全从业者、白帽英雄,举办赛事。活动报名已于4月20日正式开启,5月11日正式开始,5月30日活动结束,并将于6月2日公布结果。(报名通道:https://thunderfire.qingteng.cn/)
也许有人会问了:“雷火引擎”究竟是个什么东东?别急,请听笔者细细道来。
说起这个引擎,就要先聊聊一种很难被检测到的后门,它就是WebShell,是一种文本文件,由Web Server运行环境解释执行的。绝大多数黑客可通过Webshell长期稳定控制系统,对网络中其他机器进行攻击。而“雷火引擎”就是一款Webshell检测引擎。为了证明该引擎的有效性,青藤发起了本次公测赛。
WebShell恶意程序感染事件居高不下,检测困难
今年4月初,青藤云安全携手中国产业互联网发展联盟(IDAC)、腾讯标准、腾讯安全,共同发布的《2019中国主机安全服务报告》数据显示,2019年,全国企业用户服务器病毒木马感染事件超百万起。其中WebShell恶意程序感染事件占73.27%,感染事件为近80万起。从感染主机中,总共发现超1万种木马病毒,其中WebShell 约占27%。
WebShell的编写语言灵活多变,写法多种多样,彻底分析难度高。WebShell一直是安全行业的痛点,其检测极其困难。据青藤云安全创始人兼CEO张福介绍,当前针对WebShell的检测方法主要有三种:静态检测、动态检测,以及基于机器学习检测。但从检测效果来看,都不尽如人意。
比如静态检测方法,采用正则方法无法有效识别WebShell的变形和混淆;熵值分析准确度较差,而且很多业务会使用混淆来保护代码,混淆不是WebShell判定的核心依据;由于WebShell可以无限变形,相似度匹配命中率很低;另外,采用抽象语法树分析,虽然能够分析代码所有执行路径,但是对于变形和混淆识别较差。
静态检测方法有弊端,那么动态检测方法怎样呢?在动态检测方法中,沙箱的方式能有效解决变形或者混淆问题,但是分支执行不到,或者恶意数据没有传入就无法检测;Web进程行为检测的方式,对API调用无能为力,不调用system的检测不了。
另外,无论采用机器学习还是深度学习,本质上都是靠已知样本去学习样本的特征,对于未见过的样本识别较差,且解释性差。
总之,这些传统的检测方式都可以检测到部分WebShell,是弱对抗的检测,检测效果始终有天花板。黑客仅需更改能被检测出的样本,就能够绕过检测,让以上检测方法失效。
反混淆等价回归,WebShell大杀器——雷火引擎
为了解决这一顽疾,青藤云安全建立了专门的研究团队,基于多年的经验积累,历经一年多时间潜心研究,开发出了WebShell大杀器——雷火引擎。
张福表示,雷火引擎核心能力是反混淆等价回归。该引擎使用了一种全新的检测思路,不依赖正则匹配,而是通过把复杂的变形和混淆回归成等价最简形式,然后根据AI推理发现WebShell中存在的可疑内容。它具有三大功能优势:云端轻量检测、使用范围广、检测精度深。
雷火引擎的原理是将静态检测方法与动态检测方法相结合,既能够有效解决变形和混淆问题,又能够解决执行分支路径不确定的问题,最终将WebShell进行有效的等价还原成最简化的形式,然后根据AI推理发现WebShell中存在的可疑内容。雷火引擎使用了三大核心技术:抽象语法树解析、AI推理、虚拟运算。
◆抽象语法树解析:将脚本文件以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。借助抽象语法树找到脚本的所有可能执行路径。
◆AI推理:借助与多种先进的技术手段,比如数据标记、代码推理等,在脚本执行过程中,从多种执行路径中找到最有可能恶意行为的代码路径。比如,原有代码可能有5000行,而Webshell可能仅一行,往往难以被发现。而AI推理能够把5000行代码裁减成只有几行,通过这几行代码做虚拟运算。
◆虚拟运算:虚拟运算是将脚本模拟真实环境中去运行得到结果,并在此过程中融入AI推理,从脚本中找到最佳执行路径,将其有效等价还原。
不同于传统Webshell检测产品给出模糊性结果,再由人工去判断,雷火引擎输出的是确定性判断——只有“是”或“否”,而根据AI推理如同人的判断逻辑,完全依据Webshell的定义进行判断,也无需依赖黑样本数量来提升检测精确度。
真金需要火来炼,“是骡子是马,牵出来遛遛”
俗话说的好,真金还需要火来炼!真正能够帮助用户解决问题的产品,才能称得上有价值的好产品。此次,青藤采用公开透明的方式,邀请各方高手测试从产品,也是秉承为用户负责的态度。
实际上,青藤此前已面向一些顶尖白帽进行了定向邀测。测试中,“雷火引擎”得到了诸多大咖的广泛赞许,Webshell“大杀器”之名也由此而来。
回想当初测试的情形,张福告诉记者,那时设置了小额红包奖励,每发现一个引擎无法检测的Webshell,奖励200现金红包。当消息传开,很多没有收到邀请的白帽子也加入了测试。“在整个安全行业有个固有的认知,就是Webshell根本无法检测,能检测的都是公开的样本,而一旦样本稍做改动,就无法检测了。因此,当时有很多白帽子的第一反应是,这个公司在吹牛,要去打脸,顺带‘薅羊毛’。”
然而,在整个测试过程中,这些白帽从开始的怀疑,转为了感叹,惊叹于引擎的检测能力。不仅如此,张福还观察到,有些白帽高手提交的样本达到了很高的境界,探究的是代码的逻辑边界,而不是靠撞运气来绕道检测。比如腾讯安全团队提交的样本,探究到引擎的BUG。最终,这次测试少有人逃过引擎的检测。
此次公测,“我们为了比赛更加的公平公正,邀请了22位业内专家,包含北理工、深交所、微众银行、腾讯、漏洞银行等公司的资深专家、教授组成裁判组,为各Webshell绕过打积分,我们把最终的裁判权力交给了裁判组裁定。”张福说到。
他坦言,虽然最后有可能会测试出不少问题,但是至少青藤勇于尝试,“是骡子是马牵出来溜溜”。“我们希望引领风气,把产品公开接受检验。希望给整个安全行业带来积极改变,让更多的厂商愿意在核心产品和技术上持续投入。”
其实,此次公测赛看似是一场单纯的产品公测活动,实则对安全产业的发展有着十分积极的意义:对行业来说,打破业内安全产品不愿意接受公测的现状,树立安全行业新风;对白帽子来说,磨练他们的技术和能力,提供了一个大型展示的舞台;对社会来说,集合行业智慧,真正解决了WebShell的顽疾,树立WebShell检测新高度,为互联网安全赋能;对国家来说,培养和选拔安全人才,助力国家新基建安全,筑牢国家安全防线。
采访最后,张福总结说:“青藤的目标是希望给行业做出重要贡献,希望能够推动安全行业的改革和发展。当初,也正是抱着这样的理念,创建了青藤这家公司。我们的特点是永远站在时代的前沿,面向未来做新的产品和技术,解决行业中真正难以解决的问题,这是我们跟别人很不一样的地方。”
【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
从 Copyright 到 Copyleft,聊聊版权与开源协议
4月26日是世界知识产权日,很多人或许会觉得这和软件开发没什么关系,但事实上,开源软件大多受到知识产权法中著作权法(Copyright,也称版权)的保护。 开源软件虽说开放了源代码,但是用户在使用、修改、再发布时,必须要遵守软件中规定的开源协议(也称开源许可证/开源License),否则可能构成侵权,惹上官司。 随着计算机软件的激增,其著作权保护愈发重要。同样在26日,《中华人民共和国著作权法修正案(草案)》提交十三届全国人大常委会第十七次会议审议。修正案中有多处直接涉及计算机软件的修正:如在第十条的出租权中明确包含计算机软件的原件或者复制件权利;修正后的第五章“著作权和与著作权有关的权利的保护”中,第四十八条处加入对计算机及其系统或者网络的完全性能进行测试条例。 虽然修正案还未最终确定,但这也显现了加强软件法律保护的趋势。今天,我们就来谈谈计算机软件开发、使用中涉及的一些权利问题,以及这些问题的源头和当下的新争议。 Copyright 和 Copyleft:开源著作权和开源协议 提到 “Copyright”,大家可能还会想到自由软件之父 RMS 提出的“Copyleft”反版权思想。...
-
下一篇
MyExcel 3.7.5 发布,重要问题修复
MyExcel,是一个集导入、导出、加密Excel等多项功能的Java工具包。 MyExcel采用声明式语法来构建、读取Excel,屏蔽POI的具体操作细节(对POI无感知),以开发常用的技术替代,使得构建(从简单到高度复杂Excel)以及读取Excel变得极为便利,且构建、读取性能极为优异,占用内存极低(具体,请移步参考MyExcel&阿里EasyExcel性能对比)。 如导入: List<ArtCrowd> result = SaxExcelReader.of(ArtCrowd.class) .sheet(0) // 0代表第一个sheet,如果为0,可省略该操作,也可sheet("名称")读取 .rowFilter(row -> row.getRowNum() > 0) // 如无需过滤,可省略该操作,0代表第一行 .beanFilter(ArtCrowd::isDance) // bean过滤 .read(path.toFile()); 本次涉及到读写两个较为严重的问题修复,强烈建议用户升级: 读取Excel:SaxExcelRead...
相关文章
文章评论
共有0条评论来说两句吧...