2011-10-06 59 views
1

基於簽名的AntiVirus軟件是否將每個當前掃描的文件與數據庫中存在的所有字符串/簽名匹配?是否需要通過所有簽名才能將它們與文件進行比較?比較是從「數據庫到文件」而不是從「文件到數據庫」完成的,這是真的嗎?AntiViruses的字符串/簽名比較

第二個問題:是否有可能通過AV引擎首先從文件中提取字符串/簽名(不是整個文件的哈希),然後查看該字符串是否在數據庫中?有沒有已知的AV這樣做?

回答

2

典型的做法是使用已知病毒簽名的數據庫來構建狀態機(通常與Aho-Corasick string search algorithm非常相似)。然後,每個要檢查的文件都在狀態機中運行。事實證明這很快,因爲所有匹配的病毒簽名都可以通過單個文件找到。