首页
社区
课程
招聘
[原创]终于领悟了主动防御
发表于: 2008-5-10 20:21 85266

[原创]终于领悟了主动防御

2008-5-10 20:21
85266

传统的特征码技术虽然大势已去,但是目前仍能发挥余热,在微点等主动防御软件中还是以此来识别已知病毒、木马的。

不过对于未知病毒我们必须有一套可行,不易被绕过的方法来识别它们。目前盛行的病毒变形、多态技术,使得特征码技术没法做到这一点,那么从行为的角度来考虑的话,就是化代码特征为行为特征,来识别未知病毒。

主动防御,我个人认为是这个大思想(行为技术)下的一个方式方法。当然还有其他的思路和方法。主动防御以监视为基础,当发现一个行为或一系列行为可疑时,该程序就进入了主动防御重点分析的状态,分析其衍生物,同时用特征码的方法分析其关联的文件是否是病毒、木马。如果能够准确的识别出来是已知病毒的话,绝不手软;如果被识别出是未知病毒的话,询问用户,是否放行等。

要推动主动防御技术,必须不断的研究攻防技术,例如自启动,代码注入,kill杀软,注册表操作,文件操作,Rootkit等等,这些目前是绝对的热点,主动防御我个人认为就是防的这些,因此能绕过,很强的!也是很有技术价值的;能防住的就是更有价值的了。这才是攻击与防御最真实的较量!

另外,虽然有很多人认为,杀软在明处,写病毒,写木马可以通过测试,发现其可绕过之处,从而写出可行的病毒、木马。不过什么都是相对的,只要主动防御杀软能够快速得到这个样本,学习之,再完善自己的核心技术。这样就可以抵御一批使用了这个绕过技术的病毒、木马,岂不乐哉!——事实上,主动防御这种发展模式,最根本的优势是改变了传统杀软的发展模式,化被动为主动,主动的去研究新鲜的绕过技术,完善自身系统,研究技术虽然要比研究病毒单个样本的特征码成本高的多,但是研究出的技术起到了抵御一批病毒、木马的作用。因此一类病毒中只需要研究分析一个即可!我认为在这样一个病毒、木马泛滥成灾的时代里,主动防御的思想反而降低了系统的成本。

那么主动防御没有缺点吗?我认为最大的问题可能就是“查毒”的问题了,传统杀软可以使用特征码的方式查毒,速度很快。然而主动防御面对的是正在运行的程序,是动态的被识别出是否是病毒的。要想实现查毒的功能:

一种方式就是结合虚拟机技术,在虚拟机中运行程序来识别。面对的问题是:显然效率不会高,如何提高效率真是很头疼,我的想法是在网络上部署很多虚拟机,一个主机要查毒,那么可以把这些要查毒的程序,分发给网络上部署的不同的几个虚拟机,大家并行查毒。这样貌似可以大幅度提高效率,而且被查毒的主机不是很累。另外一个问题就是需要虚拟机和真实系统不能差异太大,甚至需要完全一致;

另一种方式就是直接在真实系统中运行,这需要在查出是病毒后,能够有效的回滚到病毒运行前系统的各种状态,这就需要在操作系统上建立一套可行的事务系统,负责do和redo等操作;

第三种方式可以考虑与影子、沙箱系统的结合,放到沙箱系统中去执行,然而沙箱目前不是很完善,很多功能没法在沙箱中实现,病毒的行为可能和在真实系统中的行为有很大差异,甚至没有完成可疑行为,就异常结束了,这样会导致“漏网”。

以上第一、三种方式共同面对的问题是:病毒会很聪明,发现自己在虚拟机、沙箱或影子中,老子直接退出,不玩了,哈哈!这样主动防御想查毒,而病毒不合作。这就类似体检的时候,测体重,你不上秤,怎么称体重?!——这就需要主动防御软件去研究如何“哄骗”病毒木马,而病毒木马需要研究如何防止被“欺骗上当”——仔细想想,是很有意思的,这类似一个博弈,一个循环,就像在下棋,一人一步。我们今天的想象也许就是明天攻防技术的表演。

我没法评判主动防御这步棋,目前还没有想的很清楚,只是自己忽然领悟到了一些东西,赶紧写出来!大家看看,呵呵!

哎!还不知道自己毕设该怎么做呢,要是做成主动防御的方式,那就需要先深入研究上面的那些技术,之前做的行为监视暂时放下,后面也许会用到。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 7
支持
分享
最新回复 (118)
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
2
某人说HIPS都是垃圾
2008-5-10 20:53
0
雪    币: 222
活跃值: (44)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
3
我要把现在的垃圾做成明天的宝贝!呵呵~~~
2008-5-10 20:57
0
雪    币: 1223
活跃值: (469)
能力值: (RANK:460 )
在线值:
发帖
回帖
粉丝
4
还是刚刚说的……
2008-5-10 20:57
0
雪    币: 222
活跃值: (44)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
5
2008-5-10 21:03
0
雪    币: 1946
活跃值: (248)
能力值: (RANK:330 )
在线值:
发帖
回帖
粉丝
6
不会是马甲吧
2008-5-10 21:51
0
雪    币: 0
活跃值: (954)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
什么是主动防御,我看真正的主动是像人一样的可以识别所有病毒的,这才是我们需要的主动防御!
2008-5-10 22:24
0
雪    币: 10936
活跃值: (3293)
能力值: (RANK:520 )
在线值:
发帖
回帖
粉丝
8
一个人要干坏事 或者干了坏事 才能判定是坏人

他什么时候要干坏事 并不是我们都能监视到的

所以主动也就主动在他未遂的时候

人能识别所有的病毒?现实中未知病毒发作时 人才会去尝试分离 识别
2008-5-10 23:03
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
Human is the sources of crimes
没办法

偶飞过留名
2008-5-10 23:42
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
10
说特征码过时就等于懂得写几个钩子就以为能做主动防御一样。

有空逆逆NOD32的启发式引擎,你会知道特征码发展到现在究竟是什么样子的。或者去翻译版那里找月中人翻译的文章,其中高级二进制识别技术就是解决特征码识别多态变形病毒的问题

此外多态变形壳很多,多态变形病毒很少。当然你说加了那些壳的病毒也算多态变形病毒我还真不好说你是错的

最后主动防御只是从另外一个角度解决问题而已,而且效果还不比特征码好多少。各有优缺点而已
2008-5-11 01:42
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
路过,留下脚印
2008-5-11 02:39
0
雪    币: 208
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
好贴!赞一个!

特征码技术确实有些过时,一个病毒随便改动一下、加个壳就查不出来,防不胜防。

防病毒应该从限制安装软件开始。Vista 的 UAC 思路很有用,安装软件就要密码。一般用户不会经常安装软件,输入密码不是那么麻烦。
2008-5-11 12:27
0
雪    币: 202
活跃值: (151)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
支持。主动防御并不是要取代特征码,只是在一个反病毒工具多了一样新的功能而已,有些防范于未然的意味,同时能或多或少的通过选择性警告以提高用户的防范意识,因为一旦主动防御提示/警告框弹出,作为用户的你即便并不能十分确定这是真正的危害性行为,可你心里已经多少有了一定警惕性……
2008-5-11 20:16
0
雪    币: 215
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
主动防御!=HIPS,只不过现在的杀毒软件厂商故意混淆这两个的概念,过多的交互窗口只会引发用户的反感和操作失误;为了兼容性而弱化默认设置又起不到什么保护作用;随着想当老大的驱动越来越多,用户报怨也会越来越多.
2008-5-11 20:18
0
雪    币: 226
活跃值: (15)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
15
你肯定不是用的瑞星,瑞星什么都能查出来
2008-5-11 20:31
0
雪    币: 107
活跃值: (404)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
NOD32强......
2008-5-12 03:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
特征码技术确实有些过时
2008-5-12 09:09
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
特征码技术确实有些过时
2008-5-12 09:25
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
汗!大家在吵架
我想向大家推荐看一类书,   关键字:进化
慢慢找,会发现意外的惊喜哦~!!!
2008-5-12 10:02
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
看来搞NOD32的人还不少啊, 好像不是用特征码的,牛x
2008-5-13 22:40
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
21
恩,不是特征码,如果特征码真的就随便拿段数据就叫特征码,那真的真的不是特征码,很早很早以前特征码这个技术就已经没有人在用了,包括国内的厂商
2008-5-14 00:44
0
雪    币: 390
活跃值: (707)
能力值: ( LV12,RANK:650 )
在线值:
发帖
回帖
粉丝
22
基于行为分析的东西迟早要完蛋,比特征码高明不了多少

要是针对它的原理,写一个“烦死你不偿命”病毒就有得好看了……
2008-5-14 08:37
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
目前还有很多研究中的针对病毒查杀的技术,由于适用性不广泛,所以还有很多技术没有在目前的商业产品中体现出来,有时候大家都在讨论一种单一的解决方法的,绝对是误入歧途,应该提倡,多种防范思维,多种策略结合。

泡mm都有三十六计了,何况是杀毒呢。
2008-5-14 09:42
0
雪    币: 7309
活跃值: (3788)
能力值: (RANK:1130 )
在线值:
发帖
回帖
粉丝
24
NOD32的引擎很强,一般不误报,但是机器毕竟是机器,有时候会很傻

另外,选上高级启发式扫描,有时候效率很低。某次,开文件实时防护,运行vmp 1.6x主程序,用了20秒
2008-5-14 09:44
0
雪    币: 225
活跃值: (142)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
25
程序P是否是算法,这是个不可判定问题,计算理论里面说的.

简单讲计算机(其实是图灵机,都一样)是无法判定其正在运行的代码的行为到底是操作的人有意为之还是其他人恶意为之.

所以,真正的行为识别要求计算机具有类人智能和先验知识,这应用图灵机的计算模型是不可能的.

要搞主动防御,判定正确性始终是个不可逾越的障碍.
2008-5-14 11:09
0
游客
登录 | 注册 方可回帖
返回
//