2009-09-30 114 views
1

我們有一個基於網絡的應用程序,其中有一個選項供用戶上傳文件/文件到我們的數據庫。在上傳任何文件/文件之前,我們希望發送文件,以免諸如http://virusscan.jotti.org/en等少數網站提供的在線病毒掃描,從它們獲取掃描狀態。只有在響應狀態正常的情況下,才能將其上傳到我們的數據庫。多部分表單直接提交到網址

我甚至試圖給出解決辦法: lindaocta.com/?cat=20

我的問題這裏:

1)如何處理我的應用程序直接發送文件/文件到免費的在線病毒掃描器網站,無需將文檔下載到我的服務器

2)現在,Web應用程序是使用AJAX開發的,因此響應可以在頁面中逐步更新。如果我嘗試閱讀免費的在線病毒掃描程序網站返回的響應,這不是我所期望的。我如何解決這種情況?

技術 操作系統:RedHat Linux上ES5.0 的Java 1.6 JSP Servlet的 的Tomcat v6.0.10

回答

1

1)你必須至少通過代理服務器請求,以便有任何機會在檢查病毒掃描程序的響應。如果客戶端直接發送到AV公司,您的servlet將被截斷,除非AV站點提供某種基於令牌的第三方驗證系統。什麼是免費AV網站?

2)不要處理客戶端(瀏覽器)端的任何安全業務邏輯,無論是通過AJAX還是其他方法。攻擊者可以簡單地修改javascript,並從AV掃描儀網站獲得積極響應。

爲什麼你很害怕下載可能不安全的文件到你的服務器?只需將其上傳到您創建的特殊非公開瀏覽目錄(其中沒有其他程序正在查找配置文件),對其進行掃描以查找病毒,並在不通過時將其刪除。如果你從不嘗試執行它,並且它不覆蓋一些配置文件或內核文件或其他內容,那麼你可能已經做得足夠了。

+0

我知道這已經2年了。我如何完成這項工作 - 「您至少必須通過您的服務器代理請求」?任何指向這個工作示例的指針表示讚賞。 – Gnanam 2012-05-29 09:46:28

+0

此外,我無法理解這些要點 - '......其他程序沒有找到配置文件......','...它不覆蓋一些配置文件或內核文件或其他東西......'。你可以在這裏解釋一下配置文件或內核文件的含義嗎? – Gnanam 2012-05-29 10:04:01