作者blman (我爱亦洁我爱亦洁)
看板AntiVirus
标题Re: [软体] 请问反间谍软体的病毒定义档长什麽样子?
时间Mon Oct 15 16:16:42 2007
※ 引述《camilledindo (张悬是以太。)》之铭言:
: 最近电脑怪怪的
: 卡巴扫出了一只木马
: 试着用线上扫毒竟然扫出了39只
: 有人建议我用spyware doctor抓抓看
: 可是一只也没有扫到
: 我想应该是没有更新病毒定义档的关系
: 请问有人知道它的病毒定义档长什麽样吗?
: 有什麽类似的格式吗?
: 因为我是文学院学生
: 朋友也都没有懂电脑的
: 上网站看都看不懂
: 我有去奇摩知识找资料了
: 可是几乎没有人在解释病毒定义档
: 希望有空的人可以帮我一下 orz
: 谢谢
各家防毒软体厂商的病毒定义档长得不一样。
常见的副档名是 .DAT,内容的编排上则端看各家的偏好。
往往为了效率与商业机密的问题,内容都不会是纯文字档,
毕竟纯文字档效率低且容易被外界看到病毒定义的机密。
我举一个例子,
以某个开放源码防毒软体为例,它的病毒定义档刚好就是纯文字档,
其中的内容差不多是这个样子,
Zherkov-A=2e300547e2fab8dd4bcd213d34127503
Zherkov-B=0f83c61890b9d9062e3004fec046e2f8
意思是若发现档案的特徵为 2e300547e2fab8dd4bcd213d34127503,
则判定为 Zherkov-A 恶意程式。
好了,这时候可能会问,这一串 2e300547e2fab8dd4bcd213d34127503 是什麽?
为什麽它能代表是 Zherkov-A 恶意程式?
这就要知道防毒厂商如何抓出恶意程式的特徵值。
防毒厂商通常会有两个策略需要决定,
1. 用什麽方式去抓特徵值
2. 如何取出特徵值中独一无二的部分
之前的简单范例,只是用 md5 algorithm 这个方式(1)来计算程式的特徵值,
而且刚好 md5 计算出来的特徵值,通常都能代表独一无二的(2),所以就不用後处理了。
当然,其它防毒厂商会不会采用这个技术,答案是"不知道"。
但是可以肯定的是,它们一定有其它的技术,毕竟 md5 的方式太笨又没有效率。
或许你会对"除了md5外的其它技术"很有兴趣,所以我举另一个手法。以感染程式为例。
病毒在感染其它程式时,会植入或藏身在该程式的某一部分。
例如,病毒 V 感染了档案 F,此时 F 的某部分就会被植入 V 程式。
以这种感染手法而言,被感染的档案 F 的最佳特徵值,就是包含 V 藏身的那部分。
假设档案 F 原本内容是: 被感染後的内容是:
IamFandWrittenbYblman IamFandWrittenbY
Virusblman
想想看,这时候你会怎麽抓独一无二的特徵值?
喔,我相信说到这里,很多人都被我误导对"特徵值"的印象。
特徵值可不一定是"档案内容",它也可以是别的。
像是"行为"。
例如,若发现程式尝试修改 BIOS 的资料,则可以回报为恶意程式。
这时你可能会问,难道尝试修改 BIOS 资料的都是恶意程式?
如果想通了,我想你也会了解启发式(Heuristic)侦测或称智能侦测的手法了。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.22.140
1F:推 LiDra129:推一个,解释很清楚 10/15 16:25
2F:推 lcjjaff:推一个~~认真文^^ 10/15 16:37
3F:推 aderan:好文推一个,受益良多^^ 感谢 10/16 10:53
※ 编辑: blman 来自: 140.109.22.140 (10/16 12:00)