2009-01-20

來談一下COMODO的啟發式報毒



COMODO的Defense+有個啟發式,根據COMODO的內測的結果
D+的啟發具有60%威脅檢測率,也被COMODO成功申請專利
但是我對於它的啟發原理很有興趣,我們用COMODO跟Kaspersky來比較一下
看一下它們之間的差別!



首先是KIS 8的情形,雖然Kaspersky沒有大似宣傳它們的行為分析
但是從這張圖來看,KIS 8會把一連串的行為,根據觸動的規則,直接報行為類似於"木馬"或"蠕蟲"
從這點上看起來,跟D+啟發似乎有異曲同工之妙




再來看看CFP的提示,這個提示是第一個步驟,也就是在行為還沒有發生之前
意思就是它是第一個氣球提示,前面那張KIS氣球提示在你看到它之前
通常還會有兩個以上的氣球提示,而CFP的D+卻是行為還沒有發生時就被提示
這裡行程了一種強烈的差異性對比,我大概來猜一下COMODO的D+啟發是基於什麼技術

一般的防毒軟體緝毒引擎,它們的啟發是大致上可以歸類為幾種
比較常見的基因啟發跟虛擬機啟發他們隻間的差別是基因啟發根據檔案結構的相似程度
將這些相似的地方做成共通特徵值,特徵值可以有一個以上,根據符合特徵的數目高低來決定是否啟發
例如一個家族被取了八個特徵值,只要新變種符合了五個或四個特徵值,就予以啟發!

而虛擬機啟發則是在系統上建立一個虛擬機環境,引擎會在虛擬機內執行該樣本
根據執行後本對系統所做的修改結果,將最為可疑的樣本予以啟發!

但是這裡我們談論的是HIPS,啟發的方法也不太相同
COMODO在這裡可能的做法是使用SandBox(沙盤)
我們可以建立一個沙盤,在沙盤內放行樣本的行為,只是這個沙盤要相當強悍
如果被穿出沙盤,可不是在氣球提示按按阻止就可以挽回,所以沙盤的可能性應該不高
早期的KIS 7就有具備沙盤技術,但是KIS 7的沙盤有的時候會被穿出去
穿出去的影響造成了破壞變成了不可逆,後來的KIS 8就取消了沙盤在這部分的應用
改採直接強化了AD作為此功能不足所造成的缺憾!

另外一種比較新的做法,就是將最危險的行為特別強調
例如Panda跟KIS,它們會將最危險的行為直接阻擋
然後不提供任何選擇的機會,這些行為平常沒有正常程式會去處碰
所以可以被列為黑名單,將其直接阻擋!我猜測COMODO也有可能用這種方法

跟上述兩款安全軟體的差別可能在於COMODO沒有直接阻擋,而是提示D+啟發
就如下圖所示,但是COMODO的D+啟發的地方不像KIS是在最危險的行為時才出現
通常都是在危險行為前兩三個甚至三四個步驟就提示你啟發了!
這大大的與KIS的行為啟發明顯不同,而且邏輯上不好猜測





很多被啟發的行為,其實你一開始時是看不出來可疑在什麼地方
往往測試到後面的步驟才發現確實是個威脅!但COMODO的D+啟發到底是怎麼實現的?
其實我到現在還是搞不清楚,之前看過的說明也無法說明出個道理來
也許在COMODO論壇用heuristic作關鍵字搜尋就有答案了,但我還是想先來自己亂猜一下!
俗話說的好,女人因秘密顯的美麗,而COMODO是因秘密顯的神秘XD

2 則留言:

  1. 我自己平常看下來,好像只要是「*.exe試圖執行*.exe」或是某一程式試圖建立連線就會觸發(不在白名單中的程式),所以我一直覺得CFP的行為啟發判斷很簡單的只看單一行為(提權好像反而都不會警告)。
    但是我可能忽略掉這類行為中的低風險警告,如果有差的話,那應該還有額外的判斷依據。

    回覆刪除
  2. @S. Peter

    其實陌生的dll也會,但沒有像你說的這麼間膽
    因為*.exe試圖執行*.exe符合所有情況
    例如explorer.exe試圖執行firefox.exe
    explorer.exe試圖執行word.exe etc.

    是否出現D+啟發跟數位簽章應該多少也是有一點關係
    有一些行為,很容易辨認的像你說的提權行為
    或者是驅動安裝雖然是用紅色的高危警告
    但是卻很難看到D+啟發的提示
    這個其實比較像是D+無法分辨這是否為合法的驅動安裝,所以就沒有D+啟發

    回覆刪除