殺毒軟體的原理如下:
-基於特徵的檢測——靜態分析。殺毒軟體廠商研究新出現的惡意軟體,每當發現一款新的惡意軟體,會嘗試找到該軟體所具有的獨特指紋,並加入到殺毒軟體的特徵庫中。獨特指紋也就是說——只有這個惡意軟體才會包含該特徵,其它軟體不包含該特徵。當殺毒軟體掃描磁片時,就是根據自帶的特徵庫進行檢查,如果某個檔正好包含了特徵庫中“某某惡意軟體”的特徵,就會觸發報警。
-基於行為的檢測-動態分析。惡意軟體總是會有一些比較奇怪的、反常的行為。因此,殺毒軟體會根據某個軟體的行為,來判斷其是否具有惡意。
-採用機器學習的方式完成上述工作。先讓 AI 觀察海量的正常軟體的行為以及海量的惡意軟體的行為,AI 自己會總結出這兩者的差異。下次碰到一個全新的軟體,AI 會給出自己的判斷。
VirusTotal自己並不研發殺毒軟體。而是把把全球各種殺毒軟體匯總到它的伺服器上,然後提供一個 Web 介面給人們使用。你如果懷疑某個檔有問題,可以把這個可疑的檔提交到它的網站上進行掃描。然後 VirusTotal 會告訴你,全球各大殺毒軟體對這個檔的掃描結果,讓你參考。 採用類似的原理進行 Web 查毒的網站,不止 VirusTotal 一家。如今,其它幾家已經消失。VirusTotal最早是由西班牙安全公司Hispasec Sistemas創建的網站。它於2004年6月推出,於2012年9月被Google Inc.收購。該公司的所有權於2018年1月轉換為Chronicle,即Alphabet Inc.的子公司。
VirusTotal聚集了許多防病毒產品和線上掃描引擎,以檢查使用者自己的防病毒可能遺漏的病毒,或進行任何誤報驗證。最多550 MB的檔可以上傳到網站,或通過電子郵件發送(最大32MB)。防毒軟體供應商可以接收被其他掃描標記但由其自己的引擎傳遞的檔副本,以説明改進其軟體以及VirusTotal自身的功能。使用者還可以掃描可疑URL並搜索VirusTotal資料集。用於對惡意軟體進行動態分析的VirusTotal 使用Cuckoo 沙箱。
用於檢測上傳檔的防病毒引擎。
AegisLab(AegisLab)
AhnLab(AhnLab V3)
安天實驗室(Antiy-AVL)
阿拉丁(eSafe)
ALWIL(Avast!防毒軟體)
AVG Technologies(AVG)
阿維拉
BluePex(AVware)
百度(百度國際)
BitDefender GmbH(BitDefender)
Bkav Corporation(Bkav)
ByteHero資訊安全技術團隊(ByteHero)
Cat電腦服務(快速修復)
CMC InfoSec(CMC防毒軟體)
賽倫
ClamAV
科摩多(Comodo)
人群罷工
Doctor Web Ltd.(Dr.Web)
Emsi Software GmbH(Emsisoft)
結束遊戲
Eset軟體(ESET NOD32)
福汀
FRISK軟體(F-Prot)
F-安全
G資料軟體(G資料)
Hacksoft(駭客)
豪裡(ViRobot)
IKARUS安全軟體(IKARUS)
INCA Internet(nProtect)
Invincea(Invincea,被Sophos收購)
江民
K7計算(K7AntiVirus,K7GW)
卡巴斯基實驗室(Kaspersky Anti-Virus)
金山軟體
Malwarebytes公司(Malwarebytes的反惡意軟體)
邁克菲
Microsoft(惡意軟體保護)
微觀世界(eScan)
NANO安全性(NANO防病毒)
諾曼(諾曼防毒軟體)
熊貓安全(熊貓白金)
奇虎360
瑞星殺毒軟體(Rising)
哨兵一號
Sophos(SAV)
超級反間諜軟體
賽門鐵克公司(Symantec)
騰訊網
ThreatTrack安全性(VIPRE防病毒)
總防禦
趨勢科技(TrendMicro,TrendMicro-HouseCall)
VirusBlokAda(VBA32)
Webroot
白甲
Yandex
Zillya!(Zillya)
Zoner軟體(Zoner防毒軟體)
用於URL掃描的防病毒掃描引擎。
ADMINUSLabs(ADMINUSLABS)
AegisLab WebGuard(AegisLab)
Alexa(亞馬遜)
AlienVault(AlienVault)
Antiy-AVL(Antiy實驗室)
AutoShun(RiskAnalytics)
查殺Checkurl(查殺)
百度(百度國際)
BitDefender
CRDF(法國CRDF)
C-SIRT(Cyscon SIRT)
清潔MX
科摩多現場檢查員(科摩多集團)
網路犯罪(木糖醇)
Dr.Web連結掃描器(Dr.Web)
Emsisoft(Emsi Software GmbH)
ESET
FortiGuard Web過濾(Fortinet)
G數據
Google安全流覽(Google)
K7AntiVirus(K7計算)
卡巴斯基URL顧問(卡巴斯基實驗室)
Malc0de資料庫(Malc0de)
Malekal(Malekal的MalwareDB)
的Malwarebytes hpHosts(的Malwarebytes)
惡意軟體(Malwared.malwaremustdie.org)
惡意軟體域阻止清單(DNS-BH-惡意軟體域阻止清單)
惡意軟體域清單(惡意軟體域清單)
MalwarePatrol(MalwarePatrol)
Malwares.com(聖徒安全)
Netcraft
歌劇
Palevo跟蹤器(Abuse.ch)
ParetoLogic URL交換所(ParetoLogic)
網路釣魚(OpenDNS)
Quttera(Quttera Ltd.)
固件(Scumware.org)
SecureBrain(SecureBrain)
索福斯
SpyEye Tracker(Abuse.ch)
StopBadware(StopBadware)
Sucuri SiteCheck(Sucuri)
ThreatHive(惡意軟體實驗室)
趨勢科技網站安全中心(趨勢科技)
urlQuery(urlQuery.net)
VX庫
Websense ThreatSeeker(Websense)
網路化
Wepawet(iseclab.org)
Yandex安全流覽(Yandex)
ZCloudsec(Zcloudsec)
ZDB宙斯
ZeuS跟蹤器(Abuse.ch)
茲韋洛
用於提供有關上傳檔的其他資訊的實用程式。
Androguard(安東尼·德斯諾斯)
杜鵑沙箱(Claudio Guarnieri)
ExifTool(Phil Harvey)
魔術描述符(Linux)
NSRL資訊(NIST的國家軟體參考資料庫)
PDFiD(Didier Stevens)
pefile(Ero Carrera)
PEiD(吉布斯)
Sigcheck(馬克·魯西諾維奇)
噴鼻息(Sourcefire)
ssdeep(傑西·科恩布魯姆)
Suricata(開放資訊安全基金會)
Taggant封隔器資訊工具(ReversingLabs)
TrID(Marco Pontello)
UEFI固件解析器(Teddy Reed)
Wireshark(Wireshark基金會)
Zemana行為(Zemana)
炭黑(CarbonBlack)
發送給VirusTotal的檔和URL將與防病毒供應商和安全公司共用,以説明他們改善服務和產品。預設情況下,至少一個掃描程式檢測到的提交給VirusTotal的任何檔/ URL都會自由發送給所有未檢測到資源的掃描程式。此外,所有檔和URL都將進入一個由高級(主要是安全性/惡意軟體公司/組織)VirusTotal使用者訪問的私有存儲,以改善他們的安全產品和服務。
要使用 VirusTotal 掃描檔,先點擊如下網址:
點擊介面中的“Choose file”按鈕,會提示你選擇本地硬碟的某個檔。
VirusTotal 掃描的結果,也不是絕對安全的,詳見以下幾點:
-著名的《Wired》曾經發過一篇報導,提到了攻擊者利用 VirusTotal,檢驗自己的木馬。詳見A Google Site Meant to Protect You Is Helping Hackers Attack You @ Wired
-攻擊者利用 VirusTotal,判斷目標的防範意識。
由於 VirusTotal 的用戶群已經非常大,很多安全防範意識較高的人,都會利用它掃描檔或網站。如果目標人士有“經常使用 VT”的習慣,能在某種程度上反映此人的安全意識。
為了判斷對方是否習慣于使用 VT,可以先用某種方式(郵件、IM、等)讓對方得到一個完全無害的檔,並且該檔是全新。所謂的全新意味著——在這之前,不可能有人在 VT 上提交過相同的文件。如果你的攻擊目標在得到該檔之後,上傳到 VT 進行掃描,就會在 VT 上留下一個掃描歷史。作為攻擊者,只要定期去 VT 查詢該檔的散列值,就能判斷出:對方拿到該檔之後,有沒有提交到 VT 進行掃描。從而判斷出:對方的“安全防範意識”是否足夠高。
-攻擊者利用 VirusTotal,讓目標放鬆警惕。
普通線民使用 VirusTotal 掃描某個網址(URL),主要是擔心該 URL 對應的網站存在“掛馬”的風險。如果你是一個攻擊者,你搭建了一個網站進行掛馬攻擊。你當然要考慮到,你的攻擊目標可能會用 VirusTotal 檢測你發過去的網址。那麼,一個足夠高明的攻擊者(攻擊團隊)會怎麼做?
VirusTotal 要檢測某個網址(URL),當然先要獲取該網站的網頁內容。這個過程就類似於“搜尋引擎的爬蟲”。因此,那些高明的攻擊者(攻擊團隊)在搭建好掛馬的伺服器之後,但還沒放木馬之前,自己先把這個伺服器的網址提交到 VT 進行檢測。一旦提交,VT 的網頁爬蟲馬上就會來抓取該伺服器的網頁。於是,攻擊者(攻擊團隊)就可以在伺服器上分析“VT 網頁爬蟲的行為”——
比如說:“VT 網頁爬蟲”使用的公網 IP 是啥?(只要測試足夠多次,就能匯總 VT 公司使用的【所有】公網 IP)
比如說:“VT 網頁爬蟲”解析網頁的行為與真實流覽器的解析行為,有哪些差異?
比如說:“VT 網頁爬蟲”內置的“JS 引擎”(JS VM)與真實流覽器的“JS 引擎”,有啥區別?
……
當攻擊者(攻擊團隊)收集了足夠多“VT 爬蟲的特徵”,他們就可以在自己的伺服器上進行區別對待——如果判斷出訪問者是“VT 爬蟲”,就顯示完全無害的網頁內容;反之,如果是正常的用戶流覽器,就推送木馬,使之中招。此招數的奧妙在於——就算受害者的防範意識比較強,先用 VT 檢查收到的網址,VT 也會報告說“一切 OK”。從而使得那些防範意識較強的目標,也放鬆警惕。