楼主: icerain
收起左侧

[可疑文件] PPTV(pplive)_forap_1084_9993.exe + txupd.exe

[复制链接]
B100D1E55
发表于 2019-8-14 21:19:29 | 显示全部楼层
驭龙 发表于 2019-8-14 14:12
我刚刚也去翻了一下白皮书,AMS是在沙箱分析不出威胁的情况下后端检测手段,确实是无法撤销之前的行为, ...

一方面是这些所谓的“内存扫描引擎”扫描颗粒度很可能参差不齐,毕竟实时内存扫描搞不好就性能大暴死。而且就算颗粒度细,具体是用什么特征来扫也耐人寻味。如果只是搞什么字符串匹配、yara之类的那估计效果不会太好,顶多是对流行家族做一些针对性检测
ELOHIM
发表于 2019-8-14 21:23:02 | 显示全部楼层
B100D1E55 发表于 2019-8-14 21:19
一方面是这些所谓的“内存扫描引擎”扫描颗粒度很可能参差不齐,毕竟实时内存扫描搞不好就性能大暴死。而 ...

那么ESET的内存扫描是什么技术呢?
请大佬一两句百科一下。谢谢。。。
驭龙
发表于 2019-8-14 21:23:38 | 显示全部楼层
B100D1E55 发表于 2019-8-14 21:19
一方面是这些所谓的“内存扫描引擎”扫描颗粒度很可能参差不齐,毕竟实时内存扫描搞不好就性能大暴死。而 ...

其实ESET这方面做的不错了,现在防御也不错,只是我奇怪安全数据功能,为啥没有自动同步的功能,这样设置好文件夹以后,可以同步加密文件,这才是对付勒索的最好方法之一,而且ESSP本身就有着加密数据,创建虚拟硬盘的功能,要不你去建议一下官方,给安全数据来个同步数据的自动备份功能吧
B100D1E55
发表于 2019-8-14 22:06:51 | 显示全部楼层
本帖最后由 B100D1E55 于 2019-8-14 22:16 编辑
ELOHIM 发表于 2019-8-14 21:23
那么ESET的内存扫描是什么技术呢?
请大佬一两句百科一下。谢谢。。。

E家的DNA特征本质上就是系统函数和对应参数的组合,系统函数这些本质上就是程序的行为,只不过在内存里还没执行。偶尔会加入额外的xDNA特征(也就是一些其他非可执行特征,比如字符串)
最简单的例子:勒索程序里面常见syscall组合是:打开文件、写入文件、删除文件、特定注册表写入(比如卷影删除)、网络通讯等等
然后常见的字符串特征:要加密的文件拓展名列表,勒索信息,比特币地址字符串等等

扫描引擎会尝试仿真执行样本、模拟栈操作等等,检视展开的内存观察是否有这些行为组合和其他辅助特征并进行打分,然后和毒库里面的已知特征进行近似匹配。当然这里的精髓在于1)提取点需要巧妙,尽量概括恶意程序行为的精华,这也是为什么时不时需要人工介入提取。自动机一些随机提取算法经常会提取到很迷的东西。虽然自动机的特征也不怎么产生误报,但是很迷的东西提取太多免杀就很容易了。2)需要有一套高效且巧妙的打分算法,在看到这些syscall的时候能和同样包含这些syscall的正常软件区别开来,同时能匹配尽可能多的变种(这些入库的组合破坏一两个基本上没卵用),这就是他们所谓的DNA智能特征

引用一篇旧文的描述:

nod32的启发比较智能和效率高,其一个原因就是它将一些函数分成一些特定的组合。 例如下载,马上执行这就是一个典型的下载者行为。所以nod32一般会将下载和执行作为下载者的依据。(当然可能还要做更多的判断,例如判断这个程序是否还有其他的行为,如果仅仅是下载执行那么必是一个下载者)。
……
nod32最出色的是它会去分析程序的引入表, 举个例子,例如下载执行的函数大多数都存在于Urlmon.dll以及kernel32.dll以及wininet.dll中等,所以我们的程序只要引入了Urlmon.dll或kernel32.dll,并且只要程序中使用了URLDownloadToCacheFile 函数,并引入kernel32.dll,nod32就会报毒,这无疑简化了很多效率,但是却有误报啊,例如对于一些可以构建pe结构的编译器编译的程序,如果人家引入了kernel32.dll但是功能仅仅是一个下载,你确报毒,这无疑是误报啊。。。。
但是对于nod32这样出色的杀毒软件,它不会判断你引入这些危险的函数就直接将你定义为病毒, 因为这些函数很多正常的程序也是会调用的。 而它会依据虚拟机代码仿真技术重点对你引入的这些函数去重点进行分析,分析其行为以及参数等。
来源:
https://www.myhack58.com/Article/html/3/92/2009/22346.htm

这篇文章里面提到的和我之前观察到的基本一致

如果是加密壳之类的免杀了扫描引擎(也就是扫描引擎因为各种原因看不到实际真正的syscall等特征),当这些加密壳在内存中可执行页解密时同样的扫描机制会切入收集syscall之类的信息进行同样的打分。所以基本上很多过扫描没什么意义。仿真系的扫描要过太容易了,关键还是要做到内存免杀,这也是为什么E家一定要加入AMS扫描,因为这样就成功将扫描延申到了执行层,一下就干趴了一系列简单的混淆过扫描手段

由于ESET整个恶意程序识别体系就是靠这个技术为基础搭建起来的,内存扫描就变成轻而易举的事情,完全可以沿用已有特征组。这就区别于其他一些杀软的检测,因为他们可能不是用这样的特征体系,做内存扫描的时候只能是挑个别麻烦的硬骨头人工做对应特征(而且往往还是字符串这类),不能完全移值已有的检测库。至于为什么那些厂商要做内存内字符串匹配或者其他类yara匹配,是因为如果杀软特征提取在字符串上免杀就变得很容易。最简单的就是切割字符串,运行时组装起来,这样扫描深度差的一般就饶过了。但是这些字符串切割后终归要在内存内被重新组装起来使用,因此内存内匹配这些组装后的字符串会提高查杀率。

如果扫描引擎免杀过了但是AMS内存检出,这个样本就会被自动遥测反馈到云端制作混淆器特征,即那些绕过扫描引擎手段的特征,一般报毒带Kryptik名字。可以看到这是一个完整的反馈圈,先是样本因为可疑行为被捕获添加特征,黑客做免杀,免杀被内存检测发现并反馈云端,云端捕获后针对免杀手法再添加特征……如此反复

如果内存也免杀了,HIPS的遥测仍旧会将和已知类似的行为汇报给云端,这时候一般就会重新调整已入库特征来覆盖这些新变种。我之前试过,过一天就被当通用报法自动入库了。当然如果这层都绕过了那么只能靠人工上报

所以之前网络上看到有一些人评论说想免杀ESET最好的方法还是修改源码。的确是这样,如果修改源码想过E家并不太困难,但问题在于如果到了要修改源码那基本说明杀毒厂商胜利了。杀毒本质上是提高变种门槛,因为黑客必然是想最低人力成本让自己的黑产存活最久。而修改源码是最终解决方法,往往需要人工介入耗时长效率低下(比如人工定位特征点,然后再人工破坏那些特征点),如果之后又被秒速入库就吐血了。这对于往高度自动化发展的黑产领域来说显然难以接受。

总之正是因为这样一套检测体系所以E家的误报非常低,因为特征提取在行为本源,不会因为程序仅仅是长得像恶意程序就报毒(二进制机学特征往往有这个毛病),而检测鲁棒性也比较优秀,不像一些比较挫的简单表层特征正则搜索匹配。这套体系并不是没有缺点,但和其他一些厂家比起来算是非常实在的模式匹配算法,这种代码检视和人肉静态分析流程类似,称为“smart”也不算太过份吧

评分

参与人数 1人气 +2 收起 理由
ELOHIM + 2 版区有你更精彩: )

查看全部评分

B100D1E55
发表于 2019-8-14 22:18:34 | 显示全部楼层
驭龙 发表于 2019-8-14 21:23
其实ESET这方面做的不错了,现在防御也不错,只是我奇怪安全数据功能,为啥没有自动同步的功能,这样设置 ...

我记得好像之前有人提过, 但是官方说目前没有计划做这个。

像我的话反正一般重要的存onedrive上面,onedrive自己有勒索防御也就够了……
驭龙
发表于 2019-8-14 22:22:32 | 显示全部楼层
B100D1E55 发表于 2019-8-14 22:18
我记得好像之前有人提过, 但是官方说目前没有计划做这个。

像我的话反正一般重要的存onedrive上面,o ...

嗯,我现在也是OneDrive,这个确实是防勒索的神器,文档还能回滚早期版本,而且据说能跟WD的防勒索联动,回滚加密文件,只是我没有测试过,不清楚
ELOHIM
发表于 2019-8-14 22:26:12 | 显示全部楼层
本帖最后由 ELOHIM 于 2019-8-14 22:33 编辑
B100D1E55 发表于 2019-8-14 22:06
E家的DNA特征本质上就是系统函数和对应参数的组合,系统函数这些本质上就是程序的行为,只不过在内存里还 ...

认真看完啦!~
ESET这样详尽的分析方式很值得推广开来,不知道有没有专利保护。
不知道ESET自己有没有怀才不遇的感觉,反正我是有。

但是,问题在于,所有引擎启动的前提是样本被执行才能带来一系列的反应。
那么ESET的市场占有率现在是几何,他有多少可能捕捉到前沿的样本呢?
云端数据是建立在终端的数量基础上面的。一台设备一天即使收集一个亿的样本,也只能说某个点异常,而不是一个面异常。不具有普遍性。

如果各个杀软将云总部脱离服务器束缚,每个ESET点可以互联,那势必将极大促进反应和处理速度。
但是会增加终端开销进而影响终端性能。

利弊难平衡啊。。   但是每个ESET节点组成一个简单的通信机制相互反馈,绕过反应慢、步骤多的ESET服务器应该也不是难题。

当然,我希望未来的 Microsft Defender 也可以这样做。

————————————————————————————

补充一下,就是说每个ESET节点即是服务器,又是终端;即能上传,也能下达。
而ESET的云端服务器,特征更新服务器用来汇总,梳理,整合,做为节点的有力补充。
B100D1E55
发表于 2019-8-14 22:43:23 | 显示全部楼层
本帖最后由 B100D1E55 于 2019-8-14 22:49 编辑
ELOHIM 发表于 2019-8-14 22:26
认真看完啦!~
ESET这样详尽的分析方式很值得推广开来,不知道有没有专利保护。
不知道ESET自己有没有 ...

其实不仅仅是客户端机器执行时遥测,未知程序一旦被扫描引擎发现就会被上传到云端并在云端虚拟机内引爆执行。不过由于未知文件永远能超载服务器,他们只能是带优先级地运行广度高的样本

就算是这样仍旧有问题,比如有一些巧妙反虚拟机的样本,或者针对性攻击就很难用这个手段检测到。

所以ESET才给企业开发了EDR方案(因为针对性攻击之类的很少针对个人)和沙盒方案(提高引爆样本优先级),让企业本地管理员先行一步检测网内是否有机器执行可疑行为。对于普通用户来说因为大多不具备这个能力所以只能是遥测数据发给病毒实验室然后进行总体监测了。可想而知如果一个毒很生僻,那么被入库的概率就非常小,当然宏观上其造成的损失范围也很有限。其实这和人类疫情爆发情况类似,非众数的很难得到众数群体能得到的照顾,非常无奈
很多厂商有这种互助网络,比如卡巴的UDS就是典型的例子。几台机器侦测到可疑样本就会全网发布拉黑特征。这个虽然响应快,但是潜在误报也不少,背后需要海量白文件库和白名单算法才能避免车祸经常发生

总体而言你说的没错,杀软查杀率很大程度上要靠终端占有率。昨天我记得有人问为什么国内做不出国际驰名的杀毒,其实我个人认为国内这方面技术不差,但海外终端部署数量有限,就算海外有人用也往往是华人,使用习惯、接触的软件仍旧和国内的很相近(反过来国内黑产那些国产杀软反倒比一些国际大厂在行得多)。安全情报网是杀软能成功的本钱之一,至于海外数量为什么有限背后的原因就很复杂了临时解决办法就是OEM咯
ELOHIM
发表于 2019-8-14 22:46:37 | 显示全部楼层
B100D1E55 发表于 2019-8-14 22:43
其实不仅仅是客户端机器执行时遥测,未知程序一旦被扫描引擎发现就会被上传到云端并在云端虚拟机内引爆执 ...

开始我以为OEM是为了钱,现在想想原来还是为了自己更优秀。
哈哈。。

但是某卫士被爆出更新引擎只是一行文本文件而已。

那么销售引擎这种方式是卖方主动的多还是买方主动的多呢?
B100D1E55
发表于 2019-8-15 04:18:19 | 显示全部楼层
ELOHIM 发表于 2019-8-14 22:46
开始我以为OEM是为了钱,现在想想原来还是为了自己更优秀。
哈哈。。

OEM除了补足自己情报网络的缺漏,也补足了客户端检测机制的空缺。很多产品云端和客户端检测机制大相径庭,比如E家就是这样。毕竟客户端和云端设计目标不同(例如云由于其计算资源优势可以做更复杂的分析和更激进的检测),所以云端检测强不代表客户端本地检测就一定好(MD5拉黑就是很典型的反例)

当然OEM也有消费者认大牌的因素在里面。内嵌知名引擎免费派送就让用户有一种捡了便宜的感觉,但发展得好的厂商对OEM引擎的依赖已经越来越小,这个趋势非常明显。这说明他们核心技术在不断精进。

杀毒这种东西最怕的就是失去用户信任。由于其特殊功能和权限要求,基本上在客户端爱怎么做就可以怎么做,隐私入云手到擒来,而且还可以打着云安全的名号不留痕迹。所以某种程度上来说选择一款安全软件就相当于完全信任这个厂商的RP

至于卖方主动还是买方主动我并不清楚,毕竟不是业内人士……
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-4-25 14:14 , Processed in 0.096075 second(s), 15 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表