17

基本上,我想要在病毒掃描文件上傳(在寫入磁盤之前)到網絡應用程序中。如何通過病毒掃描正在上傳到您的Java Web應用程序的文件?

特別是,我想與「McAfee VirusScan Enterprise」(最新版本)進行集成。

從設計和維護的角度來看,使用第三方產品掃描防火牆的某些路徑可能會更好嗎?這樣Web應用程序就不必關心病毒掃描。爲了儘量減少開銷,典型的病毒掃描防火牆可讓您指定URL模式以及特定的POST數據模式。這當然不會工作,如果它是一個HTTPS網站(除非有一些解決方法)。

This post from stackoverflow似乎表明來自McAfee的SDK不再可用,但有沒有開源的替代品?

+3

這是一個很好的問題,感謝您的提問! – mtyson 2015-02-19 19:54:34

+4

這個問題不應該關閉。他在問如何將他的應用程序與病毒掃描整合。什麼掃描使用是次要的。來吧,納粹,讓它休息一下。 – mtyson 2015-02-19 20:12:18

+0

我同意。我問同樣的問題,並得到了投票,我很高興我找到了這個職位! – mmaceachran 2017-09-18 18:08:16

回答

35

Check out Clamv(http://www.clamav.net/) 這是一個開源的反病毒程序,您可以掃描一個流。 所以你不需要保存文件來掃描它。

http://linux.die.net/man/1/clamscan

掃描數據流: 貓testfile的| clamscan -

所以這很容易,用 - arg啓動clamscan過程。將文件內容寫入stdin,並等待結果代碼。

在測試過程中,您可以使用EICAR文件,該文件專用於檢查防病毒程序是否正常工作。​​

+3

+1對你的評價很高,因爲你提供了很多關於如何完成這個任務的細節。 – NotMe 2010-07-30 01:21:13

+0

Rad,謝謝! – 2014-05-06 18:53:21

+2

java中的howto: http://nverma-tech-blog.blogspot.co.at/2014/04/if-you-are-looking-for-options-where.html – heaphach 2015-07-02 07:05:20

1

你可能會調查ClamAVClamWin。他們是開源病毒掃描程序,ClamWin基於ClamAV。你應該可以修改其中的一個(如果有人還沒有)做你想做的事情。另一方面,您可以考慮簡單地將流式文件放入目錄並讓掃描儀監視該特定目錄。

0

卡巴斯基(和其他可能)似乎有幾種方法在企業級別來處理這個問題: http://usa.kaspersky.com/business-security/targeted-solutions

互聯網網關產品可能是最相關的。它看起來像支持Checkpoint,Squid Proxy Server和Microsoft。

這裏是那裏下載頁審判和文檔: http://usa.kaspersky.com/downloads/documentation

在企業層面,你可能決定讓電器(思科ACE例如),它離加載SSL,然後使用這些選項之一(或帶Cisco防火牆的Cisco IOS入侵防禦系統(IPS))。我有幾臺使用Cisco ACE設備的客戶端,但我正在調查防火牆上的病毒檢測。